1
0
Fork 0
mirror of https://github.com/vim/vim synced 2025-03-31 15:06:43 +02:00
vim/runtime/syntax/netrw.vim

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

149 lines
7.2 KiB
VimL
Raw Normal View History

2017-11-05 18:19:24 +01:00
" Language : Netrw Listing Syntax
" Maintainer: This runtime file is looking for a new maintainer.
" Former Maintainer: Charles E. Campbell
" Last Change: Nov 07, 2019
" 2024 Feb 19 by Vim Project (announce adoption)
2019-11-10 22:09:11 +01:00
" Version : 20
2004-09-02 19:12:26 +00:00
" ---------------------------------------------------------------------
if exists("b:current_syntax")
2004-06-20 12:51:53 +00:00
finish
endif
2004-09-02 19:12:26 +00:00
" ---------------------------------------------------------------------
2004-06-20 12:51:53 +00:00
" Directory List Syntax Highlighting: {{{1
2008-06-24 20:39:31 +00:00
syn cluster NetrwGroup contains=netrwHide,netrwSortBy,netrwSortSeq,netrwQuickHelp,netrwVersion,netrwCopyTgt
syn cluster NetrwTreeGroup contains=netrwDir,netrwSymLink,netrwExe
2005-09-10 19:22:57 +00:00
2015-01-07 16:57:10 +01:00
syn match netrwPlain "\(\S\+ \)*\S\+" contains=netrwLink,@NoSpell
2010-01-06 20:54:52 +01:00
syn match netrwSpecial "\%(\S\+ \)*\S\+[*|=]\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
syn match netrwDir "\.\{1,2}/" contains=netrwClassify,@NoSpell
2014-01-23 14:24:41 +01:00
syn match netrwDir "\%(\S\+ \)*\S\+/\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
2010-01-06 20:54:52 +01:00
syn match netrwSizeDate "\<\d\+\s\d\{1,2}/\d\{1,2}/\d\{4}\s" skipwhite contains=netrwDateSep,@NoSpell nextgroup=netrwTime
syn match netrwSymLink "\%(\S\+ \)*\S\+@\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
2011-10-20 22:22:38 +02:00
syn match netrwExe "\%(\S\+ \)*\S*[^~]\*\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
2015-01-07 16:57:10 +01:00
if has("gui_running") && (&enc == 'utf-8' || &enc == 'utf-16' || &enc == 'ucs-4')
2014-01-23 14:24:41 +01:00
syn match netrwTreeBar "^\%([-+|│] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup
2015-01-07 16:57:10 +01:00
else
syn match netrwTreeBar "^\%([-+|] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup
endif
2010-01-06 20:54:52 +01:00
syn match netrwTreeBarSpace " " contained
2005-09-10 19:22:57 +00:00
2010-01-06 20:54:52 +01:00
syn match netrwClassify "[*=|@/]\ze\%(\s\{2,}\|$\)" contained
syn match netrwDateSep "/" contained
syn match netrwTime "\d\{1,2}:\d\{2}:\d\{2}" contained contains=netrwTimeSep
2007-05-05 17:54:07 +00:00
syn match netrwTimeSep ":"
2005-09-10 19:22:57 +00:00
2010-01-06 20:54:52 +01:00
syn match netrwComment '".*\%(\t\|$\)' contains=@NetrwGroup,@NoSpell
syn match netrwHide '^"\s*\(Hid\|Show\)ing:' skipwhite contains=@NoSpell nextgroup=netrwHidePat
2005-09-10 19:22:57 +00:00
syn match netrwSlash "/" contained
2010-01-06 20:54:52 +01:00
syn match netrwHidePat "[^,]\+" contained skipwhite contains=@NoSpell nextgroup=netrwHideSep
syn match netrwHideSep "," contained skipwhite nextgroup=netrwHidePat
syn match netrwSortBy "Sorted by" contained transparent skipwhite nextgroup=netrwList
syn match netrwSortSeq "Sort sequence:" contained transparent skipwhite nextgroup=netrwList
syn match netrwCopyTgt "Copy/Move Tgt:" contained transparent skipwhite nextgroup=netrwList
syn match netrwList ".*$" contained contains=netrwComma,@NoSpell
2005-09-10 19:22:57 +00:00
syn match netrwComma "," contained
2014-03-22 21:02:50 +01:00
syn region netrwQuickHelp matchgroup=Comment start="Quick Help:\s\+" end="$" contains=netrwHelpCmd,netrwQHTopic,@NoSpell keepend contained
syn match netrwHelpCmd "\S\+\ze:" contained skipwhite contains=@NoSpell nextgroup=netrwCmdSep
2015-01-07 16:57:10 +01:00
syn match netrwQHTopic "([a-zA-Z &]\+)" contained skipwhite
2005-09-10 19:22:57 +00:00
syn match netrwCmdSep ":" contained nextgroup=netrwCmdNote
2010-01-06 20:54:52 +01:00
syn match netrwCmdNote ".\{-}\ze " contained contains=@NoSpell
syn match netrwVersion "(netrw.*)" contained contains=@NoSpell
2015-01-07 16:57:10 +01:00
syn match netrwLink "-->" contained skipwhite
2004-06-20 12:51:53 +00:00
2008-06-24 20:39:31 +00:00
" -----------------------------
" Special filetype highlighting {{{1
" -----------------------------
2017-11-05 18:19:24 +01:00
if exists("g:netrw_special_syntax") && g:netrw_special_syntax
if exists("+suffixes") && &suffixes != ""
let suflist= join(split(&suffixes,','))
let suflist= escape(substitute(suflist," ",'\\|','g'),'.~')
exe "syn match netrwSpecFile '\\(\\S\\+ \\)*\\S*\\(".suflist."\\)\\>' contains=netrwTreeBar,@NoSpell"
endif
syn match netrwBak "\(\S\+ \)*\S\+\.bak\>" contains=netrwTreeBar,@NoSpell
syn match netrwCompress "\(\S\+ \)*\S\+\.\%(gz\|bz2\|Z\|zip\)\>" contains=netrwTreeBar,@NoSpell
2010-01-06 20:54:52 +01:00
if has("unix")
2017-11-05 18:19:24 +01:00
syn match netrwCoreDump "\<core\%(\.\d\+\)\=\>" contains=netrwTreeBar,@NoSpell
2010-01-06 20:54:52 +01:00
endif
2017-11-05 18:19:24 +01:00
syn match netrwLex "\(\S\+ \)*\S\+\.\%(l\|lex\)\>" contains=netrwTreeBar,@NoSpell
syn match netrwYacc "\(\S\+ \)*\S\+\.y\>" contains=netrwTreeBar,@NoSpell
syn match netrwData "\(\S\+ \)*\S\+\.dat\>" contains=netrwTreeBar,@NoSpell
syn match netrwDoc "\(\S\+ \)*\S\+\.\%(doc\|txt\|pdf\|ps\|docx\)\>" contains=netrwTreeBar,@NoSpell
syn match netrwHdr "\(\S\+ \)*\S\+\.\%(h\|hpp\)\>" contains=netrwTreeBar,@NoSpell
syn match netrwLib "\(\S\+ \)*\S*\.\%(a\|so\|lib\|dll\)\>" contains=netrwTreeBar,@NoSpell
syn match netrwMakeFile "\<[mM]akefile\>\|\(\S\+ \)*\S\+\.mak\>" contains=netrwTreeBar,@NoSpell
syn match netrwObj "\(\S\+ \)*\S*\.\%(o\|obj\)\>" contains=netrwTreeBar,@NoSpell
syn match netrwPix "\c\(\S\+ \)*\S*\.\%(bmp\|fits\=\|gif\|je\=pg\|pcx\|ppc\|pgm\|png\|ppm\|psd\|rgb\|tif\|xbm\|xcf\)\>" contains=netrwTreeBar,@NoSpell
syn match netrwTags "\<\(ANmenu\|ANtags\)\>" contains=netrwTreeBar,@NoSpell
syn match netrwTags "\<tags\>" contains=netrwTreeBar,@NoSpell
syn match netrwTilde "\(\S\+ \)*\S\+\~\*\=\>" contains=netrwTreeBar,@NoSpell
syn match netrwTmp "\<tmp\(\S\+ \)*\S\+\>\|\(\S\+ \)*\S*tmp\>" contains=netrwTreeBar,@NoSpell
2008-06-24 20:39:31 +00:00
endif
2004-09-02 19:12:26 +00:00
" ---------------------------------------------------------------------
2004-06-20 12:51:53 +00:00
" Highlighting Links: {{{1
2008-06-24 20:39:31 +00:00
if !exists("did_drchip_netrwlist_syntax")
2004-06-20 12:51:53 +00:00
let did_drchip_netrwlist_syntax= 1
2010-01-06 20:54:52 +01:00
hi default link netrwClassify Function
hi default link netrwCmdSep Delimiter
hi default link netrwComment Comment
hi default link netrwDir Directory
hi default link netrwHelpCmd Function
2014-03-22 21:02:50 +01:00
hi default link netrwQHTopic Number
2010-01-06 20:54:52 +01:00
hi default link netrwHidePat Statement
hi default link netrwHideSep netrwComment
hi default link netrwList Statement
hi default link netrwVersion Identifier
hi default link netrwSymLink Question
hi default link netrwExe PreProc
hi default link netrwDateSep Delimiter
2004-07-02 15:38:35 +00:00
2010-01-06 20:54:52 +01:00
hi default link netrwTreeBar Special
hi default link netrwTimeSep netrwDateSep
hi default link netrwComma netrwComment
hi default link netrwHide netrwComment
2011-06-19 05:09:16 +02:00
hi default link netrwMarkFile TabLineSel
2015-01-07 16:57:10 +01:00
hi default link netrwLink Special
2008-06-24 20:39:31 +00:00
" special syntax highlighting (see :he g:netrw_special_syntax)
2010-01-06 20:54:52 +01:00
hi default link netrwCoreDump WarningMsg
2020-09-19 18:50:13 +02:00
hi default link netrwData Folded
2013-04-24 18:51:19 +02:00
hi default link netrwHdr netrwPlain
hi default link netrwLex netrwPlain
2010-01-06 20:54:52 +01:00
hi default link netrwLib DiffChange
hi default link netrwMakefile DiffChange
2013-04-24 18:51:19 +02:00
hi default link netrwYacc netrwPlain
2017-11-05 18:19:24 +01:00
hi default link netrwPix Special
hi default link netrwBak netrwGray
hi default link netrwCompress netrwGray
hi default link netrwSpecFile netrwGray
hi default link netrwObj netrwGray
hi default link netrwTags netrwGray
hi default link netrwTilde netrwGray
hi default link netrwTmp netrwGray
2004-06-20 12:51:53 +00:00
endif
2017-11-05 18:19:24 +01:00
" set up netrwGray to be understated (but not Ignore'd or Conceal'd, as those
" can be hard/impossible to read). Users may override this in a colorscheme by
" specifying netrwGray highlighting.
redir => s:netrwgray
sil hi netrwGray
redir END
if s:netrwgray !~ 'guifg'
if has("gui") && has("gui_running")
if &bg == "dark"
exe "hi netrwGray gui=NONE guifg=gray30"
else
exe "hi netrwGray gui=NONE guifg=gray70"
endif
else
hi link netrwGray Folded
endif
endif
2004-06-20 12:51:53 +00:00
" Current Syntax: {{{1
let b:current_syntax = "netrwlist"
2004-09-02 19:12:26 +00:00
" ---------------------------------------------------------------------
2004-06-20 12:51:53 +00:00
" vim: ts=8 fdm=marker