summaryrefslogtreecommitdiff
path: root/HACKING
diff options
context:
space:
mode:
authorIvan Sichmann Freitas <ivansichfreitas@gmail.com>2011-07-18 23:43:19 -0300
committerPádraig Brady <P@draigBrady.com>2011-07-27 13:51:15 +0100
commit6ab90b53f660cb5bad94b729d400934de68c7e9e (patch)
tree080728ea1717105a6e2f4eef6de135d8fb1fa486 /HACKING
parent42300faaa90e69caf6c728a1ed0cf1abe67f6e3b (diff)
downloadcoreutils-6ab90b53f660cb5bad94b729d400934de68c7e9e.tar.xz
doc: add a vim indentation example
HACKING: add a vim example showing how to configure it to follow GNU indentation in coreutils source files.
Diffstat (limited to 'HACKING')
-rw-r--r--HACKING21
1 files changed, 18 insertions, 3 deletions
diff --git a/HACKING b/HACKING
index 8933e9a74..51c4acdc8 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