Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When executing a recent version of make from within vim, a change in directory is not recognised #185

Closed
GoogleCodeExporter opened this issue Aug 18, 2015 · 4 comments

Comments

@GoogleCodeExporter
Copy link

What steps will reproduce the problem?
1. Open vim from within the root directory of a project that makes use of 
recursive make files
2. Run :make from within vim

What is the expected output? What do you see instead?
If any directory changes were made, vim should recognise these and append the 
appropriate information to the quickfix-directory-stack

What version of the product are you using? On what operating system?
(g)vim 7.4 with patches 1 to 86
gnu make 4.0
OS Arch Linux

Please provide any additional information below.
It seems that the output of gnu make for entering a directory
has changed from:

make[1]: Entering directory `/path/to/directory'

to

make[1]: Entering directory '/path/to/directory'

Note the change from ` to ' at the beginning of the path name. I suspect the 
same has happened for the Leaving directory string as well.

This should be a simple fix one of the patterns within the 'errorformat' 
variable in 'runtime/compiler/gcc.vim' or perhaps it may be a good idea to 
duplicate that pattern and modify the duplicate (to retain backwards 
compatibility)

Original issue reported on code.google.com by kno0...@gmail.com on 4 Dec 2013 at 3:13

@GoogleCodeExporter
Copy link
Author

I suppose something like this may be fine.

Original comment by kno0...@gmail.com on 4 Dec 2013 at 3:21

Attachments:

@GoogleCodeExporter
Copy link
Author

Does it work to do it like this:
      \%D%*\\a[%*\\d]:\ Entering\ directory\ [`']%f',
      \%X%*\\a[%*\\d]:\ Leaving\ directory\ [`']%f',

Original comment by brammool...@gmail.com on 4 Dec 2013 at 11:40

@GoogleCodeExporter
Copy link
Author

That looks like a smarter way of doing it (as in no line duplication) but 
unfortunately it's not working for me, however duplicating the lines does work. 
By the way, on closer inspection there may be other files that need to be 
changed to provide sane defaults when using make with other languages. Here is 
a complete list of all files that may need to be changed:
runtime/compiler/fortran_g77.vim
runtime/compiler/gcc.vim
runtime/compiler/msc.vim
runtime/compiler/ocaml.vim
runtime/compiler/rst.vim
runtime/compiler/splint.vim
runtime/tools/ccfilter.c
src/option.h

Original comment by kno0...@gmail.com on 4 Dec 2013 at 10:53

@GoogleCodeExporter
Copy link
Author

This seems to be fixed for the gcc compiler. For the other compiler files, you 
should get in contact with their maintainers to have it fixed there. They will 
then send updated compiler plugins for inclusion with Vim to Bram.

Original comment by chrisbr...@googlemail.com on 3 Oct 2014 at 11:48

  • Added labels: Runtime

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants