Felipe Contreras <felipe.contreras@xxxxxxxxx> writes: > It's not efficient that everyone must set specific configurations in all > their ~/.vimrc files; we can have a project-wide .vimrc that everyone > can use. Does .vimrc gets used from the current directory? If so, just like clang-format, it makes sense to place it with dot-prefix at the root of the project, like this patch does. But ... > > By default it's ignored, you need the following in your ~/.vimrc > > set exrc > set secure ... it does not sound like it is the case. And I am sensing that this ".vimrc that happens in the current directory is not used by default" is not such a well known fact among vim users (otherwise you wouldn't be writing it here), and if that is the case, I am afraid that this invites an unneeded end-user confusion when they see dot-commandname-rc file and see its contents not honored at all. Whether it is well known by intended audience that it is by default unused, we should give the instruction we see above (and below, up to the description of how to override) in a comment at the beginning of the file, I think. Then, once the user follows the insn, the new file added by this patch would start working without any further user action, which is very nice. > Then the project-wide configuration is loaded, which sets the correct > filetype for the documentation and tests, and also the default > indentation of c, sh, and asciidoc files. > > If you have the shareness syntax file it will be used for the tests, but > if not the sh syntax will still be used. > > These default configurations can be overriden in the typical way (by > adding the corresponding file in ~/.vim/after/ftplugin). > > We could add the vim modelines at the bottom of every file, like other > projects do, but this seems more sensible. > > Signed-off-by: Felipe Contreras <felipe.contreras@xxxxxxxxx> > --- > .vimrc | 9 +++++++++ > 1 file changed, 9 insertions(+) > create mode 100644 .vimrc > > diff --git a/.vimrc b/.vimrc > new file mode 100644 > index 0000000000..d250ab26e0 > --- /dev/null > +++ b/.vimrc > @@ -0,0 +1,9 @@ > +augroup git > + au! > + au BufRead,BufNewFile */t/*.sh set ft=sharness.sh > + au BufRead,BufNewFile */Documentation/*.txt set ft=asciidoc > + > + au FileType c setl noet ts=8 sw=0 cino=(s,:0,l1,t0 > + au FileType sh setl noet ts=8 sw=0 > + au FileType asciidoc setl noet ts=8 sw=0 autoindent > +augroup END