From: Ivan Sichmann Freitas Date: Tue, 19 Jul 2011 02:43:19 +0000 (-0300) Subject: doc: add a vim indentation example X-Git-Tag: v8.13~45 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6ab90b53f660cb5bad94b729d400934de68c7e9e;p=thirdparty%2Fcoreutils.git doc: add a vim indentation example HACKING: add a vim example showing how to configure it to follow GNU indentation in coreutils source files. --- diff --git a/HACKING b/HACKING index 8933e9a744..51c4acdc8a 100644 --- a/HACKING +++ b/HACKING @@ -349,10 +349,25 @@ this code enables the right mode: (not (string-equal mode-name "Makefile"))) (setq indent-tabs-mode nil)))) -[*] Makefile and ChangeLog files are exempt, of course. +If you use vim (7+ compiled with autocommands), and coreutils working +directory name also matches, add the following in ~/.vimrc: + + " Set GNU style indentation, spaces instead of TABs + function! CoreutilsIndent() + " Check if 'coreutils' is part of the current working directory + if match(getcwd(), "coreutils") > 0 + " The next 3 lines below set the GNU indentation + setlocal cinoptions=>4,n-2,{2,^-2,:2,=2,g0,h2,p5,t0,+2,(0,u0,w1,m1 + setlocal shiftwidth=2 + setlocal tabstop=8 + " Coreutils specific, expand TABs with spaces + setlocal expandtab + endif + endfunction + + autocmd BufEnter *.c,*.h call CoreutilsIndent() -[FIXME: suggest vim syntax to do same thing, if it can be done safely. - Most distros now "set nomodeline" by default for a good reason. ] +[*] Makefile and ChangeLog files are exempt, of course. Send patches to the address listed in --help output