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