blob: eceaf756749995eec81088ce924e9807fb33c60c [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: Lynx 2.7.1 style file
Bram Moolenaar3fdfa4a2004-10-07 21:02:47 +00003" Maintainer: Scott Bigham <dsb@killerbunnies.org>
4" Last Change: 2004 Oct 06
Bram Moolenaar071d4272004-06-13 20:20:40 +00005
Bram Moolenaar89bcfda2016-08-30 23:26:57 +02006" quit when a syntax file was already loaded
7if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +00008 finish
9endif
10
11" This setup is probably atypical for a syntax highlighting file, because
Viktor Szépe3fc7a7e2023-08-23 21:20:00 +020012" most of it is not really intended to be overridable. Instead, the
Bram Moolenaar071d4272004-06-13 20:20:40 +000013" highlighting is supposed to correspond to the highlighting specified by
14" the .lss file entries themselves; ie. the "bold" keyword should be bold,
15" the "red" keyword should be red, and so forth. The exceptions to this
16" are comments, of course, and the initial keyword identifying the affected
17" element, which will inherit the usual Identifier highlighting.
18
19syn match lssElement "^[^:]\+" nextgroup=lssMono
20
21syn match lssMono ":[^:]\+" contained nextgroup=lssFgColor contains=lssReverse,lssUnderline,lssBold,lssStandout
22
23syn keyword lssBold bold contained
24syn keyword lssReverse reverse contained
25syn keyword lssUnderline underline contained
26syn keyword lssStandout standout contained
27
28syn match lssFgColor ":[^:]\+" contained nextgroup=lssBgColor contains=lssRedFg,lssBlueFg,lssGreenFg,lssBrownFg,lssMagentaFg,lssCyanFg,lssLightgrayFg,lssGrayFg,lssBrightredFg,lssBrightgreenFg,lssYellowFg,lssBrightblueFg,lssBrightmagentaFg,lssBrightcyanFg
29
30syn case ignore
31syn keyword lssRedFg red contained
32syn keyword lssBlueFg blue contained
33syn keyword lssGreenFg green contained
34syn keyword lssBrownFg brown contained
35syn keyword lssMagentaFg magenta contained
36syn keyword lssCyanFg cyan contained
37syn keyword lssLightgrayFg lightgray contained
38syn keyword lssGrayFg gray contained
39syn keyword lssBrightredFg brightred contained
40syn keyword lssBrightgreenFg brightgreen contained
41syn keyword lssYellowFg yellow contained
42syn keyword lssBrightblueFg brightblue contained
43syn keyword lssBrightmagentaFg brightmagenta contained
44syn keyword lssBrightcyanFg brightcyan contained
45syn case match
46
47syn match lssBgColor ":[^:]\+" contained contains=lssRedBg,lssBlueBg,lssGreenBg,lssBrownBg,lssMagentaBg,lssCyanBg,lssLightgrayBg,lssGrayBg,lssBrightredBg,lssBrightgreenBg,lssYellowBg,lssBrightblueBg,lssBrightmagentaBg,lssBrightcyanBg,lssWhiteBg
48
49syn case ignore
50syn keyword lssRedBg red contained
51syn keyword lssBlueBg blue contained
52syn keyword lssGreenBg green contained
53syn keyword lssBrownBg brown contained
54syn keyword lssMagentaBg magenta contained
55syn keyword lssCyanBg cyan contained
56syn keyword lssLightgrayBg lightgray contained
57syn keyword lssGrayBg gray contained
58syn keyword lssBrightredBg brightred contained
59syn keyword lssBrightgreenBg brightgreen contained
60syn keyword lssYellowBg yellow contained
61syn keyword lssBrightblueBg brightblue contained
62syn keyword lssBrightmagentaBg brightmagenta contained
63syn keyword lssBrightcyanBg brightcyan contained
64syn keyword lssWhiteBg white contained
65syn case match
66
67syn match lssComment "#.*$"
68
69" Define the default highlighting.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020070" Only when an item doesn't have highlighting yet
71hi def link lssComment Comment
72hi def link lssElement Identifier
Bram Moolenaar071d4272004-06-13 20:20:40 +000073
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020074hi def lssBold term=bold cterm=bold
75hi def lssReverse term=reverse cterm=reverse
76hi def lssUnderline term=underline cterm=underline
77hi def lssStandout term=standout cterm=standout
Bram Moolenaar071d4272004-06-13 20:20:40 +000078
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020079hi def lssRedFg ctermfg=red
80hi def lssBlueFg ctermfg=blue
81hi def lssGreenFg ctermfg=green
82hi def lssBrownFg ctermfg=brown
83hi def lssMagentaFg ctermfg=magenta
84hi def lssCyanFg ctermfg=cyan
85hi def lssGrayFg ctermfg=gray
86if $COLORTERM == "rxvt"
87 " On rxvt's, bright colors are activated by setting the bold attribute.
88 hi def lssLightgrayFg ctermfg=gray cterm=bold
89 hi def lssBrightredFg ctermfg=red cterm=bold
90 hi def lssBrightgreenFg ctermfg=green cterm=bold
91 hi def lssYellowFg ctermfg=yellow cterm=bold
92 hi def lssBrightblueFg ctermfg=blue cterm=bold
93 hi def lssBrightmagentaFg ctermfg=magenta cterm=bold
94 hi def lssBrightcyanFg ctermfg=cyan cterm=bold
95else
96 hi def lssLightgrayFg ctermfg=lightgray
97 hi def lssBrightredFg ctermfg=lightred
98 hi def lssBrightgreenFg ctermfg=lightgreen
99 hi def lssYellowFg ctermfg=yellow
100 hi def lssBrightblueFg ctermfg=lightblue
101 hi def lssBrightmagentaFg ctermfg=lightmagenta
102 hi def lssBrightcyanFg ctermfg=lightcyan
Bram Moolenaar071d4272004-06-13 20:20:40 +0000103endif
104
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200105hi def lssRedBg ctermbg=red
106hi def lssBlueBg ctermbg=blue
107hi def lssGreenBg ctermbg=green
108hi def lssBrownBg ctermbg=brown
109hi def lssMagentaBg ctermbg=magenta
110hi def lssCyanBg ctermbg=cyan
111hi def lssLightgrayBg ctermbg=lightgray
112hi def lssGrayBg ctermbg=gray
113hi def lssBrightredBg ctermbg=lightred
114hi def lssBrightgreenBg ctermbg=lightgreen
115hi def lssYellowBg ctermbg=yellow
116hi def lssBrightblueBg ctermbg=lightblue
117hi def lssBrightmagentaBg ctermbg=lightmagenta
118hi def lssBrightcyanBg ctermbg=lightcyan
119hi def lssWhiteBg ctermbg=white ctermfg=black
120
Bram Moolenaar071d4272004-06-13 20:20:40 +0000121let b:current_syntax = "lss"
122
123" vim: ts=8