blob: 91094c7978a84fdc5e483187fdc1fe831c649367 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
Bram Moolenaar42eeac32005-06-29 22:40:58 +00002" Language: readline(3) configuration file
Bram Moolenaar57657d82006-04-21 22:12:41 +00003" Maintainer: Nikolai Weibull <now@bitwi.se>
Bram Moolenaar5c736222010-01-06 20:54:52 +01004" Latest Revision: 2009-05-25
Bram Moolenaar071d4272004-06-13 20:20:40 +00005" readline_has_bash - if defined add support for bash specific
Bram Moolenaar42eeac32005-06-29 22:40:58 +00006" settings/functions
Bram Moolenaar071d4272004-06-13 20:20:40 +00007
Bram Moolenaar42eeac32005-06-29 22:40:58 +00008if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +00009 finish
10endif
11
Bram Moolenaar42eeac32005-06-29 22:40:58 +000012let s:cpo_save = &cpo
13set cpo&vim
Bram Moolenaar071d4272004-06-13 20:20:40 +000014
Bram Moolenaar446cb832008-06-24 21:56:24 +000015setlocal iskeyword+=-
Bram Moolenaar071d4272004-06-13 20:20:40 +000016
Bram Moolenaar42eeac32005-06-29 22:40:58 +000017syn keyword readlineTodo contained TODO FIXME XXX NOTE
Bram Moolenaar071d4272004-06-13 20:20:40 +000018
Bram Moolenaar0dc065e2005-07-04 22:49:24 +000019syn region readlineComment display oneline start='^\s*#' end='$'
Bram Moolenaar42eeac32005-06-29 22:40:58 +000020 \ contains=readlineTodo,@Spell
Bram Moolenaar071d4272004-06-13 20:20:40 +000021
Bram Moolenaar42eeac32005-06-29 22:40:58 +000022syn match readlineString '^\s*[A-Za-z-]\+:'me=e-1 contains=readlineKeys
23syn region readlineString display oneline start=+"+ skip=+\\\\\|\\"+
24 \ end=+"+ contains=readlineKeysTwo
25
Bram Moolenaar071d4272004-06-13 20:20:40 +000026syn case ignore
Bram Moolenaar42eeac32005-06-29 22:40:58 +000027syn keyword readlineKeys contained Control Meta Del Esc Escape LFD
28 \ Newline Ret Return Rubout Space Spc Tab
Bram Moolenaar071d4272004-06-13 20:20:40 +000029syn case match
30
Bram Moolenaar42eeac32005-06-29 22:40:58 +000031syn match readlineKeysTwo contained display
32 \ +\\\([CM]-\|[e\\"'abdfnrtv]\|\o\{3}\|x\x\{3}\)+
Bram Moolenaar071d4272004-06-13 20:20:40 +000033
Bram Moolenaar42eeac32005-06-29 22:40:58 +000034syn match readlineKeymaps contained display
35 \ 'emacs\(-standard\|-meta\|-ctlx\)\='
36syn match readlineKeymaps contained display
37 \ 'vi\(-move\|-command\|-insert\)\='
Bram Moolenaar071d4272004-06-13 20:20:40 +000038
Bram Moolenaar42eeac32005-06-29 22:40:58 +000039syn keyword readlineBellStyles contained audible visible none
Bram Moolenaar071d4272004-06-13 20:20:40 +000040
Bram Moolenaar42eeac32005-06-29 22:40:58 +000041syn match readlineNumber contained display '\<\d\+\>'
Bram Moolenaar071d4272004-06-13 20:20:40 +000042
Bram Moolenaar071d4272004-06-13 20:20:40 +000043syn case ignore
Bram Moolenaar42eeac32005-06-29 22:40:58 +000044syn keyword readlineBoolean contained on off
Bram Moolenaar071d4272004-06-13 20:20:40 +000045syn case match
46
Bram Moolenaar42eeac32005-06-29 22:40:58 +000047syn keyword readlineIfOps contained mode term
Bram Moolenaar071d4272004-06-13 20:20:40 +000048
Bram Moolenaar42eeac32005-06-29 22:40:58 +000049syn region readlineConditional display oneline transparent
50 \ matchgroup=readlineConditional
51 \ start='^\s*$if' end="$"
52 \ contains=readlineIfOps,readlineKeymaps
53syn match readlineConditional display '^\s*$\(else\|endif\)\>'
Bram Moolenaar071d4272004-06-13 20:20:40 +000054
Bram Moolenaar42eeac32005-06-29 22:40:58 +000055syn match readlineInclude display '^\s*$include\>'
Bram Moolenaar071d4272004-06-13 20:20:40 +000056
Bram Moolenaar42eeac32005-06-29 22:40:58 +000057syn region readlineSet display oneline transparent
58 \ matchgroup=readlineKeyword start='^\s*set\>'
59 \ end="$"me=e-1 contains=readlineNumber,
60 \ readlineBoolean,readlineKeymaps,
61 \ readlineBellStyles,readlineSettings
Bram Moolenaar071d4272004-06-13 20:20:40 +000062
Bram Moolenaar42eeac32005-06-29 22:40:58 +000063syn keyword readlineSettings contained bell-style comment-begin
64 \ completion-ignore-case completion-query-items
65 \ convert-meta disable-completion editing-mode
66 \ enable-keypad expand-tilde
67 \ horizontal-scroll-mode mark-directories
68 \ keymap mark-modified-lines meta-flag
69 \ input-meta output-meta
70 \ print-completions-horizontally
71 \ show-all-if-ambiguous visible-stats
72 \ prefer-visible-bell blink-matching-paren
73 \ match-hidden-files history-preserve-point
74 \ isearch-terminators
Bram Moolenaar071d4272004-06-13 20:20:40 +000075
Bram Moolenaar42eeac32005-06-29 22:40:58 +000076syn region readlineBinding display oneline transparent
77 \ matchgroup=readlineKeyword start=':' end='$'
78 \ contains=readlineKeys,readlineFunctions
Bram Moolenaar071d4272004-06-13 20:20:40 +000079
Bram Moolenaar42eeac32005-06-29 22:40:58 +000080syn keyword readlineFunctions contained display
81 \ beginning-of-line end-of-line forward-char
82 \ backward-char forward-word backward-word
83 \ clear-screen redraw-current-line
84 \ accept-line previous-history
85 \ next-history beginning-of-history
86 \ end-of-history reverse-search-history
87 \ forward-search-history
88 \ non-incremental-reverse-search-history
89 \ non-incremental-forward-search-history
90 \ history-search-forward
91 \ history-search-backward
92 \ yank-nth-arg yank-last-arg
93 \ delete-char backward-delete-char
94 \ forward-backward-delete-char quoted-insert
95 \ tab-insert self-insert transpose-chars
96 \ transpose-words upcase-word downcase-word
97 \ capitalize-word overwrite-mode kill-line
98 \ backward-kill-line unix-line-discard
99 \ kill-whole-line kill-word backward-kill-word
100 \ unix-word-rubout unix-filename-rubout
101 \ delete-horizontal-space kill-region
102 \ copy-region-as-kill copy-backward-word
103 \ copy-forward-word yank yank-pop
104 \ digit-argument universal-argument complete
105 \ possible-completions insert-completions
106 \ menu-complete delete-char-or-list
107 \ start-kbd-macro end-kbd-macro
108 \ call-last-kbd-macro re-read-init-file
109 \ abort do-uppercase-version prefix-meta
110 \ undo revert-line tilde-expand set-mark
111 \ exchange-point-and-mark character-search
112 \ character-search-backward insert-comment
113 \ dump-functions dump-variables dump-macros
114 \ emacs-editing-mode vi-editing-mode
115 \ vi-complete vi-char-search vi-redo
116 \ vi-search vi-arg-digit vi-append-eol
117 \ vi-prev-word vi-change-to vi-delete-to
118 \ vi-end-word vi-fetch-history vi-insert-beg
119 \ vi-search-again vi-put vi-replace
120 \ vi-subst vi-yank-to vi-first-print
121 \ vi-yank-arg vi-goto-mark vi-append-mode
122 \ vi-insertion-mode prev-history vi-set-mark
123 \ vi-search-again vi-put vi-change-char
124 \ vi-subst vi-delete vi-yank-to
125 \ vi-column vi-change-case vi-overstrike
126 \ vi-overstrike-delete do-lowercase-version
127 \ delete-char-or-list tty-status
128 \ arrow-key-prefix vi-back-to-indent vi-bword
129 \ vi-bWord vi-eword vi-eWord vi-fword vi-fWord
130 \ vi-next-word
Bram Moolenaar5c736222010-01-06 20:54:52 +0100131 \ vi-movement-mode
Bram Moolenaar42eeac32005-06-29 22:40:58 +0000132
Bram Moolenaar071d4272004-06-13 20:20:40 +0000133if exists("readline_has_bash")
Bram Moolenaar42eeac32005-06-29 22:40:58 +0000134 syn keyword readlineFunctions contained
135 \ shell-expand-line history-expand-line
136 \ magic-space alias-expand-line
137 \ history-and-alias-expand-line
138 \ insert-last-argument operate-and-get-next
139 \ forward-backward-delete-char
140 \ delete-char-or-list complete-filename
141 \ possible-filename-completions
142 \ complete-username
143 \ possible-username-completions
144 \ complete-variable
145 \ possible-variable-completions
146 \ complete-hostname
147 \ possible-hostname-completions
148 \ complete-command
149 \ possible-command-completions
150 \ dynamic-complete-history
151 \ complete-into-braces
152 \ glob-expand-word glob-list-expansions
153 \ display-shell-version glob-complete-word
154 \ edit-and-execute-command
Bram Moolenaar071d4272004-06-13 20:20:40 +0000155endif
156
Bram Moolenaar42eeac32005-06-29 22:40:58 +0000157hi def link readlineComment Comment
158hi def link readlineTodo Todo
159hi def link readlineString String
160hi def link readlineKeys SpecialChar
161hi def link readlineKeysTwo SpecialChar
162hi def link readlineKeymaps Constant
163hi def link readlineBellStyles Constant
164hi def link readlineNumber Number
165hi def link readlineBoolean Boolean
166hi def link readlineIfOps Type
167hi def link readlineConditional Conditional
168hi def link readlineInclude Include
169hi def link readlineKeyword Keyword
170hi def link readlineSettings Type
171hi def link readlineFunctions Type
Bram Moolenaar071d4272004-06-13 20:20:40 +0000172
173let b:current_syntax = "readline"
174
Bram Moolenaar42eeac32005-06-29 22:40:58 +0000175let &cpo = s:cpo_save
176unlet s:cpo_save