1" Language : Netrw Remote-Directory Listing Syntax 2" Maintainer : Charles E. Campbell 3" Last change: Oct 06, 2014 4" Version : 19 5" --------------------------------------------------------------------- 6 7" Syntax Clearing: {{{1 8if version < 600 9 syntax clear 10elseif exists("b:current_syntax") 11 finish 12endif 13 14" --------------------------------------------------------------------- 15" Directory List Syntax Highlighting: {{{1 16syn cluster NetrwGroup contains=netrwHide,netrwSortBy,netrwSortSeq,netrwQuickHelp,netrwVersion,netrwCopyTgt 17syn cluster NetrwTreeGroup contains=netrwDir,netrwSymLink,netrwExe 18 19syn match netrwPlain "\(\S\+ \)*\S\+" contains=netrwLink,@NoSpell 20syn match netrwSpecial "\%(\S\+ \)*\S\+[*|=]\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell 21syn match netrwDir "\.\{1,2}/" contains=netrwClassify,@NoSpell 22syn match netrwDir "\%(\S\+ \)*\S\+/\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell 23syn match netrwSizeDate "\<\d\+\s\d\{1,2}/\d\{1,2}/\d\{4}\s" skipwhite contains=netrwDateSep,@NoSpell nextgroup=netrwTime 24syn match netrwSymLink "\%(\S\+ \)*\S\+@\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell 25syn match netrwExe "\%(\S\+ \)*\S*[^~]\*\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell 26if has("gui_running") && (&enc == 'utf-8' || &enc == 'utf-16' || &enc == 'ucs-4') 27syn match netrwTreeBar "^\%([-+|│] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup 28else 29syn match netrwTreeBar "^\%([-+|] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup 30endif 31syn match netrwTreeBarSpace " " contained 32 33syn match netrwClassify "[*=|@/]\ze\%(\s\{2,}\|$\)" contained 34syn match netrwDateSep "/" contained 35syn match netrwTime "\d\{1,2}:\d\{2}:\d\{2}" contained contains=netrwTimeSep 36syn match netrwTimeSep ":" 37 38syn match netrwComment '".*\%(\t\|$\)' contains=@NetrwGroup,@NoSpell 39syn match netrwHide '^"\s*\(Hid\|Show\)ing:' skipwhite contains=@NoSpell nextgroup=netrwHidePat 40syn match netrwSlash "/" contained 41syn match netrwHidePat "[^,]\+" contained skipwhite contains=@NoSpell nextgroup=netrwHideSep 42syn match netrwHideSep "," contained skipwhite nextgroup=netrwHidePat 43syn match netrwSortBy "Sorted by" contained transparent skipwhite nextgroup=netrwList 44syn match netrwSortSeq "Sort sequence:" contained transparent skipwhite nextgroup=netrwList 45syn match netrwCopyTgt "Copy/Move Tgt:" contained transparent skipwhite nextgroup=netrwList 46syn match netrwList ".*$" contained contains=netrwComma,@NoSpell 47syn match netrwComma "," contained 48syn region netrwQuickHelp matchgroup=Comment start="Quick Help:\s\+" end="$" contains=netrwHelpCmd,netrwQHTopic,@NoSpell keepend contained 49syn match netrwHelpCmd "\S\+\ze:" contained skipwhite contains=@NoSpell nextgroup=netrwCmdSep 50syn match netrwQHTopic "([a-zA-Z &]\+)" contained skipwhite 51syn match netrwCmdSep ":" contained nextgroup=netrwCmdNote 52syn match netrwCmdNote ".\{-}\ze " contained contains=@NoSpell 53syn match netrwVersion "(netrw.*)" contained contains=@NoSpell 54syn match netrwLink "-->" contained skipwhite 55 56" ----------------------------- 57" Special filetype highlighting {{{1 58" ----------------------------- 59if exists("g:netrw_special_syntax") && netrw_special_syntax 60 syn match netrwBak "\(\S\+ \)*\S\+\.bak\>" contains=netrwTreeBar,@NoSpell 61 syn match netrwCompress "\(\S\+ \)*\S\+\.\%(gz\|bz2\|Z\|zip\)\>" contains=netrwTreeBar,@NoSpell 62 if has("unix") 63 syn match netrwCoreDump "\<core\%(\.\d\+\)\=\>" contains=netrwTreeBar,@NoSpell 64 endif 65 syn match netrwLex "\(\S\+ \)*\S\+\.\%(l\|lex\)\>" contains=netrwTreeBar,@NoSpell 66 syn match netrwYacc "\(\S\+ \)*\S\+\.y\>" contains=netrwTreeBar,@NoSpell 67 syn match netrwData "\(\S\+ \)*\S\+\.dat\>" contains=netrwTreeBar,@NoSpell 68 syn match netrwDoc "\(\S\+ \)*\S\+\.\%(doc\|txt\|pdf\|ps\)" contains=netrwTreeBar,@NoSpell 69 syn match netrwHdr "\(\S\+ \)*\S\+\.\%(h\|hpp\)\>" contains=netrwTreeBar,@NoSpell 70 syn match netrwLib "\(\S\+ \)*\S*\.\%(a\|so\|lib\|dll\)\>" contains=netrwTreeBar,@NoSpell 71 syn match netrwMakeFile "\<[mM]akefile\>\|\(\S\+ \)*\S\+\.mak\>" contains=netrwTreeBar,@NoSpell 72 syn match netrwObj "\(\S\+ \)*\S*\.\%(o\|obj\)\>" contains=netrwTreeBar,@NoSpell 73 syn match netrwTags "\<\(ANmenu\|ANtags\)\>" contains=netrwTreeBar,@NoSpell 74 syn match netrwTags "\<tags\>" contains=netrwTreeBar,@NoSpell 75 syn match netrwTilde "\(\S\+ \)*\S\+\~\*\=\>" contains=netrwTreeBar,@NoSpell 76 syn match netrwTmp "\<tmp\(\S\+ \)*\S\+\>\|\(\S\+ \)*\S*tmp\>" contains=netrwTreeBar,@NoSpell 77endif 78 79" --------------------------------------------------------------------- 80" Highlighting Links: {{{1 81if !exists("did_drchip_netrwlist_syntax") 82 let did_drchip_netrwlist_syntax= 1 83 hi default link netrwClassify Function 84 hi default link netrwCmdSep Delimiter 85 hi default link netrwComment Comment 86 hi default link netrwDir Directory 87 hi default link netrwHelpCmd Function 88 hi default link netrwQHTopic Number 89 hi default link netrwHidePat Statement 90 hi default link netrwHideSep netrwComment 91 hi default link netrwList Statement 92 hi default link netrwVersion Identifier 93 hi default link netrwSymLink Question 94 hi default link netrwExe PreProc 95 hi default link netrwDateSep Delimiter 96 97 hi default link netrwTreeBar Special 98 hi default link netrwTimeSep netrwDateSep 99 hi default link netrwComma netrwComment 100 hi default link netrwHide netrwComment 101 hi default link netrwMarkFile TabLineSel 102 hi default link netrwLink Special 103 104 " special syntax highlighting (see :he g:netrw_special_syntax) 105 hi default link netrwBak NonText 106 hi default link netrwCompress Folded 107 hi default link netrwCoreDump WarningMsg 108 hi default link netrwData DiffChange 109 hi default link netrwHdr netrwPlain 110 hi default link netrwLex netrwPlain 111 hi default link netrwLib DiffChange 112 hi default link netrwMakefile DiffChange 113 hi default link netrwObj Folded 114 hi default link netrwTilde Folded 115 hi default link netrwTmp Folded 116 hi default link netrwTags Folded 117 hi default link netrwYacc netrwPlain 118endif 119 120" Current Syntax: {{{1 121let b:current_syntax = "netrwlist" 122" --------------------------------------------------------------------- 123" vim: ts=8 fdm=marker 124