A tree explorer plugin for vim.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

88 lines
3.7 KiB

  1. let s:tree_up_dir_line = '.. (up a dir)'
  2. "NERDTreeFlags are syntax items that should be invisible, but give clues as to
  3. "how things should be highlighted
  4. syn match NERDTreeFlag #\~#
  5. syn match NERDTreeFlag #\[RO\]#
  6. "highlighting for the .. (up dir) line at the top of the tree
  7. execute "syn match NERDTreeUp #\\V". s:tree_up_dir_line ."#"
  8. "highlighting for the ~/+ symbols for the directory nodes
  9. syn match NERDTreeClosable #\~\<#
  10. syn match NERDTreeClosable #\~\.#
  11. syn match NERDTreeOpenable #+\<#
  12. syn match NERDTreeOpenable #+\.#he=e-1
  13. "highlighting for the tree structural parts
  14. syn match NERDTreePart #|#
  15. syn match NERDTreePart #`#
  16. syn match NERDTreePartFile #[|`]-#hs=s+1 contains=NERDTreePart
  17. "quickhelp syntax elements
  18. syn match NERDTreeHelpKey #" \{1,2\}[^ ]*:#hs=s+2,he=e-1
  19. syn match NERDTreeHelpKey #" \{1,2\}[^ ]*,#hs=s+2,he=e-1
  20. syn match NERDTreeHelpTitle #" .*\~#hs=s+2,he=e-1 contains=NERDTreeFlag
  21. syn match NERDTreeToggleOn #".*(on)#hs=e-2,he=e-1 contains=NERDTreeHelpKey
  22. syn match NERDTreeToggleOff #".*(off)#hs=e-3,he=e-1 contains=NERDTreeHelpKey
  23. syn match NERDTreeHelpCommand #" :.\{-}\>#hs=s+3
  24. syn match NERDTreeHelp #^".*# contains=NERDTreeHelpKey,NERDTreeHelpTitle,NERDTreeFlag,NERDTreeToggleOff,NERDTreeToggleOn,NERDTreeHelpCommand
  25. "highlighting for readonly files
  26. syn match NERDTreeRO #.*\[RO\]#hs=s+2 contains=NERDTreeFlag,NERDTreeBookmark,NERDTreePart,NERDTreePartFile
  27. "highlighting for sym links
  28. syn match NERDTreeLink #[^-| `].* -> # contains=NERDTreeBookmark,NERDTreeOpenable,NERDTreeClosable,NERDTreeDirSlash
  29. "highlighing for directory nodes and file nodes
  30. syn match NERDTreeDirSlash #/#
  31. syn match NERDTreeDir #[^-| `].*/# contains=NERDTreeLink,NERDTreeDirSlash,NERDTreeOpenable,NERDTreeClosable
  32. syn match NERDTreeExecFile #[|` ].*\*\($\| \)# contains=NERDTreeLink,NERDTreePart,NERDTreeRO,NERDTreePartFile,NERDTreeBookmark
  33. syn match NERDTreeFile #|-.*# contains=NERDTreeLink,NERDTreePart,NERDTreeRO,NERDTreePartFile,NERDTreeBookmark,NERDTreeExecFile
  34. syn match NERDTreeFile #`-.*# contains=NERDTreeLink,NERDTreePart,NERDTreeRO,NERDTreePartFile,NERDTreeBookmark,NERDTreeExecFile
  35. syn match NERDTreeCWD #^[</].*$#
  36. "highlighting for bookmarks
  37. syn match NERDTreeBookmark # {.*}#hs=s+1
  38. "highlighting for the bookmarks table
  39. syn match NERDTreeBookmarksLeader #^>#
  40. syn match NERDTreeBookmarksHeader #^>-\+Bookmarks-\+$# contains=NERDTreeBookmarksLeader
  41. syn match NERDTreeBookmarkName #^>.\{-} #he=e-1 contains=NERDTreeBookmarksLeader
  42. syn match NERDTreeBookmark #^>.*$# contains=NERDTreeBookmarksLeader,NERDTreeBookmarkName,NERDTreeBookmarksHeader
  43. if exists("g:NERDChristmasTree") && g:NERDChristmasTree
  44. hi def link NERDTreePart Special
  45. hi def link NERDTreePartFile Type
  46. hi def link NERDTreeFile Normal
  47. hi def link NERDTreeExecFile Title
  48. hi def link NERDTreeDirSlash Identifier
  49. hi def link NERDTreeClosable Type
  50. else
  51. hi def link NERDTreePart Normal
  52. hi def link NERDTreePartFile Normal
  53. hi def link NERDTreeFile Normal
  54. hi def link NERDTreeClosable Title
  55. endif
  56. hi def link NERDTreeBookmarksHeader statement
  57. hi def link NERDTreeBookmarksLeader ignore
  58. hi def link NERDTreeBookmarkName Identifier
  59. hi def link NERDTreeBookmark normal
  60. hi def link NERDTreeHelp String
  61. hi def link NERDTreeHelpKey Identifier
  62. hi def link NERDTreeHelpCommand Identifier
  63. hi def link NERDTreeHelpTitle Macro
  64. hi def link NERDTreeToggleOn Question
  65. hi def link NERDTreeToggleOff WarningMsg
  66. hi def link NERDTreeDir Directory
  67. hi def link NERDTreeUp Directory
  68. hi def link NERDTreeCWD Statement
  69. hi def link NERDTreeLink Macro
  70. hi def link NERDTreeOpenable Title
  71. hi def link NERDTreeFlag ignore
  72. hi def link NERDTreeRO WarningMsg
  73. hi def link NERDTreeBookmark Statement
  74. hi def link NERDTreeCurrentNode Search