blob: 16e3c90c44aabe69993d7ea4b2b03fccf992274c [file] [log] [blame]
Bram Moolenaar69a7cb42004-06-20 12:51:53 +00001" Language : Netrw Remote-Directory Listing Syntax
2" Maintainer : Charles E. Campbell, Jr.
Bram Moolenaara6878372014-03-22 21:02:50 +01003" Last change: Mar 07, 2014
4" Version : 18
Bram Moolenaard4755bb2004-09-02 19:12:26 +00005" ---------------------------------------------------------------------
Bram Moolenaar69a7cb42004-06-20 12:51:53 +00006
7" Syntax Clearing: {{{1
8if version < 600
9 syntax clear
10elseif exists("b:current_syntax")
11 finish
12endif
13
Bram Moolenaard4755bb2004-09-02 19:12:26 +000014" ---------------------------------------------------------------------
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000015" Directory List Syntax Highlighting: {{{1
Bram Moolenaara7241f52008-06-24 20:39:31 +000016syn cluster NetrwGroup contains=netrwHide,netrwSortBy,netrwSortSeq,netrwQuickHelp,netrwVersion,netrwCopyTgt
17syn cluster NetrwTreeGroup contains=netrwDir,netrwSymLink,netrwExe
Bram Moolenaar578b49e2005-09-10 19:22:57 +000018
Bram Moolenaar5c736222010-01-06 20:54:52 +010019syn match netrwPlain "\(\S\+ \)*\S\+" contains=@NoSpell
20syn match netrwSpecial "\%(\S\+ \)*\S\+[*|=]\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
21syn match netrwDir "\.\{1,2}/" contains=netrwClassify,@NoSpell
Bram Moolenaar8d043172014-01-23 14:24:41 +010022"syn match netrwDir "\%(\S\+ \)*\S\+/" contains=netrwClassify,@NoSpell
23syn match netrwDir "\%(\S\+ \)*\S\+/\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
Bram Moolenaar5c736222010-01-06 20:54:52 +010024syn match netrwSizeDate "\<\d\+\s\d\{1,2}/\d\{1,2}/\d\{4}\s" skipwhite contains=netrwDateSep,@NoSpell nextgroup=netrwTime
25syn match netrwSymLink "\%(\S\+ \)*\S\+@\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
Bram Moolenaar15146672011-10-20 22:22:38 +020026syn match netrwExe "\%(\S\+ \)*\S*[^~]\*\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
Bram Moolenaar8d043172014-01-23 14:24:41 +010027syn match netrwTreeBar "^\%([-+|│] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup
Bram Moolenaar5c736222010-01-06 20:54:52 +010028syn match netrwTreeBarSpace " " contained
Bram Moolenaar578b49e2005-09-10 19:22:57 +000029
Bram Moolenaar5c736222010-01-06 20:54:52 +010030syn match netrwClassify "[*=|@/]\ze\%(\s\{2,}\|$\)" contained
31syn match netrwDateSep "/" contained
32syn match netrwTime "\d\{1,2}:\d\{2}:\d\{2}" contained contains=netrwTimeSep
Bram Moolenaar9964e462007-05-05 17:54:07 +000033syn match netrwTimeSep ":"
Bram Moolenaar578b49e2005-09-10 19:22:57 +000034
Bram Moolenaar5c736222010-01-06 20:54:52 +010035syn match netrwComment '".*\%(\t\|$\)' contains=@NetrwGroup,@NoSpell
36syn match netrwHide '^"\s*\(Hid\|Show\)ing:' skipwhite contains=@NoSpell nextgroup=netrwHidePat
Bram Moolenaar578b49e2005-09-10 19:22:57 +000037syn match netrwSlash "/" contained
Bram Moolenaar5c736222010-01-06 20:54:52 +010038syn match netrwHidePat "[^,]\+" contained skipwhite contains=@NoSpell nextgroup=netrwHideSep
39syn match netrwHideSep "," contained skipwhite nextgroup=netrwHidePat
40syn match netrwSortBy "Sorted by" contained transparent skipwhite nextgroup=netrwList
41syn match netrwSortSeq "Sort sequence:" contained transparent skipwhite nextgroup=netrwList
42syn match netrwCopyTgt "Copy/Move Tgt:" contained transparent skipwhite nextgroup=netrwList
43syn match netrwList ".*$" contained contains=netrwComma,@NoSpell
Bram Moolenaar578b49e2005-09-10 19:22:57 +000044syn match netrwComma "," contained
Bram Moolenaara6878372014-03-22 21:02:50 +010045syn region netrwQuickHelp matchgroup=Comment start="Quick Help:\s\+" end="$" contains=netrwHelpCmd,netrwQHTopic,@NoSpell keepend contained
46syn match netrwHelpCmd "\S\+\ze:" contained skipwhite contains=@NoSpell nextgroup=netrwCmdSep
47syn match netrwQHTopic "-\a\+-" contained skipwhite
Bram Moolenaar578b49e2005-09-10 19:22:57 +000048syn match netrwCmdSep ":" contained nextgroup=netrwCmdNote
Bram Moolenaar5c736222010-01-06 20:54:52 +010049syn match netrwCmdNote ".\{-}\ze " contained contains=@NoSpell
50syn match netrwVersion "(netrw.*)" contained contains=@NoSpell
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000051
Bram Moolenaara7241f52008-06-24 20:39:31 +000052" -----------------------------
53" Special filetype highlighting {{{1
54" -----------------------------
55if exists("g:netrw_special_syntax") && netrw_special_syntax
Bram Moolenaar5c736222010-01-06 20:54:52 +010056 syn match netrwBak "\(\S\+ \)*\S\+\.bak\>" contains=netrwTreeBar,@NoSpell
57 syn match netrwCompress "\(\S\+ \)*\S\+\.\%(gz\|bz2\|Z\|zip\)\>" contains=netrwTreeBar,@NoSpell
58 if has("unix")
59 syn match netrwCoreDump "\<core\%(\.\d\+\)\=\>" contains=netrwTreeBar,@NoSpell
60 endif
Bram Moolenaarff034192013-04-24 18:51:19 +020061 syn match netrwLex "\(\S\+ \)*\S\+\.\%(l\|lex\)\>" contains=netrwTreeBar,@NoSpell
62 syn match netrwYacc "\(\S\+ \)*\S\+\.y\>" contains=netrwTreeBar,@NoSpell
Bram Moolenaar5c736222010-01-06 20:54:52 +010063 syn match netrwData "\(\S\+ \)*\S\+\.dat\>" contains=netrwTreeBar,@NoSpell
Bram Moolenaarff034192013-04-24 18:51:19 +020064 syn match netrwDoc "\(\S\+ \)*\S\+\.\%(doc\|txt\|pdf\|ps\)" contains=netrwTreeBar,@NoSpell
65 syn match netrwHdr "\(\S\+ \)*\S\+\.\%(h\|hpp\)\>" contains=netrwTreeBar,@NoSpell
Bram Moolenaar5c736222010-01-06 20:54:52 +010066 syn match netrwLib "\(\S\+ \)*\S*\.\%(a\|so\|lib\|dll\)\>" contains=netrwTreeBar,@NoSpell
67 syn match netrwMakeFile "\<[mM]akefile\>\|\(\S\+ \)*\S\+\.mak\>" contains=netrwTreeBar,@NoSpell
68 syn match netrwObj "\(\S\+ \)*\S*\.\%(o\|obj\)\>" contains=netrwTreeBar,@NoSpell
Bram Moolenaar5c736222010-01-06 20:54:52 +010069 syn match netrwTags "\<\(ANmenu\|ANtags\)\>" contains=netrwTreeBar,@NoSpell
Bram Moolenaarff034192013-04-24 18:51:19 +020070 syn match netrwTags "\<tags\>" contains=netrwTreeBar,@NoSpell
Bram Moolenaar15146672011-10-20 22:22:38 +020071 syn match netrwTilde "\(\S\+ \)*\S\+\~\*\=\>" contains=netrwTreeBar,@NoSpell
Bram Moolenaar5c736222010-01-06 20:54:52 +010072 syn match netrwTmp "\<tmp\(\S\+ \)*\S\+\>\|\(\S\+ \)*\S*tmp\>" contains=netrwTreeBar,@NoSpell
Bram Moolenaara7241f52008-06-24 20:39:31 +000073endif
74
Bram Moolenaard4755bb2004-09-02 19:12:26 +000075" ---------------------------------------------------------------------
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000076" Highlighting Links: {{{1
Bram Moolenaara7241f52008-06-24 20:39:31 +000077if !exists("did_drchip_netrwlist_syntax")
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000078 let did_drchip_netrwlist_syntax= 1
Bram Moolenaar5c736222010-01-06 20:54:52 +010079 hi default link netrwClassify Function
80 hi default link netrwCmdSep Delimiter
81 hi default link netrwComment Comment
82 hi default link netrwDir Directory
83 hi default link netrwHelpCmd Function
Bram Moolenaara6878372014-03-22 21:02:50 +010084 hi default link netrwQHTopic Number
Bram Moolenaar5c736222010-01-06 20:54:52 +010085 hi default link netrwHidePat Statement
86 hi default link netrwHideSep netrwComment
87 hi default link netrwList Statement
88 hi default link netrwVersion Identifier
89 hi default link netrwSymLink Question
90 hi default link netrwExe PreProc
91 hi default link netrwDateSep Delimiter
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +000092
Bram Moolenaar5c736222010-01-06 20:54:52 +010093 hi default link netrwTreeBar Special
94 hi default link netrwTimeSep netrwDateSep
95 hi default link netrwComma netrwComment
96 hi default link netrwHide netrwComment
Bram Moolenaar251e1912011-06-19 05:09:16 +020097 hi default link netrwMarkFile TabLineSel
Bram Moolenaara7241f52008-06-24 20:39:31 +000098
99 " special syntax highlighting (see :he g:netrw_special_syntax)
Bram Moolenaar5c736222010-01-06 20:54:52 +0100100 hi default link netrwBak NonText
101 hi default link netrwCompress Folded
102 hi default link netrwCoreDump WarningMsg
103 hi default link netrwData DiffChange
Bram Moolenaarff034192013-04-24 18:51:19 +0200104 hi default link netrwHdr netrwPlain
105 hi default link netrwLex netrwPlain
Bram Moolenaar5c736222010-01-06 20:54:52 +0100106 hi default link netrwLib DiffChange
107 hi default link netrwMakefile DiffChange
108 hi default link netrwObj Folded
109 hi default link netrwTilde Folded
110 hi default link netrwTmp Folded
111 hi default link netrwTags Folded
Bram Moolenaarff034192013-04-24 18:51:19 +0200112 hi default link netrwYacc netrwPlain
Bram Moolenaar69a7cb42004-06-20 12:51:53 +0000113endif
114
115" Current Syntax: {{{1
116let b:current_syntax = "netrwlist"
Bram Moolenaard4755bb2004-09-02 19:12:26 +0000117" ---------------------------------------------------------------------
Bram Moolenaar69a7cb42004-06-20 12:51:53 +0000118" vim: ts=8 fdm=marker