Hi

Very good initiative!

> ## Project Information
> 
> Vim can introduce a way to provide following information:
> [...]
> - buffer-local options
> [...]
> ### Locating project root
> 
> The project root of current file is the nearest parent directory with
> a folder named `.vimprj` (can be changed by set rootmarker=xxx) in
> it.
> 
> A buffer-specific variable `v:project` is used to store the project
> root directory of current buffer, it is initialized when you open a
> file as:
> 
> ```VimL
> let v:projectroot = fnamemodify(find(&rootmarker, '.;'), ':h')
> ```


I've experimented on the subject: 
https://github.com/luchermitte/lh-vim-lib/blob/master/doc/Project.md


What will be interesting is different than "buffer-local", it's 
"project-local". An option (/variable) changed in one buffer belonging to a 
project needs to be propagated to (or better shared with!) all buffers 
belonging to the same project.

This way, instead of a v:projectroot, it would be a p:projectroot, a 
p:where_the_build_directory_is, a p:where_ctags_plugin_will_build_tags_files, a 
p:naming_policy, and so on.


Regarding the remark about editor-config: there is no neat way to specify 
values for vim variables or options if need be. With the main editorconfig 
plugin for vim, we cannot be sure a variable will be set before another one 
which could be tedious to introduce dependencies.

-- 
Luc Hermitte

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui