зеркало из https://github.com/microsoft/git.git
remove vim syntax highlighting in favor of upstream
As of version 7.2, vim ships with its own syntax highlighting for git commit messages, which is: 1. more comprehensive in splitting up the various components of the file 2. in accordance with the usual vim behavior for syntax highlighting (e.g., respecting b:current_syntax) 3. presumably better maintained (I have not been using what's in git's contrib/ directory for some time in favor of the upstream version) Furthermore, vim upsream also provides syntax highlighting for other git filetypes (gitconfig, rebase, send-email). This patch gets rid of our local version and just points interested parties to the upstream version. The code for auto-detecting filetypes is taken from vim's runtime/filetype.vim. Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
This commit is contained in:
Родитель
9800c0df41
Коммит
1d4c498670
|
@ -1,8 +1,30 @@
|
|||
To syntax highlight git's commit messages, you need to:
|
||||
1. Copy syntax/gitcommit.vim to vim's syntax directory:
|
||||
$ mkdir -p $HOME/.vim/syntax
|
||||
$ cp syntax/gitcommit.vim $HOME/.vim/syntax
|
||||
2. Auto-detect the editing of git commit files:
|
||||
$ cat >>$HOME/.vimrc <<'EOF'
|
||||
autocmd BufNewFile,BufRead COMMIT_EDITMSG set filetype=gitcommit
|
||||
EOF
|
||||
Syntax highlighting for git commit messages, config files, etc. is
|
||||
included with the vim distribution as of vim 7.2, and should work
|
||||
automatically.
|
||||
|
||||
If you have an older version of vim, you can get the latest syntax
|
||||
files from the vim project:
|
||||
|
||||
http://vim.svn.sourceforge.net/viewvc/vim/trunk/runtime/syntax/git.vim
|
||||
http://vim.svn.sourceforge.net/viewvc/vim/trunk/runtime/syntax/gitcommit.vim
|
||||
http://vim.svn.sourceforge.net/viewvc/vim/trunk/runtime/syntax/gitconfig.vim
|
||||
http://vim.svn.sourceforge.net/viewvc/vim/trunk/runtime/syntax/gitrebase.vim
|
||||
http://vim.svn.sourceforge.net/viewvc/vim/trunk/runtime/syntax/gitsendemail.vim
|
||||
|
||||
To install:
|
||||
|
||||
1. Copy these files to vim's syntax directory $HOME/.vim/syntax
|
||||
2. To auto-detect the editing of various git-related filetypes:
|
||||
$ cat >>$HOME/.vim/filetype.vim <<'EOF'
|
||||
autocmd BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit
|
||||
autocmd BufNewFile,BufRead *.git/config,.gitconfig setf gitconfig
|
||||
autocmd BufNewFile,BufRead git-rebase-todo setf gitrebase
|
||||
autocmd BufNewFile,BufRead .msg.[0-9]*
|
||||
\ if getline(1) =~ '^From.*# This line is ignored.$' |
|
||||
\ setf gitsendemail |
|
||||
\ endif
|
||||
autocmd BufNewFile,BufRead *.git/**
|
||||
\ if getline(1) =~ '^\x\{40\}\>\|^ref: ' |
|
||||
\ setf git |
|
||||
\ endif
|
||||
EOF
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
syn region gitLine start=/^#/ end=/$/
|
||||
syn region gitCommit start=/^# Changes to be committed:$/ end=/^#$/ contains=gitHead,gitCommitFile
|
||||
syn region gitHead contained start=/^# (.*)/ end=/^#$/
|
||||
syn region gitChanged start=/^# Changed but not updated:/ end=/^#$/ contains=gitHead,gitChangedFile
|
||||
syn region gitUntracked start=/^# Untracked files:/ end=/^#$/ contains=gitHead,gitUntrackedFile
|
||||
|
||||
syn match gitCommitFile contained /^#\t.*/hs=s+2
|
||||
syn match gitChangedFile contained /^#\t.*/hs=s+2
|
||||
syn match gitUntrackedFile contained /^#\t.*/hs=s+2
|
||||
|
||||
hi def link gitLine Comment
|
||||
hi def link gitCommit Comment
|
||||
hi def link gitChanged Comment
|
||||
hi def link gitHead Comment
|
||||
hi def link gitUntracked Comment
|
||||
hi def link gitCommitFile Type
|
||||
hi def link gitChangedFile Constant
|
||||
hi def link gitUntrackedFile Constant
|
Загрузка…
Ссылка в новой задаче