blob: 011a215503bfb558063fa78013b6d0020a3e65f8 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: Slrn setup file (based on slrn 0.9.8.0)
Bram Moolenaara93fa7e2006-04-17 22:14:47 +00003" Maintainer: Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
4" Former Maintainer: Preben 'Peppe' Guldberg <peppe-vim@wielders.org>
5" Last Change: $LastChangedDate: 2006-04-16 22:06:40 -0400 (dom, 16 apr 2006) $
6" URL: http://svn.debian.org/wsvn/pkg-vim/trunk/runtime/syntax/slrnrc.vim?op=file&rev=0&sc=0
7"
8" XXX This file is in need of a new maintainer, Debian VIM Maintainers maintain
9" it only because patches have been submitted for it by Debian users and the
10" former maintainer was MIA (Missing In Action), taking over its
11" maintenance was thus the only way to include those patches.
12" If you care about this file, and have time to maintain it please do so!
Bram Moolenaar071d4272004-06-13 20:20:40 +000013
14" For version 5.x: Clear all syntax items
15" For version 6.x: Quit when a syntax file was already loaded
16if version < 600
17 syntax clear
18elseif exists("b:current_syntax")
19 finish
20endif
21
22syn keyword slrnrcTodo contained Todo
23
24" In some places whitespace is illegal
25syn match slrnrcSpaceError contained "\s"
26
27syn match slrnrcNumber contained "-\=\<\d\+\>"
28syn match slrnrcNumber contained +'[^']\+'+
29
30syn match slrnrcSpecKey contained +\(\\[er"']\|\^[^'"]\|\\\o\o\o\)+
31
32syn match slrnrcKey contained "\S\+" contains=slrnrcSpecKey
33syn region slrnrcKey contained start=+"+ skip=+\\"+ end=+"+ oneline contains=slrnrcSpecKey
34syn region slrnrcKey contained start=+'+ skip=+\\'+ end=+'+ oneline contains=slrnrcSpecKey
35
36syn match slrnrcSpecChar contained +'+
37syn match slrnrcSpecChar contained +\\[n"]+
38syn match slrnrcSpecChar contained "%[dfmnrs%]"
39
40syn match slrnrcString contained /[^ \t%"']\+/ contains=slrnrcSpecChar
41syn region slrnrcString contained start=+"+ skip=+\\"+ end=+"+ oneline contains=slrnrcSpecChar
42
43syn match slrnSlangPreCondit "^#\s*ifn\=\(def\>\|false\>\|true\>\|\$\)"
44syn match slrnSlangPreCondit "^#\s*e\(lif\|lse\|ndif\)\>"
45
46syn match slrnrcComment "%.*$" contains=slrnrcTodo
47
48syn keyword slrnrcVarInt contained abort_unmodified_edits article_window_page_overlap auto_mark_article_as_read beep broken_xref broken_xref cc_followup check_new_groups
49syn keyword slrnrcVarInt contained color_by_score confirm_actions custom_sort_by_threads display_cursor_bar drop_bogus_groups editor_uses_mime_charset emphasized_text_mask
50syn keyword slrnrcVarInt contained emphasized_text_mode fold_headers fold_headers followup_strip_signature force_authentication force_authentication generate_date_header
51syn keyword slrnrcVarInt contained generate_email_from generate_email_from generate_message_id grouplens_port hide_pgpsignature hide_quotes hide_signature
52syn keyword slrnrcVarInt contained hide_verbatim_marks hide_verbatim_text highlight_unread_subjects highlight_urls ignore_signature kill_score lines_per_update
53syn keyword slrnrcVarInt contained mail_editor_is_mua max_low_score max_queued_groups min_high_score mouse netiquette_warnings new_subject_breaks_threads no_autosave
54syn keyword slrnrcVarInt contained no_backups prefer_head process_verbatim_marks query_next_article query_next_group query_read_group_cutoff read_active reject_long_lines
55syn keyword slrnrcVarInt contained scroll_by_page show_article show_thread_subject simulate_graphic_chars smart_quote sorting_method spoiler_char spoiler_char
56syn keyword slrnrcVarInt contained spoiler_display_mode spoiler_display_mode spool_check_up_on_nov spool_check_up_on_nov uncollapse_threads unsubscribe_new_groups use_blink
57syn keyword slrnrcVarInt contained use_color use_flow_control use_grouplens use_grouplens use_header_numbers use_inews use_inews use_localtime use_metamail use_mime use_mime
58syn keyword slrnrcVarInt contained use_recommended_msg_id use_slrnpull use_slrnpull use_tilde use_tmpdir use_uudeview use_uudeview warn_followup_to wrap_flags wrap_method
59syn keyword slrnrcVarInt contained write_newsrc_flags
60
61" Listed for removal
62syn keyword slrnrcVarInt contained author_display display_author_realname display_score group_dsc_start_column process_verbatum_marks prompt_next_group query_reconnect
63syn keyword slrnrcVarInt contained show_descriptions use_xgtitle
64
65" Match as a "string" too
66syn region slrnrcVarIntStr contained matchgroup=slrnrcVarInt start=+"+ end=+"+ oneline contains=slrnrcVarInt,slrnrcSpaceError
67
68syn keyword slrnrcVarStr contained Xbrowser art_help_line art_status_line cansecret_file cc_post_string charset custom_headers custom_sort_order decode_directory
69syn keyword slrnrcVarStr contained editor_command failed_posts_file followup_custom_headers followup_date_format followup_string followupto_string group_help_line
70syn keyword slrnrcVarStr contained group_status_line grouplens_host grouplens_pseudoname header_help_line header_status_line hostname inews_program macro_directory
71syn keyword slrnrcVarStr contained mail_editor_command metamail_command mime_charset non_Xbrowser organization overview_date_format post_editor_command post_object
72syn keyword slrnrcVarStr contained postpone_directory printer_name quote_string realname reply_custom_headers reply_string replyto save_directory save_posts save_replies
73syn keyword slrnrcVarStr contained score_editor_command scorefile sendmail_command server_object signature signoff_string spool_active_file spool_activetimes_file
74syn keyword slrnrcVarStr contained spool_inn_root spool_newsgroups_file spool_nov_file spool_nov_root spool_overviewfmt_file spool_root supersedes_custom_headers
75syn keyword slrnrcVarStr contained top_status_line username
76
77" Listed for removal
78syn keyword slrnrcVarStr contained followup cc_followup_string
79
80" Match as a "string" too
81syn region slrnrcVarStrStr contained matchgroup=slrnrcVarStr start=+"+ end=+"+ oneline contains=slrnrcVarStr,slrnrcSpaceError
82
83" Various commands
84syn region slrnrcCmdLine matchgroup=slrnrcCmd start="\<\(autobaud\|color\|compatible_charsets\|group_display_format\|grouplens_add\|header_display_format\|ignore_quotes\|include\|interpret\|mono\|nnrpaccess\|posting_host\|server\|set\|setkey\|strip_re_regexp\|strip_sig_regexp\|strip_was_regexp\|unsetkey\|visible_headers\)\>" end="$" oneline contains=slrnrc\(String\|Comment\)
85
86" Listed for removal
87syn region slrnrcCmdLine matchgroup=slrnrcCmd start="\<\(cc_followup_string\|decode_directory\|editor_command\|followup\|hostname\|organization\|quote_string\|realname\|replyto\|scorefile\|signature\|username\)\>" end="$" oneline contains=slrnrc\(String\|Comment\)
88
89" Setting variables
90syn keyword slrnrcSet contained set
91syn match slrnrcSetStr "^\s*set\s\+\S\+" skipwhite nextgroup=slrnrcString contains=slrnrcSet,slrnrcVarStr\(Str\)\=
92syn match slrnrcSetInt contained "^\s*set\s\+\S\+" contains=slrnrcSet,slrnrcVarInt\(Str\)\=
93syn match slrnrcSetIntLine "^\s*set\s\+\S\+\s\+\(-\=\d\+\>\|'[^']\+'\)" contains=slrnrcSetInt,slrnrcNumber,slrnrcVarInt
94
95" Color definitions
96syn match slrnrcColorObj contained "\<quotes\d\+\>"
97syn keyword slrnrcColorObj contained article author boldtext box cursor date description error frame from_myself group grouplens_display header_name header_number headers
98syn keyword slrnrcColorObj contained high_score italicstext menu menu_press message neg_score normal pgpsignature pos_score quotes response_char selection signature status
99syn keyword slrnrcColorObj contained subject thread_number tilde tree underlinetext unread_subject url verbatim
100
101" Listed for removal
102syn keyword slrnrcColorObj contained verbatum
103
104syn region slrnrcColorObjStr contained matchgroup=slrnrcColorObj start=+"+ end=+"+ oneline contains=slrnrcColorObj,slrnrcSpaceError
105syn keyword slrnrcColorVal contained default
106syn keyword slrnrcColorVal contained black blue brightblue brightcyan brightgreen brightmagenta brightred brown cyan gray green lightgray magenta red white yellow
107syn region slrnrcColorValStr contained matchgroup=slrnrcColorVal start=+"+ end=+"+ oneline contains=slrnrcColorVal,slrnrcSpaceError
108" Mathcing a function with three arguments
109syn keyword slrnrcColor contained color
110syn match slrnrcColorInit contained "^\s*color\s\+\S\+" skipwhite nextgroup=slrnrcColorVal\(Str\)\= contains=slrnrcColor\(Obj\|ObjStr\)\=
111syn match slrnrcColorLine "^\s*color\s\+\S\+\s\+\S\+" skipwhite nextgroup=slrnrcColorVal\(Str\)\= contains=slrnrcColor\(Init\|Val\|ValStr\)
112
113" Mono settings
114syn keyword slrnrcMonoVal contained blink bold none reverse underline
115syn region slrnrcMonoValStr contained matchgroup=slrnrcMonoVal start=+"+ end=+"+ oneline contains=slrnrcMonoVal,slrnrcSpaceError
116" Color object is inherited
117" Mono needs at least one argument
118syn keyword slrnrcMono contained mono
119syn match slrnrcMonoInit contained "^\s*mono\s\+\S\+" contains=slrnrcMono,slrnrcColorObj\(Str\)\=
120syn match slrnrcMonoLine "^\s*mono\s\+\S\+\s\+\S.*" contains=slrnrcMono\(Init\|Val\|ValStr\),slrnrcComment
121
122" Functions in article mode
123syn keyword slrnrcFunArt contained article_bob article_eob article_left article_line_down article_line_up article_page_down article_page_up article_right article_search
124syn keyword slrnrcFunArt contained author_search_backward author_search_forward browse_url cancel catchup catchup_all create_score decode delete delete_thread digit_arg
125syn keyword slrnrcFunArt contained enlarge_article_window evaluate_cmd exchange_mark expunge fast_quit followup forward forward_digest get_children_headers get_parent_header
126syn keyword slrnrcFunArt contained goto_article goto_last_read grouplens_rate_article header_bob header_eob header_line_down header_line_up header_page_down header_page_up
127syn keyword slrnrcFunArt contained help hide_article locate_article mark_spot next next_high_score next_same_subject pipe post post_postponed previous print quit redraw
128syn keyword slrnrcFunArt contained repeat_last_key reply request save show_spoilers shrink_article_window skip_quotes skip_to_next_group skip_to_previous_group
129syn keyword slrnrcFunArt contained subject_search_backward subject_search_forward supersede suspend tag_header toggle_collapse_threads toggle_header_formats
Bram Moolenaara93fa7e2006-04-17 22:14:47 +0000130syn keyword slrnrcFunArt contained toggle_header_tag toggle_headers toggle_pgpsignature toggle_quotes toggle_rot13 toggle_signature toggle_sort toggle_verbatim_marks
Bram Moolenaar071d4272004-06-13 20:20:40 +0000131syn keyword slrnrcFunArt contained toggle_verbatim_text uncatchup uncatchup_all undelete untag_headers view_scores wrap_article zoom_article_window
132
133" Listed for removal
134syn keyword slrnrcFunArt contained art_bob art_eob art_xpunge article_linedn article_lineup article_pagedn article_pageup down enlarge_window goto_beginning goto_end left
135syn keyword slrnrcFunArt contained locate_header_by_msgid pagedn pageup pipe_article prev print_article right scroll_dn scroll_up shrink_window skip_to_prev_group
136syn keyword slrnrcFunArt contained toggle_show_author up
137
138" Functions in group mode
139syn keyword slrnrcFunGroup contained add_group bob catchup digit_arg eob evaluate_cmd group_search group_search_backward group_search_forward help line_down line_up move_group
140syn keyword slrnrcFunGroup contained page_down page_up post post_postponed quit redraw refresh_groups repeat_last_key save_newsrc select_group subscribe suspend
141syn keyword slrnrcFunGroup contained toggle_group_formats toggle_hidden toggle_list_all toggle_scoring transpose_groups uncatchup unsubscribe
142
143" Listed for removal
144syn keyword slrnrcFunGroup contained down group_bob group_eob pagedown pageup toggle_group_display uncatch_up up
145
146" Functions in readline mode (actually from slang's slrline.c)
Bram Moolenaara93fa7e2006-04-17 22:14:47 +0000147syn keyword slrnrcFunRead contained bdel bol complete cycle del delbol delbow deleol down enter eol left quoted_insert right self_insert trim up
Bram Moolenaar071d4272004-06-13 20:20:40 +0000148
149" Binding keys
150syn keyword slrnrcSetkeyObj contained article group readline
151syn region slrnrcSetkeyObjStr contained matchgroup=slrnrcSetkeyObj start=+"+ end=+"+ oneline contains=slrnrcSetkeyObj
152syn match slrnrcSetkeyArt contained '\("\=\)\<article\>\1\s\+\S\+' skipwhite nextgroup=slrnrcKey contains=slrnrcSetKeyObj\(Str\)\=,slrnrcFunArt
153syn match slrnrcSetkeyGroup contained '\("\=\)\<group\>\1\s\+\S\+' skipwhite nextgroup=slrnrcKey contains=slrnrcSetKeyObj\(Str\)\=,slrnrcFunGroup
154syn match slrnrcSetkeyRead contained '\("\=\)\<readline\>\1\s\+\S\+' skipwhite nextgroup=slrnrcKey contains=slrnrcSetKeyObj\(Str\)\=,slrnrcFunRead
155syn match slrnrcSetkey "^\s*setkey\>" skipwhite nextgroup=slrnrcSetkeyArt,slrnrcSetkeyGroup,slrnrcSetkeyRead
156
157" Unbinding keys
158syn match slrnrcUnsetkey '^\s*unsetkey\s\+\("\)\=\(article\|group\|readline\)\>\1' skipwhite nextgroup=slrnrcKey contains=slrnrcSetkeyObj\(Str\)\=
159
160" Define the default highlighting.
161" For version 5.7 and earlier: only when not done already
162" For version 5.8 and later: only when an item doesn't have highlighting yet
163if version >= 508 || !exists("did_slrnrc_syntax_inits")
164 if version < 508
165 let did_slrnrc_syntax_inits = 1
166 command -nargs=+ HiLink hi link <args>
167 else
168 command -nargs=+ HiLink hi def link <args>
169 endif
170
171 HiLink slrnrcTodo Todo
172 HiLink slrnrcSpaceError Error
173 HiLink slrnrcNumber Number
174 HiLink slrnrcSpecKey SpecialChar
175 HiLink slrnrcKey String
176 HiLink slrnrcSpecChar SpecialChar
177 HiLink slrnrcString String
178 HiLink slrnSlangPreCondit Special
179 HiLink slrnrcComment Comment
180 HiLink slrnrcVarInt Identifier
181 HiLink slrnrcVarStr Identifier
182 HiLink slrnrcCmd slrnrcSet
183 HiLink slrnrcSet Operator
184 HiLink slrnrcColor Keyword
185 HiLink slrnrcColorObj Identifier
186 HiLink slrnrcColorVal String
187 HiLink slrnrcMono Keyword
188 HiLink slrnrcMonoObj Identifier
189 HiLink slrnrcMonoVal String
190 HiLink slrnrcFunArt Macro
191 HiLink slrnrcFunGroup Macro
192 HiLink slrnrcFunRead Macro
193 HiLink slrnrcSetkeyObj Identifier
194 HiLink slrnrcSetkey Keyword
195 HiLink slrnrcUnsetkey slrnrcSetkey
196
197 delcommand HiLink
198endif
199
200let b:current_syntax = "slrnrc"
201
202"EOF vim: ts=8 noet tw=120 sw=8 sts=0