xref: /vim-8.2.3635/runtime/syntax/netrw.vim (revision ff034194)
1" Language   : Netrw Remote-Directory Listing Syntax
2" Maintainer : Charles E. Campbell, Jr.
3" Last change: Dec 18, 2012
4" Version    : 17
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=@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\+/"					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
26syn match  netrwTreeBar		"^\%([-+|] \)\+"					contains=netrwTreeBarSpace	nextgroup=@netrwTreeGroup
27syn match  netrwTreeBarSpace	" "					contained
28
29syn match  netrwClassify	"[*=|@/]\ze\%(\s\{2,}\|$\)"		contained
30syn match  netrwDateSep		"/"					contained
31syn match  netrwTime		"\d\{1,2}:\d\{2}:\d\{2}"		contained	contains=netrwTimeSep
32syn match  netrwTimeSep		":"
33
34syn match  netrwComment		'".*\%(\t\|$\)'						contains=@NetrwGroup,@NoSpell
35syn match  netrwHide		'^"\s*\(Hid\|Show\)ing:'	skipwhite		contains=@NoSpell		nextgroup=netrwHidePat
36syn match  netrwSlash		"/"				contained
37syn match  netrwHidePat		"[^,]\+"			contained skipwhite	contains=@NoSpell		nextgroup=netrwHideSep
38syn match  netrwHideSep		","				contained skipwhite					nextgroup=netrwHidePat
39syn match  netrwSortBy		"Sorted by"			contained transparent skipwhite				nextgroup=netrwList
40syn match  netrwSortSeq		"Sort sequence:"		contained transparent skipwhite			 	nextgroup=netrwList
41syn match  netrwCopyTgt		"Copy/Move Tgt:"		contained transparent skipwhite				nextgroup=netrwList
42syn match  netrwList		".*$"				contained		contains=netrwComma,@NoSpell
43syn match  netrwComma		","				contained
44syn region netrwQuickHelp	matchgroup=Comment start="Quick Help:\s\+" end="$"	contains=netrwHelpCmd,@NoSpell	keepend contained
45syn match  netrwHelpCmd		"\S\ze:"			contained skipwhite	contains=@NoSpell		nextgroup=netrwCmdSep
46syn match  netrwCmdSep		":"				contained nextgroup=netrwCmdNote
47syn match  netrwCmdNote		".\{-}\ze  "			contained		contains=@NoSpell
48syn match  netrwVersion		"(netrw.*)"			contained		contains=@NoSpell
49
50" -----------------------------
51" Special filetype highlighting {{{1
52" -----------------------------
53if 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 netrwLex		"\(\S\+ \)*\S\+\.\%(l\|lex\)\>"			contains=netrwTreeBar,@NoSpell
60 syn match netrwYacc		"\(\S\+ \)*\S\+\.y\>"				contains=netrwTreeBar,@NoSpell
61 syn match netrwData		"\(\S\+ \)*\S\+\.dat\>"				contains=netrwTreeBar,@NoSpell
62 syn match netrwDoc		"\(\S\+ \)*\S\+\.\%(doc\|txt\|pdf\|ps\)"	contains=netrwTreeBar,@NoSpell
63 syn match netrwHdr		"\(\S\+ \)*\S\+\.\%(h\|hpp\)\>"			contains=netrwTreeBar,@NoSpell
64 syn match netrwLib		"\(\S\+ \)*\S*\.\%(a\|so\|lib\|dll\)\>"		contains=netrwTreeBar,@NoSpell
65 syn match netrwMakeFile	"\<[mM]akefile\>\|\(\S\+ \)*\S\+\.mak\>"	contains=netrwTreeBar,@NoSpell
66 syn match netrwObj		"\(\S\+ \)*\S*\.\%(o\|obj\)\>"			contains=netrwTreeBar,@NoSpell
67 syn match netrwTags		"\<\(ANmenu\|ANtags\)\>"			contains=netrwTreeBar,@NoSpell
68 syn match netrwTags    	"\<tags\>"					contains=netrwTreeBar,@NoSpell
69 syn match netrwTilde		"\(\S\+ \)*\S\+\~\*\=\>"			contains=netrwTreeBar,@NoSpell
70 syn match netrwTmp		"\<tmp\(\S\+ \)*\S\+\>\|\(\S\+ \)*\S*tmp\>"	contains=netrwTreeBar,@NoSpell
71endif
72
73" ---------------------------------------------------------------------
74" Highlighting Links: {{{1
75if !exists("did_drchip_netrwlist_syntax")
76 let did_drchip_netrwlist_syntax= 1
77 hi default link netrwClassify	Function
78 hi default link netrwCmdSep	Delimiter
79 hi default link netrwComment	Comment
80 hi default link netrwDir	Directory
81 hi default link netrwHelpCmd	Function
82 hi default link netrwHidePat	Statement
83 hi default link netrwHideSep	netrwComment
84 hi default link netrwList	Statement
85 hi default link netrwVersion	Identifier
86 hi default link netrwSymLink	Question
87 hi default link netrwExe	PreProc
88 hi default link netrwDateSep	Delimiter
89
90 hi default link netrwTreeBar	Special
91 hi default link netrwTimeSep	netrwDateSep
92 hi default link netrwComma	netrwComment
93 hi default link netrwHide	netrwComment
94 hi default link netrwMarkFile	TabLineSel
95
96 " special syntax highlighting (see :he g:netrw_special_syntax)
97 hi default link netrwBak	NonText
98 hi default link netrwCompress	Folded
99 hi default link netrwCoreDump	WarningMsg
100 hi default link netrwData	DiffChange
101 hi default link netrwHdr	netrwPlain
102 hi default link netrwLex	netrwPlain
103 hi default link netrwLib	DiffChange
104 hi default link netrwMakefile	DiffChange
105 hi default link netrwObj	Folded
106 hi default link netrwTilde	Folded
107 hi default link netrwTmp	Folded
108 hi default link netrwTags	Folded
109 hi default link netrwYacc	netrwPlain
110endif
111
112" Current Syntax: {{{1
113let   b:current_syntax = "netrwlist"
114" ---------------------------------------------------------------------
115" vim: ts=8 fdm=marker
116