diff --git a/vim/README b/vim/README index 08071663..12ad2bb4 100644 --- a/vim/README +++ b/vim/README @@ -10,11 +10,6 @@ Dependencies: mailx: To send mail, notmuch.vim uses the UNIX mailx command. - git-diff: - The vim interface makes use of the git-diff.vim syntax file - which is available from - http://github.com/motemen/git-vim/blob/master/syntax/git-diff.vim - To install: make install diff --git a/vim/syntax/notmuch-git-diff.vim b/vim/syntax/notmuch-git-diff.vim new file mode 100644 index 00000000..6f15fdc7 --- /dev/null +++ b/vim/syntax/notmuch-git-diff.vim @@ -0,0 +1,26 @@ +syn match diffRemoved "^-.*" +syn match diffAdded "^+.*" + +syn match diffSeparator "^---$" +syn match diffSubname " @@..*"ms=s+3 contained +syn match diffLine "^@.*" contains=diffSubname + +syn match diffFile "^diff .*" +syn match diffNewFile "^+++ .*" +syn match diffOldFile "^--- .*" + +hi def link diffOldFile diffFile +hi def link diffNewFile diffFile + +hi def link diffFile Type +hi def link diffRemoved Special +hi def link diffAdded Identifier +hi def link diffLine Statement +hi def link diffSubname PreProc + +syntax match gitDiffStatLine /^ .\{-}\zs[+-]\+$/ contains=gitDiffStatAdd,gitDiffStatDelete +syntax match gitDiffStatAdd /+/ contained +syntax match gitDiffStatDelete /-/ contained + +hi def link gitDiffStatAdd diffAdded +hi def link gitDiffStatDelete diffRemoved diff --git a/vim/syntax/notmuch-show.vim b/vim/syntax/notmuch-show.vim index 20bcc399..c3a98b77 100644 --- a/vim/syntax/notmuch-show.vim +++ b/vim/syntax/notmuch-show.vim @@ -12,8 +12,7 @@ syntax match nmShowMsgHeadVal /^\([^:]\+: \)\@<=.*/ contained syntax cluster nmShowMsgBody contains=@nmShowMsgBodyMail,@nmShowMsgBodyGit syntax include @nmShowMsgBodyMail syntax/mail.vim -" git-diff.vim marks up diffs in emails, see README for details -silent! syntax include @nmShowMsgBodyGit syntax/git-diff.vim +silent! syntax include @nmShowMsgBodyGit syntax/notmuch-git-diff.vim highlight nmShowMsgDescWho term=reverse cterm=reverse gui=reverse highlight link nmShowMsgDescDate Type