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