mirror of
https://github.com/vim/vim
synced 2025-07-22 22:31:54 +00:00
Compare commits
213 Commits
Author | SHA1 | Date | |
---|---|---|---|
527a6785c7 | |||
140e995ed5 | |||
ae38d05271 | |||
36ff08479f | |||
6f2dd9e75e | |||
caad4f0a0b | |||
e3faf44bef | |||
c68c72ea7b | |||
b12db9f92e | |||
3f9be97015 | |||
ddfb925480 | |||
ef92390cb7 | |||
2d78cd7756 | |||
8340dd9b29 | |||
2f1e51a43c | |||
aff5c3a530 | |||
d96c52c71b | |||
cc2b9d5dc0 | |||
f1d6ccf2f9 | |||
b2a851fee4 | |||
ed32d9424d | |||
f8a447c6dc | |||
4d84d9325f | |||
0b10541606 | |||
76440e2efe | |||
f1e30ccb82 | |||
f240e181d7 | |||
2a0b33e284 | |||
9014074913 | |||
0a38396937 | |||
a3dfccc6e9 | |||
1c40a66bad | |||
b96a7f325c | |||
baf0344ed7 | |||
cbdf0a0b4a | |||
8c731505b0 | |||
66a3e797a2 | |||
b738c9a442 | |||
2683c8e7f7 | |||
2f3b510b0f | |||
b1e265045c | |||
4c7b2f50fd | |||
06e7ce1a01 | |||
57bc4633b2 | |||
dffa5b8ecf | |||
df46f6f07f | |||
a365091dbb | |||
1ba903fb92 | |||
c229967caa | |||
8a349ff944 | |||
54fb438134 | |||
ef6875be7a | |||
42d84f8aed | |||
b8e0bdbda3 | |||
3e9a161496 | |||
b103138b1e | |||
3a0c908983 | |||
983c4e93dc | |||
345326aa3d | |||
374bf024d2 | |||
f9e6c3b8b0 | |||
0434482e5a | |||
6b2e938f13 | |||
4391cf98ec | |||
c3940c76e8 | |||
32efaf6154 | |||
72971a2611 | |||
e90c853ff6 | |||
9c7d98d7c2 | |||
fda3729a06 | |||
4f7e821f26 | |||
666578b539 | |||
eda73607a7 | |||
086329d3f6 | |||
2f31e39978 | |||
b851a96d5c | |||
6a64365c95 | |||
fe3c410098 | |||
7a373dd0d4 | |||
a94618e16c | |||
482a2b5c9d | |||
958636c406 | |||
4920a44271 | |||
cb5ea1401a | |||
bdef518b0a | |||
f1b4622366 | |||
861d80a671 | |||
799d6abf3e | |||
7d76c804af | |||
1df52d798f | |||
1c85210d6d | |||
e962c6795b | |||
dcc1ce2f5a | |||
cbc246a331 | |||
2a9853925b | |||
e5ead831a2 | |||
7425b938cb | |||
f191d55ede | |||
6885694e82 | |||
4697ae00a7 | |||
9a95bdc52a | |||
404406ad6b | |||
56095e1ceb | |||
21d89b610f | |||
0f519a02c5 | |||
3a991dd001 | |||
56f6227224 | |||
84d17a6f9e | |||
7ddc642a0c | |||
da014b9441 | |||
cddc91ccb4 | |||
cfc216e7b0 | |||
1db60c47d9 | |||
b8ee25acab | |||
4b9d637e9c | |||
d355c50a2a | |||
91e15e13da | |||
3fa57e0d50 | |||
eb21e4ccf5 | |||
1ecfd9cb09 | |||
9c8d9e1952 | |||
5bfa2ed6e4 | |||
4ee40b0515 | |||
b4b43bb572 | |||
5d2bae8b1c | |||
714db3bb81 | |||
103650de90 | |||
3516928c75 | |||
3089a1068d | |||
6e932461cb | |||
58da707d24 | |||
834def3872 | |||
f638cbce76 | |||
5a4eceb02a | |||
fb03140730 | |||
371932a775 | |||
0026d47d8c | |||
0e2ea1beb4 | |||
13e2a0af66 | |||
14993322b1 | |||
120f4a878f | |||
5d5fbe7a2b | |||
84d8cdd769 | |||
c40bdee42a | |||
52a7246f01 | |||
96f3a49b3b | |||
34401cca5a | |||
773b158de8 | |||
d7408fa0ce | |||
e4df164692 | |||
49f9dd7b91 | |||
2d46e6075b | |||
a9537d238e | |||
f2d912e8bc | |||
26f08b06b6 | |||
285ed7e049 | |||
9576508975 | |||
7b61a546d8 | |||
92f4baace8 | |||
5a31b46bff | |||
d5005164e1 | |||
fb539273c9 | |||
d2e8087b53 | |||
ce2f2e061d | |||
1b338d2022 | |||
42f06f9dbc | |||
d5f62b14e1 | |||
2a5868ab1e | |||
b5cf6c34e8 | |||
1fc7e972b0 | |||
0ddd1b5e35 | |||
5307de0746 | |||
9b8f021d93 | |||
2be795084f | |||
5a669b9481 | |||
07cf382e22 | |||
d21e8b3a17 | |||
8f4ac01544 | |||
0106b4b891 | |||
e98cfe1cc9 | |||
6b1ee34aa0 | |||
04d17ae167 | |||
9b352c46f0 | |||
b5a7a8b545 | |||
8c1329cb59 | |||
e0f148270a | |||
ece29e8013 | |||
4e067c898e | |||
b81c85d8f3 | |||
4f5ce33d41 | |||
23fb7a9955 | |||
278eb5820d | |||
932e632de3 | |||
dbc2802251 | |||
2bace3e2fb | |||
20c3892e54 | |||
17529ae026 | |||
12a28d4b29 | |||
158a1b0748 | |||
fb60409a3f | |||
54368f2742 | |||
674fffe855 | |||
a1fae80371 | |||
4f88062c55 | |||
07d87790f1 | |||
a04854932e | |||
1f538355db | |||
5524aebf16 | |||
b5647f71c2 | |||
4e036c9e6f | |||
b643e77782 | |||
f1924a9d8c | |||
310e2dbaee |
11
Filelist
11
Filelist
@ -11,6 +11,8 @@ SRC_ALL = \
|
||||
src/blowfish.c \
|
||||
src/buffer.c \
|
||||
src/charset.c \
|
||||
src/crypt.c \
|
||||
src/crypt_zip.c \
|
||||
src/diff.c \
|
||||
src/digraph.c \
|
||||
src/edit.c \
|
||||
@ -80,6 +82,7 @@ SRC_ALL = \
|
||||
src/xxd/xxd.c \
|
||||
src/main.aap \
|
||||
src/testdir/main.aap \
|
||||
src/testdir/README.txt \
|
||||
src/testdir/*.in \
|
||||
src/testdir/sautest/autoload/*.vim \
|
||||
src/testdir/test[0-9]*.ok \
|
||||
@ -99,10 +102,15 @@ SRC_ALL = \
|
||||
src/testdir/pythonx/topmodule/submodule/subsubmodule/subsubsubmodule.py \
|
||||
src/testdir/python_after/*.py \
|
||||
src/testdir/python_before/*.py \
|
||||
src/testdir/bench*.in \
|
||||
src/testdir/bench*.vim \
|
||||
src/testdir/samples/*.txt \
|
||||
src/proto.h \
|
||||
src/proto/blowfish.pro \
|
||||
src/proto/buffer.pro \
|
||||
src/proto/charset.pro \
|
||||
src/proto/crypt.pro \
|
||||
src/proto/crypt_zip.pro \
|
||||
src/proto/diff.pro \
|
||||
src/proto/digraph.pro \
|
||||
src/proto/edit.pro \
|
||||
@ -272,6 +280,7 @@ SRC_DOS = \
|
||||
src/Make_bc3.mak \
|
||||
src/Make_bc5.mak \
|
||||
src/Make_cyg.mak \
|
||||
src/Make_cyg_ming.mak \
|
||||
src/Make_djg.mak \
|
||||
src/Make_ivc.mak \
|
||||
src/Make_dvc.mak \
|
||||
@ -289,6 +298,8 @@ SRC_DOS = \
|
||||
src/dosinst.h \
|
||||
src/glbl_ime.cpp \
|
||||
src/glbl_ime.h \
|
||||
src/gui_dwrite.cpp \
|
||||
src/gui_dwrite.h \
|
||||
src/gui_w16.c \
|
||||
src/gui_w32.c \
|
||||
src/gui_w48.c \
|
||||
|
@ -1,6 +1,6 @@
|
||||
# NSIS file to create a self-installing exe for Vim.
|
||||
# It requires NSIS version 2.0 or later.
|
||||
# Last Change: 2010 Jul 30
|
||||
# Last Change: 2014 Nov 5
|
||||
|
||||
# WARNING: if you make changes to this script, look out for $0 to be valid,
|
||||
# because uninstall deletes most files in $0.
|
||||
@ -38,7 +38,7 @@ SetDatablockOptimize on
|
||||
RequestExecutionLevel highest
|
||||
|
||||
ComponentText "This will install Vim ${VER_MAJOR}.${VER_MINOR} on your computer."
|
||||
DirText "Choose a directory to install Vim (must end in 'vim')"
|
||||
DirText "Choose a directory to install Vim (should contain 'vim')"
|
||||
Icon icons\vim_16c.ico
|
||||
# NSIS2 uses a different strategy with six different images in a strip...
|
||||
#EnabledBitmap icons\enabled.bmp
|
||||
@ -135,11 +135,6 @@ FunctionEnd
|
||||
# We only accept the directory if it ends in "vim". Using .onVerifyInstDir has
|
||||
# the disadvantage that the browse dialog is difficult to use.
|
||||
Function CheckInstallDir
|
||||
StrCpy $0 $INSTDIR 3 -3
|
||||
StrCmp $0 "vim" PathGood
|
||||
MessageBox MB_OK "The path must end in 'vim'."
|
||||
Abort
|
||||
PathGood:
|
||||
FunctionEnd
|
||||
|
||||
Function .onInstSuccess
|
||||
|
@ -1,6 +1,6 @@
|
||||
" Vim autoload file for editing compressed files.
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2008 Jul 04
|
||||
" Last Change: 2014 Nov 05
|
||||
|
||||
" These functions are used by the gzip plugin.
|
||||
|
||||
@ -120,6 +120,8 @@ fun gzip#read(cmd)
|
||||
silent! exe "bwipe " . tmp_esc
|
||||
silent! exe "bwipe " . tmpe_esc
|
||||
endif
|
||||
" Store the OK flag, so that we can use it when writing.
|
||||
let b:uncompressOk = ok
|
||||
|
||||
" Restore saved option values.
|
||||
let &pm = pm_save
|
||||
@ -146,8 +148,10 @@ endfun
|
||||
|
||||
" After writing compressed file: Compress written file with "cmd"
|
||||
fun gzip#write(cmd)
|
||||
if exists('b:uncompressOk') && !b:uncompressOk
|
||||
echomsg "Not compressing file because uncompress failed; reset b:uncompressOk to compress anyway"
|
||||
" don't do anything if the cmd is not supported
|
||||
if s:check(a:cmd)
|
||||
elseif s:check(a:cmd)
|
||||
" Rename the file before compressing it.
|
||||
let nm = resolve(expand("<afile>"))
|
||||
let nmt = s:tempname(nm)
|
||||
|
@ -3,7 +3,7 @@
|
||||
" Maintainer: Dávid Szabó ( complex857 AT gmail DOT com )
|
||||
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
||||
" URL: https://github.com/shawncplus/phpcomplete.vim
|
||||
" Last Change: 2014 May 30
|
||||
" Last Change: 2014 Dec 01
|
||||
"
|
||||
" OPTIONS:
|
||||
"
|
||||
@ -94,9 +94,9 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
|
||||
" Check if we are inside of PHP markup
|
||||
let pos = getpos('.')
|
||||
let phpbegin = searchpairpos('<?', '', '?>', 'bWn',
|
||||
\ 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\|comment"')
|
||||
\ 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"')
|
||||
let phpend = searchpairpos('<?', '', '?>', 'Wn',
|
||||
\ 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\|comment"')
|
||||
\ 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"')
|
||||
|
||||
if phpbegin == [0,0] && phpend == [0,0]
|
||||
" We are outside of any PHP markup. Complete HTML
|
||||
@ -277,7 +277,7 @@ endfunction
|
||||
" }}}
|
||||
|
||||
function! phpcomplete#CompleteGeneral(base, current_namespace, imports) " {{{
|
||||
" Complete everything else -
|
||||
" Complete everything
|
||||
" + functions, DONE
|
||||
" + keywords of language DONE
|
||||
" + defines (constant definitions), DONE
|
||||
@ -803,7 +803,7 @@ function! phpcomplete#CompleteClassName(base, kinds, current_namespace, imports)
|
||||
endif
|
||||
let relative_name = namespace_part.tag.name
|
||||
" match base without the namespace part for namespaced base but not namespaced tags, for tagfiles with old ctags
|
||||
if !has_key(tag, 'namespace') && index(kinds, tag.kind) != -1 && stridx(tag.name, base[len(namespace_part):]) == 0
|
||||
if !has_key(tag, 'namespace') && index(kinds, tag.kind) != -1 && stridx(tolower(tag.name), tolower(base[len(namespace_part):])) == 0
|
||||
call add(no_namespace_matches, {'word': leading_slash.relative_name, 'kind': tag.kind, 'menu': tag.filename, 'info': tag.filename })
|
||||
endif
|
||||
if has_key(tag, 'namespace') && index(kinds, tag.kind) != -1 && tag.namespace ==? namespace_for_class
|
||||
@ -949,12 +949,11 @@ function! phpcomplete#CompleteUserClass(context, base, sccontent, visibility) "
|
||||
endif
|
||||
endfor
|
||||
|
||||
let jvars = join(variables, ' ')
|
||||
let svars = split(jvars, '\$')
|
||||
let static_vars = split(join(variables, ' '), '\$')
|
||||
let c_variables = {}
|
||||
|
||||
let var_index = 0
|
||||
for i in svars
|
||||
for i in static_vars
|
||||
let c_var = matchstr(i,
|
||||
\ '^\zs[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\ze')
|
||||
if c_var != ''
|
||||
@ -1083,7 +1082,6 @@ endfunction
|
||||
" }}}
|
||||
|
||||
function! phpcomplete#GetTaglist(pattern) " {{{
|
||||
|
||||
let cache_checksum = ''
|
||||
if g:phpcomplete_cache_taglists == 1
|
||||
" build a string with format of "<tagfile>:<mtime>$<tagfile2>:<mtime2>..."
|
||||
@ -1174,11 +1172,11 @@ function! phpcomplete#GetCurrentInstruction(line_number, col_number, phpbegin) "
|
||||
" break if we are on a "naked" stop_char (operators, colon, openparent...)
|
||||
if index(stop_chars, current_char) != -1
|
||||
let do_break = 1
|
||||
" dont break does not look like a "->"
|
||||
" dont break if it does look like a "->"
|
||||
if (prev_char == '-' && current_char == '>') || (current_char == '-' && next_char == '>')
|
||||
let do_break = 0
|
||||
endif
|
||||
" dont break if its looks like a "::"
|
||||
" dont break if it does look like a "::"
|
||||
if (prev_char == ':' && current_char == ':') || (current_char == ':' && next_char == ':')
|
||||
let do_break = 0
|
||||
endif
|
||||
@ -1358,8 +1356,12 @@ function! phpcomplete#GetCallChainReturnType(classname_candidate, class_candidat
|
||||
endif
|
||||
" make @return self, static, $this the same way
|
||||
" (not exactly what php means by these)
|
||||
if returnclass == 'self' || returnclass == 'static' || returnclass == '$this'
|
||||
let classname_candidate = a:classname_candidate
|
||||
if returnclass == 'self' || returnclass == 'static' || returnclass == '$this' || returnclass == 'self[]' || returnclass == 'static[]' || returnclass == '$this[]'
|
||||
if returnclass =~ '\[\]$'
|
||||
let classname_candidate = a:classname_candidate.'[]'
|
||||
else
|
||||
let classname_candidate = a:classname_candidate
|
||||
endif
|
||||
let class_candidate_namespace = a:class_candidate_namespace
|
||||
else
|
||||
let [classname_candidate, class_candidate_namespace] = phpcomplete#ExpandClassName(returnclass, fullnamespace, a:imports)
|
||||
@ -1447,6 +1449,7 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
" Get class name
|
||||
" Class name can be detected in few ways:
|
||||
" @var $myVar class
|
||||
" @var class $myVar
|
||||
" in the same line (php 5.4 (new Class)-> syntax)
|
||||
" line above
|
||||
" or line in tags file
|
||||
@ -1525,6 +1528,11 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
let object_is_array = (object =~ '\v^[^[]+\[' ? 1 : 0)
|
||||
let object = matchstr(object, variable_name_pattern)
|
||||
|
||||
let function_boundary = phpcomplete#GetCurrentFunctionBoundaries()
|
||||
let search_end_line = max([1, function_boundary[0][0]])
|
||||
" -1 makes us ignore the current line (where the completion was invoked
|
||||
let lines = reverse(getline(search_end_line, a:start_line - 1))
|
||||
|
||||
" check Constant lookup
|
||||
let constant_object = matchstr(a:context, '\zs'.class_name_pattern.'\ze::')
|
||||
if constant_object != ''
|
||||
@ -1533,21 +1541,20 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
|
||||
if classname_candidate == ''
|
||||
" scan the file backwards from current line for explicit type declaration (@var $variable Classname)
|
||||
let i = 1 " start from the current line - 1
|
||||
while i < a:start_line
|
||||
let line = getline(a:start_line - i)
|
||||
for line in lines
|
||||
" in file lookup for /* @var $foo Class */
|
||||
if line =~# '@var\s\+'.object.'\s\+'.class_name_pattern
|
||||
let classname_candidate = matchstr(line, '@var\s\+'.object.'\s\+\zs'.class_name_pattern.'\(\[\]\)\?')
|
||||
let [classname_candidate, class_candidate_namespace] = phpcomplete#ExpandClassName(classname_candidate, a:current_namespace, a:imports)
|
||||
break
|
||||
elseif line !~ '^\s*$'
|
||||
" type indicator comments should be next to the variable
|
||||
" non empty lines break the search
|
||||
endif
|
||||
" in file lookup for /* @var Class $foo */
|
||||
if line =~# '@var\s\+'.class_name_pattern.'\s\+'.object
|
||||
let classname_candidate = matchstr(line, '@var\s\+\zs'.class_name_pattern.'\(\[\]\)\?\ze'.'\s\+'.object)
|
||||
let [classname_candidate, class_candidate_namespace] = phpcomplete#ExpandClassName(classname_candidate, a:current_namespace, a:imports)
|
||||
break
|
||||
endif
|
||||
let i += 1
|
||||
endwhile
|
||||
endfor
|
||||
endif
|
||||
|
||||
if classname_candidate != ''
|
||||
@ -1555,12 +1562,9 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
" return absolute classname, without leading \
|
||||
return (class_candidate_namespace == '\' || class_candidate_namespace == '') ? classname_candidate : class_candidate_namespace.'\'.classname_candidate
|
||||
endif
|
||||
|
||||
" scan the file backwards from the current line
|
||||
let i = 1
|
||||
while i < a:start_line " {{{
|
||||
let line = getline(a:start_line - i)
|
||||
|
||||
for line in lines " {{{
|
||||
" do in-file lookup of $var = new Class
|
||||
if line =~# '^\s*'.object.'\s*=\s*new\s\+'.class_name_pattern && !object_is_array
|
||||
let classname_candidate = matchstr(line, object.'\c\s*=\s*new\s*\zs'.class_name_pattern.'\ze')
|
||||
@ -1607,6 +1611,7 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
for arg in args
|
||||
if arg =~# object.'\(,\|$\)'
|
||||
let classname_candidate = matchstr(arg, '\s*\zs'.class_name_pattern.'\ze\s\+'.object)
|
||||
let [classname_candidate, class_candidate_namespace] = phpcomplete#ExpandClassName(classname_candidate, a:current_namespace, a:imports)
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
@ -1625,6 +1630,7 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
for param in docblock.params
|
||||
if param.name =~? object
|
||||
let classname_candidate = matchstr(param.type, class_name_pattern.'\(\[\]\)\?')
|
||||
let [classname_candidate, class_candidate_namespace] = phpcomplete#ExpandClassName(classname_candidate, a:current_namespace, a:imports)
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
@ -1636,9 +1642,32 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
|
||||
" assignment for the variable in question with a variable on the right hand side
|
||||
if line =~# '^\s*'.object.'\s*=&\?\s*'.variable_name_pattern
|
||||
let tailing_semicolon = match(line, ';\s*$')
|
||||
let tailing_semicolon = tailing_semicolon != -1 ? tailing_semicolon : strlen(getline(a:start_line - i))
|
||||
let prev_context = phpcomplete#GetCurrentInstruction(a:start_line - i, tailing_semicolon - 1, b:phpbegin)
|
||||
|
||||
" try to find the next non-comment or string ";" char
|
||||
let start_col = match(line, '^\s*'.object.'\C\s*=\zs&\?\s*'.variable_name_pattern)
|
||||
let filelines = reverse(lines)
|
||||
let [pos, char] = s:getNextCharWithPos(filelines, [a:start_line - i - 1, start_col])
|
||||
let chars_read = 1
|
||||
" read while end of the file
|
||||
while char != 'EOF' && chars_read < 1000
|
||||
let last_pos = pos
|
||||
let [pos, char] = s:getNextCharWithPos(filelines, pos)
|
||||
let chars_read += 1
|
||||
" we got a candidate
|
||||
if char == ';'
|
||||
let synIDName = synIDattr(synID(pos[0] + 1, pos[1] + 1, 0), 'name')
|
||||
" it's not a comment or string, end search
|
||||
if synIDName !~? 'comment\|string'
|
||||
break
|
||||
endif
|
||||
endif
|
||||
endwhile
|
||||
|
||||
let prev_context = phpcomplete#GetCurrentInstruction(last_pos[0] + 1, last_pos[1], b:phpbegin)
|
||||
if prev_context == ''
|
||||
" cannot get previous context give up
|
||||
return
|
||||
endif
|
||||
let prev_class = phpcomplete#GetClassName(a:start_line - i, prev_context, a:current_namespace, a:imports)
|
||||
|
||||
if stridx(prev_class, '\') != -1
|
||||
@ -1654,9 +1683,32 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
|
||||
" assignment for the variable in question with a function on the right hand side
|
||||
if line =~# '^\s*'.object.'\s*=&\?\s*'.function_invocation_pattern
|
||||
let tailing_semicolon = match(line, ';\s*$')
|
||||
let tailing_semicolon = tailing_semicolon != -1 ? tailing_semicolon : strlen(getline(a:start_line - i))
|
||||
let prev_context = phpcomplete#GetCurrentInstruction(a:start_line - i, tailing_semicolon - 1, b:phpbegin)
|
||||
|
||||
" try to find the next non-comment or string ";" char
|
||||
let start_col = match(line, '\C^\s*'.object.'\s*=\zs&\?\s*'.function_invocation_pattern)
|
||||
let filelines = reverse(lines)
|
||||
let [pos, char] = s:getNextCharWithPos(filelines, [a:start_line - i - 1, start_col])
|
||||
let chars_read = 1
|
||||
" read while end of the file
|
||||
while char != 'EOF' && chars_read < 1000
|
||||
let last_pos = pos
|
||||
let [pos, char] = s:getNextCharWithPos(filelines, pos)
|
||||
let chars_read += 1
|
||||
" we got a candidate
|
||||
if char == ';'
|
||||
let synIDName = synIDattr(synID(pos[0] + 1, pos[1] + 1, 0), 'name')
|
||||
" it's not a comment or string, end search
|
||||
if synIDName !~? 'comment\|string'
|
||||
break
|
||||
endif
|
||||
endif
|
||||
endwhile
|
||||
|
||||
let prev_context = phpcomplete#GetCurrentInstruction(last_pos[0] + 1, last_pos[1], b:phpbegin)
|
||||
if prev_context == ''
|
||||
" cannot get previous context give up
|
||||
return
|
||||
endif
|
||||
|
||||
let function_name = matchstr(prev_context, '^'.function_invocation_pattern.'\ze')
|
||||
let function_name = matchstr(function_name, '^\zs.\+\ze\s*($') " strip the trailing (
|
||||
@ -1722,7 +1774,7 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
endif
|
||||
|
||||
let i += 1
|
||||
endwhile " }}}
|
||||
endfor " }}}
|
||||
|
||||
if classname_candidate != ''
|
||||
let [classname_candidate, class_candidate_namespace] = phpcomplete#GetCallChainReturnType(classname_candidate, class_candidate_namespace, class_candidate_imports, methodstack)
|
||||
@ -1934,7 +1986,7 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
||||
call search('{')
|
||||
let endline = line('.')
|
||||
|
||||
let content = join(getline(cfline, endline),"\n")
|
||||
let content = join(getline(cfline, endline), "\n")
|
||||
" Catch extends
|
||||
if content =~? 'extends'
|
||||
let extends_class = matchstr(content, 'class\_s\+'.a:class_name.'\_s\+extends\_s\+\zs'.class_name_pattern.'\ze')
|
||||
@ -1962,7 +2014,9 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
||||
let namespace = '\'
|
||||
endif
|
||||
let classlocation = phpcomplete#GetClassLocation(extends_class, namespace)
|
||||
if classlocation != '' && filereadable(classlocation)
|
||||
if classlocation == "VIMPHP_BUILTINOBJECT"
|
||||
let result += [phpcomplete#GenerateBuiltinClassStub(g:php_builtin_classes[tolower(extends_class)])]
|
||||
elseif classlocation != '' && filereadable(classlocation)
|
||||
let full_file_path = fnamemodify(classlocation, ':p')
|
||||
let result += phpcomplete#GetClassContentsStructure(full_file_path, readfile(full_file_path), extends_class)
|
||||
elseif tolower(current_namespace) == tolower(namespace)
|
||||
@ -1985,6 +2039,51 @@ function! phpcomplete#GetClassContents(classlocation, class_name) " {{{
|
||||
endfunction
|
||||
" }}}
|
||||
|
||||
function! phpcomplete#GenerateBuiltinClassStub(class_info) " {{{
|
||||
let re = 'class '.a:class_info['name']." {"
|
||||
for [name, initializer] in items(a:class_info.constants)
|
||||
let re .= "\n\tconst ".name." = ".initializer.";"
|
||||
endfor
|
||||
for [name, info] in items(a:class_info.properties)
|
||||
let re .= "\n\t// @var $".name." ".info.type
|
||||
let re .= "\n\tpublic $".name.";"
|
||||
endfor
|
||||
for [name, info] in items(a:class_info.static_properties)
|
||||
let re .= "\n\t// @var ".name." ".info.type
|
||||
let re .= "\n\tpublic static ".name." = ".info.initializer.";"
|
||||
endfor
|
||||
for [name, info] in items(a:class_info.methods)
|
||||
if name =~ '^__'
|
||||
continue
|
||||
endif
|
||||
let re .= "\n\t/**"
|
||||
let re .= "\n\t * ".name
|
||||
let re .= "\n\t *"
|
||||
let re .= "\n\t * @return ".info.return_type
|
||||
let re .= "\n\t */"
|
||||
let re .= "\n\tpublic function ".name."(".info.signature."){"
|
||||
let re .= "\n\t}"
|
||||
endfor
|
||||
for [name, info] in items(a:class_info.static_methods)
|
||||
let re .= "\n\t/**"
|
||||
let re .= "\n\t * ".name
|
||||
let re .= "\n\t *"
|
||||
let re .= "\n\t * @return ".info.return_type
|
||||
let re .= "\n\t */"
|
||||
let re .= "\n\tpublic static function ".name."(".info.signature."){"
|
||||
let re .= "\n\t}"
|
||||
endfor
|
||||
let re .= "\n}"
|
||||
|
||||
return { 'class': a:class_info['name'],
|
||||
\ 'content': re,
|
||||
\ 'namespace': '',
|
||||
\ 'imports': {},
|
||||
\ 'file': 'VIMPHP_BUILTINOBJECT',
|
||||
\ 'mtime': 0,
|
||||
\ }
|
||||
endfunction " }}}
|
||||
|
||||
function! phpcomplete#GetDocBlock(sccontent, search) " {{{
|
||||
let i = 0
|
||||
let l = 0
|
||||
@ -2295,6 +2394,9 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
|
||||
endfor
|
||||
endif
|
||||
endif
|
||||
if exists('no_namespace_candidate')
|
||||
unlet no_namespace_candidate
|
||||
endif
|
||||
endfor
|
||||
endif
|
||||
let i += 1
|
||||
@ -2307,6 +2409,40 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
|
||||
endfunction
|
||||
" }}}
|
||||
|
||||
function! phpcomplete#GetCurrentFunctionBoundaries() " {{{
|
||||
let old_cursor_pos = [line('.'), col('.')]
|
||||
let current_line_no = old_cursor_pos[0]
|
||||
let function_pattern = '\c\(.*\%#\)\@!\_^\s*\zs\(abstract\s\+\|final\s\+\|private\s\+\|protected\s\+\|public\s\+\|static\s\+\)*function\_.\{-}(\_.\{-})\_.\{-}{'
|
||||
|
||||
let func_start_pos = searchpos(function_pattern, 'Wbc')
|
||||
if func_start_pos == [0, 0]
|
||||
call cursor(old_cursor_pos[0], old_cursor_pos[1])
|
||||
return 0
|
||||
endif
|
||||
|
||||
" get the line where the function declaration actually started
|
||||
call search('\cfunction\_.\{-}(\_.\{-})\_.\{-}{', 'Wce')
|
||||
|
||||
" get the position of the function block's closing "}"
|
||||
let func_end_pos = searchpairpos('{', '', '}', 'W')
|
||||
if func_end_pos == [0, 0]
|
||||
" there is a function start but no end found, assume that we are in a
|
||||
" function but the user did not typed the closing "}" yet and the
|
||||
" function runs to the end of the file
|
||||
let func_end_pos = [line('$'), len(getline(line('$')))]
|
||||
endif
|
||||
|
||||
" Decho func_start_pos[0].' <= '.current_line_no.' && '.current_line_no.' <= '.func_end_pos[0]
|
||||
if func_start_pos[0] <= current_line_no && current_line_no <= func_end_pos[0]
|
||||
call cursor(old_cursor_pos[0], old_cursor_pos[1])
|
||||
return [func_start_pos, func_end_pos]
|
||||
endif
|
||||
|
||||
call cursor(old_cursor_pos[0], old_cursor_pos[1])
|
||||
return 0
|
||||
endfunction
|
||||
" }}}
|
||||
|
||||
function! phpcomplete#ExpandClassName(classname, current_namespace, imports) " {{{
|
||||
" if there's an imported class, just use that class's information
|
||||
if has_key(a:imports, a:classname) && (a:imports[a:classname].kind == 'c' || a:imports[a:classname].kind == 'i')
|
||||
|
29
runtime/compiler/go.vim
Normal file
29
runtime/compiler/go.vim
Normal file
@ -0,0 +1,29 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Go
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-go)
|
||||
" Last Change: 2014 Aug 16
|
||||
|
||||
if exists('current_compiler')
|
||||
finish
|
||||
endif
|
||||
let current_compiler = 'go'
|
||||
|
||||
if exists(':CompilerSet') != 2
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
let s:save_cpo = &cpo
|
||||
set cpo-=C
|
||||
|
||||
CompilerSet makeprg=go\ build
|
||||
CompilerSet errorformat=
|
||||
\%-G#\ %.%#,
|
||||
\%A%f:%l:%c:\ %m,
|
||||
\%A%f:%l:\ %m,
|
||||
\%C%*\\s%m,
|
||||
\%-G%.%#
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim: sw=2 sts=2 et
|
@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Miscrosoft Visual C
|
||||
" Compiler: Microsoft Visual C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2005 Nov 30
|
||||
" Last Change: 2014 Sep 20
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
|
@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.4. Last change: 2014 May 02
|
||||
*autocmd.txt* For Vim version 7.4. Last change: 2014 Sep 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -278,6 +278,7 @@ Name triggered by ~
|
||||
|ShellCmdPost| after executing a shell command
|
||||
|ShellFilterPost| after filtering with a shell command
|
||||
|
||||
|CmdUndefined| a user command is used but it isn't defined
|
||||
|FuncUndefined| a user function is used but it isn't defined
|
||||
|SpellFileMissing| a spell file is used but it can't be found
|
||||
|SourcePre| before sourcing a Vim script
|
||||
@ -465,6 +466,16 @@ BufWriteCmd Before writing the whole buffer to a file.
|
||||
*BufWritePost*
|
||||
BufWritePost After writing the whole buffer to a file
|
||||
(should undo the commands for BufWritePre).
|
||||
*CmdUndefined*
|
||||
CmdUndefined When a user command is used but it isn't
|
||||
defined. Useful for defining a command only
|
||||
when it's used. The pattern is matched
|
||||
against the command name. Both <amatch> and
|
||||
<afile> are set to the name of the command.
|
||||
NOTE: Autocompletion won't work until the
|
||||
command is defined. An alternative is to
|
||||
always define the user command and have it
|
||||
invoke an autoloaded function. See |autoload|.
|
||||
*CmdwinEnter*
|
||||
CmdwinEnter After entering the command-line window.
|
||||
Useful for setting options specifically for
|
||||
@ -508,6 +519,11 @@ CursorHold When the user doesn't press a key for the time
|
||||
operator.
|
||||
While recording the CursorHold event is not
|
||||
triggered. |q|
|
||||
*<CursorHold>*
|
||||
Internally the autocommand is triggered by the
|
||||
<CursorHold> key. In an expression mapping
|
||||
|getchar()| may see this character.
|
||||
|
||||
Note: Interactive commands cannot be used for
|
||||
this event. There is no hit-enter prompt,
|
||||
the screen is updated directly (when needed).
|
||||
@ -670,6 +686,8 @@ FuncUndefined When a user function is used but it isn't
|
||||
when it's used. The pattern is matched
|
||||
against the function name. Both <amatch> and
|
||||
<afile> are set to the name of the function.
|
||||
NOTE: When writing Vim scripts a better
|
||||
alternative is to use an autoloaded function.
|
||||
See |autoload-functions|.
|
||||
*GUIEnter*
|
||||
GUIEnter After starting the GUI successfully, and after
|
||||
|
@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 7.4. Last change: 2014 Feb 23
|
||||
*cmdline.txt* For Vim version 7.4. Last change: 2014 Sep 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -56,7 +56,7 @@ history tables:
|
||||
These are completely separate. Each history can only be accessed when
|
||||
entering the same type of line.
|
||||
Use the 'history' option to set the number of lines that are remembered
|
||||
(default: 20).
|
||||
(default: 50).
|
||||
Notes:
|
||||
- When you enter a command-line that is exactly the same as an older one, the
|
||||
old one is removed (to avoid repeated commands moving older commands out of
|
||||
@ -1084,6 +1084,9 @@ another window, or drag statuslines of other windows. You can drag the
|
||||
statusline of the command-line window itself and the statusline above it.
|
||||
Thus you can resize the command-line window, but not others.
|
||||
|
||||
The |getcmdwintype()| function returns the type of the command-line being
|
||||
edited as described in |cmdwin-char|.
|
||||
|
||||
|
||||
AUTOCOMMANDS
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*diff.txt* For Vim version 7.4. Last change: 2014 May 20
|
||||
*diff.txt* For Vim version 7.4. Last change: 2014 Oct 31
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -266,13 +266,17 @@ that the buffers will be equal within the specified range.
|
||||
See below for [range].
|
||||
|
||||
*do*
|
||||
do Same as ":diffget" without argument or range. The "o" stands
|
||||
for "obtain" ("dg" can't be used, it could be the start of
|
||||
"dgg"!). Note: this doesn't work in Visual mode.
|
||||
[count]do Same as ":diffget" without range. The "o" stands for "obtain"
|
||||
("dg" can't be used, it could be the start of "dgg"!). Note:
|
||||
this doesn't work in Visual mode.
|
||||
If you give a [count], it is used as the [bufspec] argument
|
||||
for ":diffget".
|
||||
|
||||
*dp*
|
||||
dp Same as ":diffput" without argument or range.
|
||||
Note: this doesn't work in Visual mode.
|
||||
[count]dp Same as ":diffput" without range. Note: this doesn't work in
|
||||
Visual mode.
|
||||
If you give a [count], it is used as the [bufspec] argument
|
||||
for ":diffput".
|
||||
|
||||
|
||||
When no [range] is given, the diff at the cursor position or just above it is
|
||||
|
@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 7.4. Last change: 2014 May 02
|
||||
*editing.txt* For Vim version 7.4. Last change: 2014 Dec 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -609,7 +609,10 @@ list of the current window.
|
||||
{not in Vi}
|
||||
|
||||
:[count]arga[dd] {name} .. *:arga* *:argadd* *E479*
|
||||
Add the {name}s to the argument list.
|
||||
:[count]arga[dd]
|
||||
Add the {name}s to the argument list. When {name} is
|
||||
omitted add the current buffer name to the argument
|
||||
list.
|
||||
If [count] is omitted, the {name}s are added just
|
||||
after the current entry in the argument list.
|
||||
Otherwise they are added after the [count]'th file.
|
||||
@ -619,7 +622,8 @@ list of the current window.
|
||||
:argadd x a b x c
|
||||
:0argadd x x a b c
|
||||
:1argadd x a x b c
|
||||
:99argadd x a b c x
|
||||
:$argadd x a b c x
|
||||
:+2argadd y a b c x y
|
||||
There is no check for duplicates, it is possible to
|
||||
add a file to the argument list twice.
|
||||
The currently edited file is not changed.
|
||||
@ -641,11 +645,19 @@ list of the current window.
|
||||
< {not in Vi} {not available when compiled without the
|
||||
|+listcmds| feature}
|
||||
|
||||
:{range}argd[elete] Delete the {range} files from the argument list.
|
||||
:[range]argd[elete] Delete the {range} files from the argument list.
|
||||
Example: >
|
||||
:10,$argdel
|
||||
< Deletes arguments 10 and further, keeping 1-9. >
|
||||
:$argd
|
||||
< Deletes just the last one. >
|
||||
:argd
|
||||
:.argd
|
||||
< Deletes the current argument. >
|
||||
:%argd
|
||||
< Removes all the files from the arglist.
|
||||
When the last number in the range is too high, up to
|
||||
the last argument is deleted. Example: >
|
||||
:10,1000argdel
|
||||
< Deletes arguments 10 and further, keeping 1-9.
|
||||
the last argument is deleted.
|
||||
{not in Vi} {not available when compiled without the
|
||||
|+listcmds| feature}
|
||||
|
||||
@ -1077,9 +1089,12 @@ The names can be in upper- or lowercase.
|
||||
the last file in the argument list has not been
|
||||
edited. See |:confirm| and 'confirm'. {not in Vi}
|
||||
|
||||
:q[uit]! Quit without writing, also when visible buffers have
|
||||
changes. Does not exit when there are changed hidden
|
||||
buffers. Use ":qall!" to exit always.
|
||||
:q[uit]! Quit without writing, also when currently visible
|
||||
buffers have changes. Does not exit when this is the
|
||||
last window and there is a changed hidden buffer.
|
||||
In this case, the first changed hidden buffer becomes
|
||||
the current buffer.
|
||||
Use ":qall!" to exit always.
|
||||
|
||||
:cq[uit] Quit always, without writing, and return an error
|
||||
code. See |:cq|. Used for Manx's QuickFix mode (see
|
||||
@ -1362,11 +1377,21 @@ cannot be read without the right key.
|
||||
{only available when compiled with the |+cryptv| feature} *E833*
|
||||
|
||||
The text in the swap file and the undo file is also encrypted. *E843*
|
||||
However, this is done block-by-block and may reduce the time needed to crack a
|
||||
password. You can disable the swap file, but then a crash will cause you to
|
||||
lose your work. The undo file can be disabled without much disadvantage. >
|
||||
:set noundofile
|
||||
:noswapfile edit secrets
|
||||
|
||||
Note: The text in memory is not encrypted. A system administrator may be able
|
||||
to see your text while you are editing it. When filtering text with
|
||||
":!filter" or using ":w !command" the text is not encrypted, this may reveal
|
||||
it to others. The 'viminfo' file is not encrypted.
|
||||
":!filter" or using ":w !command" the text is also not encrypted, this may
|
||||
reveal it to others. The 'viminfo' file is not encrypted.
|
||||
|
||||
You could do this to edit very secret text: >
|
||||
:set noundofile viminfo=
|
||||
:noswapfile edit secrets.txt
|
||||
Keep in mind that without a swap file you risk loosing your work in a crash.
|
||||
|
||||
WARNING: If you make a typo when entering the key and then write the file and
|
||||
exit, the text will be lost!
|
||||
@ -1393,18 +1418,23 @@ To disable the encryption, reset the 'key' option to an empty value: >
|
||||
:set key=
|
||||
|
||||
You can use the 'cryptmethod' option to select the type of encryption, use one
|
||||
of these two: >
|
||||
:setlocal cm=zip " weak method, backwards compatible
|
||||
:setlocal cm=blowfish " strong method
|
||||
of these: >
|
||||
:setlocal cm=zip " weak method, backwards compatible
|
||||
:setlocal cm=blowfish " method with flaws
|
||||
:setlocal cm=blowfish2 " medium strong method
|
||||
|
||||
Do this before writing the file. When reading an encrypted file it will be
|
||||
set automatically to the method used when that file was written. You can
|
||||
change 'cryptmethod' before writing that file to change the method.
|
||||
To set the default method, used for new files, use one of these in your
|
||||
|vimrc| file: >
|
||||
set cm=zip
|
||||
set cm=blowfish
|
||||
|
||||
To set the default method, used for new files, use this in your |vimrc|
|
||||
file: >
|
||||
set cm=blowfish2
|
||||
Using "blowfish2" is highly recommended. Only use another method if you
|
||||
must use an older Vim version that does not support it.
|
||||
|
||||
The message given for reading and writing a file will show "[crypted]" when
|
||||
using zip, "[blowfish]" when using blowfish.
|
||||
using zip, "[blowfish]" when using blowfish, etc.
|
||||
|
||||
When writing an undo file, the same key and method will be used for the text
|
||||
in the undo file. |persistent-undo|.
|
||||
@ -1439,7 +1469,7 @@ lines to "/etc/magic", "/usr/share/misc/magic" or wherever your system has the
|
||||
0 string VimCrypt~ Vim encrypted file
|
||||
>9 string 01 - "zip" cryptmethod
|
||||
>9 string 02 - "blowfish" cryptmethod
|
||||
|
||||
>9 string 03 - "blowfish2" cryptmethod
|
||||
|
||||
Notes:
|
||||
- Encryption is not possible when doing conversion with 'charconvert'.
|
||||
@ -1463,6 +1493,10 @@ Notes:
|
||||
- Pkzip uses the same encryption as 'cryptmethod' "zip", and US Govt has no
|
||||
objection to its export. Pkzip's public file APPNOTE.TXT describes this
|
||||
algorithm in detail.
|
||||
- The implementation of 'cryptmethod' "blowfish" has a flaw. It is possible
|
||||
to crack the first 64 bytes of a file and in some circumstances more of the
|
||||
file. Use of it is not recommended, but it's still the strongest method
|
||||
supported by Vim 7.3 and 7.4. The "zip" method is even weaker.
|
||||
- Vim originates from the Netherlands. That is where the sources come from.
|
||||
Thus the encryption code is not exported from the USA.
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.4. Last change: 2014 Jul 06
|
||||
*eval.txt* For Vim version 7.4. Last change: 2014 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -1102,9 +1102,9 @@ are known inside the current Vim session. Using expand() will first try using
|
||||
the environment variables known inside the current Vim session. If that
|
||||
fails, a shell will be used to expand the variable. This can be slow, but it
|
||||
does expand all variables that the shell knows about. Example: >
|
||||
:echo $version
|
||||
:echo expand("$version")
|
||||
The first one probably doesn't echo anything, the second echoes the $version
|
||||
:echo $shell
|
||||
:echo expand("$shell")
|
||||
The first one probably doesn't echo anything, the second echoes the $shell
|
||||
variable (if your shell supports it).
|
||||
|
||||
|
||||
@ -1457,10 +1457,10 @@ v:foldstart Used for 'foldtext': first line of closed fold.
|
||||
Read-only in the |sandbox|. |fold-foldtext|
|
||||
|
||||
*v:hlsearch* *hlsearch-variable*
|
||||
v:hlsearch Variable that determines whether search highlighting is on.
|
||||
Makes sense only if 'hlsearch' is enabled which requires
|
||||
|+extra_search|. Setting this variable to zero acts the like
|
||||
|:nohlsearch| command, setting it to one acts like >
|
||||
v:hlsearch Variable that indicates whether search highlighting is on.
|
||||
Setting it makes sense only if 'hlsearch' is enabled which
|
||||
requires |+extra_search|. Setting this variable to zero acts
|
||||
the like |:nohlsearch| command, setting it to one acts like >
|
||||
let &hlsearch = &hlsearch
|
||||
<
|
||||
*v:insertmode* *insertmode-variable*
|
||||
@ -1751,12 +1751,12 @@ confirm( {msg} [, {choices} [, {default} [, {type}]]])
|
||||
copy( {expr}) any make a shallow copy of {expr}
|
||||
cos( {expr}) Float cosine of {expr}
|
||||
cosh( {expr}) Float hyperbolic cosine of {expr}
|
||||
count( {list}, {expr} [, {start} [, {ic}]])
|
||||
count( {list}, {expr} [, {ic} [, {start}]])
|
||||
Number count how many {expr} are in {list}
|
||||
cscope_connection( [{num} , {dbpath} [, {prepend}]])
|
||||
Number checks existence of cscope connection
|
||||
cursor( {lnum}, {col} [, {coladd}])
|
||||
Number move cursor to {lnum}, {col}, {coladd}
|
||||
cursor( {lnum}, {col} [, {off}])
|
||||
Number move cursor to {lnum}, {col}, {off}
|
||||
cursor( {list}) Number move cursor to position in {list}
|
||||
deepcopy( {expr} [, {noref}]) any make a full copy of {expr}
|
||||
delete( {fname}) Number delete file {fname}
|
||||
@ -1807,7 +1807,8 @@ getchar( [expr]) Number get one character from the user
|
||||
getcharmod( ) Number modifiers for the last typed character
|
||||
getcmdline() String return the current command-line
|
||||
getcmdpos() Number return cursor position in command-line
|
||||
getcmdtype() String return the current command-line type
|
||||
getcmdtype() String return current command-line type
|
||||
getcmdwintype() String return current command-line window type
|
||||
getcurpos() List position of the cursor
|
||||
getcwd() String the current working directory
|
||||
getfontname( [{name}]) String name of font being used
|
||||
@ -2040,7 +2041,7 @@ winrestcmd() String returns command to restore window sizes
|
||||
winrestview( {dict}) none restore view of current window
|
||||
winsaveview() Dict save view of current window
|
||||
winwidth( {nr}) Number width of window {nr}
|
||||
writefile( {list}, {fname} [, {binary}])
|
||||
writefile( {list}, {fname} [, {flags}])
|
||||
Number write list of lines to file {fname}
|
||||
xor( {expr}, {expr}) Number bitwise XOR
|
||||
|
||||
@ -2112,8 +2113,8 @@ argidx() The result is the current index in the argument list. 0 is
|
||||
arglistid([{winnr}, [ {tabnr} ]])
|
||||
Return the argument list ID. This is a number which
|
||||
identifies the argument list being used. Zero is used for the
|
||||
global argument list.
|
||||
Return zero if the arguments are invalid.
|
||||
global argument list. See |arglist|.
|
||||
Return -1 if the arguments are invalid.
|
||||
|
||||
Without arguments use the current window.
|
||||
With {winnr} only use this window in the current tab page.
|
||||
@ -2394,6 +2395,10 @@ col({expr}) The result is a Number, which is the byte index of the column
|
||||
number of bytes in the cursor line plus one)
|
||||
'x position of mark x (if the mark is not set, 0 is
|
||||
returned)
|
||||
v In Visual mode: the start of the Visual area (the
|
||||
cursor is the end). When not in Visual mode
|
||||
returns the cursor position. Differs from |'<| in
|
||||
that it's updated right away.
|
||||
Additionally {expr} can be [lnum, col]: a |List| with the line
|
||||
and column number. Most useful when the column is "$", to get
|
||||
the last column of a specific line. When "lnum" or "col" is
|
||||
@ -2621,7 +2626,8 @@ cursor({list})
|
||||
line.
|
||||
If {col} is zero, the cursor will stay in the current column.
|
||||
If {curswant} is given it is used to set the preferred column
|
||||
for vertical movment. Otherwise {col} is used.
|
||||
for vertical movement. Otherwise {col} is used.
|
||||
|
||||
When 'virtualedit' is used {off} specifies the offset in
|
||||
screen columns from the start of the character. E.g., a
|
||||
position within a <Tab> or after the last character.
|
||||
@ -2912,7 +2918,8 @@ expand({expr} [, {nosuf} [, {list}]]) *expand()*
|
||||
<
|
||||
Expand() can also be used to expand variables and environment
|
||||
variables that are only known in a shell. But this can be
|
||||
slow, because a shell must be started. See |expr-env-expand|.
|
||||
slow, because a shell may be used to do the expansion. See
|
||||
|expr-env-expand|.
|
||||
The expanded variable is still handled like a list of file
|
||||
names. When an environment variable cannot be expanded, it is
|
||||
left unchanged. Thus ":echo expand('$FOOBAR')" results in
|
||||
@ -3302,6 +3309,17 @@ getchar([expr]) *getchar()*
|
||||
: endif
|
||||
: endwhile
|
||||
:endfunction
|
||||
<
|
||||
You may also receive syntetic characters, such as
|
||||
|<CursorHold>|. Often you will want to ignore this and get
|
||||
another character: >
|
||||
:function GetKey()
|
||||
: let c = getchar()
|
||||
: while c == "\<CursorHold>"
|
||||
: let c = getchar()
|
||||
: endwhile
|
||||
: return c
|
||||
:endfunction
|
||||
|
||||
getcharmod() *getcharmod()*
|
||||
The result is a Number which is the state of the modifiers for
|
||||
@ -3344,11 +3362,17 @@ getcmdtype() *getcmdtype()*
|
||||
? backward search command
|
||||
@ |input()| command
|
||||
- |:insert| or |:append| command
|
||||
= |i_CTRL-R_=|
|
||||
Only works when editing the command line, thus requires use of
|
||||
|c_CTRL-\_e| or |c_CTRL-R_=| or an expression mapping.
|
||||
Returns an empty string otherwise.
|
||||
Also see |getcmdpos()|, |setcmdpos()| and |getcmdline()|.
|
||||
|
||||
getcmdwintype() *getcmdwintype()*
|
||||
Return the current |command-line-window| type. Possible return
|
||||
values are the same as |getcmdtype()|. Returns an empty string
|
||||
when not in the command-line window.
|
||||
|
||||
*getcurpos()*
|
||||
getcurpos() Get the position of the cursor. This is like getpos('.'), but
|
||||
includes an extra item in the list:
|
||||
@ -3359,7 +3383,7 @@ getcurpos() Get the position of the cursor. This is like getpos('.'), but
|
||||
let save_cursor = getcurpos()
|
||||
MoveTheCursorAround
|
||||
call setpos('.', save_cursor)
|
||||
|
||||
<
|
||||
*getcwd()*
|
||||
getcwd() The result is a String, which is the name of the current
|
||||
working directory.
|
||||
@ -3506,7 +3530,7 @@ getpos({expr}) Get the position for {expr}. For possible values of {expr}
|
||||
This can be used to save and restore the position of a mark: >
|
||||
let save_a_mark = getpos("'a")
|
||||
...
|
||||
call setpos(''a', save_a_mark
|
||||
call setpos("'a", save_a_mark)
|
||||
< Also see |getcurpos()| and |setpos()|.
|
||||
|
||||
|
||||
@ -3568,6 +3592,8 @@ gettabvar({tabnr}, {varname} [, {def}]) *gettabvar()*
|
||||
Get the value of a tab-local variable {varname} in tab page
|
||||
{tabnr}. |t:var|
|
||||
Tabs are numbered starting with one.
|
||||
When {varname} is empty a dictionary with all tab-local
|
||||
variables is returned.
|
||||
Note that the name without "t:" must be used.
|
||||
When the tab or variable doesn't exist {def} or an empty
|
||||
string is returned, there is no error message.
|
||||
@ -4841,7 +4867,7 @@ readfile({fname} [, {binary} [, {max}]])
|
||||
separated with CR will result in a single long line (unless a
|
||||
NL appears somewhere).
|
||||
All NUL characters are replaced with a NL character.
|
||||
When {binary} is equal to "b" binary mode is used:
|
||||
When {binary/append} contains "b" binary mode is used:
|
||||
- When the last line ends in a NL an extra empty list item is
|
||||
added.
|
||||
- No CR characters are removed.
|
||||
@ -5484,7 +5510,7 @@ setreg({regname}, {value} [,{options}])
|
||||
Returns zero for success, non-zero for failure.
|
||||
|
||||
*E883*
|
||||
Note: you may not use |List| containing more then one item to
|
||||
Note: you may not use |List| containing more than one item to
|
||||
set search and expression registers. Lists containing no
|
||||
items act like empty strings.
|
||||
|
||||
@ -5634,7 +5660,7 @@ sort({list} [, {func} [, {dict}]]) *sort()* *E702*
|
||||
after Strings, |Lists| after Numbers. For sorting text in the
|
||||
current buffer use |:sort|.
|
||||
|
||||
When {func} is given and it is is '1' or 'i' then case is
|
||||
When {func} is given and it is '1' or 'i' then case is
|
||||
ignored.
|
||||
|
||||
When {func} is given and it is 'n' then all items will be
|
||||
@ -6086,6 +6112,12 @@ system({expr} [, {input}]) *system()* *E677*
|
||||
list items converted to NULs).
|
||||
Pipes are not used.
|
||||
|
||||
When prepended by |:silent| the shell will not be set to
|
||||
cooked mode. This is meant to be used for commands that do
|
||||
not need the user to type. It avoids stray characters showing
|
||||
up on the screen which require |CTRL-L| to remove. >
|
||||
:silent let f = system('ls *.vim')
|
||||
<
|
||||
Note: Use |shellescape()| or |::S| with |expand()| or
|
||||
|fnamemodify()| to escape special characters in a command
|
||||
argument. Newlines in {expr} may cause the command to fail.
|
||||
@ -6390,6 +6422,10 @@ virtcol({expr}) *virtcol()*
|
||||
plus one)
|
||||
'x position of mark x (if the mark is not set, 0 is
|
||||
returned)
|
||||
v In Visual mode: the start of the Visual area (the
|
||||
cursor is the end). When not in Visual mode
|
||||
returns the cursor position. Differs from |'<| in
|
||||
that it's updated right away.
|
||||
Note that only marks in the current file can be used.
|
||||
Examples: >
|
||||
virtcol(".") with text "foo^Lbar", with cursor on the "^L", returns 5
|
||||
@ -6512,7 +6548,7 @@ winsaveview() Returns a |Dictionary| that contains information to restore
|
||||
buffer and you want to go back to the original view.
|
||||
This does not save fold information. Use the 'foldenable'
|
||||
option to temporarily switch off folding, so that folds are
|
||||
not opened when moving around.
|
||||
not opened when moving around. This may have side effects.
|
||||
The return value includes:
|
||||
lnum cursor line number
|
||||
col cursor column (Note: the first column
|
||||
@ -6539,14 +6575,20 @@ winwidth({nr}) *winwidth()*
|
||||
:endif
|
||||
<
|
||||
*writefile()*
|
||||
writefile({list}, {fname} [, {binary}])
|
||||
writefile({list}, {fname} [, {flags}])
|
||||
Write |List| {list} to file {fname}. Each list item is
|
||||
separated with a NL. Each list item must be a String or
|
||||
Number.
|
||||
When {binary} is equal to "b" binary mode is used: There will
|
||||
When {flags} contains "b" then binary mode is used: There will
|
||||
not be a NL after the last list item. An empty item at the
|
||||
end does cause the last line in the file to end in a NL.
|
||||
All NL characters are replaced with a NUL character.
|
||||
|
||||
When {flags} contains "a" then append mode is used, lines are
|
||||
append to the file: >
|
||||
:call writefile(["foo"], "event.log", "a")
|
||||
:call writefile(["bar"], "event.log", "a")
|
||||
>
|
||||
< All NL characters are replaced with a NUL character.
|
||||
Inserting CR characters needs to be done before passing {list}
|
||||
to writefile().
|
||||
An existing file is overwritten, if possible.
|
||||
@ -6622,6 +6664,7 @@ dialog_con Compiled with console dialog support.
|
||||
dialog_gui Compiled with GUI dialog support.
|
||||
diff Compiled with |vimdiff| and 'diff' support.
|
||||
digraphs Compiled with support for digraphs.
|
||||
directx Compiled with support for Direct-X and 'renderoptions'.
|
||||
dnd Compiled with support for the "~ register |quote_~|.
|
||||
dos16 16 bits DOS version of Vim.
|
||||
dos32 32 bits DOS (DJGPP) version of Vim.
|
||||
|
@ -1,4 +1,4 @@
|
||||
*helphelp.txt* For Vim version 7.4. Last change: 2012 Nov 28
|
||||
*helphelp.txt* For Vim version 7.4. Last change: 2014 Sep 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -96,6 +96,9 @@ Help on help files *helphelp*
|
||||
find a tag in a file with the same language as the
|
||||
current file. See |help-translated|.
|
||||
|
||||
*:helpc* *:helpclose*
|
||||
:helpc[lose] Close one help window, if there is one.
|
||||
|
||||
*:helpg* *:helpgrep*
|
||||
:helpg[rep] {pattern}[@xx]
|
||||
Search all help text files and make a list of lines
|
||||
|
@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 7.4. Last change: 2013 Jul 10
|
||||
*if_pyth.txt* For Vim version 7.4. Last change: 2014 Jul 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@ -28,7 +28,7 @@ Both can be available at the same time, but read |python-2-and-3|.
|
||||
==============================================================================
|
||||
1. Commands *python-commands*
|
||||
|
||||
*:python* *:py* *E205* *E263* *E264*
|
||||
*:python* *:py* *E263* *E264* *E887*
|
||||
:[range]py[thon] {stmt}
|
||||
Execute Python statement {stmt}. A simple check if
|
||||
the `:python` command is working: >
|
||||
|
@ -1,4 +1,4 @@
|
||||
*indent.txt* For Vim version 7.4. Last change: 2014 Apr 23
|
||||
*indent.txt* For Vim version 7.4. Last change: 2014 Dec 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.4. Last change: 2014 Mar 25
|
||||
*index.txt* For Vim version 7.4. Last change: 2014 Sep 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -1244,6 +1244,7 @@ tag command action ~
|
||||
|:gvim| :gv[im] start the GUI
|
||||
|:hardcopy| :ha[rdcopy] send text to the printer
|
||||
|:help| :h[elp] open a help window
|
||||
|:helpclose| :helpc[lose] close one help window
|
||||
|:helpfind| :helpf[ind] dialog to open a help window
|
||||
|:helpgrep| :helpg[rep] like ":grep" but searches help files
|
||||
|:helptags| :helpt[ags] generate help tags for a directory
|
||||
|
@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.4. Last change: 2014 Jul 06
|
||||
*insert.txt* For Vim version 7.4. Last change: 2014 Aug 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -51,6 +51,8 @@ char action ~
|
||||
abbreviation.
|
||||
Note: If your <Esc> key is hard to hit on your keyboard, train
|
||||
yourself to use CTRL-[.
|
||||
If Esc doesn't work and you are using a Mac, try CTRL-Esc.
|
||||
Or disable Listening under Accessibility preferences.
|
||||
*i_CTRL-C*
|
||||
CTRL-C Quit insert mode, go back to Normal mode. Do not check for
|
||||
abbreviations. Does not trigger the |InsertLeave| autocommand
|
||||
|
@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 7.4. Last change: 2014 Jun 02
|
||||
*map.txt* For Vim version 7.4. Last change: 2014 Dec 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -923,9 +923,11 @@ Examples: ({CURSOR} is where you type a non-keyword character) >
|
||||
< "test;;" is not expanded
|
||||
"test ;;" is expanded to "test <endofline>"
|
||||
|
||||
To avoid the abbreviation in insert mode: Type part of the abbreviation, exit
|
||||
insert mode with <Esc>, re-enter insert mode with "a" and type the rest. Or
|
||||
type CTRL-V before the character after the abbreviation.
|
||||
To avoid the abbreviation in Insert mode: Type CTRL-V before the character
|
||||
that would trigger the abbreviation. E.g. CTRL-V <Space>. Or type part of
|
||||
the abbreviation, exit insert mode with <Esc>, re-enter insert mode with "a"
|
||||
and type the rest.
|
||||
|
||||
To avoid the abbreviation in Command-line mode: Type CTRL-V twice somewhere in
|
||||
the abbreviation to avoid it to be replaced. A CTRL-V in front of a normal
|
||||
character is mostly ignored otherwise.
|
||||
@ -1283,6 +1285,8 @@ completion can be enabled:
|
||||
-complete=custom,{func} custom completion, defined via {func}
|
||||
-complete=customlist,{func} custom completion, defined via {func}
|
||||
|
||||
Note: That some completion methods might expand environment variables.
|
||||
|
||||
|
||||
Custom completion *:command-completion-custom*
|
||||
*:command-completion-customlist*
|
||||
@ -1354,6 +1358,19 @@ Possible attributes are:
|
||||
Note that -range=N and -count=N are mutually exclusive - only one should be
|
||||
specified.
|
||||
|
||||
*E889* *:command-addr*
|
||||
It is possible that the special characters in the range like ., $ or % which
|
||||
by default correspond to the current line, last line and the whole buffer,
|
||||
relate to arguments, (loaded) buffers, windows or tab pages.
|
||||
|
||||
Possible values are:
|
||||
-addr=lines Range of lines (this is the default)
|
||||
-addr=arguments Range for arguments
|
||||
-addr=buffers Range for buffers (also not loaded buffers)
|
||||
-addr=loaded_buffers Range for loaded buffers
|
||||
-addr=windows Range for windows
|
||||
-addr=tabs Range for tab pages
|
||||
|
||||
Special cases *:command-bang* *:command-bar*
|
||||
*:command-register* *:command-buffer*
|
||||
There are some special cases as well:
|
||||
|
@ -470,7 +470,7 @@ raise Bring the editor to the foreground.
|
||||
New in version 2.1.
|
||||
|
||||
removeAnno serNum
|
||||
Remove a previously place annotation for this buffer.
|
||||
Remove a previously placed annotation for this buffer.
|
||||
"serNum" is the same number used in addAnno.
|
||||
|
||||
save Save the buffer when it was modified. The other side of the
|
||||
|
@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.4. Last change: 2014 Jun 26
|
||||
*options.txt* For Vim version 7.4. Last change: 2014 Nov 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -921,7 +921,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'backupcopy'* *'bkc'*
|
||||
'backupcopy' 'bkc' string (Vi default for Unix: "yes", otherwise: "auto")
|
||||
global
|
||||
global or local to buffer |global-local|
|
||||
{not in Vi}
|
||||
When writing a file and a backup is made, this option tells how it's
|
||||
done. This is a comma separated list of words.
|
||||
@ -2221,7 +2221,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
|
||||
*'cryptmethod'* *'cm'*
|
||||
'cryptmethod' string (default "zip")
|
||||
'cryptmethod' 'cm' string (default "zip")
|
||||
global or local to buffer |global-local|
|
||||
{not in Vi}
|
||||
Method used for encryption when the buffer is written to a file:
|
||||
@ -2229,10 +2229,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
zip PkZip compatible method. A weak kind of encryption.
|
||||
Backwards compatible with Vim 7.2 and older.
|
||||
*blowfish*
|
||||
blowfish Blowfish method. Strong encryption. Requires Vim 7.3
|
||||
or later, files can NOT be read by Vim 7.2 and older.
|
||||
This adds a "seed" to the file, every time you write
|
||||
the file the encrypted bytes will be different.
|
||||
blowfish Blowfish method. Medium strong encryption but it has
|
||||
an implementation flaw. Requires Vim 7.3 or later,
|
||||
files can NOT be read by Vim 7.2 and older. This adds
|
||||
a "seed" to the file, every time you write the file
|
||||
the encrypted bytes will be different.
|
||||
*blowfish2*
|
||||
blowfish2 Blowfish method. Medium strong encryption. Requires
|
||||
Vim 7.4.399 or later, files can NOT be read by Vim 7.3
|
||||
and older. This adds a "seed" to the file, every time
|
||||
you write the file the encrypted bytes will be
|
||||
different. The whole undo file is encrypted, not just
|
||||
the pieces of text.
|
||||
|
||||
When reading an encrypted file 'cryptmethod' will be set automatically
|
||||
to the detected method of the file being read. Thus if you write it
|
||||
@ -3361,7 +3369,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
NOTE: This option is reset when 'compatible' is set.
|
||||
|
||||
*'grepformat'* *'gfm'*
|
||||
'grepformat' 'gfm' string (default "%f:%l%m,%f %l%m")
|
||||
'grepformat' 'gfm' string (default "%f:%l:%m,%f:%l%m,%f %l%m")
|
||||
global
|
||||
{not in Vi}
|
||||
Format to recognize for the ":grep" command output.
|
||||
@ -4001,6 +4009,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When Vim was compiled with HAVE_X11 defined, the original icon will be
|
||||
restored if possible |X11|. See |X11-icon| for changing the icon on
|
||||
X11.
|
||||
For MS-Windows the icon can be changed, see |windows-icon|.
|
||||
|
||||
*'iconstring'*
|
||||
'iconstring' string (default "")
|
||||
@ -4525,6 +4534,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
be able to execute Normal mode commands.
|
||||
This is the opposite of the 'keymap' option, where characters are
|
||||
mapped in Insert mode.
|
||||
Also consider setting 'langnoremap' to avoid 'langmap' applies to
|
||||
characters resulting from a mapping.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
@ -4580,6 +4591,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
:source $VIMRUNTIME/menu.vim
|
||||
< Warning: This deletes all menus that you defined yourself!
|
||||
|
||||
*'langnoremap'* *'lnr'*
|
||||
'langnoremap' 'lnr' boolean (default off)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+langmap|
|
||||
feature}
|
||||
When on, setting 'langmap' does not apply to characters resulting from
|
||||
a mapping. This basically means, if you noticed that setting
|
||||
'langmap' disables some of your mappings, try setting this option.
|
||||
This option defaults to off for backwards compatibility. Set it on if
|
||||
that works for you to avoid mappings to break.
|
||||
|
||||
*'laststatus'* *'ls'*
|
||||
'laststatus' 'ls' number (default 1)
|
||||
global
|
||||
@ -5369,7 +5392,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Expression which is evaluated to apply a patch to a file and generate
|
||||
the resulting new version of the file. See |diff-patchexpr|.
|
||||
|
||||
*'patchmode'* *'pm'* *E206*
|
||||
*'patchmode'* *'pm'* *E205* *E206*
|
||||
'patchmode' 'pm' string (default "")
|
||||
global
|
||||
{not in Vi}
|
||||
@ -5617,6 +5640,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Note that when using the NFA engine and the pattern contains something
|
||||
that is not supported the pattern will not match. This is only useful
|
||||
for debugging the regexp engine.
|
||||
Using automatic selection enables Vim to switch the engine, if the
|
||||
default engine becomes too costly. E.g., when the NFA engine uses too
|
||||
many states. This should prevent Vim from hanging on a combination of
|
||||
a complex pattern with long text.
|
||||
|
||||
*'relativenumber'* *'rnu'* *'norelativenumber'* *'nornu'*
|
||||
'relativenumber' 'rnu' boolean (default off)
|
||||
@ -5650,6 +5677,77 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
this option at the default "on". Only switch it off when working with
|
||||
old Vi scripts.
|
||||
|
||||
*'renderoptions'* *'rop'*
|
||||
'renderoptions' 'rop' string (default: empty)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with GUI and DIRECTX on
|
||||
MS-Windows}
|
||||
Select a text renderer and set its options. The options depend on the
|
||||
renderer.
|
||||
|
||||
Syntax: >
|
||||
set rop=type:{renderer}(,{name}:{value})*
|
||||
<
|
||||
Currently, only one optional renderer is available.
|
||||
|
||||
render behavior ~
|
||||
directx Vim will draw text using DirectX (DirectWrite). It makes
|
||||
drawn glyphs more beautiful than default GDI.
|
||||
It requires 'encoding' is "utf-8", and only works on
|
||||
MS-Windows Vista or newer version.
|
||||
|
||||
Options:
|
||||
name meaning type value ~
|
||||
gamma gamma float 1.0 - 2.2 (maybe)
|
||||
contrast enhancedContrast float (unknown)
|
||||
level clearTypeLevel float (unknown)
|
||||
geom pixelGeometry int 0 - 2 (see below)
|
||||
renmode renderingMode int 0 - 6 (see below)
|
||||
taamode textAntialiasMode int 0 - 3 (see below)
|
||||
|
||||
See this URL for detail:
|
||||
http://msdn.microsoft.com/en-us/library/dd368190.aspx
|
||||
|
||||
For geom: structure of a device pixel.
|
||||
0 - DWRITE_PIXEL_GEOMETRY_FLAT
|
||||
1 - DWRITE_PIXEL_GEOMETRY_RGB
|
||||
2 - DWRITE_PIXEL_GEOMETRY_BGR
|
||||
|
||||
See this URL for detail:
|
||||
http://msdn.microsoft.com/en-us/library/dd368114.aspx
|
||||
|
||||
For renmode: method of rendering glyphs.
|
||||
0 - DWRITE_RENDERING_MODE_DEFAULT
|
||||
1 - DWRITE_RENDERING_MODE_ALIASED
|
||||
2 - DWRITE_RENDERING_MODE_GDI_CLASSIC
|
||||
3 - DWRITE_RENDERING_MODE_GDI_NATURAL
|
||||
4 - DWRITE_RENDERING_MODE_NATURAL
|
||||
5 - DWRITE_RENDERING_MODE_NATURAL_SYMMETRIC
|
||||
6 - DWRITE_RENDERING_MODE_OUTLINE
|
||||
|
||||
See this URL for detail:
|
||||
http://msdn.microsoft.com/en-us/library/dd368118.aspx
|
||||
|
||||
For taamode: antialiasing mode used for drawing text.
|
||||
0 - D2D1_TEXT_ANTIALIAS_MODE_DEFAULT
|
||||
1 - D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE
|
||||
2 - D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE
|
||||
3 - D2D1_TEXT_ANTIALIAS_MODE_ALIASED
|
||||
|
||||
See this URL for detail:
|
||||
http://msdn.microsoft.com/en-us/library/dd368170.aspx
|
||||
|
||||
Example: >
|
||||
set encoding=utf-8
|
||||
set gfn=Ricty_Diminished:h12:cSHIFTJIS
|
||||
set rop=type:directx
|
||||
<
|
||||
If select a raster font (Courier, Terminal or FixedSys) to
|
||||
'guifont', it fallbacks to be drawn by GDI automatically.
|
||||
|
||||
Other render types are currently not supported.
|
||||
|
||||
*'report'*
|
||||
'report' number (default 2)
|
||||
global
|
||||
@ -7664,6 +7762,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
current buffer: >
|
||||
setlocal ul=-1
|
||||
< This helps when you run out of memory for a single change.
|
||||
|
||||
The local value is set to -123456 when the global value is to be used.
|
||||
|
||||
Also see |clear-undo|.
|
||||
|
||||
*'undoreload'* *'ur'*
|
||||
@ -7771,6 +7872,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
fold options
|
||||
options options and mappings local to a window or buffer (not
|
||||
global values for local options)
|
||||
localoptions same as "options"
|
||||
slash backslashes in file names replaced with forward
|
||||
slashes
|
||||
unix with Unix end-of-line format (single <NL>), even when
|
||||
|
@ -1,4 +1,4 @@
|
||||
*os_vms.txt* For Vim version 7.4. Last change: 2014 Feb 24
|
||||
*os_vms.txt* For Vim version 7.4. Last change: 2014 Aug 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL
|
||||
@ -774,7 +774,7 @@ Version 7.4
|
||||
- correct RealWaitForChar
|
||||
- after 7.4-119 use different functions lib$cvtf_to_internal_time because Alpha and VAX have
|
||||
G_FLOAT but IA64 uses IEEE float otherwise Vim crashes
|
||||
- guard agains crashes that are caused by mixed filenames
|
||||
- guard against crashes that are caused by mixed filenames
|
||||
- [TESTDIR]make_vms.mms changed to see the output files
|
||||
- Improve tests, update known issues
|
||||
- minor compiler warnings fixed
|
||||
|
@ -1,4 +1,4 @@
|
||||
*os_win32.txt* For Vim version 7.4. Last change: 2012 May 18
|
||||
*os_win32.txt* For Vim version 7.4. Last change: 2014 Sep 25
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by George Reilly
|
||||
@ -334,7 +334,7 @@ A. You have two possible solutions depending on what you want:
|
||||
:!start /min ctags -R .
|
||||
< When it has finished you should see file named "tags" in your current
|
||||
directory. You should notice the window title blinking on your taskbar.
|
||||
This is more noticable for commands that take longer.
|
||||
This is more noticeable for commands that take longer.
|
||||
Now delete the "tags" file and run this command: >
|
||||
:!start /b ctags -R .
|
||||
< You should have the same "tags" file, but this time there will be no
|
||||
@ -367,4 +367,10 @@ Q. I use Vim under Win32s and NT. In NT, I can define the console to default to
|
||||
A. Edit SYSTEM.INI and add 'ScreenLines=50' to the [NonWindowsApp] section. DOS
|
||||
prompts and external DOS commands will now run in a 50-line window.
|
||||
|
||||
*windows-icon*
|
||||
Q. I don't like the Vim icon, can I change it?
|
||||
A. Yes, place your favorite icon in bitmaps/vim.ico in a directory of
|
||||
'runtimepath'. For example ~/vimfiles/bitmaps/vim.ico.
|
||||
|
||||
|
||||
vim:tw=78:fo=tcq2:ts=8:ft=help:norl:
|
||||
|
@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 7.4. Last change: 2014 May 28
|
||||
*pattern.txt* For Vim version 7.4. Last change: 2014 Sep 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -706,11 +706,18 @@ overview.
|
||||
But to limit the time needed, only the line where what follows matches
|
||||
is searched, and one line before that (if there is one). This should
|
||||
be sufficient to match most things and not be too slow.
|
||||
The part of the pattern after "\@<=" and "\@<!" are checked for a
|
||||
match first, thus things like "\1" don't work to reference \(\) inside
|
||||
the preceding atom. It does work the other way around:
|
||||
Example matches ~
|
||||
\1\@<=,\([a-z]\+\) ",abc" in "abc,abc"
|
||||
|
||||
In the old regexp engine the part of the pattern after "\@<=" and
|
||||
"\@<!" are checked for a match first, thus things like "\1" don't work
|
||||
to reference \(\) inside the preceding atom. It does work the other
|
||||
way around:
|
||||
Bad example matches ~
|
||||
\%#=1\1\@<=,\([a-z]\+\) ",abc" in "abc,abc"
|
||||
|
||||
However, the new regexp engine works differently, it is better to not
|
||||
rely on this behavior, do not use \@<= if it can be avoided:
|
||||
Example matches ~
|
||||
\([a-z]\+\)\zs,\1 ",abc" in "abc,abc"
|
||||
|
||||
\@123<=
|
||||
Like "\@<=" but only look back 123 bytes. This avoids trying lots
|
||||
@ -822,6 +829,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
branch is used. Example: >
|
||||
/\(.\{-}\zsFab\)\{3}
|
||||
< Finds the third occurrence of "Fab".
|
||||
This cannot be followed by a multi. *E888*
|
||||
{not in Vi} {not available when compiled without the |+syntax| feature}
|
||||
*/\ze*
|
||||
\ze Matches at any position, and sets the end of the match there: The
|
||||
@ -830,6 +838,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
branch is used.
|
||||
Example: "end\ze\(if\|for\)" matches the "end" in "endif" and
|
||||
"endfor".
|
||||
This cannot be followed by a multi. |E888|
|
||||
{not in Vi} {not available when compiled without the |+syntax| feature}
|
||||
|
||||
*/\%^* *start-of-file*
|
||||
|
@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 7.4. Last change: 2014 Jun 25
|
||||
*quickref.txt* For Vim version 7.4. Last change: 2014 Nov 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -764,6 +764,7 @@ Short explanation of each option: *option-list*
|
||||
'keywordprg' 'kp' program to use for the "K" command
|
||||
'langmap' 'lmap' alphabetic characters for other language mode
|
||||
'langmenu' 'lm' language to be used for the menus
|
||||
'langnoremap' 'lnr' do not apply 'langmap' to mapped characters
|
||||
'laststatus' 'ls' tells when last window has status lines
|
||||
'lazyredraw' 'lz' don't redraw while executing macros
|
||||
'linebreak' 'lbr' wrap long lines at a blank
|
||||
@ -831,6 +832,7 @@ Short explanation of each option: *option-list*
|
||||
'regexpengine' 're' default regexp engine to use
|
||||
'relativenumber' 'rnu' show relative line number in front of each line
|
||||
'remap' allow mappings to work recursively
|
||||
'renderoptions' 'rop' options for text rendering on Windows
|
||||
'report' threshold for reporting nr. of lines changed
|
||||
'restorescreen' 'rs' Win32: restore screen when exiting
|
||||
'revins' 'ri' inserting characters will work backwards
|
||||
@ -1312,11 +1314,16 @@ Context-sensitive completion on the command-line:
|
||||
|CTRL-W_R| CTRL-W R rotate windows upwards
|
||||
|CTRL-W_x| CTRL-W x exchange current window with next one
|
||||
|
||||
|CTRL-W_=| CTRL-W = make all windows equal height
|
||||
|CTRL-W_=| CTRL-W = make all windows equal height & width
|
||||
|CTRL-W_-| CTRL-W - decrease current window height
|
||||
|CTRL-W_+| CTRL-W + increase current window height
|
||||
|CTRL-W__| CTRL-W _ set current window height (default:
|
||||
very high)
|
||||
|
||||
|CTRL-W_<| CTRL-W < decrease current window width
|
||||
|CTRL-W_>| CTRL-W > increase current window width
|
||||
|CTRL-W_bar| CTRL-W | set current window width (default:
|
||||
widest possible)
|
||||
------------------------------------------------------------------------------
|
||||
*Q_bu* Buffer list commands
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 7.4. Last change: 2014 Mar 25
|
||||
*repeat.txt* For Vim version 7.4. Last change: 2014 Oct 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -64,6 +64,9 @@ replacement string.
|
||||
|
||||
For the definition of a pattern, see |pattern|.
|
||||
|
||||
NOTE [cmd] may contain a range; see |collapse| and |edit-paragraph-join| for
|
||||
examples.
|
||||
|
||||
The global commands work by first scanning through the [range] lines and
|
||||
marking each line where a match occurs (for a multi-line pattern, only the
|
||||
start of the match matters).
|
||||
|
@ -1,4 +1,4 @@
|
||||
*spell.txt* For Vim version 7.4. Last change: 2014 Jul 02
|
||||
*spell.txt* For Vim version 7.4. Last change: 2014 Sep 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -1058,6 +1058,9 @@ this text to start with a "#" so that mistakes don't go unnoticed. Example:
|
||||
SFX F 0 in [^i]n # Spion > Spionin ~
|
||||
SFX F 0 nen in # Bauerin > Bauerinnen ~
|
||||
|
||||
However, to avoid lots of errors in affix files written for Myspell, you can
|
||||
add the IGNOREEXTRA flag.
|
||||
|
||||
Apparently Myspell allows an affix name to appear more than once. Since this
|
||||
might also be a mistake, Vim checks for an extra "S". The affix files for
|
||||
Myspell that use this feature apparently have this flag. Example:
|
||||
@ -1111,6 +1114,14 @@ Specifically, the affix flags can be used for:
|
||||
- CIRCUMFIX, as explained just below.
|
||||
|
||||
|
||||
IGNOREEXTRA *spell-IGNOREEXTRA*
|
||||
|
||||
Normally Vim gives an error for an extra field that does not start with '#'.
|
||||
This avoids errors going unnoticed. However, some files created for Myspell
|
||||
or Hunspell may contain many entries with an extra field. Use the IGNOREEXTRA
|
||||
flag to avoid lots of errors.
|
||||
|
||||
|
||||
CIRCUMFIX *spell-CIRCUMFIX*
|
||||
|
||||
The CIRCUMFIX flag means a prefix and suffix must be added at the same time.
|
||||
|
@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.4. Last change: 2014 Jun 27
|
||||
*syntax.txt* For Vim version 7.4. Last change: 2014 Nov 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -501,7 +501,7 @@ inserted for that purpose if no line numbers are shown. This ID attribute
|
||||
takes the form of L123 for single-buffer HTML pages, or W2L123 for diff-view
|
||||
pages, and is used to jump to a specific line (in a specific window of a diff
|
||||
view). Javascript is inserted to open any closed dynamic folds
|
||||
(|g:html_dynamic_folds|) containing the specificed line before jumping. The
|
||||
(|g:html_dynamic_folds|) containing the specified line before jumping. The
|
||||
javascript also allows omitting the window ID in the url, and the leading L.
|
||||
For example: >
|
||||
|
||||
@ -2975,6 +2975,7 @@ TEX *tex.vim* *ft-tex-syntax* *latex-syntax*
|
||||
Tex: Taking Advantage of Conceal Mode |tex-conceal|
|
||||
Tex: Selective Conceal Mode |g:tex_conceal|
|
||||
Tex: Controlling iskeyword |g:tex_isk|
|
||||
Tex: Fine Subscript and Superscript Control |tex-supersub|
|
||||
|
||||
*tex-folding* *g:tex_fold_enabled*
|
||||
Tex: Want Syntax Folding? ~
|
||||
@ -3068,6 +3069,7 @@ selectively to enable just some syntax highlighting: >
|
||||
<
|
||||
As an example, let g:tex_fast= "M" will allow math-associated highlighting
|
||||
but suppress all the other region-based syntax highlighting.
|
||||
(also see: |g:tex_conceal| and |tex-supersub|)
|
||||
|
||||
*tex-morecommands* *tex-package*
|
||||
Tex: Want To Highlight More Commands? ~
|
||||
@ -3169,6 +3171,28 @@ syntax highlighting script handles this with the following logic:
|
||||
* If g:tex_isk exists, then it will be used for the local 'iskeyword'
|
||||
* Else the local 'iskeyword' will be set to 48-57,a-z,A-Z,192-255
|
||||
|
||||
*tex-supersub* *g:tex_superscripts* *g:tex_subscripts*
|
||||
Tex: Fine Subscript and Superscript Control~
|
||||
|
||||
See |tex-conceal| for how to enable concealed character replacement.
|
||||
|
||||
See |g:tex_conceal| for selectively concealing accents, bold/italic,
|
||||
math, Greek, and superscripts/subscripts.
|
||||
|
||||
One may exert fine control over which superscripts and subscripts one
|
||||
wants syntax-based concealment for (see |:syn-cchar|). Since not all
|
||||
fonts support all characters, one may override the
|
||||
concealed-replacement lists; by default these lists are given by: >
|
||||
|
||||
let g:tex_superscripts= "[0-9a-zA-W.,:;+-<>/()=]"
|
||||
let g:tex_subscripts= "[0-9aehijklmnoprstuvx,+-/().]"
|
||||
<
|
||||
For example, I use Luxi Mono Bold; it doesn't support subscript
|
||||
characters for "hklmnpst", so I put >
|
||||
let g:tex_subscripts= "[0-9aeijoruvx,+-/().]"
|
||||
< in ~/.vim/ftplugin/tex/tex.vim in order to avoid having inscrutable
|
||||
utf-8 glyphs appear.
|
||||
|
||||
|
||||
TF *tf.vim* *ft-tf-syntax*
|
||||
|
||||
@ -3775,7 +3799,7 @@ The 'foldnestmax' option limits the nesting of syntax folds.
|
||||
|
||||
|
||||
*:syn-contains* *E405* *E406* *E407* *E408* *E409*
|
||||
contains={groupname},..
|
||||
contains={group-name},..
|
||||
|
||||
The "contains" argument is followed by a list of syntax group names. These
|
||||
groups will be allowed to begin inside the item (they may extend past the
|
||||
@ -3828,13 +3852,13 @@ region where contained items do match. Note that this may also limit the
|
||||
area that is highlighted
|
||||
|
||||
|
||||
containedin={groupname}... *:syn-containedin*
|
||||
containedin={group-name}... *:syn-containedin*
|
||||
|
||||
The "containedin" argument is followed by a list of syntax group names. The
|
||||
item will be allowed to begin inside these groups. This works as if the
|
||||
containing item has a "contains=" argument that includes this item.
|
||||
|
||||
The {groupname}... can be used just like for "contains", as explained above.
|
||||
The {group-name}... can be used just like for "contains", as explained above.
|
||||
|
||||
This is useful when adding a syntax item afterwards. An item can be told to
|
||||
be included inside an already existing item, without changing the definition
|
||||
@ -3850,7 +3874,7 @@ keywords never contain another item, thus adding them to "containedin" won't
|
||||
work.
|
||||
|
||||
|
||||
nextgroup={groupname},.. *:syn-nextgroup*
|
||||
nextgroup={group-name},.. *:syn-nextgroup*
|
||||
|
||||
The "nextgroup" argument is followed by a list of syntax group names,
|
||||
separated by commas (just like with "contains", so you can also use patterns).
|
||||
@ -5041,6 +5065,7 @@ This will set the "w:current_syntax" variable to "foo". The value of
|
||||
restoring "b:current_syntax", since the syntax files do set
|
||||
"b:current_syntax". The value set by the syntax file is assigned to
|
||||
"w:current_syntax".
|
||||
Note: This resets the 'spell', 'spellcapcheck' and 'spellfile' options.
|
||||
|
||||
Once a window has its own syntax, syntax commands executed from other windows
|
||||
on the same buffer (including :syntax clear) have no effect. Conversely,
|
||||
|
@ -1,4 +1,4 @@
|
||||
*tabpage.txt* For Vim version 7.4. Last change: 2012 Aug 08
|
||||
*tabpage.txt* For Vim version 7.4. Last change: 2014 Nov 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -61,16 +61,25 @@ In the GUI tab pages line you can use the right mouse button to open menu.
|
||||
:[count]tabe[dit] *:tabe* *:tabedit* *:tabnew*
|
||||
:[count]tabnew
|
||||
Open a new tab page with an empty window, after the current
|
||||
tab page. For [count] see |:tab| below.
|
||||
tab page. If [count] is given the new tab page appears after
|
||||
the tab page [count] otherwise the new tab page will appear
|
||||
after the current one. >
|
||||
:tabnew " opens tabpage after the current one
|
||||
:.tabnew " as above
|
||||
:+tabnew " opens tabpage after the next tab page
|
||||
" note: it is one further than :tabnew
|
||||
:-tabnew " opens tabpage before the current one
|
||||
:0tabnew " opens tabpage before the first one
|
||||
:$tabnew " opens tabpage after the last one
|
||||
|
||||
:[count]tabe[dit] [++opt] [+cmd] {file}
|
||||
:[count]tabnew [++opt] [+cmd] {file}
|
||||
Open a new tab page and edit {file}, like with |:edit|.
|
||||
For [count] see |:tab| below.
|
||||
For [count] see |:tabnew| above.
|
||||
|
||||
:[count]tabf[ind] [++opt] [+cmd] {file} *:tabf* *:tabfind*
|
||||
Open a new tab page and edit {file} in 'path', like with
|
||||
|:find|. For [count] see |:tab| below.
|
||||
|:find|. For [count] see |:tabnew| above.
|
||||
{not available when the |+file_in_path| feature was disabled
|
||||
at compile time}
|
||||
|
||||
@ -110,12 +119,18 @@ something else.
|
||||
- When 'hidden' is not set, [!] is not used, a buffer has
|
||||
changes, and there is no other window on this buffer.
|
||||
Changes to the buffer are not written and won't get lost, so
|
||||
this is a "safe" command.
|
||||
this is a "safe" command. >
|
||||
:tabclose " close the current tab page
|
||||
|
||||
:{count}tabc[lose][!]
|
||||
:tabc[lose][!] {count}
|
||||
Close tab page {count}. Fails in the same way as `:tabclose`
|
||||
above.
|
||||
|
||||
above. >
|
||||
:-tabclose " close the previous tab page
|
||||
:+tabclose " close the next tab page
|
||||
:1tabclose " close the first tab page
|
||||
:$tabclose " close the last tab page
|
||||
<
|
||||
*:tabo* *:tabonly*
|
||||
:tabo[nly][!] Close all other tab pages.
|
||||
When the 'hidden' option is set, all buffers in closed windows
|
||||
@ -124,7 +139,17 @@ something else.
|
||||
modified buffers are written. Otherwise, windows that have
|
||||
buffers that are modified are not removed, unless the [!] is
|
||||
given, then they become hidden. But modified buffers are
|
||||
never abandoned, so changes cannot get lost.
|
||||
never abandoned, so changes cannot get lost. >
|
||||
:tabonly " close all tab pages except the current
|
||||
|
||||
:{count}tabo[nly][!]
|
||||
Close all tab pages except the {count}th one. >
|
||||
:.tabonly " one
|
||||
:-tabonly " close all tab pages except the previous
|
||||
" one
|
||||
:+tabonly " close all tab pages except the next one
|
||||
:1tabonly " close all tab pages except the first one
|
||||
:$tabonly " close all tab pages except the last one
|
||||
|
||||
|
||||
SWITCHING TO ANOTHER TAB PAGE:
|
||||
@ -176,7 +201,15 @@ REORDERING TAB PAGES:
|
||||
:[N]tabm[ove]
|
||||
Move the current tab page to after tab page N. Use zero to
|
||||
make the current tab page the first one. Without N the tab
|
||||
page is made the last one.
|
||||
page is made the last one. >
|
||||
:-tabmove " move the tab page to the left
|
||||
:tabmove " move the tab page to the right
|
||||
:.tabmove " as above
|
||||
:+tabmove " as above
|
||||
:0tabmove " move the tab page to the begining of the tab
|
||||
" list
|
||||
:$tabmove " move the tab page to the end of the tab list
|
||||
<
|
||||
|
||||
:tabm[ove] +[N]
|
||||
:tabm[ove] -[N]
|
||||
|
@ -392,6 +392,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'kp' options.txt /*'kp'*
|
||||
'langmap' options.txt /*'langmap'*
|
||||
'langmenu' options.txt /*'langmenu'*
|
||||
'langnoremap' options.txt /*'langnoremap'*
|
||||
'laststatus' options.txt /*'laststatus'*
|
||||
'lazyredraw' options.txt /*'lazyredraw'*
|
||||
'lbr' options.txt /*'lbr'*
|
||||
@ -405,6 +406,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'listchars' options.txt /*'listchars'*
|
||||
'lm' options.txt /*'lm'*
|
||||
'lmap' options.txt /*'lmap'*
|
||||
'lnr' options.txt /*'lnr'*
|
||||
'loadplugins' options.txt /*'loadplugins'*
|
||||
'lpl' options.txt /*'lpl'*
|
||||
'ls' options.txt /*'ls'*
|
||||
@ -756,6 +758,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'regexpengine' options.txt /*'regexpengine'*
|
||||
'relativenumber' options.txt /*'relativenumber'*
|
||||
'remap' options.txt /*'remap'*
|
||||
'renderoptions' options.txt /*'renderoptions'*
|
||||
'report' options.txt /*'report'*
|
||||
'restorescreen' options.txt /*'restorescreen'*
|
||||
'revins' options.txt /*'revins'*
|
||||
@ -766,6 +769,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'rlc' options.txt /*'rlc'*
|
||||
'rnu' options.txt /*'rnu'*
|
||||
'ro' options.txt /*'ro'*
|
||||
'rop' options.txt /*'rop'*
|
||||
'rs' options.txt /*'rs'*
|
||||
'rtp' options.txt /*'rtp'*
|
||||
'ru' options.txt /*'ru'*
|
||||
@ -1171,6 +1175,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
+dialog_gui various.txt /*+dialog_gui*
|
||||
+diff various.txt /*+diff*
|
||||
+digraphs various.txt /*+digraphs*
|
||||
+directx various.txt /*+directx*
|
||||
+dnd various.txt /*+dnd*
|
||||
+emacs_tags various.txt /*+emacs_tags*
|
||||
+eval various.txt /*+eval*
|
||||
@ -2052,6 +2057,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:comc map.txt /*:comc*
|
||||
:comclear map.txt /*:comclear*
|
||||
:command map.txt /*:command*
|
||||
:command-addr map.txt /*:command-addr*
|
||||
:command-bang map.txt /*:command-bang*
|
||||
:command-bar map.txt /*:command-bar*
|
||||
:command-buffer map.txt /*:command-buffer*
|
||||
@ -2245,6 +2251,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:ha print.txt /*:ha*
|
||||
:hardcopy print.txt /*:hardcopy*
|
||||
:help helphelp.txt /*:help*
|
||||
:helpc helphelp.txt /*:helpc*
|
||||
:helpclose helphelp.txt /*:helpclose*
|
||||
:helpf helphelp.txt /*:helpf*
|
||||
:helpfind helphelp.txt /*:helpfind*
|
||||
:helpg helphelp.txt /*:helpg*
|
||||
@ -3129,6 +3137,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
<CSI> intro.txt /*<CSI>*
|
||||
<Char-> map.txt /*<Char->*
|
||||
<Char> map.txt /*<Char>*
|
||||
<CursorHold> autocmd.txt /*<CursorHold>*
|
||||
<D- intro.txt /*<D-*
|
||||
<Del> change.txt /*<Del>*
|
||||
<Down> motion.txt /*<Down>*
|
||||
@ -3451,6 +3460,7 @@ CTRL-^ editing.txt /*CTRL-^*
|
||||
CTRL-{char} intro.txt /*CTRL-{char}*
|
||||
Chinese mbyte.txt /*Chinese*
|
||||
Cmd-event autocmd.txt /*Cmd-event*
|
||||
CmdUndefined autocmd.txt /*CmdUndefined*
|
||||
Cmdline cmdline.txt /*Cmdline*
|
||||
Cmdline-mode cmdline.txt /*Cmdline-mode*
|
||||
CmdwinEnter autocmd.txt /*CmdwinEnter*
|
||||
@ -3592,7 +3602,7 @@ E201 autocmd.txt /*E201*
|
||||
E202 options.txt /*E202*
|
||||
E203 autocmd.txt /*E203*
|
||||
E204 autocmd.txt /*E204*
|
||||
E205 if_pyth.txt /*E205*
|
||||
E205 options.txt /*E205*
|
||||
E206 options.txt /*E206*
|
||||
E207 editing.txt /*E207*
|
||||
E208 message.txt /*E208*
|
||||
@ -4324,6 +4334,9 @@ E883 eval.txt /*E883*
|
||||
E884 eval.txt /*E884*
|
||||
E885 sign.txt /*E885*
|
||||
E886 starting.txt /*E886*
|
||||
E887 if_pyth.txt /*E887*
|
||||
E888 pattern.txt /*E888*
|
||||
E889 map.txt /*E889*
|
||||
E89 message.txt /*E89*
|
||||
E90 message.txt /*E90*
|
||||
E91 options.txt /*E91*
|
||||
@ -4901,6 +4914,7 @@ blockwise-operators visual.txt /*blockwise-operators*
|
||||
blockwise-register change.txt /*blockwise-register*
|
||||
blockwise-visual visual.txt /*blockwise-visual*
|
||||
blowfish options.txt /*blowfish*
|
||||
blowfish2 options.txt /*blowfish2*
|
||||
bold syntax.txt /*bold*
|
||||
bom-bytes mbyte.txt /*bom-bytes*
|
||||
book intro.txt /*book*
|
||||
@ -5463,6 +5477,7 @@ edit-dialogs editing.txt /*edit-dialogs*
|
||||
edit-files editing.txt /*edit-files*
|
||||
edit-intro editing.txt /*edit-intro*
|
||||
edit-no-break usr_25.txt /*edit-no-break*
|
||||
edit-paragraph-join usr_25.txt /*edit-paragraph-join*
|
||||
editing.txt editing.txt /*editing.txt*
|
||||
efm-%> quickfix.txt /*efm-%>*
|
||||
efm-entries quickfix.txt /*efm-entries*
|
||||
@ -6074,6 +6089,8 @@ g:tex_isk syntax.txt /*g:tex_isk*
|
||||
g:tex_no_error syntax.txt /*g:tex_no_error*
|
||||
g:tex_nospell syntax.txt /*g:tex_nospell*
|
||||
g:tex_stylish syntax.txt /*g:tex_stylish*
|
||||
g:tex_subscripts syntax.txt /*g:tex_subscripts*
|
||||
g:tex_superscripts syntax.txt /*g:tex_superscripts*
|
||||
g:tex_verbspell syntax.txt /*g:tex_verbspell*
|
||||
g:var eval.txt /*g:var*
|
||||
g:vimball_home pi_vimball.txt /*g:vimball_home*
|
||||
@ -6137,6 +6154,7 @@ getcharmod() eval.txt /*getcharmod()*
|
||||
getcmdline() eval.txt /*getcmdline()*
|
||||
getcmdpos() eval.txt /*getcmdpos()*
|
||||
getcmdtype() eval.txt /*getcmdtype()*
|
||||
getcmdwintype() eval.txt /*getcmdwintype()*
|
||||
getcurpos() eval.txt /*getcurpos()*
|
||||
getcwd() eval.txt /*getcwd()*
|
||||
getfontname() eval.txt /*getfontname()*
|
||||
@ -7815,6 +7833,7 @@ spell-FLAG spell.txt /*spell-FLAG*
|
||||
spell-FOL spell.txt /*spell-FOL*
|
||||
spell-FORBIDDENWORD spell.txt /*spell-FORBIDDENWORD*
|
||||
spell-HOME spell.txt /*spell-HOME*
|
||||
spell-IGNOREEXTRA spell.txt /*spell-IGNOREEXTRA*
|
||||
spell-KEEPCASE spell.txt /*spell-KEEPCASE*
|
||||
spell-KEY spell.txt /*spell-KEY*
|
||||
spell-LANG spell.txt /*spell-LANG*
|
||||
@ -8292,6 +8311,7 @@ tex-runon syntax.txt /*tex-runon*
|
||||
tex-slow syntax.txt /*tex-slow*
|
||||
tex-stopzone syntax.txt /*tex-stopzone*
|
||||
tex-style syntax.txt /*tex-style*
|
||||
tex-supersub syntax.txt /*tex-supersub*
|
||||
tex-sync syntax.txt /*tex-sync*
|
||||
tex-verb syntax.txt /*tex-verb*
|
||||
tex.vim syntax.txt /*tex.vim*
|
||||
@ -8767,6 +8787,7 @@ window-variable eval.txt /*window-variable*
|
||||
windowid-variable eval.txt /*windowid-variable*
|
||||
windows windows.txt /*windows*
|
||||
windows-3.1 os_win32.txt /*windows-3.1*
|
||||
windows-icon os_win32.txt /*windows-icon*
|
||||
windows-intro windows.txt /*windows-intro*
|
||||
windows-starting windows.txt /*windows-starting*
|
||||
windows.txt windows.txt /*windows.txt*
|
||||
|
@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.4. Last change: 2014 Jul 10
|
||||
*todo.txt* For Vim version 7.4. Last change: 2014 Dec 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -34,9 +34,10 @@ not be repeated below, unless there is extra information.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Forfeit test_listlbr when encoding is not utf8? (Danek Duvall)
|
||||
|
||||
Regexp problems:
|
||||
- The NFA engine does not implement the time limit passed to
|
||||
nfa_regexec_multi()
|
||||
- Very slow with a long line and Ruby highlighting. (John Whitley, 2014 Dec 4)
|
||||
- Bug with pattern: '\vblock (\d+)\.\n.*\d+%(\1)@<!\.$'
|
||||
(Lech Lorens, 2014 Feb 3)
|
||||
- Issue 164: freeze on regexp search.
|
||||
@ -44,52 +45,186 @@ Regexp problems:
|
||||
2013 Dec 11)
|
||||
- Using \@> and \?. (Brett Stahlman, 2013 Dec 21) Remark from Marcin Szamotulski
|
||||
Remark from Brett 2014 Jan 6 and 7.
|
||||
- Difference in NFA and old engine. (Brett Stahlman, 2014 Nov 5)
|
||||
- Bug when using \>. (Ramel, 2014 Feb 2) (Aaron Bohannon, 2014 Feb 13)
|
||||
- NFA regexp doesn't handle \%<v correctly. (Ingo Karkat, 2014 May 12)
|
||||
- Does not work with NFA regexp engine:
|
||||
\%u, \%x, \%o, \%d followed by a composing character
|
||||
- Bug relating to back references. (Ingo Karkat, 2014 Jul 24)
|
||||
- Using back reference before the capturing group sometimes works with the old
|
||||
engine, can we do this with the new engine? E.g. with
|
||||
"/\%(<\1>\)\@<=.*\%(<\/\(\w\+\)>\)\@=" matching text inside HTML tags.
|
||||
|
||||
Patch to set y_width when getting the register from the clipboard.
|
||||
(Yukihiro Nakadaira, 2014 Jul 10)
|
||||
Still using freed memory after using setloclist(). (lcd, 2014 Jul 23)
|
||||
More info Jul 24. Not clear why.
|
||||
|
||||
Patch to make getregtype() return the right size for non-linux systems.
|
||||
(Yasuhiro Matsumoto, 2014 Jul 8)
|
||||
Breaks test_eval. Inefficient, can we only compute y_width when needed?
|
||||
|
||||
Problem that a previous silent ":throw" causes a following try/catch not to
|
||||
work. (ZyX, 2013 Sep 28)
|
||||
|
||||
Completion for :buf does not use 'wildignorecase'. (Akshay H, 2014 May 31)
|
||||
|
||||
":cd C:\Windows\System32\drivers\etc*" does not work, even though the
|
||||
directory exists. (Sergio Gallelli, 2013 Dec 29)
|
||||
|
||||
The entries added by matchaddpos() are returned by getmatches() but can't be
|
||||
set with setmatches(). (lcd47, 2014 Jun 29)
|
||||
Gvim: when both Tab and CTRL-I are mapped, use CTRL-I not for Tab.
|
||||
|
||||
Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
|
||||
|
||||
Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
|
||||
|
||||
When using an undo file, also restore the changelist, so that "g;" works.
|
||||
When window number in Ex range is too high, should give an error:
|
||||
:3close " fails if there are only 2 windows.
|
||||
Patch from Marcin Szamotulski, 2014 Dec 13.
|
||||
|
||||
Patch to recover from X server restart: hint on Issue 203 (2014 Nov 21 18:44)
|
||||
|
||||
Insert a block with virtualedit set does not work correctly.
|
||||
Patch by James McCoy, 2014 Dec 10.
|
||||
|
||||
MS-Windows: When editing a file with a leading space, writing it uses the
|
||||
wrong name. (Aram, 2014 Nov 7) Vim 7.4.
|
||||
|
||||
Add LessCss support. (Jenoma / Alessandro Vioni, 2014 Nov 24)
|
||||
Now with updated license, Nov 24.
|
||||
|
||||
Memory leak using :wviminfo. Issue 296. With Patch by Christian.
|
||||
|
||||
patch to remove FEAT_OSFILETYPE from fileio.c. (Christian, 2014 Nov 12)
|
||||
|
||||
Value returned by virtcol() changes depending on how lines wrap. This is
|
||||
inconsistant with the documentation.
|
||||
inconsistent with the documentation.
|
||||
|
||||
Patch to also support range for :argdo, :bufdo, etc.
|
||||
(Marcin Szamotulski, 2014 Dec 7)
|
||||
Asked for tests.
|
||||
|
||||
Ukrainian vimtutor. (Issue 288)
|
||||
|
||||
Regenerate the Unicode tables in mbyte.c.
|
||||
Diff from ZyX, 2014 Dec 6.
|
||||
|
||||
Patch to fix relative numbers. (Christian Brabandt, 2014 Nov 17)
|
||||
Update Nov 26.
|
||||
|
||||
Patch to fix that getcurpos() returns a negative number, instead of MAXCOL.
|
||||
(Hirohito Higashi, 2014 Dec 8)
|
||||
|
||||
Patch to fix wrong formatting if 'linebreak' is set. (Christian Brabandt, 2014
|
||||
Nov 12)
|
||||
|
||||
Patch to avoid recognizing polkit as hog files. (Issue 292)
|
||||
|
||||
Patch 7.4.468 changed how CTRL-C is handled. It does not take care of mapping
|
||||
CTRL-C in different modes. (Ingo Karkat, 2014 Dec 12)
|
||||
Patch from Christian Brabandt, 2014 Dec 13.
|
||||
Needs to be improved.
|
||||
|
||||
Patch to support hex values for setting option value.
|
||||
(Zyx, 2015 Nov 6)
|
||||
|
||||
On MS-Windows running tests with Mercurial has problems when the fileformat of
|
||||
the input files are changed. (Ken Takata, Taro Muraoka, 2014 Sep 25)
|
||||
Update Nov 5.
|
||||
|
||||
MS-Windows: Crash opening very long file name starting with "\\".
|
||||
(Christian Brock, 2012 Jun 29)
|
||||
|
||||
Cursorline background color not mixed with character highlight.
|
||||
Patch by Yasuhiro Matsumoto, 2014 Dec 3.
|
||||
|
||||
Problem using diff syntax with cp932 encoding. Idea from Yasuhiro Matsumoto,
|
||||
patch from Ken Takata (2014 Nov 6)
|
||||
|
||||
ml_updatechunk() is slow when retrying for another encoding. (John Little,
|
||||
2014 Sep 11)
|
||||
|
||||
Patch to add a different escape sequence for replace mode.
|
||||
(Omar Sandoval, 2014 Nov 30)
|
||||
|
||||
Patch to allow values greater than 255 for ctermfg/ctermbg on Windows.
|
||||
(Yasuhiro Matsumoto, 2014 Dec 5)
|
||||
|
||||
When 'balloonexpr' returns a list the result has a trailing newline.
|
||||
Just remove one trailing newline. (lcd, 2014 Oct 17)
|
||||
|
||||
Make comments in the test Makefile silent. (Kartik Agaram, 2014 Sep 24)
|
||||
|
||||
Patch to add GUI colors to the terminal, when it supports it. (ZyX, 2013 Jan
|
||||
26, update 2013 Dec 14, another 2014 Nov 22)
|
||||
|
||||
Result of systemlist() does not show whether text ended in line break.
|
||||
(Bjorn Linse, 2014 Nov 27)
|
||||
|
||||
When in 'comments' "n:x" follows after three-part comment directly it repeats
|
||||
any one-character from the previous line. (Kartik Agaram, 2014 Sep 19)
|
||||
|
||||
Syntax highlighting slow (hangs) in SASS file. (Niek Bosch, 2013 Aug 21)
|
||||
|
||||
Patch to add the EndOfBuffer highlight group, used instead of NonText for "~"
|
||||
lines. (Marco Hinz, 2014 Nov 2)
|
||||
|
||||
Patch for fixing a problem of the combination of conceal and linebreak.
|
||||
(Christian Brabandt, 2014 Dec 11)
|
||||
|
||||
Adding "~" to 'cdpath' doesn't work for completion? (Davido, 2013 Aug 19)
|
||||
|
||||
Plugins need to make a lot of effort, lots of mappings, to know what happened
|
||||
before pressing the key that triggers a plugin action. How about keeping the
|
||||
last N pressed keys, so that they do not need to be mapped?
|
||||
|
||||
":q!" should reset modified flag for current buffer, if another buffer is
|
||||
modified no need to abandon it again.
|
||||
Patch from Yasuhiro Matsumoto, 2014 Nov 21.
|
||||
Update from Hirohito Higashi, 2014 Nov 21.
|
||||
With test, Nov 23.
|
||||
|
||||
Wrong scrolling when using incsearch. Patch by Christian Brabandt, 2014 Dec 4.
|
||||
Is this a good solution?
|
||||
|
||||
Can assign to s:type when a function s:type has been defined.
|
||||
Also the other way around: define a function while a variable with that name
|
||||
was already defined.
|
||||
(Yasuhiro Matsumoto, 2014 Nov 3)
|
||||
|
||||
Patch to make closed folds line up. (Charles Campbell, 2014 Sep 12)
|
||||
Remark from Roland Eggner: does it cause crashes? (2014 Dec 12)
|
||||
|
||||
Patch for building a 32bit Vim with 64bit MingW compiler.
|
||||
(Michael Soyka, 2014 Oct 15)
|
||||
|
||||
Delete old code in os_msdos.c, mch_FullName().
|
||||
|
||||
Redo only remembers the last change. Could use "{count}g." to redo an older
|
||||
change. How does the user know which change? At least have a way to list
|
||||
them: ":repeats".
|
||||
|
||||
Using "." to repeat an Ex command puts that command in history. Probably
|
||||
should not happen. If the command is the result of a mapping it's not put in
|
||||
history either. (Jacob Niehus, 2014 Nov 2)
|
||||
Patch from Jacob, Nov 2.
|
||||
|
||||
"hi link" does not respect groups with GUI settings only. (Mark Lodato, 2014
|
||||
Jun 8)
|
||||
|
||||
Syntax file for gnuplot. Existing one is very old. (Andrew Rasmussen, 2014
|
||||
Feb 24)
|
||||
Bug: Autocompleting ":tag/pat" replaces "/pat" with a match but does not
|
||||
insert a space. (Micha Mos, 2014 Nov 7)
|
||||
|
||||
Issue 174: Detect Mason files.
|
||||
Patch to add the :bvimgrep command. (Christian Brabandt, 2014 Nov 12)
|
||||
Update Dec 6.
|
||||
|
||||
Patch to add argument to :cquit. (Thinca, 2014 Oct 12)
|
||||
|
||||
No error for missing endwhile. (ZyX, 2014 Mar 20)
|
||||
|
||||
Phpcomplete.vim update. (Complex, 2014 Jan 15)
|
||||
start_global_changes() plus end_global_changes() causes problem for
|
||||
clip_unnamed_plus. (Jason Pleau, 2014 Sep 12)
|
||||
|
||||
The entries added by matchaddpos() are returned by getmatches() but can't be
|
||||
set with setmatches(). (lcd47, 2014 Jun 29)
|
||||
|
||||
Patch to add :arglocal and :arglists. (Marcin Szamotulski, 2014 Aug 6)
|
||||
|
||||
PHP syntax is extremely slow. (Anhad Jai Singh, 2014 Jan 19)
|
||||
|
||||
@ -98,24 +233,24 @@ Spell files use a latin single quote. Unicode also has another single quote:
|
||||
New OpenOffice spell files support this with ICONV. But they are not
|
||||
compatible with Vim spell files. The old files can no longer be downloaded.
|
||||
|
||||
Win32: use different args for SearchPath()? (Yasuhiro Matsumoto, 2009 Jan 30)
|
||||
Also fixes wrong result from executable().
|
||||
Update from Ken Takata, 2014 Jan 10. Newer 2014 Apr 3.
|
||||
|
||||
Win32: use 64 bit stat() if possible. (Ken Takata, 2014 May 12)
|
||||
More tests May 14. Update May 29.
|
||||
Win32: patch to use 64 bit stat() if possible. (Ken Takata, 2014 May 12)
|
||||
More tests May 14. Update May 29. Update Aug 10.
|
||||
|
||||
The garbage collector may use too much stack. Make set_ref_in_item()
|
||||
iterative instead of recursive. Test program by Marc Weber (2013 Dec 10)
|
||||
Patch by Ben Fritz, 2014 Jun 22.
|
||||
Related: Vim hangs when freeing a lot of objects. Patch by Yasuhiro
|
||||
Matsumoto, 2014 Aug 26.
|
||||
|
||||
Idea: For a window in the middle (has window above and below it), use
|
||||
right-mouse-drag on the status line to move a window up/down without changing
|
||||
it's height? It's like dragging the status bar above it at the same time.
|
||||
its height? It's like dragging the status bar above it at the same time.
|
||||
|
||||
Can we make ":unlet $VAR" use unsetenv() to delete the env var?
|
||||
What for systems that don't have unsetenv()?
|
||||
|
||||
Patch to add a :domodeline command. (Christian Brabandt, 2014 Oct 21)
|
||||
|
||||
This does not give an error: (Andre Sihera, 2014 Mar 21)
|
||||
vim -u NONE 1 2 3 -c 'bufdo if 1 | echo 1'
|
||||
This neither: (ZyX)
|
||||
@ -128,9 +263,7 @@ from?
|
||||
Problem with upwards search on Windows (works OK on Linux). (Brett Stahlman,
|
||||
2014 Jun 8)
|
||||
|
||||
When 'clipboard' is "unnamed", :g/pat/d is very slow. Only set the clipboard
|
||||
after the last delete? (Praful, 2014 May 28)
|
||||
Patch by Christian Brabandt, 2014 Jun 18. Update Jun 25.
|
||||
Patch to load TCL dynamically. (Ken Takata, 2014 Sep 20)
|
||||
|
||||
Include a plugin manager with Vim? Neobundle seems to be the best currently.
|
||||
Long message about this from ZyX, 2014 Mar 23. And following replies.
|
||||
@ -192,7 +325,12 @@ Patch to support sorting on floating point number. (Alex Jakushev, 2010 Oct
|
||||
|
||||
Patch to support expression argument to sort() instead of a function name.
|
||||
Yasuhiro Matsumoto, 2013 May 31.
|
||||
Or should we add a more general mechanism, like lambda functions?
|
||||
Or should we add a more general mechanism, like a lambda() function?
|
||||
Patch by Yasuhiro Matsumoto, 2014 Sep 16.
|
||||
|
||||
Patch to fix display of listchars on the cursorline. (Nayuri Aohime, 2013)
|
||||
Update suggested by Yasuhiro Matsumoto, 2014 Nov 25:
|
||||
https://gist.github.com/presuku/d3d6b230b9b6dcfc0477
|
||||
|
||||
VMS: Select() doesn't work properly, typing ESC may hang Vim. Use sys$qiow
|
||||
instead. (Samuel Ferencik, 2013 Sep 28)
|
||||
@ -200,17 +338,15 @@ instead. (Samuel Ferencik, 2013 Sep 28)
|
||||
Patch for XDG base directory support. (Jean François Bignolles, 2014 Mar 4)
|
||||
Remark on the docs. Should not be a compile time feature. But then what?
|
||||
|
||||
Completion of ":e" is ":earlier", whould be ":edit". Complete to the matching
|
||||
Completion of ":e" is ":earlier", should be ":edit". Complete to the matching
|
||||
command instead of doing this alphabetically. (Mikel Jorgensen)
|
||||
|
||||
Patch to add v:completed_item. (Shougo Matsu, 2013 Nov 29).
|
||||
|
||||
Patch to make test 100 work on MS-Windows. (Taro Muraoka, 2013 Dec 12)
|
||||
Patch to get MSVC version in a nicer way. (Ken Takata, 2014 Jul 24)
|
||||
|
||||
Patch to define macros for hardcoded values. (Elias Diem, 2013 Dec 14)
|
||||
|
||||
Perl: support for Activestate perl 5.18: Issue 170.
|
||||
|
||||
Several syntax file match "^\s*" which may get underlined if that's in the
|
||||
highlight group. Add a "\zs" after it?
|
||||
|
||||
@ -220,15 +356,12 @@ Issue 28.
|
||||
Go through more coverity reports.
|
||||
|
||||
Patch to add ":undorecover", get as much text out of the undo file as
|
||||
possible. (Christian Brabandt, 2014 Mar 12)
|
||||
possible. (Christian Brabandt, 2014 Mar 12, update Aug 22)
|
||||
|
||||
Include Haiku port? (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
|
||||
|
||||
Updated spec ftplugin. (Matěj Cepl, 2013 Oct 16)
|
||||
|
||||
Some quickfix messages appear twice. (Gary Johnson, 2014 Feb 16)
|
||||
Patch by Christian Brabandt, 2014 Feb 17.
|
||||
|
||||
Patch to right-align signs. (James Kolb (email james), 2013 Sep 23)
|
||||
|
||||
Patch to handle integer overflow. (Aaron Burrow, 2013 Dec 12)
|
||||
@ -281,9 +414,6 @@ buffer. (2013 Dec 9)
|
||||
Patch for drag&drop reordering of GUI tab pages reordering.
|
||||
(Ken Takata, 2013 Nov 22, second one, also by Masamichi Abe)
|
||||
|
||||
":sign-jump" uses first window in buffer instead of current window.
|
||||
Patch by James McCoy, 2013 Nov 22.
|
||||
|
||||
GTK: problem with 'L' in 'guioptions' changing the window width.
|
||||
(Aaron Cornelius, 2012 Feb 6)
|
||||
|
||||
@ -353,17 +483,17 @@ optional. (2013 Jul 12)
|
||||
|
||||
Dialog is too big on Linux too. (David Fishburn, 2013 Sep 2)
|
||||
|
||||
Patch to check whether a buffer is quickfix or a location list.
|
||||
(Yasuhiro Matsumoto, 2014 Dec 9)
|
||||
|
||||
Patch to allow setting w:quickfix_title via setqflist() and setloclist()
|
||||
functions. (Christian Brabandt, 2013 May 8, update May 21)
|
||||
Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14)
|
||||
Second one. Update May 22.
|
||||
Update by Daniel Hahler, 2014 Jul 4.
|
||||
Update by Daniel Hahler, 2014 Jul 4, Aug 14, Oct 14, Oct 15.
|
||||
|
||||
Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
|
||||
|
||||
MS-Windows: Patch to make tests copy files to avoid changing the fileformat of
|
||||
the files under version control. (Taro Muraoka, 2013 Jul 5)
|
||||
|
||||
Issue 54: document behavior of -complete, also expands arg.
|
||||
|
||||
- Add regex for 'paragraphs' and 'sections': 'parare' and 'sectre'. Combine
|
||||
@ -412,13 +542,6 @@ signs? Patch by Christian Brabandt, 2013 Aug 22.
|
||||
|
||||
Patch to remove flicker from popup menu. (Yasuhiro Matsumoto, 2013 Aug 15)
|
||||
|
||||
Patch to use directX to draw text on Windows. Adds the 'renderoptions'
|
||||
option. (Taro Muraoka, 2013 Jan 25, update 2013 Apr 3, May 14)
|
||||
Fixes this problem:
|
||||
8 Win32: Multi-byte characters are not displayed, even though the same font
|
||||
in Notepad can display them. (Srinath Avadhanula) Try with the
|
||||
UTF-8-demo.txt page with Andale Mono.
|
||||
|
||||
Patch to add 'completeselect' option. Specifies how to select a candidate in
|
||||
insert completion. (Shougo, 2013 May 29)
|
||||
Update to add to existing 'completeopt'. 2013 May 30
|
||||
@ -473,6 +596,14 @@ MS-Windows resizing problems:
|
||||
causes the window to move unnecessarily. (William E. Skeith III, 2012 Jan
|
||||
12) Patch: 2012 Jan 13 Needs more work (2012 Feb 2)
|
||||
|
||||
Patch to use Modern UI 2.0 for the Nsis installer. (Guopeng Wen, 2010 Jul 30)
|
||||
Latest version: 2011 May 18
|
||||
8 Windows install with NSIS: make it possible to do a silent install, see
|
||||
http://nsis.sourceforge.net/Docs/Chapter4.html#4.12
|
||||
Version from Guopeng Wen that does this (2010 Dec 27)
|
||||
Alternative: MSI installer: https://github.com/petrkle/vim-msi/
|
||||
Or the one on Issue 279
|
||||
|
||||
'iminsert' global value set when using ":setlocal iminsert"? (Wu, 2012 Jun 23)
|
||||
|
||||
Patch to append regexp to tag commands to make it possible to select one out
|
||||
@ -493,11 +624,18 @@ Aug 16)
|
||||
When there are no command line arguments ":next" and ":argu" give E163, which
|
||||
is confusing. Should say "the argument list is empty".
|
||||
|
||||
xterm supports escape sequences to mark a paste operation. Need to be
|
||||
enabled. (Bruno Sutic, 2014 Jul 11) How to know the terminal supports this?
|
||||
|
||||
URXVT:
|
||||
- will get stuck if byte sequence does not contain the expected semicolon.
|
||||
- Use urxvt mouse support also in xterm. Explanations:
|
||||
http://www.midnight-commander.org/ticket/2662
|
||||
|
||||
Patch to have the fold and sign column and at the last line of the buffer.
|
||||
(Marco Hinz, 2014 Sep 25)
|
||||
Alternate suggestion: let all columns continue, also the number column.
|
||||
|
||||
Patch to add tests for if_xcmdsrv.c., Jul 8, need some more work. (Brian Burns)
|
||||
New tests Jul 13. Update Jul 17. Discussion Jul 18.
|
||||
|
||||
@ -573,6 +711,9 @@ Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2,
|
||||
only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug
|
||||
21, Ben Fritz, 2010 Sep 14)
|
||||
|
||||
The :syntax cchar value can only be a single character. It would be useful to
|
||||
support combining characters. (Charles Campbell)
|
||||
|
||||
'cursorline' works on a text line only. Add 'cursorscreenline' for
|
||||
highlighting the screen line. (Christian Brabandt, 2012 Mar 31)
|
||||
|
||||
@ -629,6 +770,7 @@ effects? (Christian Brabandt, 2012 Aug 5, Update 2013 Aug 12)
|
||||
Would also need to do this for spellbadword() and spellsuggest().
|
||||
|
||||
Patch for variable tabstops. On github (Christian Brabandt, 2014 May 15)
|
||||
Update Aug 16 (email).
|
||||
|
||||
On 64 bit MS-Windows "long" is only 32 bits, but we sometimes need to store a
|
||||
64 bits value. Change all number options to use nropt_T and define it to the
|
||||
@ -696,6 +838,10 @@ Need for CursorHold that retriggers. Use a key that doesn't do anything, or a
|
||||
function that resets did_cursorhold.
|
||||
Patch by Christian Brabandt, 2011 May 6.
|
||||
|
||||
Add event for when the text scrolls. A bit like CursorMoved. Also a similar
|
||||
one for insert mode. Use the event in matchparen to update the highlight if
|
||||
the match scrolls into view.
|
||||
|
||||
7 Use "++--", "+++--" for different levels instead of "+---" "+----".
|
||||
Patch by Christian Brabandt, 2011 Jul 27.
|
||||
Update by Ben Fritz, with fix for TOhtml. (2011 Jul 30)
|
||||
@ -783,9 +929,6 @@ names, shell commands and the like. (Kikuchan, 2010 Oct 14)
|
||||
Assume the system converts between the actual encoding of the filesystem to
|
||||
the system encoding (usually utf-8).
|
||||
|
||||
Patch to add GUI colors to the terminal, when it supports it. (ZyX, 2013 Jan
|
||||
26, update 2013 Dec 14)
|
||||
|
||||
Problem producing tags file when hebrew.frx is present. It has a BOM.
|
||||
Results in E670. (Tony Mechelynck, 2010 May 2)
|
||||
|
||||
@ -953,6 +1096,12 @@ to avoid changing 'eventignore'?
|
||||
Patch for displaying 0x200c and 0x200d. (Ali Gholami Rudi, 2009 May 6)
|
||||
Probably needs a bit of work.
|
||||
|
||||
Patch to add farsi handling to arabic.c (Ali Gholami Rudi, 2009 May 2)
|
||||
Added test, updates, June 23.
|
||||
Updated for 7.4: http://litcave.rudi.ir/farsi_vim.diff
|
||||
With modification for Tatweel character: https://dpaste.de/VmFw
|
||||
Remark from Ameretat Reith (2014 Oct 13)
|
||||
|
||||
List of encoding aliases. (Takao Fujiwara, 2009 Jul 18)
|
||||
Are they all OK? Update Jul 22.
|
||||
|
||||
@ -971,10 +1120,6 @@ on the first character. (John Beckett, 2010 Aug 7)
|
||||
Setting 'tags' to "tagsdir/*" does not find "tagsdir/tags". (Steven K. Wong,
|
||||
2009 Jul 18)
|
||||
|
||||
Patch to add farsi handling to arabic.c (Ali Gholami Rudi, 2009 May 2)
|
||||
Added test, updates, June 23.
|
||||
Updated for 7.4: http://litcave.rudi.ir/farsi_vim.diff
|
||||
|
||||
Patch to add "focusonly" to 'scrollopt', so that scrollbind also applies in
|
||||
window that doesn't have focus. (Jonathon Mah, 2009 Jan 12)
|
||||
Needs more work.
|
||||
@ -1336,10 +1481,6 @@ Jul 31)
|
||||
C syntax: {} inside () causes following {} to be highlighted as error.
|
||||
(Michalis Giannakidis, 2006 Jun 1)
|
||||
|
||||
Can't easily close the help window, like ":pc" closes the preview window and
|
||||
":ccl" closes the quickfix window. Add ":hclose". (Chris Gaal)
|
||||
Patch for :helpclose, Christian Brabandt, 2010 Sep 6.
|
||||
|
||||
When 'diffopt' has "context:0" a single deleted line causes two folds to merge
|
||||
and mess up syncing. (Austin Jennings, 2008 Jan 31)
|
||||
|
||||
@ -1413,8 +1554,8 @@ files with "foo/**" in 'path'. (Kalisiak, 2006 July 15)
|
||||
Additional info: When using the |wildcards| ** globing, vim hangs
|
||||
indefinitely on lots of directories. The |file-searching| globing, like in
|
||||
":set path=/**" does not hang as often as with globing with |wildcards|, like
|
||||
in ":1find /**/file". This is for a files that unix "find" can find very
|
||||
quick. Merging the 2 kinds of globing might make this an easier fix. (Ian
|
||||
in ":1find /**/file". This is for files that unix "find" can find very
|
||||
quickly. Merging the 2 kinds of globing might make this an easier fix. (Ian
|
||||
Kelling, 2008 July 4)
|
||||
|
||||
When the file name has parenthesis, e.g., "foo (bar).txt", ":!ls '%'" has the
|
||||
@ -1446,13 +1587,6 @@ with "gvim -nb:localhost:55555:foo". From nc do: '1:editFile!0 "foo"'. Then
|
||||
go to Insert mode and add a few lines. Then backspacing every other time
|
||||
moves the cursor instead of deleting. (Chris Kaiser, 2007 Sep 25)
|
||||
|
||||
Patch to use Modern UI 2.0 for the Nsis installer. (Guopeng Wen, 2010 Jul 30)
|
||||
Latest version: 2011 May 18
|
||||
8 Windows install with NSIS: make it possible to do a silent install, see
|
||||
http://nsis.sourceforge.net/Docs/Chapter4.html#4.12
|
||||
Version from Guopeng Wen that does this (2010 Dec 27)
|
||||
Alternative: MSI installer: https://github.com/petrkle/vim-msi/
|
||||
|
||||
Windows installer should install 32-bit version of right-click handler also on
|
||||
64-bit systems. (Brian Cunningham, 2011 Dec 28)
|
||||
|
||||
@ -1476,8 +1610,6 @@ Changes for Win32 makefile. (Mike Williams, 2007 Jan 22, Alexei Alexandrov,
|
||||
Win32: Can't complete shell command names. Why is setting xp_context in
|
||||
set_one_cmd_context() inside #ifndef BACKSLASH_IN_FILENAME?
|
||||
|
||||
Win32: Patch for convert_filterW(). (Taro Muraoka, 2007 Mar 2)
|
||||
|
||||
Win32: Patch for cscope external command. (Mike Williams, 2007 Aug 7)
|
||||
|
||||
Win32: XPM support only works with path without spaces. Patch by Mathias
|
||||
@ -1868,6 +2000,10 @@ restored. (Luc St-Louis)
|
||||
Patch to support horizontal scroll wheel in GTK. Untested. (Bjorn Winckler,
|
||||
2010 Jun 30)
|
||||
|
||||
Add an option for a minimal text length before inserting a line break for
|
||||
'textwidth'. Avoids very short lines when a very long word follows.
|
||||
(Kartik Agaram)
|
||||
|
||||
|
||||
At next release:
|
||||
- Build a huge version by default.
|
||||
@ -1906,7 +2042,7 @@ More patches:
|
||||
- testdir/Make_dos_sh.mak for running tests with MingW. (Bill Mccarthy, 2008
|
||||
Sep 13)
|
||||
- Patch for adding "space" item in 'listchars'. (Jérémie Roquet, 2009 Oct 29,
|
||||
Docs patch Oct 30, update David Burgin (glts) 2013 Aug 24)
|
||||
Docs patch Oct 30, update David Burgin (glts) 2013 Aug 24, 2014 Oct 10)
|
||||
- Replace ccomplete.vim by cppcomplete.vim from www.vim.org? script 1520 by
|
||||
Vissale Neang. (Martin Stubenschrott) Asked Vissale to make the scripts
|
||||
more friendly for the Vim distribution.
|
||||
@ -3035,6 +3171,8 @@ Spell checking:
|
||||
|
||||
|
||||
Diff mode:
|
||||
9 When making small changes, e.g. deleting a character, update the diff.
|
||||
Possibly without running diff.
|
||||
9 Instead invoking an external diff program, use builtin code. One can be
|
||||
found here: http://www.ioplex.com/~miallen/libmba/dl/src/diff.c
|
||||
It's quite big and badly documented though.
|
||||
@ -3929,7 +4067,6 @@ Autocommands:
|
||||
when exiting isn't a good idea.
|
||||
CursorHoldC - CursorHold while command-line editing
|
||||
WinMoved - when windows have been moved around, e.g, ":wincmd J"
|
||||
CmdUndefined - Like FuncUndefined but for user commands.
|
||||
SearchPost - After doing a search command (e.g. to do "M")
|
||||
PreDirChanged/PostDirChanged
|
||||
- Before/after ":cd" has been used (for changing the
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_04.txt* For Vim version 7.4. Last change: 2008 Sep 06
|
||||
*usr_04.txt* For Vim version 7.4. Last change: 2014 Aug 29
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -186,7 +186,7 @@ commands:
|
||||
/four<Enter> find the first string "four"
|
||||
cwfive<Esc> change the word to "five"
|
||||
n find the next "four"
|
||||
. repeat the change to "five'
|
||||
. repeat the change to "five"
|
||||
n find the next "four"
|
||||
. repeat the change
|
||||
etc.
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_25.txt* For Vim version 7.4. Last change: 2007 May 11
|
||||
*usr_25.txt* For Vim version 7.4. Last change: 2014 Oct 29
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -402,7 +402,7 @@ the cursor keys: >
|
||||
:map <Down> gj
|
||||
|
||||
|
||||
TURNING A PARAGRAPH INTO ONE LINE
|
||||
TURNING A PARAGRAPH INTO ONE LINE *edit-paragraph-join*
|
||||
|
||||
If you want to import text into a program like MS-Word, each paragraph should
|
||||
be a single line. If your paragraphs are currently separated with empty
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 7.4. Last change: 2014 May 28
|
||||
*usr_41.txt* For Vim version 7.4. Last change: 2014 Aug 16
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -793,6 +793,7 @@ Command line: *command-line-functions*
|
||||
getcmdpos() get position of the cursor in the command line
|
||||
setcmdpos() set position of the cursor in the command line
|
||||
getcmdtype() return the current command-line type
|
||||
getcmdwintype() return the current command-line window type
|
||||
|
||||
Quickfix and location lists: *quickfix-functions*
|
||||
getqflist() list of quickfix errors
|
||||
|
@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.4. Last change: 2014 May 22
|
||||
*various.txt* For Vim version 7.4. Last change: 2014 Aug 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -337,6 +337,7 @@ N *+dialog_con* Support for |:confirm| with console dialog.
|
||||
N *+dialog_con_gui* Support for |:confirm| with GUI and console dialog.
|
||||
N *+diff* |vimdiff| and 'diff'
|
||||
N *+digraphs* |digraphs| *E196*
|
||||
m *+directx* Win32 GUI only: DirectX and |'renderoptions'|
|
||||
*+dnd* Support for DnD into the "~ register |quote_~|.
|
||||
B *+emacs_tags* |emacs-tags| files
|
||||
N *+eval* expression evaluation |eval.txt|
|
||||
|
@ -1,4 +1,4 @@
|
||||
*version6.txt* For Vim version 7.4. Last change: 2013 Jul 28
|
||||
*version6.txt* For Vim version 7.4. Last change: 2014 Aug 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -7816,7 +7816,7 @@ Files: src/buffer.c, src/eval.c, src/ex_docmd.c, src/fileio.c,
|
||||
Patch 6.1.212
|
||||
Problem: When Vim was started with "-R" ":new" creates a buffer
|
||||
'noreadonly' while ":enew" has 'readonly' set. (Preben Guldberg)
|
||||
Solution: Don't set 'readonly in a new empty buffer for ":enew".
|
||||
Solution: Don't set 'readonly' in a new empty buffer for ":enew".
|
||||
Files: src/ex_docmd.c
|
||||
|
||||
Patch 6.1.213
|
||||
|
@ -1,4 +1,4 @@
|
||||
*version7.txt* For Vim version 7.4. Last change: 2013 Nov 18
|
||||
*version7.txt* For Vim version 7.4. Last change: 2014 Aug 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -1626,10 +1626,10 @@ and merge it back in.
|
||||
When running the tests and one of them fails to produce "test.out" the
|
||||
following tests are still executed. This helps when running out of memory.
|
||||
|
||||
When compiling with EXITFREE defined and the ccmalloc library it is possible
|
||||
to detect memory leaks. Some memory will always reported as leaked, such as
|
||||
allocated by X11 library functions and the memory allocated in alloc_cmdbuff()
|
||||
to store the ":quit" command.
|
||||
When compiling with EXITFREE defined and the ccmalloc library, it is possible
|
||||
to detect memory leaks. Some memory will always be reported as leaked, such
|
||||
as allocated by X11 library functions and the memory allocated in
|
||||
alloc_cmdbuff() to store the ":quit" command.
|
||||
|
||||
Moved the code for printing to src/hardcopy.c.
|
||||
|
||||
@ -2038,8 +2038,8 @@ Removed the "COUNT" flag from ":argadd", to avoid ":argadd 1*" to be used like
|
||||
|
||||
Avoid that $LANG is used for the menus when LC_MESSAGES is "en_US".
|
||||
|
||||
Added backslashes before dashes in the vim.1 manual page to make the appear as
|
||||
real dashes. (Pierr Habouzit)
|
||||
Added backslashes before dashes in the vim.1 manual page to make them appear
|
||||
as real dashes. (Pierre Habouzit)
|
||||
|
||||
Where "gq" left the cursor depended on the value of 'formatprg'. Now "gq"
|
||||
always leaves the cursor at the last line of the formatted text.
|
||||
@ -2049,7 +2049,7 @@ detection may try to check the contents of the file while it's still
|
||||
compressed. Skip setting 'filetype' for compressed files until they have been
|
||||
decompressed. Required for patterns that end in a "*".
|
||||
|
||||
Starting with an argument "+cmd" or "-S script" causes the cursor the be moved
|
||||
Starting with an argument "+cmd" or "-S script" causes the cursor to be moved
|
||||
to the first line. That breaks a BufReadPost autocommand that uses g`".
|
||||
Don't move the cursor if it's somewhere past the first line.
|
||||
|
||||
@ -6485,7 +6485,7 @@ Patch 7.1.282 (extra)
|
||||
Problem: Win64: Edit with Vim context menu isn't installed correctly.
|
||||
Compiler warnings and a few other things.
|
||||
Solution: Add [ and ] to entry of class name. Use UINT_PTR instead of UINT.
|
||||
And a fixes for the other things. (George V. Reilly)
|
||||
And fixes for other things. (George V. Reilly)
|
||||
Files: src/GvimExt/Makefile, src/dosinst.c, src/if_ole.cpp, src/if_ole.h,
|
||||
src/if_ole.idl, src/INSTALLpc.txt, src/Make_mvc.mak,
|
||||
src/os_win32.c,
|
||||
@ -15783,7 +15783,7 @@ Files: src/if_py_both.h, src/if_python3.c, src/testdir/test86.in,
|
||||
src/testdir/test87.ok
|
||||
|
||||
Patch 7.3.944
|
||||
Problem: External program receives the termrespone.
|
||||
Problem: External program receives the termresponse.
|
||||
Solution: Insert a delay and discard input. (Hayaki Saito)
|
||||
Files: src/term.c
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*windows.txt* For Vim version 7.4. Last change: 2014 Mar 25
|
||||
*windows.txt* For Vim version 7.4. Last change: 2014 Dec 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -263,28 +263,57 @@ left of the Vim window.
|
||||
Closing a window
|
||||
----------------
|
||||
|
||||
:q[uit]
|
||||
:{count}q[uit]
|
||||
CTRL-W q *CTRL-W_q*
|
||||
CTRL-W CTRL-Q *CTRL-W_CTRL-Q*
|
||||
:q[uit] Quit current window. When quitting the last window (not
|
||||
counting a help window), exit Vim.
|
||||
Without {count}: Quit the current window. If {count} is
|
||||
given quit the {count} window.
|
||||
|
||||
When quitting the last window (not counting a help window),
|
||||
exit Vim.
|
||||
|
||||
When 'hidden' is set, and there is only one window for the
|
||||
current buffer, it becomes hidden.
|
||||
When 'hidden' is not set, and there is only one window for the
|
||||
current buffer, and the buffer was changed, the command fails.
|
||||
(Note: CTRL-Q does not work on all terminals)
|
||||
current buffer, it becomes hidden. When 'hidden' is not set,
|
||||
and there is only one window for the current buffer, and the
|
||||
buffer was changed, the command fails.
|
||||
|
||||
(Note: CTRL-Q does not work on all terminals).
|
||||
|
||||
If [count] is greater than the last window number the last
|
||||
window will be closed: >
|
||||
:1quit " quit the first window
|
||||
:$quit " quit the last window
|
||||
:9quit " quit the last window
|
||||
" if there are less than 9 windows opened
|
||||
:-quit " quit the previews window
|
||||
:+quit " quit the next window
|
||||
:+2quit " quit the second next window
|
||||
<
|
||||
:q[uit]!
|
||||
:{count}q[uit]!
|
||||
Without {count}: Quit the current window. If {count} is
|
||||
given quit the {count} window.
|
||||
|
||||
:q[uit]! Quit current window. If this was the last window for a buffer,
|
||||
any changes to that buffer are lost. When quitting the last
|
||||
window (not counting help windows), exit Vim. The contents of
|
||||
the buffer are lost, even when 'hidden' is set.
|
||||
If this was the last window for a buffer, any changes to that
|
||||
buffer are lost. When quitting the last window (not counting
|
||||
help windows), exit Vim. The contents of the buffer are lost,
|
||||
even when 'hidden' is set.
|
||||
|
||||
:clo[se][!]
|
||||
:{count}clo[se][!]
|
||||
CTRL-W c *CTRL-W_c* *:clo* *:close*
|
||||
:clo[se][!] Close current window. When the 'hidden' option is set, or
|
||||
when the buffer was changed and the [!] is used, the buffer
|
||||
becomes hidden (unless there is another window editing it).
|
||||
Without {count}: Close the current window. If {count} is
|
||||
given close the {count} window.
|
||||
|
||||
When the 'hidden' option is set, or when the buffer was
|
||||
changed and the [!] is used, the buffer becomes hidden (unless
|
||||
there is another window editing it).
|
||||
|
||||
When there is only one window in the current tab page and
|
||||
there is another tab page, this closes the current tab page.
|
||||
|tab-page|.
|
||||
|
||||
This command fails when: *E444*
|
||||
- There is only one window on the screen.
|
||||
- When 'hidden' is not set, [!] is not used, the buffer has
|
||||
@ -298,14 +327,19 @@ CTRL-W CTRL-C *CTRL-W_CTRL-C*
|
||||
command.
|
||||
|
||||
*:hide*
|
||||
:hid[e] Quit current window, unless it is the last window on the
|
||||
screen. The buffer becomes hidden (unless there is another
|
||||
window editing it or 'bufhidden' is "unload" or "delete").
|
||||
:hid[e]
|
||||
:{count}hid[e]
|
||||
Quit the current window, unless it is the last window on the
|
||||
screen. For {count} see |:quit| command.
|
||||
|
||||
The buffer becomes hidden (unless there is another window
|
||||
editing it or 'bufhidden' is "unload", "delete" or "wipe").
|
||||
If the window is the last one in the current tab page the tab
|
||||
page is closed. |tab-page|
|
||||
The value of 'hidden' is irrelevant for this command.
|
||||
Changes to the buffer are not written and won't get lost, so
|
||||
this is a "safe" command.
|
||||
page is closed. |tab-page|
|
||||
|
||||
The value of 'hidden' is irrelevant for this command. Changes
|
||||
to the buffer are not written and won't get lost, so this is a
|
||||
"safe" command.
|
||||
|
||||
:hid[e] {cmd} Execute {cmd} with 'hidden' is set. The previous value of
|
||||
'hidden' is restored after {cmd} has been executed.
|
||||
@ -314,12 +348,16 @@ CTRL-W CTRL-C *CTRL-W_CTRL-C*
|
||||
< This will edit "Makefile", and hide the current buffer if it
|
||||
has any changes.
|
||||
|
||||
:on[ly][!]
|
||||
:{count}on[ly][!]
|
||||
CTRL-W o *CTRL-W_o* *E445*
|
||||
CTRL-W CTRL-O *CTRL-W_CTRL-O* *:on* *:only*
|
||||
:on[ly][!] Make the current window the only one on the screen. All other
|
||||
windows are closed.
|
||||
Make the current window the only one on the screen. All other
|
||||
windows are closed. For {count} see |:quit| command.
|
||||
|
||||
When the 'hidden' option is set, all buffers in closed windows
|
||||
become hidden.
|
||||
|
||||
When 'hidden' is not set, and the 'autowrite' option is set,
|
||||
modified buffers are written. Otherwise, windows that have
|
||||
buffers that are modified are not removed, unless the [!] is
|
||||
@ -726,18 +764,21 @@ the buffer. The result is that all buffers will use the 'encoding' encoding
|
||||
|
||||
CTRL-W ] *CTRL-W_]* *CTRL-W_CTRL-]*
|
||||
CTRL-W CTRL-] Split current window in two. Use identifier under cursor as a
|
||||
tag and jump to it in the new upper window. Make new window N
|
||||
high.
|
||||
tag and jump to it in the new upper window.
|
||||
In Visual mode uses the Visually selected text as a tag.
|
||||
Make new window N high.
|
||||
|
||||
*CTRL-W_g]*
|
||||
CTRL-W g ] Split current window in two. Use identifier under cursor as a
|
||||
tag and perform ":tselect" on it in the new upper window.
|
||||
In Visual mode uses the Visually selected text as a tag.
|
||||
Make new window N high.
|
||||
|
||||
*CTRL-W_g_CTRL-]*
|
||||
CTRL-W g CTRL-] Split current window in two. Use identifier under cursor as a
|
||||
tag and perform ":tjump" on it in the new upper window. Make
|
||||
new window N high.
|
||||
tag and perform ":tjump" on it in the new upper window.
|
||||
In Visual mode uses the Visually selected text as a tag.
|
||||
Make new window N high.
|
||||
|
||||
CTRL-W f *CTRL-W_f* *CTRL-W_CTRL-F*
|
||||
CTRL-W CTRL-F Split current window in two. Edit file name under cursor.
|
||||
@ -989,7 +1030,11 @@ list of buffers. |unlisted-buffer|
|
||||
Actually, the buffer isn't completely deleted, it is removed
|
||||
from the buffer list |unlisted-buffer| and option values,
|
||||
variables and mappings/abbreviations for the buffer are
|
||||
cleared.
|
||||
cleared. Examples: >
|
||||
:.,$-bdelete " delete buffers from the current one to
|
||||
" last but one
|
||||
:%bdelete " delete all buffers
|
||||
<
|
||||
|
||||
:bdelete[!] {bufname} *E93* *E94*
|
||||
Like ":bdelete[!] [N]", but buffer given by name. Note that a
|
||||
@ -1013,7 +1058,11 @@ list of buffers. |unlisted-buffer|
|
||||
Like |:bdelete|, but really delete the buffer. Everything
|
||||
related to the buffer is lost. All marks in this buffer
|
||||
become invalid, option settings are lost, etc. Don't use this
|
||||
unless you know what you are doing.
|
||||
unless you know what you are doing. Examples: >
|
||||
:.+,$bwipeout " wipe out all buffers after the current
|
||||
" one
|
||||
:%bwipeout " wipe out all buffers
|
||||
<
|
||||
|
||||
:[N]bun[load][!] *:bun* *:bunload* *E515*
|
||||
:bun[load][!] [N]
|
||||
@ -1042,36 +1091,41 @@ list of buffers. |unlisted-buffer|
|
||||
a number). Insert a backslash before a space in a buffer
|
||||
name.
|
||||
|
||||
:[N]b[uffer][!] [N] *:b* *:bu* *:buf* *:buffer* *E86*
|
||||
:[N]b[uffer][!] [+cmd] [N] *:b* *:bu* *:buf* *:buffer* *E86*
|
||||
Edit buffer [N] from the buffer list. If [N] is not given,
|
||||
the current buffer remains being edited. See |:buffer-!| for
|
||||
[!]. This will also edit a buffer that is not in the buffer
|
||||
list, without setting the 'buflisted' flag.
|
||||
Also see ||+cmd|.
|
||||
|
||||
:[N]b[uffer][!] {bufname}
|
||||
:[N]b[uffer][!] [+cmd] {bufname}
|
||||
Edit buffer for {bufname} from the buffer list. See
|
||||
|:buffer-!| for [!]. This will also edit a buffer that is not
|
||||
in the buffer list, without setting the 'buflisted' flag.
|
||||
Also see ||+cmd|.
|
||||
|
||||
:[N]sb[uffer] [N] *:sb* *:sbuffer*
|
||||
:[N]sb[uffer] [+cmd] [N] *:sb* *:sbuffer*
|
||||
Split window and edit buffer [N] from the buffer list. If [N]
|
||||
is not given, the current buffer is edited. Respects the
|
||||
"useopen" setting of 'switchbuf' when splitting. This will
|
||||
also edit a buffer that is not in the buffer list, without
|
||||
setting the 'buflisted' flag.
|
||||
Also see ||+cmd|.
|
||||
|
||||
:[N]sb[uffer] {bufname}
|
||||
:[N]sb[uffer] [+cmd] {bufname}
|
||||
Split window and edit buffer for {bufname} from the buffer
|
||||
list. This will also edit a buffer that is not in the buffer
|
||||
list, without setting the 'buflisted' flag.
|
||||
Note: If what you want to do is split the buffer, make a copy
|
||||
under another name, you can do it this way: >
|
||||
:w foobar | sp #
|
||||
< Also see ||+cmd|.
|
||||
|
||||
:[N]bn[ext][!] [N] *:bn* *:bnext* *E87*
|
||||
:[N]bn[ext][!] [+cmd] [N] *:bn* *:bnext* *E87*
|
||||
Go to [N]th next buffer in buffer list. [N] defaults to one.
|
||||
Wraps around the end of the buffer list.
|
||||
See |:buffer-!| for [!].
|
||||
Also see ||+cmd|.
|
||||
If you are in a help buffer, this takes you to the next help
|
||||
buffer (if there is one). Similarly, if you are in a normal
|
||||
(non-help) buffer, this takes you to the next normal buffer.
|
||||
@ -1079,55 +1133,61 @@ list of buffers. |unlisted-buffer|
|
||||
the way when you're browsing code/text buffers. The next three
|
||||
commands also work like this.
|
||||
|
||||
|
||||
*:sbn* *:sbnext*
|
||||
:[N]sbn[ext] [N]
|
||||
:[N]sbn[ext] [+cmd] [N]
|
||||
Split window and go to [N]th next buffer in buffer list.
|
||||
Wraps around the end of the buffer list. Uses 'switchbuf'
|
||||
Also see ||+cmd|.
|
||||
|
||||
:[N]bN[ext][!] [N] *:bN* *:bNext* *:bp* *:bprevious* *E88*
|
||||
:[N]bp[revious][!] [N]
|
||||
:[N]bN[ext][!] [+cmd] [N] *:bN* *:bNext* *:bp* *:bprevious* *E88*
|
||||
:[N]bp[revious][!] [+cmd] [N]
|
||||
Go to [N]th previous buffer in buffer list. [N] defaults to
|
||||
one. Wraps around the start of the buffer list.
|
||||
See |:buffer-!| for [!] and 'switchbuf'.
|
||||
Also see ||+cmd|.
|
||||
|
||||
:[N]sbN[ext] [N] *:sbN* *:sbNext* *:sbp* *:sbprevious*
|
||||
:[N]sbp[revious] [N]
|
||||
:[N]sbN[ext] [+cmd] [N] *:sbN* *:sbNext* *:sbp* *:sbprevious*
|
||||
:[N]sbp[revious] [+cmd] [N]
|
||||
Split window and go to [N]th previous buffer in buffer list.
|
||||
Wraps around the start of the buffer list.
|
||||
Uses 'switchbuf'.
|
||||
Also see ||+cmd|.
|
||||
|
||||
*:br* *:brewind*
|
||||
:br[ewind][!] Go to first buffer in buffer list. If the buffer list is
|
||||
:br[ewind][!] [+cmd] *:br* *:brewind*
|
||||
Go to first buffer in buffer list. If the buffer list is
|
||||
empty, go to the first unlisted buffer.
|
||||
See |:buffer-!| for [!].
|
||||
|
||||
*:bf* *:bfirst*
|
||||
:bf[irst] Same as ":brewind".
|
||||
:bf[irst] [+cmd] *:bf* *:bfirst*
|
||||
Same as |:brewind|.
|
||||
Also see |+cmd|.
|
||||
|
||||
*:sbr* *:sbrewind*
|
||||
:sbr[ewind] Split window and go to first buffer in buffer list. If the
|
||||
:sbr[ewind] [+cmd] *:sbr* *:sbrewind*
|
||||
Split window and go to first buffer in buffer list. If the
|
||||
buffer list is empty, go to the first unlisted buffer.
|
||||
Respects the 'switchbuf' option.
|
||||
Also see |+cmd|.
|
||||
|
||||
*:sbf* *:sbfirst*
|
||||
:sbf[irst] Same as ":sbrewind".
|
||||
:sbf[irst] [+cmd] *:sbf* *:sbfirst*
|
||||
Same as ":sbrewind".
|
||||
|
||||
*:bl* *:blast*
|
||||
:bl[ast][!] Go to last buffer in buffer list. If the buffer list is
|
||||
:bl[ast][!] [+cmd] *:bl* *:blast*
|
||||
Go to last buffer in buffer list. If the buffer list is
|
||||
empty, go to the last unlisted buffer.
|
||||
See |:buffer-!| for [!].
|
||||
|
||||
*:sbl* *:sblast*
|
||||
:sbl[ast] Split window and go to last buffer in buffer list. If the
|
||||
:sbl[ast] [+cmd] *:sbl* *:sblast*
|
||||
Split window and go to last buffer in buffer list. If the
|
||||
buffer list is empty, go to the last unlisted buffer.
|
||||
Respects 'switchbuf' option.
|
||||
|
||||
:[N]bm[odified][!] [N] *:bm* *:bmodified* *E84*
|
||||
:[N]bm[odified][!] [+cmd] [N] *:bm* *:bmodified* *E84*
|
||||
Go to [N]th next modified buffer. Note: this command also
|
||||
finds unlisted buffers. If there is no modified buffer the
|
||||
command fails.
|
||||
|
||||
:[N]sbm[odified] [N] *:sbm* *:sbmodified*
|
||||
:[N]sbm[odified] [+cmd] [N] *:sbm* *:sbmodified*
|
||||
Split window and go to [N]th next modified buffer.
|
||||
Respects 'switchbuf' option.
|
||||
Note: this command also finds buffers not in the buffer list.
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2014 Jul 09
|
||||
" Last Change: 2014 Dec 06
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@ -530,6 +530,9 @@ au BufNewFile,BufRead configure.in,configure.ac setf config
|
||||
" CUDA Cumpute Unified Device Architecture
|
||||
au BufNewFile,BufRead *.cu setf cuda
|
||||
|
||||
" Dockerfile
|
||||
au BufNewFile,BufRead Dockerfile setf dockerfile
|
||||
|
||||
" WildPackets EtherPeek Decoder
|
||||
au BufNewFile,BufRead *.dcd setf dcd
|
||||
|
||||
@ -779,6 +782,9 @@ au BufNewFile,BufRead *.git/config,.gitconfig,.gitmodules setf gitconfig
|
||||
au BufNewFile,BufRead *.git/modules/*/COMMIT_EDITMSG setf gitcommit
|
||||
au BufNewFile,BufRead *.git/modules/*/config setf gitconfig
|
||||
au BufNewFile,BufRead */.config/git/config setf gitconfig
|
||||
if !empty($XDG_CONFIG_HOME)
|
||||
au BufNewFile,BufRead $XDG_CONFIG_HOME/git/config setf gitconfig
|
||||
endif
|
||||
au BufNewFile,BufRead git-rebase-todo setf gitrebase
|
||||
au BufNewFile,BufRead .msg.[0-9]*
|
||||
\ if getline(1) =~ '^From.*# This line is ignored.$' |
|
||||
@ -811,6 +817,9 @@ au BufNewFile,BufRead {,.}gitolite.rc,example.gitolite.rc setf perl
|
||||
" Gnuplot scripts
|
||||
au BufNewFile,BufRead *.gpi setf gnuplot
|
||||
|
||||
" Go (Google)
|
||||
au BufNewFile,BufRead *.go setf go
|
||||
|
||||
" GrADS scripts
|
||||
au BufNewFile,BufRead *.gs setf grads
|
||||
|
||||
@ -989,7 +998,7 @@ au BufNewFile,BufRead *.java,*.jav setf java
|
||||
au BufNewFile,BufRead *.jj,*.jjt setf javacc
|
||||
|
||||
" JavaScript, ECMAScript
|
||||
au BufNewFile,BufRead *.js,*.javascript,*.es,*.jsx,*.json setf javascript
|
||||
au BufNewFile,BufRead *.js,*.javascript,*.es,*.jsx setf javascript
|
||||
|
||||
" Java Server Pages
|
||||
au BufNewFile,BufRead *.jsp setf jsp
|
||||
@ -1007,6 +1016,9 @@ au BufNewFile,BufRead *.jgr setf jgraph
|
||||
" Jovial
|
||||
au BufNewFile,BufRead *.jov,*.j73,*.jovial setf jovial
|
||||
|
||||
" JSON
|
||||
au BufNewFile,BufRead *.json,*.jsonp setf json
|
||||
|
||||
" Kixtart
|
||||
au BufNewFile,BufRead *.kix setf kix
|
||||
|
||||
@ -1095,6 +1107,9 @@ au BufNewFile,BufRead *.lou,*.lout setf lout
|
||||
" Lua
|
||||
au BufNewFile,BufRead *.lua setf lua
|
||||
|
||||
" Luarocks
|
||||
au BufNewFile,BufRead *.rockspec setf lua
|
||||
|
||||
" Linden Scripting Language (Second Life)
|
||||
au BufNewFile,BufRead *.lsl setf lsl
|
||||
|
||||
@ -1139,10 +1154,10 @@ au BufNewFile,BufRead *.mv,*.mpl,*.mws setf maple
|
||||
au BufNewFile,BufRead *.map setf map
|
||||
|
||||
" Markdown
|
||||
au BufNewFile,BufRead *.markdown,*.mdown,*.mkd,*.mkdn,*.mdwn,README.md setf markdown
|
||||
au BufNewFile,BufRead *.markdown,*.mdown,*.mkd,*.mkdn,*.mdwn,*.md setf markdown
|
||||
|
||||
" Mason
|
||||
au BufNewFile,BufRead *.mason,*.mhtml setf mason
|
||||
au BufNewFile,BufRead *.mason,*.mhtml,*.comp setf mason
|
||||
|
||||
" Matlab or Objective C
|
||||
au BufNewFile,BufRead *.m call s:FTm()
|
||||
@ -1231,8 +1246,8 @@ au BufNewFile,BufRead *.mod
|
||||
\ setf modsim3 |
|
||||
\ endif
|
||||
|
||||
" Modula 2
|
||||
au BufNewFile,BufRead *.m2,*.DEF,*.MOD,*.md,*.mi setf modula2
|
||||
" Modula 2 (.md removed in favor of Markdown)
|
||||
au BufNewFile,BufRead *.m2,*.DEF,*.MOD,*.mi setf modula2
|
||||
|
||||
" Modula 3 (.m3, .i3, .mg, .ig)
|
||||
au BufNewFile,BufRead *.[mi][3g] setf modula3
|
||||
@ -1841,7 +1856,7 @@ au BufNewFile,BufRead sgml.catalog* call s:StarSetf('catalog')
|
||||
|
||||
" Shell scripts (sh, ksh, bash, bash2, csh); Allow .profile_foo etc.
|
||||
" Gentoo ebuilds are actually bash scripts
|
||||
au BufNewFile,BufRead .bashrc*,bashrc,bash.bashrc,.bash_profile*,.bash_logout*,*.bash,*.ebuild call SetFileTypeSH("bash")
|
||||
au BufNewFile,BufRead .bashrc*,bashrc,bash.bashrc,.bash_profile*,.bash_logout*,.bash_aliases*,*.bash,*.ebuild call SetFileTypeSH("bash")
|
||||
au BufNewFile,BufRead .kshrc*,*.ksh call SetFileTypeSH("ksh")
|
||||
au BufNewFile,BufRead */etc/profile,.profile*,*.sh,*.env call SetFileTypeSH(getline(1))
|
||||
|
||||
@ -2311,6 +2326,9 @@ au BufNewFile,BufRead vgrindefs setf vgrindefs
|
||||
" VRML V1.0c
|
||||
au BufNewFile,BufRead *.wrl setf vrml
|
||||
|
||||
" Vroom (vim testing and executable documentation)
|
||||
au BufNewFile,BufRead *.vroom setf vroom
|
||||
|
||||
" Webmacro
|
||||
au BufNewFile,BufRead *.wm setf webmacro
|
||||
|
||||
@ -2484,6 +2502,8 @@ au BufNewFile,BufRead */etc/yum.conf setf dosini
|
||||
|
||||
" Zimbu
|
||||
au BufNewFile,BufRead *.zu setf zimbu
|
||||
" Zimbu Templates
|
||||
au BufNewFile,BufRead *.zut setf zimbutempl
|
||||
|
||||
" Zope
|
||||
" dtml (zope dynamic template markup language), pt (zope page template),
|
||||
|
16
runtime/ftplugin/dockerfile.vim
Normal file
16
runtime/ftplugin/dockerfile.vim
Normal file
@ -0,0 +1,16 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Dockerfile
|
||||
" Maintainer: Honza Pokorny <http://honza.ca>
|
||||
" Last Change: 2014 Aug 29
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl commentstring<"
|
||||
|
||||
setlocal commentstring=#\ %s
|
18
runtime/ftplugin/go.vim
Normal file
18
runtime/ftplugin/go.vim
Normal file
@ -0,0 +1,18 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Go
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-go)
|
||||
" Last Change: 2014 Aug 16
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal formatoptions-=t
|
||||
|
||||
setlocal comments=s1:/*,mb:*,ex:*/,://
|
||||
setlocal commentstring=//\ %s
|
||||
|
||||
let b:undo_ftplugin = 'setl fo< com< cms<'
|
||||
|
||||
" vim: sw=2 sts=2 et
|
17
runtime/ftplugin/json.vim
Normal file
17
runtime/ftplugin/json.vim
Normal file
@ -0,0 +1,17 @@
|
||||
" Vim filetype plugin
|
||||
" Language: JSON
|
||||
" Maintainer: David Barnett <daviebdawg+vim@gmail.com>
|
||||
" Last Change: 2014 Jul 16
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = 'setlocal formatoptions< comments< commentstring<'
|
||||
|
||||
setlocal formatoptions-=t
|
||||
|
||||
" JSON has no comments.
|
||||
setlocal comments=
|
||||
setlocal commentstring=
|
@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: man
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Last Change: 2013 Jul 17
|
||||
" Last Change: 2014 Nov 12
|
||||
|
||||
" To make the ":Man" command available before editing a manual page, source
|
||||
" this script from your startup vimrc file.
|
||||
@ -63,7 +63,9 @@ endtry
|
||||
func <SID>PreGetPage(cnt)
|
||||
if a:cnt == 0
|
||||
let old_isk = &iskeyword
|
||||
setl iskeyword+=(,)
|
||||
if &ft == 'man'
|
||||
setl iskeyword+=(,)
|
||||
endif
|
||||
let str = expand("<cword>")
|
||||
let &l:iskeyword = old_isk
|
||||
let page = substitute(str, '(*\(\k\+\).*', '\1', '')
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Vim
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2013 Jun 26
|
||||
" Last Change: 2014 Sep 07
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@ -62,9 +62,12 @@ if exists("loaded_matchit")
|
||||
\ '\<try\>:\<cat\%[ch]\>:\<fina\%[lly]\>:\<endt\%[ry]\>,' .
|
||||
\ '\<aug\%[roup]\s\+\%(END\>\)\@!\S:\<aug\%[roup]\s\+END\>,' .
|
||||
\ '(:)'
|
||||
" Ignore ":syntax region" commands, the 'end' argument clobbers if-endif
|
||||
let b:match_skip = 'getline(".") =~ "^\\s*sy\\%[ntax]\\s\\+region" ||
|
||||
\ synIDattr(synID(line("."),col("."),1),"name") =~? "comment\\|string"'
|
||||
" Ignore syntax region commands and settings, any 'en*' would clobber
|
||||
" if-endif.
|
||||
" - set spl=de,en
|
||||
" - au! FileType javascript syntax region foldBraces start=/{/ end=/}/ …
|
||||
let b:match_skip = 'synIDattr(synID(line("."),col("."),1),"name")
|
||||
\ =~? "comment\\|string\\|vimSynReg\\|vimSet"'
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
|
35
runtime/ftplugin/vroom.vim
Normal file
35
runtime/ftplugin/vroom.vim
Normal file
@ -0,0 +1,35 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Vroom (vim testing and executable documentation)
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-vroom)
|
||||
" Last Change: 2014 Jul 23
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
|
||||
let b:undo_ftplugin = 'setlocal formatoptions< shiftwidth< softtabstop<' .
|
||||
\ ' expandtab< iskeyword< comments< commentstring<'
|
||||
|
||||
setlocal formatoptions-=t
|
||||
|
||||
" The vroom interpreter doesn't accept anything but 2-space indent.
|
||||
setlocal shiftwidth=2
|
||||
setlocal softtabstop=2
|
||||
setlocal expandtab
|
||||
|
||||
" To allow tag lookup and autocomplete for whole autoload functions, '#' must be
|
||||
" a keyword character. This also conforms to the behavior of ftplugin/vim.vim.
|
||||
setlocal iskeyword+=#
|
||||
|
||||
" Vroom files have no comments (text is inert documentation unless indented).
|
||||
setlocal comments=
|
||||
setlocal commentstring=
|
||||
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
@ -148,7 +148,7 @@ function s:StatementIndent( current_indent, prev_lnum )
|
||||
" Get previous non-blank/non-comment-only line
|
||||
while 1
|
||||
let line = substitute( getline(lnum), g:ada#Comment, '', '' )
|
||||
|
||||
|
||||
if line !~ '^\s*$' && line !~ '^\s*#'
|
||||
break
|
||||
endif
|
||||
|
78
runtime/indent/go.vim
Normal file
78
runtime/indent/go.vim
Normal file
@ -0,0 +1,78 @@
|
||||
" Vim indent file
|
||||
" Language: Go
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-go)
|
||||
" Last Change: 2014 Aug 16
|
||||
"
|
||||
" TODO:
|
||||
" - function invocations split across lines
|
||||
" - general line splits (line ends in an operator)
|
||||
|
||||
if exists('b:did_indent')
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
" C indentation is too far off useful, mainly due to Go's := operator.
|
||||
" Let's just define our own.
|
||||
setlocal nolisp
|
||||
setlocal autoindent
|
||||
setlocal indentexpr=GoIndent(v:lnum)
|
||||
setlocal indentkeys+=<:>,0=},0=)
|
||||
|
||||
if exists('*GoIndent')
|
||||
finish
|
||||
endif
|
||||
|
||||
" The shiftwidth() function is relatively new.
|
||||
" Don't require it to exist.
|
||||
if exists('*shiftwidth')
|
||||
function s:sw() abort
|
||||
return shiftwidth()
|
||||
endfunction
|
||||
else
|
||||
function s:sw() abort
|
||||
return &shiftwidth
|
||||
endfunction
|
||||
endif
|
||||
|
||||
function! GoIndent(lnum)
|
||||
let l:prevlnum = prevnonblank(a:lnum-1)
|
||||
if l:prevlnum == 0
|
||||
" top of file
|
||||
return 0
|
||||
endif
|
||||
|
||||
" grab the previous and current line, stripping comments.
|
||||
let l:prevl = substitute(getline(l:prevlnum), '//.*$', '', '')
|
||||
let l:thisl = substitute(getline(a:lnum), '//.*$', '', '')
|
||||
let l:previ = indent(l:prevlnum)
|
||||
|
||||
let l:ind = l:previ
|
||||
|
||||
if l:prevl =~ '[({]\s*$'
|
||||
" previous line opened a block
|
||||
let l:ind += s:sw()
|
||||
endif
|
||||
if l:prevl =~# '^\s*\(case .*\|default\):$'
|
||||
" previous line is part of a switch statement
|
||||
let l:ind += s:sw()
|
||||
endif
|
||||
" TODO: handle if the previous line is a label.
|
||||
|
||||
if l:thisl =~ '^\s*[)}]'
|
||||
" this line closed a block
|
||||
let l:ind -= s:sw()
|
||||
endif
|
||||
|
||||
" Colons are tricky.
|
||||
" We want to outdent if it's part of a switch ("case foo:" or "default:").
|
||||
" We ignore trying to deal with jump labels because (a) they're rare, and
|
||||
" (b) they're hard to disambiguate from a composite literal key.
|
||||
if l:thisl =~# '^\s*\(case .*\|default\):$'
|
||||
let l:ind -= s:sw()
|
||||
endif
|
||||
|
||||
return l:ind
|
||||
endfunction
|
||||
|
||||
" vim: sw=2 sts=2 et
|
@ -2,7 +2,7 @@
|
||||
" Header: "{{{
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Original Author: Andy Wokula <anwoku@yahoo.de>
|
||||
" Last Change: 2014 Jul 04
|
||||
" Last Change: 2014 Aug 23
|
||||
" Version: 1.0
|
||||
" Description: HTML indent script with cached state for faster indenting on a
|
||||
" range of lines.
|
||||
@ -497,7 +497,7 @@ func! s:FreshState(lnum)
|
||||
" If previous line ended in a closing tag, line up with the opening tag.
|
||||
if !swendtag && text =~ '</\w\+\s*>\s*$'
|
||||
call cursor(state.lnum, 99999)
|
||||
normal F<
|
||||
normal! F<
|
||||
let start_lnum = HtmlIndent_FindStartTag()
|
||||
if start_lnum > 0
|
||||
let state.baseindent = indent(start_lnum)
|
||||
@ -898,7 +898,7 @@ func! HtmlIndent()
|
||||
" a tag works very differently. Do not do this when the line starts with
|
||||
" "<", it gets the "htmlTag" ID but we are not inside a tag then.
|
||||
if curtext !~ '^\s*<'
|
||||
normal ^
|
||||
normal! ^
|
||||
let stack = synstack(v:lnum, col('.')) " assumes there are no tabs
|
||||
let foundHtmlString = 0
|
||||
for synid in reverse(stack)
|
||||
|
168
runtime/indent/json.vim
Normal file
168
runtime/indent/json.vim
Normal file
@ -0,0 +1,168 @@
|
||||
" Vim indent file
|
||||
" Language: JSON
|
||||
" Mantainer: Eli Parra <eli@elzr.com> https://github.com/elzr/vim-json
|
||||
" Last Change: 2014 Aug 29
|
||||
" https://github.com/jakar/vim-json/commit/20b650e22aa750c4ab6a66aa646bdd95d7cd548a#diff-e81fc111b2052e306d126bd9989f7b7c
|
||||
" Original Author: Rogerz Zhang <rogerz.zhang at gmail.com> http://github.com/rogerz/vim-json
|
||||
" Acknowledgement: Based off of vim-javascript maintained by Darrick Wiebe
|
||||
" http://www.vim.org/scripts/script.php?script_id=2765
|
||||
|
||||
" 0. Initialization {{{1
|
||||
" =================
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal nosmartindent
|
||||
|
||||
" Now, set up our indentation expression and keys that trigger it.
|
||||
setlocal indentexpr=GetJSONIndent()
|
||||
setlocal indentkeys=0{,0},0),0[,0],!^F,o,O,e
|
||||
|
||||
" Only define the function once.
|
||||
if exists("*GetJSONIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" 1. Variables {{{1
|
||||
" ============
|
||||
|
||||
let s:line_term = '\s*\%(\%(\/\/\).*\)\=$'
|
||||
" Regex that defines blocks.
|
||||
let s:block_regex = '\%({\)\s*\%(|\%([*@]\=\h\w*,\=\s*\)\%(,\s*[*@]\=\h\w*\)*|\)\=' . s:line_term
|
||||
|
||||
" 2. Auxiliary Functions {{{1
|
||||
" ======================
|
||||
|
||||
" Check if the character at lnum:col is inside a string.
|
||||
function s:IsInString(lnum, col)
|
||||
return synIDattr(synID(a:lnum, a:col, 1), 'name') == 'jsonString'
|
||||
endfunction
|
||||
|
||||
" Find line above 'lnum' that isn't empty, or in a string.
|
||||
function s:PrevNonBlankNonString(lnum)
|
||||
let lnum = prevnonblank(a:lnum)
|
||||
while lnum > 0
|
||||
" If the line isn't empty or in a string, end search.
|
||||
let line = getline(lnum)
|
||||
if !(s:IsInString(lnum, 1) && s:IsInString(lnum, strlen(line)))
|
||||
break
|
||||
endif
|
||||
let lnum = prevnonblank(lnum - 1)
|
||||
endwhile
|
||||
return lnum
|
||||
endfunction
|
||||
|
||||
" Check if line 'lnum' has more opening brackets than closing ones.
|
||||
function s:LineHasOpeningBrackets(lnum)
|
||||
let open_0 = 0
|
||||
let open_2 = 0
|
||||
let open_4 = 0
|
||||
let line = getline(a:lnum)
|
||||
let pos = match(line, '[][(){}]', 0)
|
||||
while pos != -1
|
||||
let idx = stridx('(){}[]', line[pos])
|
||||
if idx % 2 == 0
|
||||
let open_{idx} = open_{idx} + 1
|
||||
else
|
||||
let open_{idx - 1} = open_{idx - 1} - 1
|
||||
endif
|
||||
let pos = match(line, '[][(){}]', pos + 1)
|
||||
endwhile
|
||||
return (open_0 > 0) . (open_2 > 0) . (open_4 > 0)
|
||||
endfunction
|
||||
|
||||
function s:Match(lnum, regex)
|
||||
let col = match(getline(a:lnum), a:regex) + 1
|
||||
return col > 0 && !s:IsInString(a:lnum, col) ? col : 0
|
||||
endfunction
|
||||
|
||||
" 3. GetJSONIndent Function {{{1
|
||||
" =========================
|
||||
|
||||
function GetJSONIndent()
|
||||
" 3.1. Setup {{{2
|
||||
" ----------
|
||||
|
||||
" Set up variables for restoring position in file. Could use v:lnum here.
|
||||
let vcol = col('.')
|
||||
|
||||
" 3.2. Work on the current line {{{2
|
||||
" -----------------------------
|
||||
|
||||
" Get the current line.
|
||||
let line = getline(v:lnum)
|
||||
let ind = -1
|
||||
|
||||
" If we got a closing bracket on an empty line, find its match and indent
|
||||
" according to it.
|
||||
let col = matchend(line, '^\s*[]}]')
|
||||
|
||||
if col > 0 && !s:IsInString(v:lnum, col)
|
||||
call cursor(v:lnum, col)
|
||||
let bs = strpart('{}[]', stridx('}]', line[col - 1]) * 2, 2)
|
||||
|
||||
let pairstart = escape(bs[0], '[')
|
||||
let pairend = escape(bs[1], ']')
|
||||
let pairline = searchpair(pairstart, '', pairend, 'bW')
|
||||
|
||||
if pairline > 0
|
||||
let ind = indent(pairline)
|
||||
else
|
||||
let ind = virtcol('.') - 1
|
||||
endif
|
||||
|
||||
return ind
|
||||
endif
|
||||
|
||||
" If we are in a multi-line string, don't do anything to it.
|
||||
if s:IsInString(v:lnum, matchend(line, '^\s*') + 1)
|
||||
return indent('.')
|
||||
endif
|
||||
|
||||
" 3.3. Work on the previous line. {{{2
|
||||
" -------------------------------
|
||||
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
if lnum == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
" Set up variables for current line.
|
||||
let line = getline(lnum)
|
||||
let ind = indent(lnum)
|
||||
|
||||
" If the previous line ended with a block opening, add a level of indent.
|
||||
" if s:Match(lnum, s:block_regex)
|
||||
" return indent(lnum) + &sw
|
||||
" endif
|
||||
|
||||
" If the previous line contained an opening bracket, and we are still in it,
|
||||
" add indent depending on the bracket type.
|
||||
if line =~ '[[({]'
|
||||
let counts = s:LineHasOpeningBrackets(lnum)
|
||||
if counts[0] == '1' || counts[1] == '1' || counts[2] == '1'
|
||||
return ind + &sw
|
||||
else
|
||||
call cursor(v:lnum, vcol)
|
||||
end
|
||||
endif
|
||||
|
||||
" }}}2
|
||||
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
" }}}1
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim:set sw=2 sts=2 ts=8 noet:
|
@ -2,7 +2,7 @@
|
||||
" Language: Lua script
|
||||
" Maintainer: Marcus Aurelius Farias <marcus.cf 'at' bol.com.br>
|
||||
" First Author: Max Ischenko <mfi 'at' ukr.net>
|
||||
" Last Change: 2007 Jul 23
|
||||
" Last Change: 2014 Nov 12
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@ -54,7 +54,7 @@ function! GetLuaIndent()
|
||||
|
||||
" Subtract a 'shiftwidth' on end, else (and elseif), until and '}'
|
||||
" This is the part that requires 'indentkeys'.
|
||||
let midx = match(getline(v:lnum), '^\s*\%(end\|else\|until\|}\)')
|
||||
let midx = match(getline(v:lnum), '^\s*\%(end\>\|else\>\|until\>\|}\)')
|
||||
if midx != -1 && synIDattr(synID(v:lnum, midx + 1, 1), "name") != "luaComment"
|
||||
let ind = ind - &shiftwidth
|
||||
endif
|
||||
|
@ -3,8 +3,8 @@
|
||||
" Author: John Wellesz <John.wellesz (AT) teaser (DOT) fr>
|
||||
" URL: http://www.2072productions.com/vim/indent/php.vim
|
||||
" Home: https://github.com/2072/PHP-Indenting-for-VIm
|
||||
" Last Change: 2014 April 3rd
|
||||
" Version: 1.49
|
||||
" Last Change: 2014 November 26th
|
||||
" Version: 1.57
|
||||
"
|
||||
"
|
||||
" Type :help php-indent for available options
|
||||
@ -48,7 +48,7 @@ endif
|
||||
let b:did_indent = 1
|
||||
|
||||
|
||||
let php_sync_method = 0
|
||||
let g:php_sync_method = 0
|
||||
|
||||
|
||||
|
||||
@ -112,7 +112,7 @@ setlocal nocindent
|
||||
setlocal nolisp
|
||||
|
||||
setlocal indentexpr=GetPhpIndent()
|
||||
setlocal indentkeys=0{,0},0),:,!^F,o,O,e,*<Return>,=?>,=<?,=*/
|
||||
setlocal indentkeys=0{,0},0),0],:,!^F,o,O,e,*<Return>,=?>,=<?,=*/
|
||||
|
||||
|
||||
|
||||
@ -128,11 +128,14 @@ if exists("*GetPhpIndent")
|
||||
endif
|
||||
|
||||
|
||||
let s:PHP_validVariable = '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
|
||||
let s:notPhpHereDoc = '\%(break\|return\|continue\|exit\|die\|else\)'
|
||||
let s:blockstart = '\%(\%(\%(}\s*\)\=else\%(\s\+\)\=\)\=if\>\|\%(}\s*\)\?else\>\|do\>\|while\>\|switch\>\|case\>\|default\>\|for\%(each\)\=\>\|declare\>\|class\>\|trait\>\|use\>\|interface\>\|abstract\>\|final\>\|try\>\|\%(}\s*\)\=catch\>\|\%(}\s*\)\=finally\>\)'
|
||||
let s:functionDecl = '\<function\>\%(\s\+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*\)\=\s*(.*'
|
||||
let s:functionDecl = '\<function\>\%(\s\+'.s:PHP_validVariable.'\)\=\s*(.*'
|
||||
let s:endline= '\s*\%(//.*\|#.*\|/\*.*\*/\s*\)\=$'
|
||||
let s:terminated = '\%(\%(;\%(\s*\%(?>\|}\)\)\=\|<<<''\=\a\w*''\=$\|^\s*}\)'.s:endline.'\)\|^[^''"`]*[''"`]$'
|
||||
|
||||
|
||||
let s:terminated = '\%(\%(;\%(\s*\%(?>\|}\)\)\=\|<<<''\=\a\w*''\=$\|^\s*}\|^\s*'.s:PHP_validVariable.':\)'.s:endline.'\)\|^[^''"`]*[''"`]$'
|
||||
let s:PHP_startindenttag = '<?\%(.*?>\)\@!\|<script[^>]*>\%(.*<\/script>\)\@!'
|
||||
|
||||
|
||||
@ -140,7 +143,7 @@ let s:PHP_startindenttag = '<?\%(.*?>\)\@!\|<script[^>]*>\%(.*<\/script>\)\@!'
|
||||
let s:escapeDebugStops = 0
|
||||
function! DebugPrintReturn(scriptLine)
|
||||
|
||||
if ! s:escapeDebugStops
|
||||
if ! s:escapeDebugStops
|
||||
echo "debug:" . a:scriptLine
|
||||
let c = getchar()
|
||||
if c == "\<Del>"
|
||||
@ -158,8 +161,6 @@ function! GetLastRealCodeLNum(startline) " {{{
|
||||
let lnum = b:GetLastRealCodeLNum_ADD
|
||||
endif
|
||||
|
||||
let old_lnum = lnum
|
||||
|
||||
while lnum > 1
|
||||
let lnum = prevnonblank(lnum)
|
||||
let lastline = getline(lnum)
|
||||
@ -217,7 +218,7 @@ function! GetLastRealCodeLNum(startline) " {{{
|
||||
let lnum=0
|
||||
endif
|
||||
|
||||
if b:InPHPcode_and_script && !b:InPHPcode
|
||||
if b:InPHPcode_and_script && 1 > b:InPHPcode
|
||||
let b:InPHPcode_and_script = 0
|
||||
endif
|
||||
|
||||
@ -237,7 +238,7 @@ endfun
|
||||
|
||||
function! Skippmatch() " {{{
|
||||
let synname = synIDattr(synID(line("."), col("."), 0), "name")
|
||||
if synname == "Delimiter" || synname == "phpRegionDelimiter" || synname =~# "^phpParent" || synname == "phpArrayParens" || synname =~# '^php\%(Block\|Brace\)' || synname == "javaScriptBraces" || synname =~# "^phpComment" && b:UserIsTypingComment
|
||||
if synname == "Delimiter" || synname == "phpRegionDelimiter" || synname =~# "^phpParent" || synname == "phpArrayParens" || synname =~# '^php\%(Block\|Brace\)' || synname == "javaScriptBraces" || synname =~# '^php\%(Doc\)\?Comment' && b:UserIsTypingComment
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
@ -249,7 +250,7 @@ function! FindOpenBracket(lnum, blockStarter) " {{{
|
||||
let line = searchpair('{', '', '}', 'bW', 'Skippmatch()')
|
||||
|
||||
if a:blockStarter == 1
|
||||
while line > 1
|
||||
while line > 1
|
||||
let linec = getline(line)
|
||||
|
||||
if linec =~ s:terminated || linec =~ '^\s*\%(' . s:blockstart . '\)\|'. s:functionDecl . s:endline
|
||||
@ -310,7 +311,6 @@ let s:defaultORcase = '^\s*\%(default\|case\).*:'
|
||||
|
||||
function! FindTheSwitchIndent (lnum) " {{{
|
||||
|
||||
|
||||
let test = GetLastRealCodeLNum(a:lnum - 1)
|
||||
|
||||
if test <= 1
|
||||
@ -353,7 +353,7 @@ function! IslinePHP (lnum, tofind) " {{{
|
||||
|
||||
if synname == 'phpStringSingle' || synname == 'phpStringDouble' || synname == 'phpBacktick'
|
||||
if cline !~ '^\s*[''"`]'
|
||||
return ""
|
||||
return "SpecStringEntrails"
|
||||
else
|
||||
return synname
|
||||
end
|
||||
@ -372,7 +372,7 @@ if ! s:autoresetoptions
|
||||
endif
|
||||
|
||||
function! ResetPhpOptions()
|
||||
if ! b:optionsset && &filetype == "php"
|
||||
if ! b:optionsset && &filetype =~ "php"
|
||||
if b:PHP_autoformatcomment
|
||||
|
||||
setlocal comments=s1:/*,mb:*,ex:*/,://,:#
|
||||
@ -418,7 +418,7 @@ function! GetPhpIndent()
|
||||
let b:PHP_indentinghuge = 0
|
||||
let b:PHP_CurrentIndentLevel = b:PHP_default_indenting
|
||||
endif
|
||||
let b:PHP_lastindented = v:lnum
|
||||
let real_PHP_lastindented = v:lnum
|
||||
let b:PHP_LastIndentedWasComment=0
|
||||
let b:PHP_InsideMultilineComment=0
|
||||
let b:PHP_indentbeforelast = 0
|
||||
@ -430,9 +430,12 @@ function! GetPhpIndent()
|
||||
|
||||
elseif v:lnum > b:PHP_lastindented
|
||||
let real_PHP_lastindented = b:PHP_lastindented
|
||||
let b:PHP_lastindented = v:lnum
|
||||
else
|
||||
let real_PHP_lastindented = v:lnum
|
||||
endif
|
||||
|
||||
let b:PHP_lastindented = v:lnum
|
||||
|
||||
|
||||
if !b:InPHPcode_checked " {{{ One time check
|
||||
let b:InPHPcode_checked = 1
|
||||
@ -443,11 +446,15 @@ function! GetPhpIndent()
|
||||
endif
|
||||
|
||||
if synname!=""
|
||||
if synname != "phpHereDoc" && synname != "phpHereDocDelimiter"
|
||||
if synname == "SpecStringEntrails"
|
||||
let b:InPHPcode = -1 " thumb down
|
||||
let b:UserIsTypingComment = 0
|
||||
let b:InPHPcode_tofind = ""
|
||||
elseif synname != "phpHereDoc" && synname != "phpHereDocDelimiter"
|
||||
let b:InPHPcode = 1
|
||||
let b:InPHPcode_tofind = ""
|
||||
|
||||
if synname =~# "^phpComment"
|
||||
if synname =~# '^php\%(Doc\)\?Comment'
|
||||
let b:UserIsTypingComment = 1
|
||||
else
|
||||
let b:UserIsTypingComment = 0
|
||||
@ -483,9 +490,16 @@ function! GetPhpIndent()
|
||||
|
||||
if b:InPHPcode_tofind!=""
|
||||
if cline =~? b:InPHPcode_tofind
|
||||
let b:InPHPcode = 1
|
||||
let b:InPHPcode_tofind = ""
|
||||
let b:UserIsTypingComment = 0
|
||||
|
||||
if b:InPHPcode == -1
|
||||
let b:InPHPcode = 1
|
||||
return -1
|
||||
end
|
||||
|
||||
let b:InPHPcode = 1
|
||||
|
||||
if cline =~ '\*/'
|
||||
call cursor(v:lnum, 1)
|
||||
if cline !~ '^\*/'
|
||||
@ -510,7 +524,7 @@ function! GetPhpIndent()
|
||||
endif
|
||||
endif
|
||||
|
||||
if b:InPHPcode
|
||||
if 1 == b:InPHPcode
|
||||
|
||||
if !b:InPHPcode_and_script && last_line =~ '\%(<?.*\)\@<!?>\%(.*<?\)\@!' && IslinePHP(lnum, '?>')=~"Delimiter"
|
||||
if cline !~? s:PHP_startindenttag
|
||||
@ -520,8 +534,8 @@ function! GetPhpIndent()
|
||||
let b:InPHPcode_and_script = 1
|
||||
endif
|
||||
|
||||
elseif last_line =~ '^[^''"`]\+[''"`]$' " a string identifier with nothing after it and no other string identifier before
|
||||
let b:InPHPcode = 0
|
||||
elseif last_line =~ '^[^''"`]\+[''"`]$'
|
||||
let b:InPHPcode = -1
|
||||
let b:InPHPcode_tofind = substitute( last_line, '^.*\([''"`]\).*$', '^[^\1]*\1[;,]$', '')
|
||||
elseif last_line =~? '<<<''\=\a\w*''\=$'
|
||||
let b:InPHPcode = 0
|
||||
@ -538,7 +552,7 @@ function! GetPhpIndent()
|
||||
endif " }}}
|
||||
|
||||
|
||||
if !b:InPHPcode && !b:InPHPcode_and_script
|
||||
if 1 > b:InPHPcode && !b:InPHPcode_and_script
|
||||
return -1
|
||||
endif
|
||||
|
||||
@ -568,7 +582,7 @@ function! GetPhpIndent()
|
||||
endif
|
||||
endif
|
||||
|
||||
if !b:PHP_InsideMultilineComment && cline =~ '^\s*/\*' && cline !~ '\*/\s*$'
|
||||
if !b:PHP_InsideMultilineComment && cline =~ '^\s*/\*\%(.*\*/\)\@!'
|
||||
if getline(v:lnum + 1) !~ '^\s*\*'
|
||||
return -1
|
||||
endif
|
||||
@ -669,17 +683,17 @@ function! GetPhpIndent()
|
||||
endwhile
|
||||
|
||||
elseif last_line =~# unstated && cline !~ '^\s*);\='.endline
|
||||
let ind = ind + &sw " we indent one level further when the preceding line is not stated
|
||||
let ind = ind + &sw
|
||||
return ind + addSpecial
|
||||
|
||||
elseif (ind != b:PHP_default_indenting || last_line =~ '^[)\]]' ) && last_line =~ terminated " Added || last_line =~ '^)' on 2007-12-30 (array indenting problem broke other things)
|
||||
elseif (ind != b:PHP_default_indenting || last_line =~ '^[)\]]' ) && last_line =~ terminated
|
||||
let previous_line = last_line
|
||||
let last_line_num = lnum
|
||||
let LastLineClosed = 1
|
||||
|
||||
let isSingleLineBlock = 0
|
||||
while 1
|
||||
if ! isSingleLineBlock && previous_line =~ '^\s*}\|;\s*}'.endline " XXX
|
||||
if ! isSingleLineBlock && previous_line =~ '^\s*}\|;\s*}'.endline
|
||||
|
||||
call cursor(last_line_num, 1)
|
||||
if previous_line !~ '^}'
|
||||
@ -740,14 +754,19 @@ function! GetPhpIndent()
|
||||
endif
|
||||
endif
|
||||
|
||||
let plinnum = GetLastRealCodeLNum(lnum - 1)
|
||||
if (last_line !~ '^\s*}\%(}}\)\@!')
|
||||
let plinnum = GetLastRealCodeLNum(lnum - 1)
|
||||
else
|
||||
let plinnum = GetLastRealCodeLNum(FindOpenBracket(lnum, 1) - 1)
|
||||
endif
|
||||
|
||||
let AntepenultimateLine = getline(plinnum)
|
||||
|
||||
let last_line = substitute(last_line,"\\(//\\|#\\)\\(\\(\\([^\"']*\\([\"']\\)[^\"']*\\5\\)\\+[^\"']*$\\)\\|\\([^\"']*$\\)\\)",'','')
|
||||
|
||||
|
||||
if ind == b:PHP_default_indenting
|
||||
if last_line =~ terminated
|
||||
if last_line =~ terminated && last_line !~# s:defaultORcase
|
||||
let LastLineClosed = 1
|
||||
endif
|
||||
endif
|
||||
@ -755,10 +774,10 @@ function! GetPhpIndent()
|
||||
if !LastLineClosed
|
||||
|
||||
|
||||
if last_line =~# '[{(\[]'.endline || last_line =~? '\h\w*\s*(.*,$' && AntepenultimateLine !~ '[,(]'.endline
|
||||
if last_line =~# '[{(\[]'.endline || last_line =~? '\h\w*\s*(.*,$' && AntepenultimateLine !~ '[,(\[]'.endline
|
||||
|
||||
let dontIndent = 0
|
||||
if last_line =~ '\S\+\s*{'.endline && last_line !~ '^\s*\%(' . s:blockstart . '\)\|'. s:functionDecl . s:endline
|
||||
if last_line =~ '\S\+\s*{'.endline && last_line !~ '^\s*)\s*{'.endline && last_line !~ '^\s*\%(' . s:blockstart . '\)\|'. s:functionDecl . s:endline
|
||||
let dontIndent = 1
|
||||
endif
|
||||
|
||||
@ -774,7 +793,7 @@ function! GetPhpIndent()
|
||||
|
||||
elseif last_line =~ '\S\+\s*),'.endline
|
||||
call cursor(lnum, 1)
|
||||
call search('),'.endline, 'W') " line never begins with ) so no need for 'c' flag
|
||||
call search('),'.endline, 'W')
|
||||
let openedparent = searchpair('(', '', ')', 'bW', 'Skippmatch()')
|
||||
if openedparent != lnum
|
||||
let ind = indent(openedparent)
|
||||
@ -784,7 +803,7 @@ function! GetPhpIndent()
|
||||
let ind = ind + &sw
|
||||
|
||||
|
||||
elseif AntepenultimateLine =~ '\%(;\%(\s*\%(?>\|}\)\)\=\|<<<''\=\a\w*''\=$\|^\s*}\|{\)'.endline . '\|' . s:defaultORcase
|
||||
elseif AntepenultimateLine =~ '{'.endline || AntepenultimateLine =~ terminated || AntepenultimateLine =~# s:defaultORcase
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
" Language: Shell Script
|
||||
" Maintainer: Peter Aronoff <telemachus@arpinum.org>
|
||||
" Original Author: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2013-11-28
|
||||
" Latest Revision: 2014-08-22
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@ -91,7 +91,9 @@ function! GetShIndent()
|
||||
if s:is_case(pine)
|
||||
let ind = indent(lnum) + s:indent_value('case-labels')
|
||||
else
|
||||
let ind -= s:indent_value('case-statements') - s:indent_value('case-breaks')
|
||||
let ind -= (s:is_case_label(pine, lnum) && s:is_case_ended(pine) ?
|
||||
\ 0 : s:indent_value('case-statements')) -
|
||||
\ s:indent_value('case-breaks')
|
||||
endif
|
||||
elseif s:is_case_break(line)
|
||||
let ind -= s:indent_value('case-breaks')
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Vim script
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 Aug 02
|
||||
" Last Change: 2014 Dec 12
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@ -37,7 +37,8 @@ function GetVimIndentIntern()
|
||||
|
||||
" If the current line doesn't start with '\' and below a line that starts
|
||||
" with '\', use the indent of the line above it.
|
||||
if getline(v:lnum) !~ '^\s*\\'
|
||||
let cur_text = getline(v:lnum)
|
||||
if cur_text !~ '^\s*\\'
|
||||
while lnum > 0 && getline(lnum) =~ '^\s*\\'
|
||||
let lnum = lnum - 1
|
||||
endwhile
|
||||
@ -47,27 +48,30 @@ function GetVimIndentIntern()
|
||||
if lnum == 0
|
||||
return 0
|
||||
endif
|
||||
let prev_text = getline(lnum)
|
||||
|
||||
" Add a 'shiftwidth' after :if, :while, :try, :catch, :finally, :function
|
||||
" and :else. Add it three times for a line that starts with '\' after
|
||||
" a line that doesn't (or g:vim_indent_cont if it exists).
|
||||
let ind = indent(lnum)
|
||||
if getline(v:lnum) =~ '^\s*\\' && v:lnum > 1 && getline(lnum) !~ '^\s*\\'
|
||||
if cur_text =~ '^\s*\\' && v:lnum > 1 && prev_text !~ '^\s*\\'
|
||||
if exists("g:vim_indent_cont")
|
||||
let ind = ind + g:vim_indent_cont
|
||||
else
|
||||
let ind = ind + &sw * 3
|
||||
endif
|
||||
elseif getline(lnum) =~ '^\s*aug\%[roup]' && getline(lnum) !~ '^\s*aug\%[roup]\s*!\=\s\+END'
|
||||
elseif prev_text =~ '^\s*aug\%[roup]' && prev_text !~ '^\s*aug\%[roup]\s*!\=\s\+END'
|
||||
let ind = ind + &sw
|
||||
else
|
||||
let line = getline(lnum)
|
||||
let i = match(line, '\(^\||\)\s*\(if\|wh\%[ile]\|for\|try\|cat\%[ch]\|fina\%[lly]\|fu\%[nction]\|el\%[seif]\)\>')
|
||||
if i >= 0
|
||||
let ind += &sw
|
||||
if strpart(line, i, 1) == '|' && has('syntax_items')
|
||||
\ && synIDattr(synID(lnum, i, 1), "name") =~ '\(Comment\|String\)$'
|
||||
let ind -= &sw
|
||||
" A line starting with :au does not increment/decrement indent.
|
||||
if prev_text !~ '^\s*au\%[tocmd]'
|
||||
let i = match(prev_text, '\(^\||\)\s*\(if\|wh\%[ile]\|for\|try\|cat\%[ch]\|fina\%[lly]\|fu\%[nction]\|el\%[seif]\)\>')
|
||||
if i >= 0
|
||||
let ind += &sw
|
||||
if strpart(prev_text, i, 1) == '|' && has('syntax_items')
|
||||
\ && synIDattr(synID(lnum, i, 1), "name") =~ '\(Comment\|String\)$'
|
||||
let ind -= &sw
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@ -75,9 +79,8 @@ function GetVimIndentIntern()
|
||||
" If the previous line contains an "end" after a pipe, but not in an ":au"
|
||||
" command. And not when there is a backslash before the pipe.
|
||||
" And when syntax HL is enabled avoid a match inside a string.
|
||||
let line = getline(lnum)
|
||||
let i = match(line, '[^\\]|\s*\(ene\@!\)')
|
||||
if i > 0 && line !~ '^\s*au\%[tocmd]'
|
||||
let i = match(prev_text, '[^\\]|\s*\(ene\@!\)')
|
||||
if i > 0 && prev_text !~ '^\s*au\%[tocmd]'
|
||||
if !has('syntax_items') || synIDattr(synID(lnum, i + 2, 1), "name") !~ '\(Comment\|String\)$'
|
||||
let ind = ind - &sw
|
||||
endif
|
||||
@ -86,7 +89,7 @@ function GetVimIndentIntern()
|
||||
|
||||
" Subtract a 'shiftwidth' on a :endif, :endwhile, :catch, :finally, :endtry,
|
||||
" :endfun, :else and :augroup END.
|
||||
if getline(v:lnum) =~ '^\s*\(ene\@!\|cat\|fina\|el\|aug\%[roup]\s*!\=\s\+END\)'
|
||||
if cur_text =~ '^\s*\(ene\@!\|cat\|fina\|el\|aug\%[roup]\s*!\=\s\+[eE][nN][dD]\)'
|
||||
let ind = ind - &sw
|
||||
endif
|
||||
|
||||
|
21
runtime/indent/vroom.vim
Normal file
21
runtime/indent/vroom.vim
Normal file
@ -0,0 +1,21 @@
|
||||
" Vim indent file
|
||||
" Language: Vroom (vim testing and executable documentation)
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-vroom)
|
||||
" Last Change: 2014 Jul 23
|
||||
|
||||
if exists('b:did_indent')
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
|
||||
let b:undo_indent = 'setlocal autoindent<'
|
||||
|
||||
setlocal autoindent
|
||||
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
@ -1,6 +1,7 @@
|
||||
" Menu Translations: Simplified Chinese <i18n-translation@lists.linux.net.cn>
|
||||
" Translated By: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: Tue Apr 18 22:00:00 2006
|
||||
" Menu Translations: Simplified Chinese
|
||||
" Maintainer: Shun Bai <baishunde@gmail.com>
|
||||
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: 2014 Oct 15
|
||||
|
||||
" vim: ts=8 sw=8 noet
|
||||
|
||||
@ -90,13 +91,14 @@ menutrans Toggle\ &Right\ Scrollbar
|
||||
menutrans F&ile\ Settings <09>ļ<EFBFBD><EFBFBD>趨(&I)
|
||||
|
||||
" Boolean options
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <09><>/<2F><>\ list\ ģʽ(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et! <09><>/<2F><><EFBFBD><EFBFBD>չ\ tab(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai! <09><>/<2F><><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin! <09><>/<2F><>\ C\ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>:set\ cin!
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <09><>/<2F><>\ list\ ģʽ(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et! <EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD>չ\ tab(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai! <EFBFBD><EFBFBD>/<2F><><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin! <09><>/<2F><>\ C\ <20><><EFBFBD><EFBFBD>(&C)<Tab>:set\ cin!
|
||||
|
||||
" other options
|
||||
menutrans &Shiftwidth <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
|
@ -1,6 +1,7 @@
|
||||
" Menu Translations: Simplified Chinese <i18n-translation@lists.linux.net.cn>
|
||||
" Translated By: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: Tue Apr 18 22:00:00 2006
|
||||
" Menu Translations: Simplified Chinese
|
||||
" Maintainer: Shun Bai <baishunde@gmail.com>
|
||||
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: 2014 Oct 15
|
||||
|
||||
" vim: ts=8 sw=8 noet
|
||||
|
||||
@ -94,6 +95,7 @@ menutrans F&ile\ Settings
|
||||
|
||||
" Boolean options
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! <20><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <09><>/<2F><>\ list\ ģʽ(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
|
||||
|
@ -1,6 +1,7 @@
|
||||
" Menu Translations: Simplified Chinese <i18n-translation@lists.linux.net.cn>
|
||||
" Translated By: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: Tue Apr 18 22:00:00 2006
|
||||
" Menu Translations: Simplified Chinese
|
||||
" Maintainer: Shun Bai <baishunde@gmail.com>
|
||||
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: 2014 Oct 15
|
||||
|
||||
" vim: ts=8 sw=8 noet
|
||||
|
||||
@ -91,6 +92,7 @@ menutrans F&ile\ Settings 文件设定(&I)
|
||||
|
||||
" Boolean options
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! 开/关显示行号(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! 开/关相对行号(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! 开/关\ list\ 模式(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! 开/关折行(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! 开/关整词折行(&R)<Tab>:set\ lbr!
|
||||
|
@ -1,6 +1,6 @@
|
||||
" Vim Plugin: Edit the file with an existing Vim if possible
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Last Change: 2013 Feb 24
|
||||
" Last Change: 2014 Dec 06
|
||||
|
||||
" This is a plugin, drop it in your (Unix) ~/.vim/plugin or (Win32)
|
||||
" $VIM/vimfiles/plugin directory. Or make a symbolic link, so that you
|
||||
@ -112,7 +112,7 @@ func! EditExisting(fname, command)
|
||||
endif
|
||||
|
||||
if a:command != ''
|
||||
exe "normal " . a:command
|
||||
exe "normal! " . a:command
|
||||
endif
|
||||
|
||||
redraw
|
||||
|
@ -1,7 +1,7 @@
|
||||
" These commands create the option window.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2014 Apr 01
|
||||
" Last Change: 2014 Nov 19
|
||||
|
||||
" If there already is an option window, jump to that one.
|
||||
if bufwinnr("option-window") > 0
|
||||
@ -149,7 +149,7 @@ setlocal ts=15 tw=0 noro buftype=nofile
|
||||
call append(0, '" Each "set" line shows the current value of an option (on the left).')
|
||||
call append(1, '" Hit <CR> on a "set" line to execute it.')
|
||||
call append(2, '" A boolean option will be toggled.')
|
||||
call append(3, '" For other options you can edit the value.')
|
||||
call append(3, '" For other options you can edit the value before hitting <CR>.')
|
||||
call append(4, '" Hit <CR> on a help line to open a help window on this option.')
|
||||
call append(5, '" Hit <CR> on an index line to jump there.')
|
||||
call append(6, '" Hit <Space> on a "set" line to refresh it.')
|
||||
@ -606,6 +606,10 @@ if has("gui")
|
||||
call append("$", "guiheadroom\troom (in pixels) left above/below the window")
|
||||
call append("$", " \tset ghr=" . &ghr)
|
||||
endif
|
||||
if has("directx")
|
||||
call append("$", "renderoptions\toptions for text rendering")
|
||||
call <SID>OptionG("rop", &rop)
|
||||
endif
|
||||
call append("$", "guipty\tuse a pseudo-tty for I/O to external commands")
|
||||
call <SID>BinOptionG("guipty", &guipty)
|
||||
if has("browse")
|
||||
@ -724,6 +728,7 @@ call <SID>OptionG("km", &km)
|
||||
|
||||
call <SID>Header("editing text")
|
||||
call append("$", "undolevels\tmaximum number of changes that can be undone")
|
||||
call append("$", "\t(global or local to buffer)")
|
||||
call append("$", " \tset ul=" . &ul)
|
||||
call append("$", "undoreload\tmaximum number lines to save for undo on a buffer reload")
|
||||
call append("$", " \tset ur=" . &ur)
|
||||
@ -973,6 +978,7 @@ call <SID>BinOptionG("bk", &bk)
|
||||
call append("$", "backupskip\tpatterns that specify for which files a backup is not made")
|
||||
call append("$", " \tset bsk=" . &bsk)
|
||||
call append("$", "backupcopy\twhether to make the backup as a copy or rename the existing file")
|
||||
call append("$", "\t(global or local to buffer)")
|
||||
call append("$", " \tset bkc=" . &bkc)
|
||||
call append("$", "backupdir\tlist of directories to put backup files in")
|
||||
call <SID>OptionG("bdir", &bdir)
|
||||
@ -1188,8 +1194,10 @@ if has("keymap")
|
||||
call <SID>OptionL("kmp")
|
||||
endif
|
||||
if has("langmap")
|
||||
call append("$", "langmap\ttranslate characters for Normal mode")
|
||||
call append("$", "langmap\tlist of characters that are translated in Normal mode")
|
||||
call <SID>OptionG("lmap", &lmap)
|
||||
call append("$", "langnoremap\tdon't apply 'langmap' to mapped characters")
|
||||
call <SID>BinOptionG("lnr", &lnr)
|
||||
endif
|
||||
if has("xim")
|
||||
call append("$", "imdisable\twhen set never use IM; overrules following IM options")
|
||||
|
@ -1,6 +1,6 @@
|
||||
" Vim plugin for showing matching parens
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2014 Jul 09
|
||||
" Last Change: 2014 Jul 19
|
||||
|
||||
" Exit quickly when:
|
||||
" - this plugin was already loaded (or disabled)
|
||||
@ -88,14 +88,27 @@ function! s:Highlight_Matching_Pair()
|
||||
" Find the match. When it was just before the cursor move it there for a
|
||||
" moment.
|
||||
if before > 0
|
||||
let save_cursor = getcurpos()
|
||||
let has_getcurpos = exists("*getcurpos")
|
||||
if has_getcurpos
|
||||
" getcurpos() is more efficient but doesn't exist before 7.4.313.
|
||||
let save_cursor = getcurpos()
|
||||
else
|
||||
let save_cursor = winsaveview()
|
||||
endif
|
||||
call cursor(c_lnum, c_col - before)
|
||||
endif
|
||||
|
||||
" When not in a string or comment ignore matches inside them.
|
||||
" Build an expression that detects whether the current cursor position is in
|
||||
" certain syntax types (string, comment, etc.), for use as searchpairpos()'s
|
||||
" skip argument.
|
||||
" We match "escape" for special items, such as lispEscapeSpecial.
|
||||
let s_skip ='synIDattr(synID(line("."), col("."), 0), "name") ' .
|
||||
\ '=~? "string\\|character\\|singlequote\\|escape\\|comment"'
|
||||
let s_skip = '!empty(filter(map(synstack(line("."), col(".")), ''synIDattr(v:val, "name")''), ' .
|
||||
\ '''v:val =~? "string\\|character\\|singlequote\\|escape\\|comment"''))'
|
||||
" If executing the expression determines that the cursor is currently in
|
||||
" one of the syntax types, then we want searchpairpos() to find the pair
|
||||
" within those syntax types (i.e., not skip). Otherwise, the cursor is
|
||||
" outside of the syntax types and s_skip should keep its value so we skip any
|
||||
" matching pair inside the syntax types.
|
||||
execute 'if' s_skip '| let s_skip = 0 | endif'
|
||||
|
||||
" Limit the search to lines visible in the window.
|
||||
@ -148,7 +161,11 @@ function! s:Highlight_Matching_Pair()
|
||||
endtry
|
||||
|
||||
if before > 0
|
||||
call setpos('.', save_cursor)
|
||||
if has_getcurpos
|
||||
call setpos('.', save_cursor)
|
||||
else
|
||||
call winrestview(save_cursor)
|
||||
endif
|
||||
endif
|
||||
|
||||
" If a match is found setup match highlighting.
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types in scripts
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2013 May 24
|
||||
" Last change: 2014 Aug 24
|
||||
|
||||
" This file is called by an autocommand for every file that has just been
|
||||
" loaded into a buffer. It checks if the type of file can be recognized by
|
||||
@ -319,6 +319,10 @@ else
|
||||
elseif s:line1 =~ '^==\d\+== valgrind' || s:line3 =~ '^==\d\+== Using valgrind'
|
||||
set ft=valgrind
|
||||
|
||||
" Go docs
|
||||
elseif s:line1 =~ '^PACKAGE DOCUMENTATION$'
|
||||
set ft=godoc
|
||||
|
||||
" Renderman Interface Bytestream
|
||||
elseif s:line1 =~ '^##RenderMan'
|
||||
set ft=rib
|
||||
|
@ -9,35 +9,43 @@
|
||||
SPELLDIR = ..
|
||||
FILES = ro_RO.aff ro_RO.dic
|
||||
|
||||
all: $SPELLDIR/ro.iso-8859-2.spl $SPELLDIR/ro.utf-8.spl \
|
||||
$SPELLDIR/ro.cp1250.spl ../README_ro.txt
|
||||
|
||||
$SPELLDIR/ro.iso-8859-2.spl : $FILES
|
||||
:sys env LANG=ro_RO.ISO8859-2 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ro ro_RO" -c q
|
||||
all: $SPELLDIR/ro.utf-8.spl \
|
||||
$SPELLDIR/ro.iso-8859-2.spl \
|
||||
$SPELLDIR/ro.cp1250.spl \
|
||||
../README_ro.txt
|
||||
|
||||
$SPELLDIR/ro.utf-8.spl : $FILES
|
||||
:sys env LANG=ro_RO.UTF-8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ro ro_RO" -c q
|
||||
:sys env LANG=ro_RO.utf8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ro ro_RO" -c q
|
||||
|
||||
# Note: this generates conversion errors, because not all characters can be
|
||||
# represented in iso-8859-2.
|
||||
$SPELLDIR/ro.iso-8859-2.spl : $FILES
|
||||
:sys env LANG=ro_RO.iso88592 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ro ro_RO" -c q
|
||||
|
||||
# Note: this generates conversion errors, because not all characters can be
|
||||
# represented in cp1250.
|
||||
$SPELLDIR/ro.cp1250.spl : $FILES
|
||||
:sys $VIM -u NONE -e -c "set enc=cp1250" -c "mkspell! $SPELLDIR/ro ro_RO" -c q
|
||||
|
||||
../README_ro.txt: README_ro_RO.txt
|
||||
../README_ro.txt: README
|
||||
:copy $source $target
|
||||
|
||||
#
|
||||
# Fetching the files from OpenOffice.org.
|
||||
#
|
||||
OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
|
||||
:attr {fetch = $OODIR/%file%} ro_RO.zip
|
||||
#OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
|
||||
OODIR = http://sourceforge.net/projects/rospell/files/Romanian%20dictionaries/dict-3.3.10
|
||||
ZIPFILE = ro_RO.3.3.10.zip
|
||||
:attr {fetch = $OODIR/%file%} $ZIPFILE
|
||||
|
||||
# The files don't depend on the .zip file so that we can delete it.
|
||||
# Only download the zip file if the targets don't exist.
|
||||
# This is a bit tricky, since the file name includes the date.
|
||||
ro_RO.aff ro_RO.dic: {buildcheck=}
|
||||
:assertpkg unzip patch
|
||||
:fetch ro_RO.zip
|
||||
:sys $UNZIP ro_RO.zip
|
||||
:delete ro_RO.zip
|
||||
:fetch $ZIPFILE
|
||||
:sys $UNZIP $ZIPFILE
|
||||
:delete $ZIPFILE
|
||||
@if not os.path.exists('ro_RO.orig.aff'):
|
||||
:copy ro_RO.aff ro_RO.orig.aff
|
||||
@if not os.path.exists('ro_RO.orig.dic'):
|
||||
@ -60,12 +68,12 @@ diff:
|
||||
|
||||
check:
|
||||
:assertpkg unzip diff
|
||||
:fetch ro_RO.zip
|
||||
:fetch $ZIPFILE
|
||||
:mkdir tmp
|
||||
:cd tmp
|
||||
@try:
|
||||
@import stat
|
||||
:sys $UNZIP ../ro_RO.zip
|
||||
:sys $UNZIP ../$ZIPFILE
|
||||
:sys {force} diff ../ro_RO.orig.aff ro_RO.aff >d
|
||||
@if os.stat('d')[stat.ST_SIZE] > 0:
|
||||
:copy ro_RO.aff ../ro_RO.new.aff
|
||||
@ -75,7 +83,19 @@ check:
|
||||
@finally:
|
||||
:cd ..
|
||||
:delete {r}{f}{q} tmp
|
||||
:delete ro_RO.zip
|
||||
:delete $ZIPFILE
|
||||
|
||||
# Remove all the downloaded and generated files.
|
||||
clean:
|
||||
:delete ro_RO.aff
|
||||
:delete ro_RO.dic
|
||||
:delete ro_RO.orig.aff
|
||||
:delete ro_RO.orig.dic
|
||||
:delete ro_RO-ante1993.aff
|
||||
:delete ro_RO-ante1993.dic
|
||||
:delete COPYING.GPL
|
||||
:delete COPYING.LGPL
|
||||
:delete COPYING.MPL
|
||||
:delete README
|
||||
|
||||
# vim: set sts=4 sw=4 :
|
||||
|
@ -1,42 +1,34 @@
|
||||
*** ro_RO.orig.aff Wed Aug 31 20:34:38 2005
|
||||
--- ro_RO.aff Wed Aug 31 20:39:57 2005
|
||||
*** ro_RO.orig.aff 2014-08-29 16:29:21.162457824 +0200
|
||||
--- ro_RO.aff 2014-09-19 15:29:52.354413307 +0200
|
||||
***************
|
||||
*** 3,4 ****
|
||||
--- 3,8 ----
|
||||
*** 3,5 ****
|
||||
TRY iaăâșțîertolncusmpdbgfzvhjxkwyqACDM
|
||||
! KEY qwertyuiop|asdfghjkl|zxcvbnm
|
||||
|
||||
+ FOL <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ LOW <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ UPP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+
|
||||
PFX E Y 1
|
||||
***************
|
||||
*** 12,15 ****
|
||||
SFX L 0 l u
|
||||
! SFX L 0 le [^cg] i
|
||||
! SFX L 0 i [cg] i
|
||||
SFX L 0 le e
|
||||
--- 16,19 ----
|
||||
SFX L 0 l u
|
||||
! SFX L 0 le [^cg]i
|
||||
! SFX L 0 i [cg]i
|
||||
SFX L 0 le e
|
||||
***************
|
||||
*** 18,20 ****
|
||||
SFX U 0 a re
|
||||
! SFX U 0 i [^i] ii
|
||||
|
||||
--- 22,24 ----
|
||||
SFX U 0 a re
|
||||
! SFX U 0 i [^i]ii
|
||||
--- 3,9 ----
|
||||
TRY iaăâșțîertolncusmpdbgfzvhjxkwyqACDM
|
||||
! # KEY qwertyuiop|asdfghjkl|zxcvbnm
|
||||
!
|
||||
! # ignore extra field (specifies type of word?)
|
||||
! IGNOREEXTRA
|
||||
!
|
||||
|
||||
***************
|
||||
*** 38,41 ****
|
||||
SFX I 0 ului [^ua]
|
||||
! SFX I a ii [gc] a
|
||||
! SFX I a ei [^cg] a
|
||||
|
||||
--- 42,45 ----
|
||||
SFX I 0 ului [^ua]
|
||||
! SFX I a ii [gc]a
|
||||
! SFX I a ei [^cg]a
|
||||
|
||||
*** 1546,1553 ****
|
||||
SFX q 0 ilor . adj. m. pl. dat.
|
||||
! SFX q 0 ă
|
||||
! SFX q 0 a
|
||||
! SFX q 0 ei
|
||||
! SFX q 0 e
|
||||
! SFX q 0 ele
|
||||
! SFX q 0 elor
|
||||
PFX q Y 1
|
||||
--- 1550,1557 ----
|
||||
SFX q 0 ilor . adj. m. pl. dat.
|
||||
! SFX q 0 ă .
|
||||
! SFX q 0 a .
|
||||
! SFX q 0 ei .
|
||||
! SFX q 0 e .
|
||||
! SFX q 0 ele .
|
||||
! SFX q 0 elor .
|
||||
PFX q Y 1
|
||||
|
@ -2,7 +2,7 @@
|
||||
" This file is normally sourced from menu.vim.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2013 Jun 24
|
||||
" Last Change: 2014 Aug 13
|
||||
|
||||
" Define the SetSyn function, used for the Syntax menu entries.
|
||||
" Set 'filetype' and also 'syntax' if it is manually selected.
|
||||
@ -326,6 +326,7 @@ an 50.70.270 &Syntax.M.Messages\ (/var/log) :cal SetSyn("messages")<CR>
|
||||
an 50.70.280 &Syntax.M.Metafont :cal SetSyn("mf")<CR>
|
||||
an 50.70.290 &Syntax.M.MetaPost :cal SetSyn("mp")<CR>
|
||||
an 50.70.300 &Syntax.M.MGL :cal SetSyn("mgl")<CR>
|
||||
an 50.70.305 &Syntax.M.MIX :cal SetSyn("mix")<CR>
|
||||
an 50.70.310 &Syntax.M.MMIX :cal SetSyn("mmix")<CR>
|
||||
an 50.70.320 &Syntax.M.Modconf :cal SetSyn("modconf")<CR>
|
||||
an 50.70.330 &Syntax.M.Model :cal SetSyn("model")<CR>
|
||||
|
@ -5,6 +5,7 @@
|
||||
" URL: http://asciidoc.org/
|
||||
" Licence: GPL (http://www.gnu.org)
|
||||
" Remarks: Vim 6 or greater
|
||||
" Last Update: 2014 Aug 29 (see Issue 240)
|
||||
" Limitations:
|
||||
"
|
||||
" - Nested quoted text formatting is highlighted according to the outer
|
||||
@ -155,7 +156,8 @@ hi def link asciidocQuotedAttributeList Special
|
||||
hi def link asciidocQuotedBold Special
|
||||
hi def link asciidocQuotedDoubleQuoted Label
|
||||
hi def link asciidocQuotedEmphasized2 Type
|
||||
hi def link asciidocQuotedEmphasized Type
|
||||
hi asciidocQuotedEmphasizedItalic term=italic cterm=italic gui=italic
|
||||
hi def link asciidocQuotedEmphasized asciidocQuotedEmphasizedItalic
|
||||
hi def link asciidocQuotedMonospaced2 Identifier
|
||||
hi def link asciidocQuotedMonospaced Identifier
|
||||
hi def link asciidocQuotedSingleQuoted Label
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2014 May 26
|
||||
" Last Change: 2014 Nov 13
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@ -35,28 +35,36 @@ syn match cSpecial display contained "\\\(x\x\+\|\o\{1,3}\|.\|$\)"
|
||||
if !exists("c_no_utf")
|
||||
syn match cSpecial display contained "\\\(u\x\{4}\|U\x\{8}\)"
|
||||
endif
|
||||
if exists("c_no_cformat")
|
||||
syn region cString start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,@Spell extend
|
||||
" cCppString: same as cString, but ends at end of line
|
||||
if !exists("cpp_no_cpp11") " ISO C++11
|
||||
syn region cCppString start=+\(L\|u\|u8\|U\|R\|LR\|u8R\|uR\|UR\)\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,cFormat,@Spell
|
||||
else
|
||||
syn region cCppString start=+L\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,cFormat,@Spell
|
||||
endif
|
||||
syn region cCppOut2 contained start="0" end="^\s*\(%:\|#\)\s*\(endif\>\|else\>\|elif\>\)" contains=cSpaceError,cCppSkip
|
||||
syn region cCppSkip contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppSkip
|
||||
else
|
||||
|
||||
if !exists("c_no_cformat")
|
||||
" Highlight % items in strings.
|
||||
if !exists("c_no_c99") " ISO C99
|
||||
syn match cFormat display "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlLjzt]\|ll\|hh\)\=\([aAbdiuoxXDOUfFeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained
|
||||
else
|
||||
syn match cFormat display "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlL]\|ll\)\=\([bdiuoxXDOUfeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained
|
||||
endif
|
||||
syn match cFormat display "%%" contained
|
||||
endif
|
||||
|
||||
" cCppString: same as cString, but ends at end of line
|
||||
if s:ft ==# "cpp" && !exists("cpp_no_cpp11")
|
||||
" ISO C++11
|
||||
syn region cString start=+\(L\|u\|u8\|U\|R\|LR\|u8R\|uR\|UR\)\="+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
|
||||
syn region cCppString start=+\(L\|u\|u8\|U\|R\|LR\|u8R\|uR\|UR\)\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,cFormat,@Spell
|
||||
elseif s:ft ==# "c" && !exists("c_no_c11")
|
||||
" ISO C99
|
||||
syn region cString start=+\%(L\|U\|u8\)\="+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
|
||||
syn region cCppString start=+\%(L\|U\|u8\)\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,cFormat,@Spell
|
||||
else
|
||||
" older C or C++
|
||||
syn region cString start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
|
||||
" cCppString: same as cString, but ends at end of line
|
||||
syn region cCppString start=+L\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,cFormat,@Spell
|
||||
endif
|
||||
|
||||
syn region cCppSkip contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppSkip
|
||||
|
||||
syn cluster cStringGroup contains=cCppString,cCppSkip
|
||||
|
||||
syn match cCharacter "L\='[^\\]'"
|
||||
syn match cCharacter "L'[^']*'" contains=cSpecial
|
||||
if exists("c_gnu")
|
||||
@ -70,12 +78,9 @@ syn match cSpecialCharacter display "L\='\\\o\{1,3}'"
|
||||
syn match cSpecialCharacter display "'\\x\x\{1,2}'"
|
||||
syn match cSpecialCharacter display "L'\\x\x\+'"
|
||||
|
||||
if !exists("c_no_c11") " ISO C11
|
||||
if exists("c_no_cformat")
|
||||
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,@Spell extend
|
||||
else
|
||||
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
|
||||
endif
|
||||
if (s:ft ==# "c" && !exists("c_no_c11")) || (s:ft ==# "cpp" && !exists("cpp_no_cpp11"))
|
||||
" ISO C11 or ISO C++ 11
|
||||
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
|
||||
syn match cCharacter "[Uu]'[^\\]'"
|
||||
syn match cCharacter "[Uu]'[^']*'" contains=cSpecial
|
||||
if exists("c_gnu")
|
||||
@ -102,24 +107,24 @@ endif
|
||||
" This should be before cErrInParen to avoid problems with #define ({ xxx })
|
||||
if exists("c_curly_error")
|
||||
syn match cCurlyError "}"
|
||||
syn region cBlock start="{" end="}" contains=ALLBUT,cBadBlock,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell fold
|
||||
syn region cBlock start="{" end="}" contains=ALLBUT,cBadBlock,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,@cStringGroup,@Spell fold
|
||||
else
|
||||
syn region cBlock start="{" end="}" transparent fold
|
||||
endif
|
||||
|
||||
"catch errors caused by wrong parenthesis and brackets
|
||||
" also accept <% for {, %> for }, <: for [ and :> for ] (C99)
|
||||
" Catch errors caused by wrong parenthesis and brackets.
|
||||
" Also accept <% for {, %> for }, <: for [ and :> for ] (C99)
|
||||
" But avoid matching <::.
|
||||
syn cluster cParenGroup contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserLabel,cBitField,cOctalZero,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
|
||||
if exists("c_no_curly_error")
|
||||
if s:ft ==# 'cpp' && !exists("cpp_no_cpp11")
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,@cStringGroup,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
|
||||
syn match cParenError display ")"
|
||||
syn match cErrInParen display contained "^^<%\|^%>"
|
||||
else
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,@cStringGroup,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
|
||||
syn match cParenError display ")"
|
||||
@ -127,13 +132,13 @@ if exists("c_no_curly_error")
|
||||
endif
|
||||
elseif exists("c_no_bracket_error")
|
||||
if s:ft ==# 'cpp' && !exists("cpp_no_cpp11")
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,@cStringGroup,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
|
||||
syn match cParenError display ")"
|
||||
syn match cErrInParen display contained "<%\|%>"
|
||||
else
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,@cStringGroup,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
|
||||
syn match cParenError display ")"
|
||||
@ -141,19 +146,19 @@ elseif exists("c_no_bracket_error")
|
||||
endif
|
||||
else
|
||||
if s:ft ==# 'cpp' && !exists("cpp_no_cpp11")
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,@cStringGroup,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cErrInBracket,cParen,cBracket,cString,@Spell
|
||||
syn match cParenError display "[\])]"
|
||||
syn match cErrInParen display contained "<%\|%>"
|
||||
syn region cBracket transparent start='\[\|<::\@!' end=']\|:>' contains=ALLBUT,@cParenGroup,cErrInParen,cCppParen,cCppBracket,cCppString,@Spell
|
||||
syn region cBracket transparent start='\[\|<::\@!' end=']\|:>' contains=ALLBUT,@cParenGroup,cErrInParen,cCppParen,cCppBracket,@cStringGroup,@Spell
|
||||
else
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,@cStringGroup,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cErrInBracket,cParen,cBracket,cString,@Spell
|
||||
syn match cParenError display "[\])]"
|
||||
syn match cErrInParen display contained "[\]{}]\|<%\|%>"
|
||||
syn region cBracket transparent start='\[\|<::\@!' end=']\|:>' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cErrInParen,cCppParen,cCppBracket,cCppString,@Spell
|
||||
syn region cBracket transparent start='\[\|<::\@!' end=']\|:>' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cErrInParen,cCppParen,cCppBracket,@cStringGroup,@Spell
|
||||
endif
|
||||
" cCppBracket: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppBracket transparent start='\[\|<::\@!' skip='\\$' excludenl end=']\|:>' end='$' contained contains=ALLBUT,@cParenGroup,cErrInParen,cParen,cBracket,cString,@Spell
|
||||
@ -376,7 +381,7 @@ syn region cPreProc start="^\s*\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>
|
||||
" Highlight User Labels
|
||||
syn cluster cMultiGroup contains=cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cCppParen,cCppBracket,cCppString
|
||||
if s:ft ==# 'c' || exists("cpp_no_cpp11")
|
||||
syn region cMulti transparent start='?' skip='::' end=':' contains=ALLBUT,@cMultiGroup,@Spell
|
||||
syn region cMulti transparent start='?' skip='::' end=':' contains=ALLBUT,@cMultiGroup,@Spell,@cStringGroup
|
||||
endif
|
||||
" Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
|
||||
syn cluster cLabelGroup contains=cUserLabel
|
||||
@ -456,8 +461,7 @@ hi def link cTodo Todo
|
||||
hi def link cBadContinuation Error
|
||||
hi def link cCppOutSkip cCppOutIf2
|
||||
hi def link cCppInElse2 cCppOutIf2
|
||||
hi def link cCppOutIf2 cCppOut2 " Old syntax group for #if 0 body
|
||||
hi def link cCppOut2 cCppOut " Old syntax group for #if of #if 0
|
||||
hi def link cCppOutIf2 cCppOut
|
||||
hi def link cCppOut Comment
|
||||
|
||||
let b:current_syntax = "c"
|
||||
|
@ -3,7 +3,7 @@
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
|
||||
" Wichert Akkerman <wakkerma@debian.org>
|
||||
" Last Change: 2014 Jan 20
|
||||
" Last Change: 2014 Jul 11
|
||||
" URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debchangelog.vim
|
||||
|
||||
" Standard syntax initialization
|
||||
@ -19,7 +19,7 @@ syn case ignore
|
||||
" Define some common expressions we can use later on
|
||||
syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ "
|
||||
syn match debchangelogUrgency contained "; urgency=\(low\|medium\|high\|critical\|emergency\)\( \S.*\)\="
|
||||
syn match debchangelogTarget contained "\v %(frozen|unstable|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile)|wheezy-backports|%(lucid|precise|quantal|saucy|trusty)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
|
||||
syn match debchangelogTarget contained "\v %(frozen|unstable|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile)|wheezy-backports|%(devel|lucid|precise|trusty|utopic)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
|
||||
syn match debchangelogVersion contained "(.\{-})"
|
||||
syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*"
|
||||
syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*"
|
||||
|
@ -3,7 +3,7 @@
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
|
||||
" Wichert Akkerman <wakkerma@debian.org>
|
||||
" Last Change: 2013 Oct 28
|
||||
" Last Change: 2014 May 01
|
||||
" URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debcontrol.vim
|
||||
|
||||
" Standard syntax initialization
|
||||
@ -13,6 +13,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Should match case except for the keys of each field
|
||||
syn case match
|
||||
|
||||
@ -23,8 +26,17 @@ syn match debcontrolElse "^.*$"
|
||||
syn match debControlComma ", *"
|
||||
syn match debControlSpace " "
|
||||
|
||||
let s:kernels = '\%(linux\|hurd\|kfreebsd\|knetbsd\|kopensolaris\|netbsd\)'
|
||||
let s:archs = '\%(alpha\|amd64\|armeb\|armel\|armhf\|arm64\|avr32\|hppa\|i386'
|
||||
\ . '\|ia64\|lpia\|m32r\|m68k\|mipsel\|mips\|powerpcspe\|powerpc\|ppc64el'
|
||||
\ . '\|ppc64\|s390x\|s390\|sh3eb\|sh3\|sh4eb\|sh4\|sh\|sparc64\|sparc\|x32\)'
|
||||
let s:pairs = 'hurd-i386\|kfreebsd-i386\|kfreebsd-amd64\|knetbsd-i386\|kopensolaris-i386\|netbsd-alpha\|netbsd-i386'
|
||||
|
||||
" Define some common expressions we can use later on
|
||||
syn match debcontrolArchitecture contained "\%(all\|linux-any\|\%(any-\)\=\%(alpha\|amd64\|arm\%(e[bl]\|hf\|64\)\=\|avr32\|hppa\|i386\|ia64\|lpia\|m32r\|m68k\|mips\%(el\)\=\|powerpc\%(spe\)\=\|ppc64\|s390x\=\|sh[34]\(eb\)\=\|sh\|sparc\%(64\)\=\)\|x32\|hurd-\%(i386\|any\)\|kfreebsd-\%(i386\|amd64\|any\)\|knetbsd-\%(i386\|any\)\|kopensolaris-\%(i386\|any\)\|netbsd-\%(alpha\|i386\|any\)\|any\)"
|
||||
exe 'syn match debcontrolArchitecture contained "\%(all\|'. s:kernels .'-any\|\%(any-\)\='. s:archs .'\|'. s:pairs .'\|any\)"'
|
||||
|
||||
unlet s:kernels s:archs s:pairs
|
||||
|
||||
syn match debcontrolMultiArch contained "\%(no\|foreign\|allowed\|same\)"
|
||||
syn match debcontrolName contained "[a-z0-9][a-z0-9+.-]\+"
|
||||
syn match debcontrolPriority contained "\(extra\|important\|optional\|required\|standard\)"
|
||||
@ -108,4 +120,7 @@ endif
|
||||
|
||||
let b:current_syntax = "debcontrol"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8 sw=2
|
||||
|
@ -2,7 +2,7 @@
|
||||
" Language: Debian sources.list
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
|
||||
" Last Change: 2014 Jan 20
|
||||
" Last Change: 2014 Jul 11
|
||||
" URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debsources.vim
|
||||
|
||||
" Standard syntax initialization
|
||||
@ -23,7 +23,7 @@ syn match debsourcesComment /#.*/ contains=@Spell
|
||||
|
||||
" Match uri's
|
||||
syn match debsourcesUri +\(http://\|ftp://\|[rs]sh://\|debtorrent://\|\(cdrom\|copy\|file\):\)[^' <>"]\++
|
||||
syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\(squeeze\|wheezy\|\(old\)\=stable\|testing\|unstable\|sid\|rc-buggy\|experimental\|lucid\|precise\|quantal\|saucy\|trusty\)\([-[:alnum:]_./]*\)+
|
||||
syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\(squeeze\|wheezy\|jessie\|\(old\)\=stable\|testing\|unstable\|sid\|rc-buggy\|experimental\|devel\|lucid\|precise\|trusty\|utopic\)\([-[:alnum:]_./]*\)+
|
||||
|
||||
" Associate our matches and regions with pretty colours
|
||||
hi def link debsourcesLine Error
|
||||
|
@ -2,7 +2,7 @@
|
||||
" Language: Diff (context or unified)
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Translations by Jakson Alves de Aquino.
|
||||
" Last Change: 2013 Oct 06
|
||||
" Last Change: 2014 Nov 12
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@ -125,7 +125,7 @@ syn match diffIdentical "^םיהז םניה .*-ו .* םיצבקה$"
|
||||
syn match diffDiffer "^הזמ הז םינוש `.*'-ו `.*' םיצבקה$"
|
||||
syn match diffBDiffer "^הזמ הז םינוש `.*'-ו `.*' םיירניב םיצבק$"
|
||||
syn match diffIsA "^.* .*-ל .* .* תוושהל ןתינ אל$"
|
||||
syn match diffNoEOL "^\\ ץבוקה ףוסב השדח-הרוש ות רסח"
|
||||
syn match diffNoEOL "^\\ ץבוקה ףוסב השד.-הרוש ות רס."
|
||||
syn match diffCommon "^.*-ו .* :תוהז תויקית-תת$"
|
||||
|
||||
" hr
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Django template
|
||||
" Maintainer: Dave Hodder <dmh@dmh.org.uk>
|
||||
" Last Change: 2012 Apr 09
|
||||
" Last Change: 2014 Jul 13
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@ -64,7 +64,7 @@ syn region djangoTagBlock start="{%" end="%}" contains=djangoStatement,djangoFil
|
||||
syn region djangoVarBlock start="{{" end="}}" contains=djangoFilter,djangoArgument,djangoVarError display
|
||||
|
||||
" Django template 'comment' tag and comment block
|
||||
syn region djangoComment start="{%\s*comment\s*%}" end="{%\s*endcomment\s*%}" contains=djangoTodo
|
||||
syn region djangoComment start="{%\s*comment\(\s\+.\{-}\)\?%}" end="{%\s*endcomment\s*%}" contains=djangoTodo
|
||||
syn region djangoComBlock start="{#" end="#}" contains=djangoTodo
|
||||
|
||||
" Define the default highlighting.
|
||||
|
24
runtime/syntax/dockerfile.vim
Normal file
24
runtime/syntax/dockerfile.vim
Normal file
@ -0,0 +1,24 @@
|
||||
" dockerfile.vim - Syntax highlighting for Dockerfiles
|
||||
" Maintainer: Honza Pokorny <http://honza.ca>
|
||||
" Version: 0.5
|
||||
" Last Change: 2014 Aug 29
|
||||
" License: BSD
|
||||
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let b:current_syntax = "dockerfile"
|
||||
|
||||
syntax case ignore
|
||||
|
||||
syntax match dockerfileKeyword /\v^\s*(ONBUILD\s+)?(ADD|CMD|ENTRYPOINT|ENV|EXPOSE|FROM|MAINTAINER|RUN|USER|VOLUME|WORKDIR|COPY)\s/
|
||||
|
||||
syntax region dockerfileString start=/\v"/ skip=/\v\\./ end=/\v"/
|
||||
|
||||
syntax match dockerfileComment "\v^\s*#.*$"
|
||||
|
||||
hi def link dockerfileString String
|
||||
hi def link dockerfileKeyword Keyword
|
||||
hi def link dockerfileComment Comment
|
@ -1,176 +1,505 @@
|
||||
" Vim syntax file
|
||||
" Language: gnuplot 3.8i.0
|
||||
" Maintainer: John Hoelzel johnh51@users.sourceforge.net
|
||||
" Last Change: Mon May 26 02:33:33 UTC 2003
|
||||
" Filenames: *.gpi *.gih scripts: #!*gnuplot
|
||||
" URL: http://johnh51.get.to/vim/syntax/gnuplot.vim
|
||||
"
|
||||
" Language: gnuplot 4.7.0
|
||||
" Maintainer: Andrew Rasmussen andyras@users.sourceforge.net
|
||||
" Original Maintainer: John Hoelzel johnh51@users.sourceforge.net
|
||||
" Last Change: 2014-02-24
|
||||
" Filenames: *.gnu *.plt *.gpi *.gih *.gp *.gnuplot scripts: #!*gnuplot
|
||||
" URL: http://www.vim.org/scripts/script.php?script_id=4873
|
||||
" Original URL: http://johnh51.get.to/vim/syntax/gnuplot.vim
|
||||
|
||||
" thanks to "David Necas (Yeti)" <yeti@physics.muni.cz> for heads up - working on more changes .
|
||||
" *.gpi = GnuPlot Input - what I use because there is no other guideline. jeh 11/2000
|
||||
" *.gih = makes using cut/pasting from gnuplot.gih easier ...
|
||||
" #!*gnuplot = for Linux bash shell scripts of gnuplot commands.
|
||||
" emacs used a suffix of '<gp?>'
|
||||
" gnuplot demo files show no preference.
|
||||
" I will post mail and newsgroup comments on a standard suffix in 'URL' directory.
|
||||
" thanks to "David Necas (Yeti)" <yeti@physics.muni.cz>
|
||||
|
||||
" credit also to Jim Eberle <jim.eberle@fastnlight.com>
|
||||
" for the script http://www.vim.org/scripts/script.php?script_id=1737
|
||||
|
||||
" some shortened names to make demo files look clean... jeh. 11/2000
|
||||
" demos -> 3.8i ... jeh. 5/2003 - a work in progress...
|
||||
" added current commands, keywords, variables, todos, macros... amr 2014-02-24
|
||||
|
||||
" For vim version 5.x: Clear all syntax items
|
||||
" For vim version 6.x: Quit when a syntax file was already loaded
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" some shortened names to make demo files look clean... jeh. 11/2000
|
||||
" demos -> 3.8i ... jeh. 5/2003 - a work in progress...
|
||||
" ---- Special characters ---- "
|
||||
|
||||
" commands
|
||||
" no harm in just matching any \[char] within double quotes, right?
|
||||
syn match gnuplotSpecial "\\." contained
|
||||
" syn match gnuplotSpecial "\\\o\o\o\|\\x\x\x\|\\c[^"]\|\\[a-z\\]" contained
|
||||
|
||||
syn keyword gnuplotStatement cd call clear exit set unset plot splot help
|
||||
syn keyword gnuplotStatement load pause quit fit rep[lot] if
|
||||
syn keyword gnuplotStatement FIT_LIMIT FIT_MAXITER FIT_START_LAMBDA
|
||||
syn keyword gnuplotStatement FIT_LAMBDA_FACTOR FIT_LOG FIT_SCRIPT
|
||||
syn keyword gnuplotStatement print pwd reread reset save show test ! functions var
|
||||
syn keyword gnuplotConditional if
|
||||
" if is cond + stmt - ok?
|
||||
" measurements in the units in, cm and pt are special
|
||||
syn match gnuplotUnit "[0-9]+in"
|
||||
syn match gnuplotUnit "[0-9]+cm"
|
||||
syn match gnuplotUnit "[0-9]+pt"
|
||||
|
||||
" numbers fm c.vim
|
||||
" external (shell) commands are special
|
||||
syn region gnuplotExternal start="!" end="$"
|
||||
|
||||
" integer number, or floating point number without a dot and with "f".
|
||||
" ---- Comments ---- "
|
||||
|
||||
syn region gnuplotComment start="#" end="$" contains=gnuplotTodo
|
||||
|
||||
" ---- Constants ---- "
|
||||
|
||||
" strings
|
||||
syn region gnuplotString start=+"+ skip=+\\"+ end=+"+ contains=gnuplotSpecial
|
||||
syn region gnuplotString start="'" end="'"
|
||||
|
||||
" built-in variables
|
||||
syn keyword gnuplotNumber GNUTERM GPVAL_TERM GPVAL_TERMOPTIONS GPVAL_SPLOT
|
||||
syn keyword gnuplotNumber GPVAL_OUTPUT GPVAL_ENCODING GPVAL_VERSION
|
||||
syn keyword gnuplotNumber GPVAL_PATCHLEVEL GPVAL_COMPILE_OPTIONS
|
||||
syn keyword gnuplotNumber GPVAL_MULTIPLOT GPVAL_PLOT GPVAL_VIEW_ZSCALE
|
||||
syn keyword gnuplotNumber GPVAL_TERMINALS GPVAL_pi GPVAL_NaN
|
||||
syn keyword gnuplotNumber GPVAL_ERRNO GPVAL_ERRMSG GPVAL_PWD
|
||||
syn keyword gnuplotNumber pi NaN GPVAL_LAST_PLOT GPVAL_TERM_WINDOWID
|
||||
syn keyword gnuplotNumber GPVAL_X_MIN GPVAL_X_MAX GPVAL_X_LOG
|
||||
syn keyword gnuplotNumber GPVAL_DATA_X_MIN GPVAL_DATA_X_MAX GPVAL_Y_MIN
|
||||
syn keyword gnuplotNumber GPVAL_Y_MAX GPVAL_Y_LOG GPVAL_DATA_Y_MIN
|
||||
syn keyword gnuplotNumber GPVAL_DATA_Y_MAX GPVAL_X2_MIN GPVAL_X2_MAX
|
||||
syn keyword gnuplotNumber GPVAL_X2_LOG GPVAL_DATA_X2_MIN GPVAL_DATA_X2_MAX
|
||||
syn keyword gnuplotNumber GPVAL_Y2_MIN GPVAL_Y2_MAX GPVAL_Y2_LOG
|
||||
syn keyword gnuplotNumber GPVAL_DATA_Y2_MIN GPVAL_DATA_Y2_MAX GPVAL_Z_MIN
|
||||
syn keyword gnuplotNumber GPVAL_Z_MAX GPVAL_Z_LOG GPVAL_DATA_Z_MIN
|
||||
syn keyword gnuplotNumber GPVAL_DATA_Z_MAX GPVAL_CB_MIN GPVAL_CB_MAX
|
||||
syn keyword gnuplotNumber GPVAL_CB_LOG GPVAL_DATA_CB_MIN GPVAL_DATA_CB_MAX
|
||||
syn keyword gnuplotNumber GPVAL_T_MIN GPVAL_T_MAX GPVAL_T_LOG GPVAL_U_MIN
|
||||
syn keyword gnuplotNumber GPVAL_U_MAX GPVAL_U_LOG GPVAL_V_MIN GPVAL_V_MAX
|
||||
syn keyword gnuplotNumber GPVAL_V_LOG GPVAL_R_MIN GPVAL_R_LOG
|
||||
syn keyword gnuplotNumber GPVAL_TERM_XMIN GPVAL_TERM_XMAX GPVAL_TERM_YMIN
|
||||
syn keyword gnuplotNumber GPVAL_TERM_YMAX GPVAL_TERM_XSIZE
|
||||
syn keyword gnuplotNumber GPVAL_TERM_YSIZE GPVAL_VIEW_MAP GPVAL_VIEW_ROT_X
|
||||
syn keyword gnuplotNumber GPVAL_VIEW_ROT_Z GPVAL_VIEW_SCALE
|
||||
|
||||
" function name variables
|
||||
syn match gnuplotNumber "GPFUN_[a-zA-Z_]*"
|
||||
|
||||
" stats variables
|
||||
syn keyword gnuplotNumber STATS_records STATS_outofrange STATS_invalid
|
||||
syn keyword gnuplotNumber STATS_blank STATS_blocks STATS_columns STATS_min
|
||||
syn keyword gnuplotNumber STATS_max STATS_index_min STATS_index_max
|
||||
syn keyword gnuplotNumber STATS_lo_quartile STATS_median STATS_up_quartile
|
||||
syn keyword gnuplotNumber STATS_mean STATS_stddev STATS_sum STATS_sumsq
|
||||
syn keyword gnuplotNumber STATS_correlation STATS_slope STATS_intercept
|
||||
syn keyword gnuplotNumber STATS_sumxy STATS_pos_min_y STATS_pos_max_y
|
||||
syn keyword gnuplotNumber STATS_mean STATS_stddev STATS_mean_x STATS_sum_x
|
||||
syn keyword gnuplotNumber STATS_stddev_x STATS_sumsq_x STATS_min_x
|
||||
syn keyword gnuplotNumber STATS_max_x STATS_median_x STATS_lo_quartile_x
|
||||
syn keyword gnuplotNumber STATS_up_quartile_x STATS_index_min_x
|
||||
syn keyword gnuplotNumber STATS_index_max_x STATS_mean_y STATS_stddev_y
|
||||
syn keyword gnuplotNumber STATS_sum_y STATS_sumsq_y STATS_min_y
|
||||
syn keyword gnuplotNumber STATS_max_y STATS_median_y STATS_lo_quartile_y
|
||||
syn keyword gnuplotNumber STATS_up_quartile_y STATS_index_min_y
|
||||
syn keyword gnuplotNumber STATS_index_max_y STATS_correlation STATS_sumxy
|
||||
|
||||
" deprecated fit variables
|
||||
syn keyword gnuplotError FIT_LIMIT FIT_MAXITER FIT_START_LAMBDA
|
||||
syn keyword gnuplotError FIT_LAMBDA_FACTOR FIT_LOG FIT_SCRIPT
|
||||
|
||||
" numbers, from c.vim
|
||||
|
||||
" integer number, or floating point number without a dot and with "f".
|
||||
syn case ignore
|
||||
syn match gnuplotNumber "\<[0-9]\+\(u\=l\=\|lu\|f\)\>"
|
||||
" floating point number, with dot, optional exponent
|
||||
|
||||
" floating point number, with dot, optional exponent
|
||||
syn match gnuplotFloat "\<[0-9]\+\.[0-9]*\(e[-+]\=[0-9]\+\)\=[fl]\=\>"
|
||||
" floating point number, starting with a dot, optional exponent
|
||||
|
||||
" floating point number, starting with a dot, optional exponent
|
||||
syn match gnuplotFloat "\.[0-9]\+\(e[-+]\=[0-9]\+\)\=[fl]\=\>"
|
||||
" floating point number, without dot, with exponent
|
||||
|
||||
" floating point number, without dot, with exponent
|
||||
syn match gnuplotFloat "\<[0-9]\+e[-+]\=[0-9]\+[fl]\=\>"
|
||||
" hex number
|
||||
|
||||
" hex number
|
||||
syn match gnuplotNumber "\<0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
|
||||
syn case match
|
||||
" flag an octal number with wrong digits by not hilighting
|
||||
|
||||
" flag an octal number with wrong digits by not highlighting
|
||||
syn match gnuplotOctalError "\<0[0-7]*[89]"
|
||||
|
||||
" plot args
|
||||
" ---- Identifiers: Functions ---- "
|
||||
|
||||
syn keyword gnuplotType u[sing] tit[le] notit[le] wi[th] steps fs[teps]
|
||||
syn keyword gnuplotType title notitle t
|
||||
syn keyword gnuplotType with w
|
||||
syn keyword gnuplotType li[nes] l
|
||||
" t - too much? w - too much? l - too much?
|
||||
syn keyword gnuplotType linespoints via
|
||||
" numerical functions
|
||||
syn keyword gnuplotFunc abs acos acosh airy arg asin asinh atan atan2
|
||||
syn keyword gnuplotFunc atanh EllipticK EllipticE EllipticPi besj0 besj1
|
||||
syn keyword gnuplotFunc besy0 besy1 ceil cos cosh erf erfc exp expint
|
||||
syn keyword gnuplotFunc floor gamma ibeta inverf igamma imag invnorm int
|
||||
syn keyword gnuplotFunc lambertw lgamma log log10 norm rand real sgn sin
|
||||
syn keyword gnuplotFunc sin sinh sqrt tan tanh voigt
|
||||
|
||||
" funcs
|
||||
" string functions
|
||||
syn keyword gnuplotFunc gprintf sprintf strlen strstrt substr strftime
|
||||
syn keyword gnuplotFunc strptime system word words
|
||||
|
||||
syn keyword gnuplotFunc abs acos acosh arg asin asinh atan atanh atan2
|
||||
syn keyword gnuplotFunc besj0 besj1 besy0 besy1
|
||||
syn keyword gnuplotFunc ceil column cos cosh erf erfc exp floor gamma
|
||||
syn keyword gnuplotFunc ibeta inverf igamma imag invnorm int lgamma
|
||||
syn keyword gnuplotFunc log log10 norm rand real sgn sin sinh sqrt tan
|
||||
syn keyword gnuplotFunc lambertw
|
||||
syn keyword gnuplotFunc tanh valid
|
||||
syn keyword gnuplotFunc tm_hour tm_mday tm_min tm_mon tm_sec
|
||||
syn keyword gnuplotFunc tm_wday tm_yday tm_year
|
||||
" other functions
|
||||
syn keyword gnuplotFunc column columnhead columnheader defined exists
|
||||
syn keyword gnuplotFunc hsv2rgb stringcolumn timecolumn tm_hour tm_mday
|
||||
syn keyword gnuplotFunc tm_min tm_mon tm_sec tm_wday tm_yday tm_year
|
||||
syn keyword gnuplotFunc time valid value
|
||||
|
||||
" set vars
|
||||
" ---- Statements ---- "
|
||||
|
||||
syn keyword gnuplotType xdata timefmt grid noytics ytics fs
|
||||
syn keyword gnuplotType logscale time notime mxtics nomxtics style mcbtics
|
||||
syn keyword gnuplotType nologscale
|
||||
syn keyword gnuplotType axes x1y2 unique acs[plines]
|
||||
syn keyword gnuplotType size origin multiplot xtics xr[ange] yr[ange] square nosquare ratio noratio
|
||||
syn keyword gnuplotType binary matrix index every thru sm[ooth]
|
||||
syn keyword gnuplotType all angles degrees radians
|
||||
syn keyword gnuplotType arrow noarrow autoscale noautoscale arrowstyle
|
||||
" autoscale args = x y xy z t ymin ... - too much?
|
||||
" needs code to: using title vs autoscale t
|
||||
syn keyword gnuplotType x y z zcb
|
||||
syn keyword gnuplotType linear cubicspline bspline order level[s]
|
||||
syn keyword gnuplotType auto disc[rete] incr[emental] from to head nohead
|
||||
syn keyword gnuplotType graph base both nosurface table out[put] data
|
||||
syn keyword gnuplotType bar border noborder boxwidth
|
||||
syn keyword gnuplotType clabel noclabel clip noclip cntrp[aram]
|
||||
syn keyword gnuplotType contour nocontour
|
||||
syn keyword gnuplotType dgrid3d nodgrid3d dummy encoding format
|
||||
" set encoding args not included - yet.
|
||||
syn keyword gnuplotType function grid nogrid hidden[3d] nohidden[3d] isosample[s] key nokey
|
||||
syn keyword gnuplotType historysize nohistorysize
|
||||
syn keyword gnuplotType defaults offset nooffset trianglepattern undefined noundefined altdiagonal bentover noaltdiagonal nobentover
|
||||
syn keyword gnuplotType left right top bottom outside below samplen spacing width height box nobox linestyle ls linetype lt linewidth lw
|
||||
syn keyword gnuplotType Left Right autotitles noautotitles enhanced noenhanced
|
||||
syn keyword gnuplotType isosamples
|
||||
syn keyword gnuplotType label nolabel logscale nolog[scale] missing center font locale
|
||||
syn keyword gnuplotType mapping margin bmargin lmargin rmargin tmargin spherical cylindrical cartesian
|
||||
syn keyword gnuplotType linestyle nolinestyle linetype lt linewidth lw pointtype pt pointsize ps
|
||||
syn keyword gnuplotType mouse nomouse
|
||||
syn keyword gnuplotType nooffsets data candlesticks financebars linespoints lp vector nosurface
|
||||
syn keyword gnuplotType term[inal] linux aed767 aed512 gpic
|
||||
syn keyword gnuplotType regis tek410x tek40 vttek kc-tek40xx
|
||||
syn keyword gnuplotType km-tek40xx selanar bitgraph xlib x11 X11
|
||||
" x11 args
|
||||
syn keyword gnuplotType aifm cgm dumb fig gif small large size nofontlist winword6 corel dxf emf
|
||||
syn keyword gnuplotType hpgl
|
||||
" syn keyword gnuplotType transparent hp2623a hp2648 hp500c pcl5 why jeh
|
||||
syn keyword gnuplotType hp2623a hp2648 hp500c pcl5
|
||||
syn match gnuplotType "\<transparent\>"
|
||||
syn keyword gnuplotType hpljii hpdj hppj imagen mif pbm png svg
|
||||
syn keyword gnuplotType postscript enhanced_postscript qms table
|
||||
" postscript editing values?
|
||||
syn keyword gnuplotType tgif tkcanvas epson-180dpi epson-60dpi
|
||||
syn keyword gnuplotType epson-lx800 nec-cp6 okidata starc
|
||||
syn keyword gnuplotType tandy-60dpi latex emtex pslatex pstex epslatex
|
||||
syn keyword gnuplotType eepic tpic pstricks texdraw mf metafont mpost mp
|
||||
syn keyword gnuplotType timestamp notimestamp
|
||||
syn keyword gnuplotType variables version
|
||||
syn keyword gnuplotType x2data y2data ydata zdata
|
||||
syn keyword gnuplotType reverse writeback noreverse nowriteback
|
||||
syn keyword gnuplotType axis mirror autofreq nomirror rotate autofreq norotate
|
||||
syn keyword gnuplotType update
|
||||
syn keyword gnuplotType multiplot nomultiplot mytics
|
||||
syn keyword gnuplotType nomytics mztics nomztics mx2tics nomx2tics
|
||||
syn keyword gnuplotType my2tics nomy2tics offsets origin output
|
||||
syn keyword gnuplotType para[metric] nopara[metric] pointsize polar nopolar
|
||||
syn keyword gnuplotType zrange x2range y2range rrange cbrange
|
||||
syn keyword gnuplotType trange urange vrange sample[s] size
|
||||
syn keyword gnuplotType bezier boxerrorbars boxes bargraph bar[s]
|
||||
syn keyword gnuplotType boxxy[errorbars] csplines dots fsteps histeps impulses
|
||||
syn keyword gnuplotType line[s] linesp[oints] points poiinttype sbezier splines steps
|
||||
" w lt lw ls = optional
|
||||
syn keyword gnuplotType vectors xerr[orbars] xyerr[orbars] yerr[orbars] financebars candlesticks vector
|
||||
syn keyword gnuplotType errorb[ars] surface
|
||||
syn keyword gnuplotType filledcurve[s] pm3d x1 x2 y1 y2 xy closed
|
||||
syn keyword gnuplotType at pi front
|
||||
syn keyword gnuplotType errorlines xerrorlines yerrorlines xyerrorlines
|
||||
syn keyword gnuplotType tics ticslevel ticscale time timefmt view
|
||||
syn keyword gnuplotType xdata xdtics noxdtics ydtics noydtics
|
||||
syn keyword gnuplotType zdtics nozdtics x2dtics nox2dtics y2dtics noy2dtics
|
||||
syn keyword gnuplotType xlab[el] ylab[el] zlab[el] cblab[el] x2label y2label xmtics
|
||||
syn keyword gnuplotType xmtics noxmtics ymtics noymtics zmtics nozmtics
|
||||
syn keyword gnuplotType x2mtics nox2mtics y2mtics noy2mtics
|
||||
syn keyword gnuplotType cbdtics nocbdtics cbmtics nocbmtics cbtics nocbtics
|
||||
syn keyword gnuplotType xtics noxtics ytics noytics
|
||||
syn keyword gnuplotType ztics noztics x2tics nox2tics
|
||||
syn keyword gnuplotType y2tics noy2tics zero nozero zeroaxis nozeroaxis
|
||||
syn keyword gnuplotType xzeroaxis noxzeroaxis yzeroaxis noyzeroaxis
|
||||
syn keyword gnuplotType x2zeroaxis nox2zeroaxis y2zeroaxis noy2zeroaxis
|
||||
syn keyword gnuplotType angles one two fill empty solid pattern
|
||||
syn keyword gnuplotType default
|
||||
syn keyword gnuplotType scansautomatic flush b[egin] noftriangles implicit
|
||||
" b too much? - used in demo
|
||||
syn keyword gnuplotType palette positive negative ps_allcF nops_allcF maxcolors
|
||||
syn keyword gnuplotType push fontfile pop
|
||||
syn keyword gnuplotType rgbformulae defined file color model gradient colornames
|
||||
syn keyword gnuplotType RGB HSV CMY YIQ XYZ
|
||||
syn keyword gnuplotType colorbox vertical horizontal user bdefault
|
||||
syn keyword gnuplotType loadpath fontpath decimalsign in out
|
||||
" common (builtin) variable names
|
||||
syn keyword gnuplotKeyword x y t u v z s
|
||||
|
||||
" comments + strings
|
||||
syn region gnuplotComment start="#" end="$"
|
||||
syn region gnuplotComment start=+"+ skip=+\\"+ end=+"+
|
||||
syn region gnuplotComment start=+'+ end=+'+
|
||||
" conditionals
|
||||
syn keyword gnuplotConditional if else
|
||||
|
||||
" Define the default highlighting.
|
||||
" repeats
|
||||
syn keyword gnuplotRepeat do for while
|
||||
|
||||
" operators
|
||||
syn match gnuplotOperator "[-+*/^|&?:]"
|
||||
syn match gnuplotOperator "\*\*"
|
||||
syn match gnuplotOperator "&&"
|
||||
syn match gnuplotOperator "||"
|
||||
|
||||
" Keywords
|
||||
|
||||
" keywords for 'fit' command
|
||||
syn keyword gnuplotKeyword via z x:z x:z:s x:y:z:s
|
||||
syn keyword gnuplotKeyword x:y:t:z:s x:y:t:u:z:s x:y:t:u:v:z:s
|
||||
|
||||
" keywords for 'plot' command
|
||||
" 'axes' keyword
|
||||
syn keyword gnuplotKeyword axes x1y1 x1y2 x2y1 x2y2
|
||||
" 'binary' keyword
|
||||
syn keyword gnuplotKeyword binary matrix general array record format endian
|
||||
syn keyword gnuplotKeyword filetype avs edf png scan transpose dx dy dz
|
||||
syn keyword gnuplotKeyword flipx flipy flipz origin center rotate using
|
||||
syn keyword gnuplotKeyword perpendicular skip every
|
||||
" datafile keywords
|
||||
syn keyword gnuplotKeyword binary nonuniform matrix index every using
|
||||
syn keyword gnuplotKeyword smooth volatile noautoscale every index
|
||||
" 'smooth' keywords
|
||||
syn keyword gnuplotKeyword unique frequency cumulative cnormal kdensity
|
||||
syn keyword gnuplotKeyword csplines acsplines bezer sbezier
|
||||
" deprecated 'thru' keyword
|
||||
syn keyword gnuplotError thru
|
||||
" 'using' keyword
|
||||
syn keyword gnuplotKeyword using u xticlabels yticlabels zticlabels
|
||||
syn keyword gnuplotKeyword x2ticlabels y2ticlabels xtic ytic ztic
|
||||
" 'errorbars' keywords
|
||||
syn keyword gnuplotKeyword errorbars xerrorbars yerrorbars xyerrorbars
|
||||
" 'errorlines' keywords
|
||||
syn keyword gnuplotKeyword errorlines xerrorlines yerrorlines xyerrorlines
|
||||
" 'title' keywords
|
||||
syn keyword gnuplotKeyword title t tit notitle columnheader at beginning
|
||||
syn keyword gnuplotKeyword end
|
||||
" 'with' keywords
|
||||
syn keyword gnuplotKeyword with w linestyle ls linetype lt linewidth
|
||||
syn keyword gnuplotKeyword lw linecolor lc pointtype pt pointsize ps
|
||||
syn keyword gnuplotKeyword fill fs nohidden3d nocontours nosurface palette
|
||||
" styles for 'with'
|
||||
syn keyword gnuplotKeyword lines l points p linespoints lp surface dots
|
||||
syn keyword gnuplotKeyword impulses labels vectors steps fsteps histeps
|
||||
syn keyword gnuplotKeyword errorbars errorlines financebars xerrorbars
|
||||
syn keyword gnuplotKeyword xerrorlines xyerrorbars yerrorbars yerrorlines
|
||||
syn keyword gnuplotKeyword boxes boxerrorbars boxxyerrorbars boxplot
|
||||
syn keyword gnuplotKeyword candlesticks circles ellipses filledcurves
|
||||
syn keyword gnuplotKeyword histogram image rgbimage rgbalpha pm3d variable
|
||||
|
||||
" keywords for 'save' command
|
||||
syn keyword gnuplotKeyword save functions func variables all var terminal
|
||||
syn keyword gnuplotKeyword term set
|
||||
|
||||
" keywords for 'set/show' command
|
||||
" set angles
|
||||
syn keyword gnuplotKeyword angles degrees deg radians rad
|
||||
" set arrow
|
||||
syn keyword gnuplotKeyword arrow from to rto length angle arrowstyle as
|
||||
syn keyword gnuplotKeyword nohead head backhead heads size filled empty
|
||||
syn keyword gnuplotKeyword nofilled front back linestyle linetype linewidth
|
||||
" set autoscale
|
||||
" TODO regexp here
|
||||
syn keyword gnuplotKeyword autoscale x y z cb x2 y2 zy min max fixmin
|
||||
syn keyword gnuplotKeyword fixmax fix keepfix noextend
|
||||
" set bars
|
||||
syn keyword gnuplotKeyword bars small large fullwidth front back
|
||||
" set bind
|
||||
syn keyword gnuplotKeyword bind
|
||||
" set margins
|
||||
" TODO regexp
|
||||
syn keyword gnuplotKeyword margin bmargin lmargin rmargin tmargin
|
||||
" set border
|
||||
syn keyword gnuplotKeyword border front back
|
||||
" set boxwidth
|
||||
syn keyword gnuplotKeyword boxwidth absolute relative
|
||||
" deprecated set clabel
|
||||
syn keyword gnuplotError clabel
|
||||
" set clip
|
||||
syn keyword gnuplotKeyword clip points one two
|
||||
" set cntrlabel
|
||||
syn keyword gnuplotKeyword cntrlabel format font start interval onecolor
|
||||
" set cntrparam
|
||||
syn keyword gnuplotKeyword cntrparam linear cubicspline bspline points
|
||||
syn keyword gnuplotKeyword order levels auto discrete incremental
|
||||
" set colorbox
|
||||
syn keyword gnuplotKeyword colorbox vertical horizontal default user origin
|
||||
syn keyword gnuplotKeyword size front back noborder bdefault border
|
||||
" show colornames
|
||||
syn keyword gnuplotKeyword colornames
|
||||
" set contour
|
||||
syn keyword gnuplotKeyword contour base surface both
|
||||
" set datafile
|
||||
syn keyword gnuplotKeyword datafile fortran nofpe_trap missing separator
|
||||
syn keyword gnuplotKeyword whitespace tab comma commentschars binary
|
||||
" set decimalsign
|
||||
syn keyword gnuplotKeyword decimalsign locale
|
||||
" set dgrid3d
|
||||
syn keyword gnuplotKeyword dgrid3d splines qnorm gauss cauchy exp box hann
|
||||
syn keyword gnuplotKeyword kdensity
|
||||
" set dummy
|
||||
syn keyword gnuplotKeyword dummy
|
||||
" set encoding
|
||||
syn keyword gnuplotKeyword encoding default iso_8859_1 iso_8859_15
|
||||
syn keyword gnuplotKeyword iso_8859_2 iso_8859_9 koi8r koi8u cp437 cp850
|
||||
syn keyword gnuplotKeyword cp852 cp950 cp1250 cp1251 cp1254 sjis utf8
|
||||
" set fit
|
||||
syn keyword gnuplotKeyword fit logfile default quiet noquiet results brief
|
||||
syn keyword gnuplotKeyword verbose errorvariables noerrorvariables
|
||||
syn keyword gnuplotKeyword errorscaling noerrorscaling prescale noprescale
|
||||
syn keyword gnuplotKeyword maxiter none limit limit_abs start-lambda script
|
||||
syn keyword gnuplotKeyword lambda-factor
|
||||
" set fontpath
|
||||
syn keyword gnuplotKeyword fontpath
|
||||
" set format
|
||||
syn keyword gnuplotKeyword format
|
||||
" show functions
|
||||
syn keyword gnuplotKeyword functions
|
||||
" set grid
|
||||
syn keyword gnuplotKeyword grid polar layerdefault xtics ytics ztics x2tics
|
||||
syn keyword gnuplotKeyword y2tics cbtics mxtics mytics mztics mx2tics
|
||||
syn keyword gnuplotKeyword my2tics mcbtics xmtics ymtics zmtics x2mtics
|
||||
syn keyword gnuplotKeyword y2mtics cbmtics noxtics noytics noztics nox2tics
|
||||
syn keyword gnuplotKeyword noy2tics nocbtics nomxtics nomytics nomztics
|
||||
syn keyword gnuplotKeyword nomx2tics nomy2tics nomcbtics
|
||||
" set hidden3d
|
||||
syn keyword gnuplotKeyword hidden3d offset trianglepattern undefined
|
||||
syn keyword gnuplotKeyword altdiagonal noaltdiagonal bentover nobentover
|
||||
syn keyword gnuplotKeyword noundefined
|
||||
" set historysize
|
||||
syn keyword gnuplotKeyword historysize
|
||||
" set isosamples
|
||||
syn keyword gnuplotKeyword isosamples
|
||||
" set key
|
||||
syn keyword gnuplotKeyword key on off inside outside at left right center
|
||||
syn keyword gnuplotKeyword top bottom vertical horizontal Left Right
|
||||
syn keyword gnuplotKeyword opaque noopaque reverse noreverse invert maxrows
|
||||
syn keyword gnuplotKeyword noinvert samplen spacing width height autotitle
|
||||
syn keyword gnuplotKeyword noautotitle title enhanced noenhanced font
|
||||
syn keyword gnuplotKeyword textcolor box nobox linetype linewidth maxcols
|
||||
" set label
|
||||
syn keyword gnuplotKeyword label left center right rotate norotate by font
|
||||
syn keyword gnuplotKeyword front back textcolor point nopoint offset boxed
|
||||
syn keyword gnuplotKeyword hypertext
|
||||
" set linetype
|
||||
syn keyword gnuplotKeyword linetype
|
||||
" set link
|
||||
syn keyword gnuplotKeyword link via inverse
|
||||
" set loadpath
|
||||
syn keyword gnuplotKeyword loadpath
|
||||
" set locale
|
||||
syn keyword gnuplotKeyword locale
|
||||
" set logscale
|
||||
syn keyword gnuplotKeyword logscale log
|
||||
" set macros
|
||||
syn keyword gnuplotKeyword macros
|
||||
" set mapping
|
||||
syn keyword gnuplotKeyword mapping cartesian spherical cylindrical
|
||||
" set mouse
|
||||
syn keyword gnuplotKeyword mouse doubleclick nodoubleclick zoomcoordinates
|
||||
syn keyword gnuplotKeyword nozoomcoordinates ruler noruler at polardistance
|
||||
syn keyword gnuplotKeyword nopolardistance deg tan format clipboardformat
|
||||
syn keyword gnuplotKeyword mouseformat labels nolabels zoomjump nozoomjump
|
||||
syn keyword gnuplotKeyword verbose noverbose
|
||||
" set multiplot
|
||||
syn keyword gnuplotKeyword multiplot title font layout rowsfirst downwards
|
||||
syn keyword gnuplotKeyword downwards upwards scale offset
|
||||
" set object
|
||||
syn keyword gnuplotKeyword object behind fillcolor fc fs rectangle ellipse
|
||||
syn keyword gnuplotKeyword circle polygon at center size units xy xx yy to
|
||||
syn keyword gnuplotKeyword from
|
||||
" set offsets
|
||||
syn keyword gnuplotKeyword offsets
|
||||
" set origin
|
||||
syn keyword gnuplotKeyword origin
|
||||
" set output
|
||||
syn keyword gnuplotKeyword output
|
||||
" set parametric
|
||||
syn keyword gnuplotKeyword parametric
|
||||
" show plot
|
||||
syn keyword gnuplotKeyword plot add2history
|
||||
" set pm3d
|
||||
syn keyword gnuplotKeyword hidden3d interpolate scansautomatic scansforward
|
||||
syn keyword gnuplotKeyword scansbackward depthorder flush begin center end
|
||||
syn keyword gnuplotKeyword ftriangles noftriangles clip1in clip4in mean map
|
||||
syn keyword gnuplotKeyword corners2color geomean harmean rms median min max
|
||||
syn keyword gnuplotKeyword c1 c2 c3 c4 pm3d at nohidden3d implicit explicit
|
||||
" set palette
|
||||
syn keyword gnuplotKeyword palette gray color gamma rgbformulae defined
|
||||
syn keyword gnuplotKeyword file functions cubehelix start cycles saturation
|
||||
syn keyword gnuplotKeyword model RGB HSV CMY YIQ XYZ positive negative
|
||||
syn keyword gnuplotKeyword nops_allcF ps_allcF maxcolors float int gradient
|
||||
syn keyword gnuplotKeyword fit2rgbformulae rgbformulae
|
||||
" set pointintervalbox
|
||||
syn keyword gnuplotKeyword pointintervalbox
|
||||
" set pointsize
|
||||
syn keyword gnuplotKeyword pointsize
|
||||
" set polar
|
||||
syn keyword gnuplotKeyword polar
|
||||
" set print
|
||||
syn keyword gnuplotKeyword print append
|
||||
" set psdir
|
||||
syn keyword gnuplotKeyword psdir
|
||||
" set raxis
|
||||
syn keyword gnuplotKeyword raxis rrange rtics
|
||||
" set samples
|
||||
syn keyword gnuplotKeyword samples
|
||||
" set size
|
||||
syn keyword gnuplotKeyword size square nosquare ratio noratio
|
||||
" set style
|
||||
syn keyword gnuplotKeyword style function data noborder rectangle arrow
|
||||
syn keyword gnuplotKeyword default nohead head heads size filled empty
|
||||
syn keyword gnuplotKeyword nofilled front back boxplot range fraction
|
||||
syn keyword gnuplotKeyword outliers nooutliers pointtype candlesticks
|
||||
syn keyword gnuplotKeyword separation labels off auto x x2 sorted unsorted
|
||||
syn keyword gnuplotKeyword fill empty transparent solid pattern border
|
||||
syn keyword gnuplotKeyword increment userstyles financebars line default
|
||||
syn keyword gnuplotKeyword linetype lt linecolor lc linewidth lw pointtype
|
||||
syn keyword gnuplotKeyword pt pointsize ps pointinterval pi palette circle
|
||||
syn keyword gnuplotKeyword radius graph screen wedge nowedge ellipse size
|
||||
syn keyword gnuplotKeyword units xx xy yy histogram line textbox opaque
|
||||
syn keyword gnuplotKeyword border noborder
|
||||
" set surface
|
||||
syn keyword gnuplotKeyword surface implicit explicit
|
||||
" set table
|
||||
syn keyword gnuplotKeyword table
|
||||
" set terminal (list of terminals)
|
||||
syn keyword gnuplotKeyword terminal term push pop aed512 aed767 aifm aqua
|
||||
syn keyword gnuplotKeyword be cairo cairolatex canvas cgm context corel
|
||||
syn keyword gnuplotKeyword debug dumb dxf dxy800a eepic emf emxvga epscairo
|
||||
syn keyword gnuplotKeyword epslatex epson_180dpi excl fig ggi gif gpic hpgl
|
||||
syn keyword gnuplotKeyword grass hp2623a hp2648 hp500c hpljii hppj imagen
|
||||
syn keyword gnuplotKeyword jpeg kyo latex linux lua mf mif mp next openstep
|
||||
syn keyword gnuplotKeyword pbm pdf pdfcairo pm png pngcairo postscript
|
||||
syn keyword gnuplotKeyword pslatex pstex pstricks qms qt regis sun svg svga
|
||||
syn keyword gnuplotKeyword tek40 tek410x texdraw tgif tikz tkcanvas tpic
|
||||
syn keyword gnuplotKeyword vgagl vws vx384 windows wx wxt x11 xlib
|
||||
" keywords for 'set terminal'
|
||||
syn keyword gnuplotKeyword color monochrome dashlength dl eps pdf fontscale
|
||||
syn keyword gnuplotKeyword standalone blacktext colortext colourtext header
|
||||
syn keyword gnuplotKeyword noheader mono color solid dashed notransparent
|
||||
syn keyword gnuplotKeyword crop crop background input rounded butt square
|
||||
syn keyword gnuplotKeyword size fsize standalone name jsdir defaultsize
|
||||
syn keyword gnuplotKeyword timestamp notimestamp colour mitered beveled
|
||||
syn keyword gnuplotKeyword round squared palfuncparam blacktext nec_cp6
|
||||
syn keyword gnuplotKeyword mppoints inlineimages externalimages defaultfont
|
||||
syn keyword gnuplotKeyword aspect feed nofeed rotate small tiny standalone
|
||||
syn keyword gnuplotKeyword oldstyle newstyle level1 leveldefault level3
|
||||
syn keyword gnuplotKeyword background nobackground solid clip noclip
|
||||
syn keyword gnuplotKeyword colortext colourtext epson_60dpi epson_lx800
|
||||
syn keyword gnuplotKeyword okidata starc tandy_60dpi dpu414 nec_cp6 draft
|
||||
syn keyword gnuplotKeyword medium large normal landscape portrait big
|
||||
syn keyword gnuplotKeyword inches pointsmax textspecial texthidden
|
||||
syn keyword gnuplotKeyword thickness depth version acceleration giant
|
||||
syn keyword gnuplotKeyword delay loop optimize nooptimize pspoints
|
||||
syn keyword gnuplotKeyword FNT9X17 FNT13X25 interlace nointerlace courier
|
||||
syn keyword gnuplotKeyword originreset nooriginreset gparrows nogparrows
|
||||
syn keyword gnuplotKeyword picenvironment nopicenvironment tightboundingbox
|
||||
syn keyword gnuplotKeyword notightboundingbox charsize gppoints nogppoints
|
||||
syn keyword gnuplotKeyword fontscale textscale fulldoc nofulldoc standalone
|
||||
syn keyword gnuplotKeyword preamble header tikzplot tikzarrows notikzarrows
|
||||
syn keyword gnuplotKeyword cmykimages externalimages noexternalimages
|
||||
syn keyword gnuplotKeyword polyline vectors magnification psnfss nopsnfss
|
||||
syn keyword gnuplotKeyword psnfss-version7 prologues a4paper amstex fname
|
||||
syn keyword gnuplotKeyword fsize server persist widelines interlace
|
||||
syn keyword gnuplotKeyword truecolor notruecolor defaultplex simplex duplex
|
||||
syn keyword gnuplotKeyword nofontfiles adobeglyphnames noadobeglyphnames
|
||||
syn keyword gnuplotKeyword nostandalone metric textrigid animate nopspoints
|
||||
syn keyword gnuplotKeyword hpdj FNT5X9 roman emtex rgbimages bitmap
|
||||
syn keyword gnuplotKeyword nobitmap providevars nointerlace add delete
|
||||
syn keyword gnuplotKeyword auxfile hacktext unit raise palfuncparam
|
||||
syn keyword gnuplotKeyword noauxfile nohacktext nounit noraise ctrl noctrl
|
||||
syn keyword gnuplotKeyword close widget fixed dynamic tek40xx vttek
|
||||
syn keyword gnuplotKeyword kc-tek40xx km-tek40xx bitgraph perltk
|
||||
syn keyword gnuplotKeyword interactive red green blue interpolate mode
|
||||
syn keyword gnuplotKeyword position ctrlq replotonresize position noctrlq
|
||||
syn keyword gnuplotKeyword noreplotonresize
|
||||
" set termoption
|
||||
syn keyword gnuplotKeyword termoption font fontscale solid dashed
|
||||
" set tics
|
||||
syn keyword gnuplotKeyword tics add axis border mirror nomirror in out
|
||||
syn keyword gnuplotKeyword scale rotate norotate by offset nooffset left
|
||||
syn keyword gnuplotKeyword autojustify format font textcolor right center
|
||||
" deprecated set ticslevel
|
||||
syn keyword gnuplotError ticslevel ticscale
|
||||
" set timestamp
|
||||
syn keyword gnuplotKeyword timestamp top bottom offset font
|
||||
" set timefmt
|
||||
syn keyword gnuplotKeyword timefmt
|
||||
" set title
|
||||
syn keyword gnuplotKeyword title offset font textcolor tc
|
||||
" set ranges
|
||||
syn keyword gnuplotKeyword trange urange vrange
|
||||
" show variables
|
||||
syn keyword gnuplotKeyword variables
|
||||
" show version
|
||||
syn keyword gnuplotKeyword version
|
||||
" set view
|
||||
syn keyword gnuplotKeyword view map equal noequal xy xyz
|
||||
" set x2data
|
||||
syn keyword gnuplotKeyword xdata ydata zdata x2data y2data cbdata xdtics
|
||||
syn keyword gnuplotKeyword ydtics zdtics x2dtics y2dtics cbdtics xzeroaxis
|
||||
syn keyword gnuplotKeyword yzeroaxis zzeroaxis x2zeroaxis y2zeroaxis
|
||||
syn keyword gnuplotKeyword cbzeroaxis time geographic
|
||||
" set label
|
||||
syn keyword gnuplotKeyword xlabel ylabel zlabel x2label y2label cblabel
|
||||
syn keyword gnuplotKeyword offset font textcolor by parallel
|
||||
" set range
|
||||
syn keyword gnuplotKeyword xrange yrange zrange x2range y2range cbrange
|
||||
" set xyplane
|
||||
syn keyword gnuplotKeyword xyplane
|
||||
" set zeroaxis
|
||||
" set zero
|
||||
syn keyword gnuplotKeyword zero
|
||||
" set zeroaxis
|
||||
syn keyword gnuplotKeyword zeroaxis
|
||||
|
||||
" keywords for 'stats' command
|
||||
syn keyword gnuplotKeyword nooutput
|
||||
|
||||
" keywords for 'test' command
|
||||
syn keyword gnuplotKeyword terminal palette rgb rbg grb gbr brg bgr
|
||||
|
||||
" ---- Macros ---- "
|
||||
|
||||
syn region gnuplotMacro start="@" end=" "
|
||||
|
||||
" ---- Todos ---- "
|
||||
|
||||
syn keyword gnuplotTodo contained TODO FIXME XXX
|
||||
|
||||
" ---- Types: gnuplot commands ---- "
|
||||
|
||||
" I set the commands as Types to distinguish them visually from keywords for the
|
||||
" commands. This comes at the end of the syntax file because some commands
|
||||
" are redundant with keywords. It's probably too much trouble to go and
|
||||
" create special regions for each redundant keyword/command pair, which means
|
||||
" that some keywords (e.g. 'p') will be highlighted as commands.
|
||||
|
||||
syn keyword gnuplotStatement cd call clear evaluate exit fit help history
|
||||
syn keyword gnuplotStatement load lower pause plot p print pwd quit raise
|
||||
syn keyword gnuplotStatement refresh replot rep reread reset save set show
|
||||
syn keyword gnuplotStatement shell splot spstats system test undefine unset
|
||||
syn keyword gnuplotStatement update
|
||||
|
||||
" ---- Define the default highlighting ---- "
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_gnuplot_syntax_inits")
|
||||
@ -181,14 +510,41 @@ if version >= 508 || !exists("did_gnuplot_syntax_inits")
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink gnuplotStatement Statement
|
||||
HiLink gnuplotConditional Conditional
|
||||
" ---- Comments ---- "
|
||||
HiLink gnuplotComment Comment
|
||||
|
||||
" ---- Constants ---- "
|
||||
HiLink gnuplotString String
|
||||
HiLink gnuplotNumber Number
|
||||
HiLink gnuplotFloat Float
|
||||
|
||||
" ---- Identifiers ---- "
|
||||
HiLink gnuplotIdentifier Identifier
|
||||
|
||||
" ---- Statements ---- "
|
||||
HiLink gnuplotConditional Conditional
|
||||
HiLink gnuplotRepeat Repeat
|
||||
HiLink gnuplotKeyword Keyword
|
||||
HiLink gnuplotOperator Operator
|
||||
|
||||
" ---- PreProcs ---- "
|
||||
HiLink gnuplotMacro Macro
|
||||
|
||||
" ---- Types ---- "
|
||||
HiLink gnuplotStatement Type
|
||||
HiLink gnuplotFunc Identifier
|
||||
|
||||
" ---- Specials ---- "
|
||||
HiLink gnuplotSpecial Special
|
||||
HiLink gnuplotUnit Special
|
||||
HiLink gnuplotExternal Special
|
||||
|
||||
" ---- Errors ---- "
|
||||
HiLink gnuplotError Error
|
||||
HiLink gnuplotOctalError Error
|
||||
HiLink gnuplotFunc Type
|
||||
HiLink gnuplotType Type
|
||||
HiLink gnuplotComment Comment
|
||||
|
||||
" ---- Todos ---- "
|
||||
HiLink gnuplotTodo Todo
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
208
runtime/syntax/go.vim
Normal file
208
runtime/syntax/go.vim
Normal file
@ -0,0 +1,208 @@
|
||||
" Vim syntax file
|
||||
" Language: Go
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-go)
|
||||
" Last Change: 2014 Aug 16
|
||||
|
||||
" Options:
|
||||
" There are some options for customizing the highlighting; the recommended
|
||||
" settings are the default values, but you can write:
|
||||
" let OPTION_NAME = 0
|
||||
" in your ~/.vimrc file to disable particular options. You can also write:
|
||||
" let OPTION_NAME = 1
|
||||
" to enable particular options. At present, all options default to on.
|
||||
"
|
||||
" - g:go_highlight_array_whitespace_error
|
||||
" Highlights white space after "[]".
|
||||
" - g:go_highlight_chan_whitespace_error
|
||||
" Highlights white space around the communications operator that don't
|
||||
" follow the standard style.
|
||||
" - g:go_highlight_extra_types
|
||||
" Highlights commonly used library types (io.Reader, etc.).
|
||||
" - g:go_highlight_space_tab_error
|
||||
" Highlights instances of tabs following spaces.
|
||||
" - g:go_highlight_trailing_whitespace_error
|
||||
" Highlights trailing white space.
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists('b:current_syntax')
|
||||
finish
|
||||
endif
|
||||
|
||||
if !exists('g:go_highlight_array_whitespace_error')
|
||||
let g:go_highlight_array_whitespace_error = 1
|
||||
endif
|
||||
if !exists('g:go_highlight_chan_whitespace_error')
|
||||
let g:go_highlight_chan_whitespace_error = 1
|
||||
endif
|
||||
if !exists('g:go_highlight_extra_types')
|
||||
let g:go_highlight_extra_types = 1
|
||||
endif
|
||||
if !exists('g:go_highlight_space_tab_error')
|
||||
let g:go_highlight_space_tab_error = 1
|
||||
endif
|
||||
if !exists('g:go_highlight_trailing_whitespace_error')
|
||||
let g:go_highlight_trailing_whitespace_error = 1
|
||||
endif
|
||||
|
||||
syn case match
|
||||
|
||||
syn keyword goDirective package import
|
||||
syn keyword goDeclaration var const type
|
||||
syn keyword goDeclType struct interface
|
||||
|
||||
hi def link goDirective Statement
|
||||
hi def link goDeclaration Keyword
|
||||
hi def link goDeclType Keyword
|
||||
|
||||
" Keywords within functions
|
||||
syn keyword goStatement defer go goto return break continue fallthrough
|
||||
syn keyword goConditional if else switch select
|
||||
syn keyword goLabel case default
|
||||
syn keyword goRepeat for range
|
||||
|
||||
hi def link goStatement Statement
|
||||
hi def link goConditional Conditional
|
||||
hi def link goLabel Label
|
||||
hi def link goRepeat Repeat
|
||||
|
||||
" Predefined types
|
||||
syn keyword goType chan map bool string error
|
||||
syn keyword goSignedInts int int8 int16 int32 int64 rune
|
||||
syn keyword goUnsignedInts byte uint uint8 uint16 uint32 uint64 uintptr
|
||||
syn keyword goFloats float32 float64
|
||||
syn keyword goComplexes complex64 complex128
|
||||
|
||||
hi def link goType Type
|
||||
hi def link goSignedInts Type
|
||||
hi def link goUnsignedInts Type
|
||||
hi def link goFloats Type
|
||||
hi def link goComplexes Type
|
||||
|
||||
" Treat func specially: it's a declaration at the start of a line, but a type
|
||||
" elsewhere. Order matters here.
|
||||
syn match goType /\<func\>/
|
||||
syn match goDeclaration /^func\>/
|
||||
|
||||
" Predefined functions and values
|
||||
syn keyword goBuiltins append cap close complex copy delete imag len
|
||||
syn keyword goBuiltins make new panic print println real recover
|
||||
syn keyword goConstants iota true false nil
|
||||
|
||||
hi def link goBuiltins Keyword
|
||||
hi def link goConstants Keyword
|
||||
|
||||
" Comments; their contents
|
||||
syn keyword goTodo contained TODO FIXME XXX BUG
|
||||
syn cluster goCommentGroup contains=goTodo
|
||||
syn region goComment start="/\*" end="\*/" contains=@goCommentGroup,@Spell
|
||||
syn region goComment start="//" end="$" contains=@goCommentGroup,@Spell
|
||||
|
||||
hi def link goComment Comment
|
||||
hi def link goTodo Todo
|
||||
|
||||
" Go escapes
|
||||
syn match goEscapeOctal display contained "\\[0-7]\{3}"
|
||||
syn match goEscapeC display contained +\\[abfnrtv\\'"]+
|
||||
syn match goEscapeX display contained "\\x\x\{2}"
|
||||
syn match goEscapeU display contained "\\u\x\{4}"
|
||||
syn match goEscapeBigU display contained "\\U\x\{8}"
|
||||
syn match goEscapeError display contained +\\[^0-7xuUabfnrtv\\'"]+
|
||||
|
||||
hi def link goEscapeOctal goSpecialString
|
||||
hi def link goEscapeC goSpecialString
|
||||
hi def link goEscapeX goSpecialString
|
||||
hi def link goEscapeU goSpecialString
|
||||
hi def link goEscapeBigU goSpecialString
|
||||
hi def link goSpecialString Special
|
||||
hi def link goEscapeError Error
|
||||
|
||||
" Strings and their contents
|
||||
syn cluster goStringGroup contains=goEscapeOctal,goEscapeC,goEscapeX,goEscapeU,goEscapeBigU,goEscapeError
|
||||
syn region goString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@goStringGroup
|
||||
syn region goRawString start=+`+ end=+`+
|
||||
|
||||
hi def link goString String
|
||||
hi def link goRawString String
|
||||
|
||||
" Characters; their contents
|
||||
syn cluster goCharacterGroup contains=goEscapeOctal,goEscapeC,goEscapeX,goEscapeU,goEscapeBigU
|
||||
syn region goCharacter start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@goCharacterGroup
|
||||
|
||||
hi def link goCharacter Character
|
||||
|
||||
" Regions
|
||||
syn region goBlock start="{" end="}" transparent fold
|
||||
syn region goParen start='(' end=')' transparent
|
||||
|
||||
" Integers
|
||||
syn match goDecimalInt "\<\d\+\([Ee]\d\+\)\?\>"
|
||||
syn match goHexadecimalInt "\<0x\x\+\>"
|
||||
syn match goOctalInt "\<0\o\+\>"
|
||||
syn match goOctalError "\<0\o*[89]\d*\>"
|
||||
|
||||
hi def link goDecimalInt Integer
|
||||
hi def link goHexadecimalInt Integer
|
||||
hi def link goOctalInt Integer
|
||||
hi def link Integer Number
|
||||
|
||||
" Floating point
|
||||
syn match goFloat "\<\d\+\.\d*\([Ee][-+]\d\+\)\?\>"
|
||||
syn match goFloat "\<\.\d\+\([Ee][-+]\d\+\)\?\>"
|
||||
syn match goFloat "\<\d\+[Ee][-+]\d\+\>"
|
||||
|
||||
hi def link goFloat Float
|
||||
|
||||
" Imaginary literals
|
||||
syn match goImaginary "\<\d\+i\>"
|
||||
syn match goImaginary "\<\d\+\.\d*\([Ee][-+]\d\+\)\?i\>"
|
||||
syn match goImaginary "\<\.\d\+\([Ee][-+]\d\+\)\?i\>"
|
||||
syn match goImaginary "\<\d\+[Ee][-+]\d\+i\>"
|
||||
|
||||
hi def link goImaginary Number
|
||||
|
||||
" Spaces after "[]"
|
||||
if go_highlight_array_whitespace_error != 0
|
||||
syn match goSpaceError display "\(\[\]\)\@<=\s\+"
|
||||
endif
|
||||
|
||||
" Spacing errors around the 'chan' keyword
|
||||
if go_highlight_chan_whitespace_error != 0
|
||||
" receive-only annotation on chan type
|
||||
syn match goSpaceError display "\(<-\)\@<=\s\+\(chan\>\)\@="
|
||||
" send-only annotation on chan type
|
||||
syn match goSpaceError display "\(\<chan\)\@<=\s\+\(<-\)\@="
|
||||
" value-ignoring receives in a few contexts
|
||||
syn match goSpaceError display "\(\(^\|[={(,;]\)\s*<-\)\@<=\s\+"
|
||||
endif
|
||||
|
||||
" Extra types commonly seen
|
||||
if go_highlight_extra_types != 0
|
||||
syn match goExtraType /\<bytes\.\(Buffer\)\>/
|
||||
syn match goExtraType /\<io\.\(Reader\|Writer\|ReadWriter\|ReadWriteCloser\)\>/
|
||||
syn match goExtraType /\<reflect\.\(Kind\|Type\|Value\)\>/
|
||||
syn match goExtraType /\<unsafe\.Pointer\>/
|
||||
endif
|
||||
|
||||
" Space-tab error
|
||||
if go_highlight_space_tab_error != 0
|
||||
syn match goSpaceError display " \+\t"me=e-1
|
||||
endif
|
||||
|
||||
" Trailing white space error
|
||||
if go_highlight_trailing_whitespace_error != 0
|
||||
syn match goSpaceError display excludenl "\s\+$"
|
||||
endif
|
||||
|
||||
hi def link goExtraType Type
|
||||
hi def link goSpaceError Error
|
||||
|
||||
" Search backwards for a global declaration to start processing the syntax.
|
||||
"syn sync match goSync grouphere NONE /^\(const\|var\|type\|func\)\>/
|
||||
|
||||
" There's a bug in the implementation of grouphere. For now, use the
|
||||
" following as a more expensive/less precise workaround.
|
||||
syn sync minlines=500
|
||||
|
||||
let b:current_syntax = 'go'
|
||||
|
||||
" vim: sw=2 sts=2 et
|
21
runtime/syntax/godoc.vim
Normal file
21
runtime/syntax/godoc.vim
Normal file
@ -0,0 +1,21 @@
|
||||
" Vim syntax file
|
||||
" Language: Godoc (generated documentation for go)
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-go)
|
||||
" Last Change: 2014 Aug 16
|
||||
|
||||
if exists('b:current_syntax')
|
||||
finish
|
||||
endif
|
||||
|
||||
syn case match
|
||||
syn match godocTitle "^\([A-Z][A-Z ]*\)$"
|
||||
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
|
||||
HiLink godocTitle Title
|
||||
|
||||
delcommand HiLink
|
||||
|
||||
let b:current_syntax = 'godoc'
|
||||
|
||||
" vim: sw=2 sts=2 et
|
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Django HTML template
|
||||
" Maintainer: Dave Hodder <dmh@dmh.org.uk>
|
||||
" Last Change: 2007 Jan 26
|
||||
" Last Change: 2014 Jul 13
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@ -28,7 +28,7 @@ syn cluster djangoBlocks add=djangoTagBlock,djangoVarBlock,djangoComment,djangoC
|
||||
|
||||
syn region djangoTagBlock start="{%" end="%}" contains=djangoStatement,djangoFilter,djangoArgument,djangoTagError display containedin=ALLBUT,@djangoBlocks
|
||||
syn region djangoVarBlock start="{{" end="}}" contains=djangoFilter,djangoArgument,djangoVarError display containedin=ALLBUT,@djangoBlocks
|
||||
syn region djangoComment start="{%\s*comment\s*%}" end="{%\s*endcomment\s*%}" contains=djangoTodo containedin=ALLBUT,@djangoBlocks
|
||||
syn region djangoComment start="{%\s*comment\(\s\+.\{-}\)\?%}" end="{%\s*endcomment\s*%}" contains=djangoTodo containedin=ALLBUT,@djangoBlocks
|
||||
syn region djangoComBlock start="{#" end="#}" contains=djangoTodo containedin=ALLBUT,@djangoBlocks
|
||||
|
||||
let b:current_syntax = "htmldjango"
|
||||
|
@ -2,7 +2,7 @@
|
||||
" Language: J
|
||||
" Maintainer: David Bürgin <676c7473@gmail.com>
|
||||
" URL: https://github.com/glts/vim-j
|
||||
" Last Change: 2014-05-25
|
||||
" Last Change: 2014-10-05
|
||||
|
||||
if exists('b:current_syntax')
|
||||
finish
|
||||
@ -12,7 +12,7 @@ let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syntax case match
|
||||
syntax sync minlines=50
|
||||
syntax sync minlines=100
|
||||
|
||||
syntax cluster jStdlibItems contains=jStdlibNoun,jStdlibAdverb,jStdlibConjunction,jStdlibVerb
|
||||
syntax cluster jPrimitiveItems contains=jNoun,jAdverb,jConjunction,jVerb,jCopula
|
||||
@ -30,26 +30,32 @@ syntax keyword jStdlibVerb AND Endian IFDEF Note OR XOR alpha17 alpha27 anddf an
|
||||
syntax match jStdlibNoun /\<\%(adverb\|conjunction\|dyad\|monad\|noun\|verb\)\>/
|
||||
syntax match jStdlibVerb /\<\%(assert\|break\|do\)\>\.\@!/
|
||||
|
||||
" Numbers. Matching J numbers is difficult. The regular expression used for
|
||||
" the general case roughly embodies this grammar sketch:
|
||||
" Numbers. Matching J numbers is difficult. In fact, the job cannot be done
|
||||
" with regular expressions alone. Below is a sketch of the pattern used. It
|
||||
" accepts most well-formed numbers and rejects most of the ill-formed ones.
|
||||
" See http://www.jsoftware.com/help/dictionary/dcons.htm for reference.
|
||||
"
|
||||
" BASE := /_?\d+(\.\d*)?([eE]_?\d+)?/
|
||||
" RATIONAL := BASE | BASE r BASE
|
||||
" COMPLEX := BASE | BASE (j|a[dr]) BASE
|
||||
" JNUMBER := RATIONAL | RATIONAL [px] RATIONAL | COMPLEX | COMPLEX [px] COMPLEX
|
||||
" "double1" and "double2" patterns:
|
||||
" (_?\d+(\.\d*)?|_\.\d+)([eE]_?\d+)?
|
||||
" (_?\d+(\.\d*)?|_\.\d+|\.\d+)([eE]_?\d+)?
|
||||
"
|
||||
" The grammar is implemented as shown in this pseudo-regexp:
|
||||
" "rational1" and "rational2" patterns:
|
||||
" \k<double1>(r\k<double2>)?|__?
|
||||
" \k<double2>(r\k<double2>)?|__?
|
||||
"
|
||||
" base rational complex remainder
|
||||
" /\< B ( [r]B ([px]B([r]B)?)? | (j|a[dr])B ([px]B((j|a[dr])B)?)? | [px]B ((j|a[dr]|r)B)? )?/
|
||||
" "complex1" and "complex2" patterns:
|
||||
" \k<rational1>((j|a[dr])\k<rational2>)?
|
||||
" \k<rational2>((j|a[dr])\k<rational2>)?
|
||||
"
|
||||
" All in all, a compromise between correctness and practicality had to be
|
||||
" made. See http://www.jsoftware.com/help/dictionary/dcons.htm for reference.
|
||||
syntax match jNumber /\<_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%(\%(r_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%([px]_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%(r_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\)\=\)\=\)\|\%(\%(j\|a[dr]\)_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%([px]_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%(\%(j\|a[dr]\)_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\)\=\)\=\)\|\%([px]_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%(\%(j\|a[dr]\|r\)_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\)\=\)\)\=/
|
||||
syntax match jNumber /\<_\=\d\+\%([eE]\d\+\)\=b_\=[0-9a-z]\+\%(\.[0-9a-z]\+\)\=/
|
||||
syntax match jNumber /\<__\=\>/
|
||||
syntax match jNumber /\<_\./
|
||||
syntax match jNumber /\<_\=\d\+x\>/
|
||||
" "basevalue" pattern:
|
||||
" _?[0-9a-z]+(\.[0-9a-z]*)?|_?\.[0-9a-z]+
|
||||
"
|
||||
" all numbers:
|
||||
" \b\k<complex1>([px]\k<complex2>)?(b\k<basevalue>)?(?![0-9A-Za-z_.])
|
||||
syntax match jNumber /\<_\.[0-9A-Za-z_.]\@!/
|
||||
syntax match jNumber /\<_\=\d\+x[0-9A-Za-z_.]\@!/
|
||||
syntax match jNumber /\<\%(__\=r_\=\d\+\|_\=\d\+r__\=\)[0-9A-Za-z_.]\@!/
|
||||
syntax match jNumber /\<\%(\%(_\=\d\+\%(\.\d*\)\=\|_\.\d\+\)\%([eE]_\=\d\+\)\=\%(r\%(_\=\d\+\%(\.\d*\)\=\|_\.\d\+\|\.\d\+\)\%([eE]_\=\d\+\)\=\)\=\|__\=\)\%(\%(j\|a[dr]\)\%(\%(_\=\d\+\%(\.\d*\)\=\|_\.\d\+\|\.\d\+\)\%([eE]_\=\d\+\)\=\%(r\%(_\=\d\+\%(\.\d*\)\=\|_\.\d\+\|\.\d\+\)\%([eE]_\=\d\+\)\=\)\=\|__\=\)\)\=\%([px]\%(\%(_\=\d\+\%(\.\d*\)\=\|_\.\d\+\|\.\d\+\)\%([eE]_\=\d\+\)\=\%(r\%(_\=\d\+\%(\.\d*\)\=\|_\.\d\+\|\.\d\+\)\%([eE]_\=\d\+\)\=\)\=\|__\=\)\%(\%(j\|a[dr]\)\%(\%(_\=\d\+\%(\.\d*\)\=\|_\.\d\+\|\.\d\+\)\%([eE]_\=\d\+\)\=\%(r\%(_\=\d\+\%(\.\d*\)\=\|_\.\d\+\|\.\d\+\)\%([eE]_\=\d\+\)\=\)\=\|__\=\)\)\=\)\=\%(b\%(_\=[0-9a-z]\+\%(\.[0-9a-z]*\)\=\|_\=\.[0-9a-z]\+\)\)\=[0-9A-Za-z_.]\@!/
|
||||
|
||||
syntax region jString oneline start=/'/ skip=/''/ end=/'/
|
||||
|
||||
|
143
runtime/syntax/json.vim
Normal file
143
runtime/syntax/json.vim
Normal file
@ -0,0 +1,143 @@
|
||||
" Vim syntax file
|
||||
" Language: JSON
|
||||
" Maintainer: Eli Parra <eli@elzr.com>
|
||||
" Last Change: 2014 Aug 23
|
||||
" Version: 0.12
|
||||
|
||||
if !exists("main_syntax")
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
let main_syntax = 'json'
|
||||
endif
|
||||
|
||||
syntax match jsonNoise /\%(:\|,\)/
|
||||
|
||||
" NOTE that for the concealing to work your conceallevel should be set to 2
|
||||
|
||||
" Syntax: Strings
|
||||
" Separated into a match and region because a region by itself is always greedy
|
||||
syn match jsonStringMatch /"\([^"]\|\\\"\)\+"\ze[[:blank:]\r\n]*[,}\]]/ contains=jsonString
|
||||
if has('conceal')
|
||||
syn region jsonString oneline matchgroup=jsonQuote start=/"/ skip=/\\\\\|\\"/ end=/"/ concealends contains=jsonEscape contained
|
||||
else
|
||||
syn region jsonString oneline matchgroup=jsonQuote start=/"/ skip=/\\\\\|\\"/ end=/"/ contains=jsonEscape contained
|
||||
endif
|
||||
|
||||
" Syntax: JSON does not allow strings with single quotes, unlike JavaScript.
|
||||
syn region jsonStringSQError oneline start=+'+ skip=+\\\\\|\\"+ end=+'+
|
||||
|
||||
" Syntax: JSON Keywords
|
||||
" Separated into a match and region because a region by itself is always greedy
|
||||
syn match jsonKeywordMatch /"\([^"]\|\\\"\)\+"[[:blank:]\r\n]*\:/ contains=jsonKeyword
|
||||
if has('conceal')
|
||||
syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ concealends contained
|
||||
else
|
||||
syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ contained
|
||||
endif
|
||||
|
||||
" Syntax: Escape sequences
|
||||
syn match jsonEscape "\\["\\/bfnrt]" contained
|
||||
syn match jsonEscape "\\u\x\{4}" contained
|
||||
|
||||
" Syntax: Numbers
|
||||
syn match jsonNumber "-\=\<\%(0\|[1-9]\d*\)\%(\.\d\+\)\=\%([eE][-+]\=\d\+\)\=\>\ze[[:blank:]\r\n]*[,}\]]"
|
||||
|
||||
" ERROR WARNINGS **********************************************
|
||||
if (!exists("g:vim_json_warnings") || g:vim_json_warnings==1)
|
||||
" Syntax: Strings should always be enclosed with quotes.
|
||||
syn match jsonNoQuotesError "\<[[:alpha:]][[:alnum:]]*\>"
|
||||
syn match jsonTripleQuotesError /"""/
|
||||
|
||||
" Syntax: An integer part of 0 followed by other digits is not allowed.
|
||||
syn match jsonNumError "-\=\<0\d\.\d*\>"
|
||||
|
||||
" Syntax: Decimals smaller than one should begin with 0 (so .1 should be 0.1).
|
||||
syn match jsonNumError "\:\@<=[[:blank:]\r\n]*\zs\.\d\+"
|
||||
|
||||
" Syntax: No comments in JSON, see http://stackoverflow.com/questions/244777/can-i-comment-a-json-file
|
||||
syn match jsonCommentError "//.*"
|
||||
syn match jsonCommentError "\(/\*\)\|\(\*/\)"
|
||||
|
||||
" Syntax: No semicolons in JSON
|
||||
syn match jsonSemicolonError ";"
|
||||
|
||||
" Syntax: No trailing comma after the last element of arrays or objects
|
||||
syn match jsonTrailingCommaError ",\_s*[}\]]"
|
||||
|
||||
" Syntax: Watch out for missing commas between elements
|
||||
syn match jsonMissingCommaError /\("\|\]\|\d\)\zs\_s\+\ze"/
|
||||
syn match jsonMissingCommaError /\(\]\|\}\)\_s\+\ze"/ "arrays/objects as values
|
||||
syn match jsonMissingCommaError /}\_s\+\ze{/ "objects as elements in an array
|
||||
syn match jsonMissingCommaError /\(true\|false\)\_s\+\ze"/ "true/false as value
|
||||
endif
|
||||
|
||||
" ********************************************** END OF ERROR WARNINGS
|
||||
" Allowances for JSONP: function call at the beginning of the file,
|
||||
" parenthesis and semicolon at the end.
|
||||
" Function name validation based on
|
||||
" http://stackoverflow.com/questions/2008279/validate-a-javascript-function-name/2008444#2008444
|
||||
syn match jsonPadding "\%^[[:blank:]\r\n]*[_$[:alpha:]][_$[:alnum:]]*[[:blank:]\r\n]*("
|
||||
syn match jsonPadding ");[[:blank:]\r\n]*\%$"
|
||||
|
||||
" Syntax: Boolean
|
||||
syn match jsonBoolean /\(true\|false\)\(\_s\+\ze"\)\@!/
|
||||
|
||||
" Syntax: Null
|
||||
syn keyword jsonNull null
|
||||
|
||||
" Syntax: Braces
|
||||
syn region jsonFold matchgroup=jsonBraces start="{" end=/}\(\_s\+\ze\("\|{\)\)\@!/ transparent fold
|
||||
syn region jsonFold matchgroup=jsonBraces start="\[" end=/]\(\_s\+\ze"\)\@!/ transparent fold
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_json_syn_inits")
|
||||
if version < 508
|
||||
let did_json_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
HiLink jsonPadding Operator
|
||||
HiLink jsonString String
|
||||
HiLink jsonTest Label
|
||||
HiLink jsonEscape Special
|
||||
HiLink jsonNumber Number
|
||||
HiLink jsonBraces Delimiter
|
||||
HiLink jsonNull Function
|
||||
HiLink jsonBoolean Boolean
|
||||
HiLink jsonKeyword Label
|
||||
|
||||
if (!exists("g:vim_json_warnings") || g:vim_json_warnings==1)
|
||||
HiLink jsonNumError Error
|
||||
HiLink jsonCommentError Error
|
||||
HiLink jsonSemicolonError Error
|
||||
HiLink jsonTrailingCommaError Error
|
||||
HiLink jsonMissingCommaError Error
|
||||
HiLink jsonStringSQError Error
|
||||
HiLink jsonNoQuotesError Error
|
||||
HiLink jsonTripleQuotesError Error
|
||||
endif
|
||||
HiLink jsonQuote Quote
|
||||
HiLink jsonNoise Noise
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "json"
|
||||
if main_syntax == 'json'
|
||||
unlet main_syntax
|
||||
endif
|
||||
|
||||
" Vim settings
|
||||
" vim: ts=8 fdm=marker
|
||||
|
||||
" MIT License
|
||||
" Copyright (c) 2013, Jeroen Ruigrok van der Werven, Eli Parra
|
||||
"Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the Software), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
"The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
"THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
"See https://twitter.com/elzr/status/294964017926119424
|
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: php PHP 3/4/5
|
||||
" Maintainer: Jason Woofenden <jason@jasonwoof.com>
|
||||
" Last Change: Aug 28, 2013
|
||||
" Last Change: Sep 18, 2014
|
||||
" URL: https://gitorious.org/jasonwoof/vim-syntax/blobs/master/php.vim
|
||||
" Former Maintainers: Peter Hodge <toomuchphp-vim@yahoo.com>
|
||||
" Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
@ -123,7 +123,11 @@ syn keyword phpEnvVar GATEWAY_INTERFACE SERVER_NAME SERVER_SOFTWARE SERVER_PROTO
|
||||
syn keyword phpIntVar GLOBALS PHP_ERRMSG PHP_SELF HTTP_GET_VARS HTTP_POST_VARS HTTP_COOKIE_VARS HTTP_POST_FILES HTTP_ENV_VARS HTTP_SERVER_VARS HTTP_SESSION_VARS HTTP_RAW_POST_DATA HTTP_STATE_VARS _GET _POST _COOKIE _FILES _SERVER _ENV _SERVER _REQUEST _SESSION contained
|
||||
|
||||
" Constants
|
||||
syn keyword phpCoreConstant PHP_VERSION PHP_OS DEFAULT_INCLUDE_PATH PEAR_INSTALL_DIR PEAR_EXTENSION_DIR PHP_EXTENSION_DIR PHP_BINDIR PHP_LIBDIR PHP_DATADIR PHP_SYSCONFDIR PHP_LOCALSTATEDIR PHP_CONFIG_FILE_PATH PHP_OUTPUT_HANDLER_START PHP_OUTPUT_HANDLER_CONT PHP_OUTPUT_HANDLER_END E_ERROR E_WARNING E_PARSE E_NOTICE E_CORE_ERROR E_CORE_WARNING E_COMPILE_ERROR E_COMPILE_WARNING E_USER_ERROR E_USER_WARNING E_USER_NOTICE E_ALL contained
|
||||
syn keyword phpCoreConstant PHP_VERSION PHP_OS DEFAULT_INCLUDE_PATH PEAR_INSTALL_DIR PEAR_EXTENSION_DIR PHP_EXTENSION_DIR PHP_BINDIR PHP_LIBDIR PHP_DATADIR PHP_SYSCONFDIR PHP_LOCALSTATEDIR PHP_CONFIG_FILE_PATH PHP_OUTPUT_HANDLER_START PHP_OUTPUT_HANDLER_CONT PHP_OUTPUT_HANDLER_END contained
|
||||
|
||||
" Predefined constants
|
||||
" Generated by: curl -q http://php.net/manual/en/errorfunc.constants.php | grep -oP 'E_\w+' | sort -u
|
||||
syn keyword phpCoreConstant E_ALL E_COMPILE_ERROR E_COMPILE_WARNING E_CORE_ERROR E_CORE_WARNING E_DEPRECATED E_ERROR E_NOTICE E_PARSE E_RECOVERABLE_ERROR E_STRICT E_USER_DEPRECATED E_USER_ERROR E_USER_NOTICE E_USER_WARNING E_WARNING contained
|
||||
|
||||
syn case ignore
|
||||
|
||||
@ -502,11 +506,6 @@ syn keyword phpStructure trait
|
||||
" Some of these changes (highlighting isset/unset/echo etc) are not so
|
||||
" critical, but they make things more colourful. :-)
|
||||
|
||||
" highlight constant E_STRICT
|
||||
syntax case match
|
||||
syntax keyword phpCoreConstant E_STRICT contained
|
||||
syntax case ignore
|
||||
|
||||
" different syntax highlighting for 'echo', 'print', 'switch', 'die' and 'list' keywords
|
||||
" to better indicate what they are.
|
||||
syntax keyword phpDefine echo print contained
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Python
|
||||
" Maintainer: Neil Schemenauer <nas@python.ca>
|
||||
" Last Change: 2013 Feb 26
|
||||
" Last Change: 2014 Jul 16
|
||||
" Credits: Zvezdan Petkovic <zpetkovic@acm.org>
|
||||
" Neil Schemenauer <nas@python.ca>
|
||||
" Dmitry Vasiliev
|
||||
@ -113,7 +113,7 @@ syn match pythonEscape "\\\o\{1,3}" contained
|
||||
syn match pythonEscape "\\x\x\{2}" contained
|
||||
syn match pythonEscape "\%(\\u\x\{4}\|\\U\x\{8}\)" contained
|
||||
" Python allows case-insensitive Unicode IDs: http://www.unicode.org/charts/
|
||||
syn match pythonEscape "\\N{\a\+\%(\s\a\+\)*}" contained
|
||||
syn match pythonEscape "\\N{.\{-}}" contained
|
||||
syn match pythonEscape "\\$"
|
||||
|
||||
if exists("python_highlight_all")
|
||||
|
@ -1,8 +1,9 @@
|
||||
" Vim syntax file
|
||||
" Language: Windows Registry export with regedit (*.reg)
|
||||
" Maintainer: Dominique St<EFBFBD>phan (dominique@mggen.com)
|
||||
" URL: http://www.mggen.com/vim/syntax/registry.zip
|
||||
" Last change: 2004 Apr 23
|
||||
" Maintainer: Dominique Stéphan (dominique@mggen.com)
|
||||
" URL: http://www.mggen.com/vim/syntax/registry.zip (doesn't work)
|
||||
" Last change: 2014 Oct 31
|
||||
" Included patch from Alexander A. Ulitin
|
||||
|
||||
" clear any unwanted syntax defs
|
||||
" For version 5.x: Clear all syntax items
|
||||
@ -17,7 +18,7 @@ endif
|
||||
syn case ignore
|
||||
|
||||
" Head of regedit .reg files, it's REGEDIT4 on Win9#/NT
|
||||
syn match registryHead "^REGEDIT[0-9]*$"
|
||||
syn match registryHead "^REGEDIT[0-9]*\s*$\|^Windows Registry Editor Version \d*\.\d*\s*$"
|
||||
|
||||
" Comment
|
||||
syn match registryComment "^;.*$"
|
||||
@ -58,7 +59,7 @@ syn region registryRemove start="\[\-" end="\]" contains=registryHKEY,registryGU
|
||||
" Subkey
|
||||
syn match registrySubKey "^\".*\"="
|
||||
" Default value
|
||||
syn match registrySubKey "^\@="
|
||||
syn match registrySubKey "^@="
|
||||
|
||||
" Numbers
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: reStructuredText documentation format
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2013-11-26
|
||||
" Language: reStructuredText documentation format
|
||||
" Maintainer: Marshall Ward <marshall.ward@gmail.com>
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2014-10-03
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
@ -47,7 +48,7 @@ syn match rstSimpleTableLines contained display
|
||||
syn cluster rstDirectives contains=rstFootnote,rstCitation,
|
||||
\ rstHyperlinkTarget,rstExDirective
|
||||
|
||||
syn match rstExplicitMarkup '^\.\.\_s'
|
||||
syn match rstExplicitMarkup '^\s*\.\.\_s'
|
||||
\ nextgroup=@rstDirectives,rstComment,rstSubstitutionDefinition
|
||||
|
||||
let s:ReferenceName = '[[:alnum:]]\+\%([_.-][[:alnum:]]\+\)*'
|
||||
@ -99,11 +100,11 @@ function! s:DefineInlineMarkup(name, start, middle, end)
|
||||
\ ""
|
||||
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, "'", "'")
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '"', '"')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '(', ')')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '\[', '\]')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '{', '}')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '<', '>')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '"', '"')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '(', ')')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '\[', '\]')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '{', '}')
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '<', '>')
|
||||
|
||||
call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '\%(^\|\s\|[/:]\)', '')
|
||||
|
||||
@ -136,24 +137,32 @@ syn match rstStandaloneHyperlink contains=@NoSpell
|
||||
\ "\<\%(\%(\%(https\=\|file\|ftp\|gopher\)://\|\%(mailto\|news\):\)[^[:space:]'\"<>]\+\|www[[:alnum:]_-]*\.[[:alnum:]_-]\+\.[^[:space:]'\"<>]\+\)[[:alnum:]/]"
|
||||
|
||||
syn region rstCodeBlock contained matchgroup=rstDirective
|
||||
\ start=+\%(sourcecode\|code\%(-block\)\=\)::\s+
|
||||
\ start=+\%(sourcecode\|code\%(-block\)\=\)::\_s*\n\ze\z(\s\+\)+
|
||||
\ skip=+^$+
|
||||
\ end=+^\s\@!+
|
||||
\ end=+^\z1\@!+
|
||||
\ contains=@NoSpell
|
||||
syn cluster rstDirectives add=rstCodeBlock
|
||||
|
||||
if !exists('g:rst_syntax_code_list')
|
||||
let g:rst_syntax_code_list = ['vim', 'java', 'cpp', 'lisp', 'php', 'python', 'perl']
|
||||
let g:rst_syntax_code_list = ['vim', 'java', 'cpp', 'lisp', 'php',
|
||||
\ 'python', 'perl', 'sh']
|
||||
endif
|
||||
|
||||
for code in g:rst_syntax_code_list
|
||||
unlet! b:current_syntax
|
||||
" guard against setting 'isk' option which might cause problems (issue #108)
|
||||
let prior_isk = &l:iskeyword
|
||||
exe 'syn include @rst'.code.' syntax/'.code.'.vim'
|
||||
exe 'syn region rstDirective'.code.' matchgroup=rstDirective fold '
|
||||
\.'start=#\%(sourcecode\|code\%(-block\)\=\)::\s\+'.code.'\s*$# '
|
||||
\.'start=#\%(sourcecode\|code\%(-block\)\=\)::\s\+'.code.'\_s*\n\ze\z(\s\+\)# '
|
||||
\.'skip=#^$# '
|
||||
\.'end=#^\s\@!# contains=@NoSpell,@rst'.code.' keepend'
|
||||
\.'end=#^\z1\@!# contains=@NoSpell,@rst'.code
|
||||
exe 'syn cluster rstDirectives add=rstDirective'.code
|
||||
" reset 'isk' setting, if it has been changed
|
||||
if &l:iskeyword !=# prior_isk
|
||||
let &l:iskeyword = prior_isk
|
||||
endif
|
||||
unlet! prior_isk
|
||||
endfor
|
||||
|
||||
" TODO: Use better syncing.
|
||||
|
@ -1,8 +1,9 @@
|
||||
" SiSU Vim syntax file
|
||||
" SiSU Maintainer: Ralph Amissah <ralph@amissah.com>
|
||||
" SiSU Markup: SiSU (sisu-4.0.9)
|
||||
" Last Change: 2013-02-22
|
||||
" URL (sisu-4.1.0): <http://git.sisudoc.org/?p=code/sisu.git;a=blob;f=data/sisu/conf/editor-syntax-etc/vim/syntax/sisu.vim;hb=HEAD>
|
||||
" SiSU Maintainer: Ralph Amissah <ralph.amissah@gmail.com>
|
||||
" SiSU Markup: SiSU (sisu-5.6.7)
|
||||
" Last Change: 2014-09-14
|
||||
" URL: <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob;f=data/sisu/conf/editor-syntax-etc/vim/syntax/sisu.vim;hb=HEAD>
|
||||
" <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob_plain;f=data/sisu/conf/editor-syntax-etc/vim/syntax/sisu.vim;hb=HEAD>
|
||||
"(originally looked at Ruby Vim by Mirko Nasato)
|
||||
|
||||
if version < 600
|
||||
@ -23,15 +24,14 @@ if !exists("sisu_no_identifiers")
|
||||
syn match sisu_break contains=@NoSpell " \\\\\( \|$\)\|<br>\|<br />"
|
||||
syn match sisu_control contains=@NoSpell "^\(-\\\\-\|=\\\\=\|-\.\.-\|<:p[bn]>\)\s*$"
|
||||
syn match sisu_control contains=@NoSpell "^<:\(bo\|---\)>\s*$"
|
||||
syn match sisu_marktail contains=@NoSpell "^--[+~-]#\s*$"
|
||||
syn match sisu_marktail "[~-]#"
|
||||
syn match sisu_control "\""
|
||||
syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)"
|
||||
syn match sisu_number contains=@NoSpell "[0-9a-f]\{32\}\|[0-9a-f]\{64\}"
|
||||
syn match sisu_link contains=@NoSpell "\(_\?https\?://\|\.\.\/\)\S\+"
|
||||
syn match sisu_link " \*\~\S\+"
|
||||
syn match sisu_action "^<:insert\d\+>"
|
||||
syn match sisu_require contains=@NoSpell "^<<\s*[a-zA-Z0-9^._-]\+\.ss[it]$"
|
||||
syn match sisu_require contains=@NoSpell "^<<{[a-zA-Z0-9^._-]\+\.ss[it]}$"
|
||||
syn match sisu_require contains=@NoSpell "^<<\s*[a-zA-Z0-9^./_-]\+\.ss[it]$"
|
||||
syn match sisu_structure "^:A\~$"
|
||||
|
||||
"% "Document Sub Headers:
|
||||
@ -44,6 +44,8 @@ if !exists("sisu_no_identifiers")
|
||||
syn match sisu_sub_header_original "^\s\+:\(publisher\|date\|language\|lang_char\|institution\|nationality\|source\):\s"
|
||||
syn match sisu_sub_header_make "^\s\+:\(headings\|num_top\|breaks\|language\|italics\|bold\|emphasis\|substitute\|omit\|plaintext_wrap\|texpdf_font_mono\|texpdf_font\|stamp\|promo\|ad\|manpage\|home_button_text\|home_button_image\|cover_image\|footer\):\s"
|
||||
syn match sisu_sub_header_notes "^\s\+:\(description\|abstract\|comment\|coverage\|relation\|source\|history\|type\|format\|prefix\|prefix_[ab]\|suffix\):\s"
|
||||
syn match sisu_within_index_ignore "\S\+[:;]\(\s\+\|$\)"
|
||||
syn match sisu_within_index "[:|;]\|+\d\+"
|
||||
|
||||
"% "semantic markers: (ignore)
|
||||
syn match sisu_sem_marker ";{\|};[a-z._]*[a-z]"
|
||||
@ -93,17 +95,25 @@ syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_
|
||||
syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_make matchgroup=sisu_header start="^[@]make:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$"
|
||||
|
||||
"% "Headings:
|
||||
syn region sisu_heading contains=sisu_mark_endnote,sisu_content_endnote,sisu_marktail,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_ocn,sisu_error,sisu_error_wspace matchgroup=sisu_structure start="^\([1-8]\|:\?[A-C]\)\~\(\S\+\|[^-]\)" end="$"
|
||||
syn region sisu_heading contains=sisu_mark_endnote,sisu_content_endnote,sisu_marktail,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_ocn,sisu_error,sisu_error_wspace matchgroup=sisu_structure start="^\([1-4]\|:\?[A-D]\)\~\(\S\+\|[^-]\)" end="$"
|
||||
|
||||
"% "Block Group Text:
|
||||
" table
|
||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^table{.\+" end="}table"
|
||||
" table
|
||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+table" end="^```\(\s\|$\)"
|
||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^{\(t\|table\)\(\~h\)\?\(\sc[0-9]\+;\)\?[0-9; ]*}" end="\n$"
|
||||
" block, group, poem, alt
|
||||
syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^\(block\|group\|poem\|alt\){" end="^}\(block\|group\|poem\|alt\)"
|
||||
syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^\(block\|group\|poem\|alt\){" end="^}\1"
|
||||
syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+\(block\|group\|poem\|alt\)" end="^```\(\s\|$\)"
|
||||
" box
|
||||
syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^box\(\.[a-z]\+\)\?{" end="^}box"
|
||||
syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+\box\(\.[a-z]\+\)\?" end="^```\(\s\|$\)"
|
||||
" code
|
||||
syn region sisu_content_alt contains=sisu_error matchgroup=sisu_contain start="^code{" end="^}code"
|
||||
syn region sisu_content_alt contains=sisu_error,@NoSpell matchgroup=sisu_contain start="^code\(\.[a-z][0-9a-z_]\+\)\?{" end="^}code"
|
||||
syn region sisu_content_alt contains=sisu_error,@NoSpell matchgroup=sisu_contain start="^```\s\+code\(\.[a-z][0-9a-z_]\+\)\?" end="^```\(\s\|$\)"
|
||||
" quote
|
||||
syn region sisu_normal contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_contain start="^```\s\+quote" end="^```\(\s\|$\)"
|
||||
|
||||
"% "Endnotes:
|
||||
" regular endnote or asterisk or plus sign endnote
|
||||
@ -138,7 +148,7 @@ syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endn
|
||||
"% "Font Face Curly Brackets:
|
||||
"syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_sem start="\S\+:{" end="}:[^<>,.!?:; ]\+" oneline
|
||||
" book index:
|
||||
syn region sisu_index matchgroup=sisu_index_block start="^={" end="}"
|
||||
syn region sisu_index contains=sisu_within_index_ignore,sisu_within_index matchgroup=sisu_index_block start="^={" end="}"
|
||||
" emphasis:
|
||||
syn region sisu_bold contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\*{" end="}\*"
|
||||
" bold:
|
||||
@ -246,6 +256,8 @@ hi def link sisu_index SpecialKey
|
||||
hi def link sisu_index_block Visual
|
||||
hi def link sisu_content_endnote Special
|
||||
hi def link sisu_control Delimiter
|
||||
hi def link sisu_within_index Delimiter
|
||||
hi def link sisu_within_index_ignore SpecialKey
|
||||
hi def link sisu_ocn Include
|
||||
hi def link sisu_number Number
|
||||
hi def link sisu_identifier Function
|
||||
|
@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: TeX
|
||||
" Maintainer: Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM>
|
||||
" Last Change: Mar 20, 2014
|
||||
" Version: 81
|
||||
" Last Change: Sep 09, 2014
|
||||
" Version: 82
|
||||
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TEX
|
||||
"
|
||||
" Notes: {{{1
|
||||
@ -88,6 +88,12 @@ if !exists("g:tex_conceal")
|
||||
else
|
||||
let s:tex_conceal= g:tex_conceal
|
||||
endif
|
||||
if !exists("g:tex_superscripts")
|
||||
let g:tex_superscripts= "[0-9a-zA-W.,:;+-<>/()=]"
|
||||
endif
|
||||
if !exists("g:tex_subscripts")
|
||||
let g:tex_subscripts= "[0-9aehijklmnoprstuvx,+-/().]"
|
||||
endif
|
||||
|
||||
" Determine whether or not to use "*.sty" mode {{{1
|
||||
" The user may override the normal determination by setting
|
||||
@ -331,22 +337,22 @@ syn match texSpaceCodeChar "`\\\=.\(\^.\)\==\(\d\|\"\x\{1,6}\|`.\)" contained
|
||||
if s:tex_fast =~ 'p'
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
if g:tex_fold_enabled && has("folding")
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup,@Spell
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup,@Spell
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texPartGroup,@Spell
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texChapterGroup,@Spell
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSectionGroup,@Spell
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup,@Spell
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup,@Spell
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texParaGroup,@Spell
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@Spell
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup,@Spell
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup,@Spell
|
||||
else
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup,@Spell
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup,@Spell
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup,@Spell
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup,@Spell
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup,@Spell
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup,@Spell
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup,@Spell
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup,@Spell
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@Spell
|
||||
@ -355,22 +361,22 @@ if s:tex_fast =~ 'p'
|
||||
endif
|
||||
else
|
||||
if g:tex_fold_enabled && has("folding")
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texPartGroup
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texChapterGroup
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSectionGroup
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSubSectionGroup
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texParaGroup
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup
|
||||
else
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup
|
||||
@ -620,7 +626,7 @@ if s:tex_fast =~ 'r'
|
||||
syn region texRefZone matchgroup=texStatement start="\\\(page\|eq\)ref{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\v\=ref{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefOption contained matchgroup=Delimiter start='\[' end=']' contains=@texRefGroup,texRefZone nextgroup=texRefOption,texCite
|
||||
syn region texCite contained matchgroup=Delimiter start='{' end='}' contains=@texRefGroup,texRefZone,texCite
|
||||
syn region texCite contained matchgroup=Delimiter start='{' end='}' contains=@texRefGroup,texRefZone,texCite
|
||||
endif
|
||||
syn match texRefZone '\\cite\%([tp]\*\=\)\=' nextgroup=texRefOption,texCite
|
||||
|
||||
@ -1045,8 +1051,11 @@ if has("conceal") && &enc == 'utf-8'
|
||||
syn region texSubscript matchgroup=Delimiter start='_{' skip="\\\\\|\\[{}]" end='}' contained concealends contains=texSpecialChar,texSubscripts,texStatement,texSubscript,texSuperscript,texMathMatcher
|
||||
endif
|
||||
fun! s:SuperSub(group,leader,pat,cchar)
|
||||
exe 'syn match '.a:group." '".a:leader.a:pat."' contained conceal cchar=".a:cchar
|
||||
exe 'syn match '.a:group."s '".a:pat."' contained conceal cchar=".a:cchar.' nextgroup='.a:group.'s'
|
||||
if a:pat =~ '^\\' || (a:leader == '\^' && a:pat =~ g:tex_superscripts) || (a:leader == '_' && a:pat =~ g:tex_subscripts)
|
||||
" call Decho("SuperSub: group<".a:group."> leader<".a:leader."> pat<".a:pat."> cchar<".a:cchar.">")
|
||||
exe 'syn match '.a:group." '".a:leader.a:pat."' contained conceal cchar=".a:cchar
|
||||
exe 'syn match '.a:group."s '".a:pat."' contained conceal cchar=".a:cchar.' nextgroup='.a:group.'s'
|
||||
endif
|
||||
endfun
|
||||
call s:SuperSub('texSuperscript','\^','0','⁰')
|
||||
call s:SuperSub('texSuperscript','\^','1','¹')
|
||||
@ -1170,44 +1179,44 @@ if has("conceal") && &enc == 'utf-8'
|
||||
let i= i + 1
|
||||
endfor
|
||||
endfun
|
||||
" \` \' \^ \" \~ \. \= \c \H \k \r \u \v
|
||||
call s:Accents('a','à','á','â','ä','ã','ȧ','ā',' ',' ','ą','å','ă','ǎ')
|
||||
call s:Accents('A','À','Á','Â','Ä','Ã','Ȧ','Ā',' ',' ','Ą','Å','Ă','Ǎ')
|
||||
call s:Accents('c',' ','ć','ĉ',' ',' ','ċ',' ','ç',' ',' ',' ',' ','č')
|
||||
call s:Accents('C',' ','Ć','Ĉ',' ',' ','Ċ',' ','Ç',' ',' ',' ',' ','Č')
|
||||
call s:Accents('d',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ď')
|
||||
call s:Accents('D',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ď')
|
||||
call s:Accents('e','è','é','ê','ë','ẽ','ė','ē','ȩ',' ','ę',' ','ĕ','ě')
|
||||
call s:Accents('E','È','É','Ê','Ë','Ẽ','Ė','Ē','Ȩ',' ','Ę',' ','Ĕ','Ě')
|
||||
call s:Accents('g',' ','ǵ','ĝ',' ',' ','ġ',' ','ģ',' ',' ',' ','ğ','ǧ')
|
||||
call s:Accents('G',' ','Ǵ','Ĝ',' ',' ','Ġ',' ','Ģ',' ',' ',' ','Ğ','Ǧ')
|
||||
call s:Accents('h',' ',' ','ĥ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ȟ')
|
||||
call s:Accents('H',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ȟ')
|
||||
call s:Accents('i','ì','í','î','ï','ĩ','į','ī',' ',' ','į',' ','ĭ','ǐ')
|
||||
call s:Accents('I','Ì','Í','Î','Ï','Ĩ','İ','Ī',' ',' ','Į',' ','Ĭ','Ǐ')
|
||||
call s:Accents('J',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ǰ')
|
||||
call s:Accents('k',' ',' ',' ',' ',' ',' ',' ','ķ',' ',' ',' ',' ','ǩ')
|
||||
call s:Accents('K',' ',' ',' ',' ',' ',' ',' ','Ķ',' ',' ',' ',' ','Ǩ')
|
||||
call s:Accents('l',' ','ĺ','ľ',' ',' ',' ',' ','ļ',' ',' ',' ',' ','ľ')
|
||||
call s:Accents('L',' ','Ĺ','Ľ',' ',' ',' ',' ','Ļ',' ',' ',' ',' ','Ľ')
|
||||
call s:Accents('n',' ','ń',' ',' ','ñ',' ',' ','ņ',' ',' ',' ',' ','ň')
|
||||
call s:Accents('N',' ','Ń',' ',' ','Ñ',' ',' ','Ņ',' ',' ',' ',' ','Ň')
|
||||
call s:Accents('o','ò','ó','ô','ö','õ','ȯ','ō',' ','ő','ǫ',' ','ŏ','ǒ')
|
||||
call s:Accents('O','Ò','Ó','Ô','Ö','Õ','Ȯ','Ō',' ','Ő','Ǫ',' ','Ŏ','Ǒ')
|
||||
call s:Accents('r',' ','ŕ',' ',' ',' ',' ',' ','ŗ',' ',' ',' ',' ','ř')
|
||||
call s:Accents('R',' ','Ŕ',' ',' ',' ',' ',' ','Ŗ',' ',' ',' ',' ','Ř')
|
||||
call s:Accents('s',' ','ś','ŝ',' ',' ',' ',' ','ş',' ','ȿ',' ',' ','š')
|
||||
call s:Accents('S',' ','Ś','Ŝ',' ',' ',' ',' ','Ş',' ',' ',' ',' ','Š')
|
||||
call s:Accents('t',' ',' ',' ',' ',' ',' ',' ','ţ',' ',' ',' ',' ','ť')
|
||||
call s:Accents('T',' ',' ',' ',' ',' ',' ',' ','Ţ',' ',' ',' ',' ','Ť')
|
||||
call s:Accents('u','ù','ú','û','ü','ũ',' ','ū',' ','ű','ų','ů','ŭ','ǔ')
|
||||
call s:Accents('U','Ù','Ú','Û','Ü','Ũ',' ','Ū',' ','Ű','Ų','Ů','Ŭ','Ǔ')
|
||||
call s:Accents('w',' ',' ','ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('W',' ',' ','Ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('y','ỳ','ý','ŷ','ÿ','ỹ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('Y','Ỳ','Ý','Ŷ','Ÿ','Ỹ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('z',' ','ź',' ',' ',' ','ż',' ',' ',' ',' ',' ',' ','ž')
|
||||
call s:Accents('Z',' ','Ź',' ',' ',' ','Ż',' ',' ',' ',' ',' ',' ','Ž')
|
||||
" \` \' \^ \" \~ \. \= \c \H \k \r \u \v
|
||||
call s:Accents('a','à','á','â','ä','ã','ȧ','ā',' ',' ','ą','å','ă','ǎ')
|
||||
call s:Accents('A','À','Á','Â','Ä','Ã','Ȧ','Ā',' ',' ','Ą','Å','Ă','Ǎ')
|
||||
call s:Accents('c',' ','ć','ĉ',' ',' ','ċ',' ','ç',' ',' ',' ',' ','č')
|
||||
call s:Accents('C',' ','Ć','Ĉ',' ',' ','Ċ',' ','Ç',' ',' ',' ',' ','Č')
|
||||
call s:Accents('d',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ď')
|
||||
call s:Accents('D',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ď')
|
||||
call s:Accents('e','è','é','ê','ë','ẽ','ė','ē','ȩ',' ','ę',' ','ĕ','ě')
|
||||
call s:Accents('E','È','É','Ê','Ë','Ẽ','Ė','Ē','Ȩ',' ','Ę',' ','Ĕ','Ě')
|
||||
call s:Accents('g',' ','ǵ','ĝ',' ',' ','ġ',' ','ģ',' ',' ',' ','ğ','ǧ')
|
||||
call s:Accents('G',' ','Ǵ','Ĝ',' ',' ','Ġ',' ','Ģ',' ',' ',' ','Ğ','Ǧ')
|
||||
call s:Accents('h',' ',' ','ĥ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ȟ')
|
||||
call s:Accents('H',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ȟ')
|
||||
call s:Accents('i','ì','í','î','ï','ĩ','į','ī',' ',' ','į',' ','ĭ','ǐ')
|
||||
call s:Accents('I','Ì','Í','Î','Ï','Ĩ','İ','Ī',' ',' ','Į',' ','Ĭ','Ǐ')
|
||||
call s:Accents('J',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ǰ')
|
||||
call s:Accents('k',' ',' ',' ',' ',' ',' ',' ','ķ',' ',' ',' ',' ','ǩ')
|
||||
call s:Accents('K',' ',' ',' ',' ',' ',' ',' ','Ķ',' ',' ',' ',' ','Ǩ')
|
||||
call s:Accents('l',' ','ĺ','ľ',' ',' ',' ',' ','ļ',' ',' ',' ',' ','ľ')
|
||||
call s:Accents('L',' ','Ĺ','Ľ',' ',' ',' ',' ','Ļ',' ',' ',' ',' ','Ľ')
|
||||
call s:Accents('n',' ','ń',' ',' ','ñ',' ',' ','ņ',' ',' ',' ',' ','ň')
|
||||
call s:Accents('N',' ','Ń',' ',' ','Ñ',' ',' ','Ņ',' ',' ',' ',' ','Ň')
|
||||
call s:Accents('o','ò','ó','ô','ö','õ','ȯ','ō',' ','ő','ǫ',' ','ŏ','ǒ')
|
||||
call s:Accents('O','Ò','Ó','Ô','Ö','Õ','Ȯ','Ō',' ','Ő','Ǫ',' ','Ŏ','Ǒ')
|
||||
call s:Accents('r',' ','ŕ',' ',' ',' ',' ',' ','ŗ',' ',' ',' ',' ','ř')
|
||||
call s:Accents('R',' ','Ŕ',' ',' ',' ',' ',' ','Ŗ',' ',' ',' ',' ','Ř')
|
||||
call s:Accents('s',' ','ś','ŝ',' ',' ',' ',' ','ş',' ','ȿ',' ',' ','š')
|
||||
call s:Accents('S',' ','Ś','Ŝ',' ',' ',' ',' ','Ş',' ',' ',' ',' ','Š')
|
||||
call s:Accents('t',' ',' ',' ',' ',' ',' ',' ','ţ',' ',' ',' ',' ','ť')
|
||||
call s:Accents('T',' ',' ',' ',' ',' ',' ',' ','Ţ',' ',' ',' ',' ','Ť')
|
||||
call s:Accents('u','ù','ú','û','ü','ũ',' ','ū',' ','ű','ų','ů','ŭ','ǔ')
|
||||
call s:Accents('U','Ù','Ú','Û','Ü','Ũ',' ','Ū',' ','Ű','Ų','Ů','Ŭ','Ǔ')
|
||||
call s:Accents('w',' ',' ','ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('W',' ',' ','Ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('y','ỳ','ý','ŷ','ÿ','ỹ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('Y','Ỳ','Ý','Ŷ','Ÿ','Ỹ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('z',' ','ź',' ',' ',' ','ż',' ',' ',' ',' ',' ',' ','ž')
|
||||
call s:Accents('Z',' ','Ź',' ',' ',' ','Ż',' ',' ',' ',' ',' ',' ','Ž')
|
||||
call s:Accents('\\i','ì','í','î','ï','ĩ','į',' ',' ',' ',' ',' ','ĭ',' ')
|
||||
" \` \' \^ \" \~ \. \= \c \H \k \r \u \v
|
||||
delfun s:Accents
|
||||
@ -1252,7 +1261,7 @@ endif
|
||||
if did_tex_syntax_inits == 1
|
||||
let did_tex_syntax_inits= 2
|
||||
" TeX highlighting groups which should share similar highlighting
|
||||
if !exists("s:tex_no_error")
|
||||
if !exists("g:tex_no_error")
|
||||
if !exists("g:tex_no_math")
|
||||
HiLink texBadMath texError
|
||||
HiLink texMathDelimBad texError
|
||||
|
@ -2,9 +2,11 @@
|
||||
" Language: Valgrind Memory Debugger Output
|
||||
" Maintainer: Roger Luethi <rl@hellgate.ch>
|
||||
" Program URL: http://devel-home.kde.org/~sewardj/
|
||||
" Last Change: 2012 Apr 30
|
||||
" Last Change: 2014 Oct 02
|
||||
"
|
||||
" Notes: mostly based on strace.vim and xml.vim
|
||||
"
|
||||
" Contributors: Christoph Gysin <christoph.gysin@gmail.com>
|
||||
|
||||
" Quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@ -65,7 +67,7 @@ syn match valgrindAt "at\s\@=" contained
|
||||
syn match valgrindAddr "\(\W\)\@<=0x\x\+" contained
|
||||
syn match valgrindFunc "\(: \)\@<=\w\+" contained
|
||||
syn match valgrindBin "\((\(with\|\)in \)\@<=\S\+\()\)\@=" contained
|
||||
syn match valgrindSrc "\((\)\@<=.*:\d\+\()\)\@=" contained
|
||||
syn match valgrindSrc "\((\)\@<=[^)]*:\d\+\()\)\@=" contained
|
||||
|
||||
" Define the default highlighting
|
||||
|
||||
|
113
runtime/syntax/vroom.vim
Normal file
113
runtime/syntax/vroom.vim
Normal file
@ -0,0 +1,113 @@
|
||||
" Vim syntax file
|
||||
" Language: Vroom (vim testing and executable documentation)
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-vroom)
|
||||
" Last Change: 2014 Jul 23
|
||||
|
||||
" For version 5.x: Clear all syntax items.
|
||||
" For version 6.x and later: Quit when a syntax file was already loaded.
|
||||
if v:version < 600
|
||||
syntax clear
|
||||
elseif exists('b:current_syntax')
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
|
||||
syn include @vroomVim syntax/vim.vim
|
||||
syn include @vroomShell syntax/sh.vim
|
||||
|
||||
syntax region vroomAction
|
||||
\ matchgroup=vroomOutput
|
||||
\ start='\m^ ' end='\m$' keepend
|
||||
\ contains=vroomControlBlock
|
||||
|
||||
syntax region vroomAction
|
||||
\ matchgroup=vroomOutput
|
||||
\ start='\m^ & ' end='\m$' keepend
|
||||
\ contains=vroomControlBlock
|
||||
|
||||
syntax match vroomOutput '\m^ &$'
|
||||
|
||||
syntax region vroomMessageBody
|
||||
\ matchgroup=vroomMessage
|
||||
\ start='\m^ \~ ' end='\m$' keepend
|
||||
\ contains=vroomControlBlock
|
||||
|
||||
syntax region vroomColoredAction
|
||||
\ matchgroup=vroomInput
|
||||
\ start='\m^ > ' end='\m$' keepend
|
||||
\ contains=vimNotation,vroomControlBlock
|
||||
syntax region vroomAction
|
||||
\ matchgroup=vroomInput
|
||||
\ start='\m^ % ' end='\m$' keepend
|
||||
\ contains=vimNotation,vroomControlBlock
|
||||
|
||||
syntax region vroomAction
|
||||
\ matchgroup=vroomContinuation
|
||||
\ start='\m^ |' end='\m$' keepend
|
||||
|
||||
syntax region vroomAction
|
||||
\ start='\m^ \ze:' end='\m$' keepend
|
||||
\ contains=@vroomVim,vroomControlBlock
|
||||
|
||||
syntax region vroomAction
|
||||
\ matchgroup=vroomDirective
|
||||
\ start='\m^ @\i\+' end='\m$' keepend
|
||||
\ contains=vroomControlBlock
|
||||
|
||||
syntax region vroomSystemAction
|
||||
\ matchgroup=vroomSystem
|
||||
\ start='\m^ ! ' end='\m$' keepend
|
||||
\ contains=@vroomShell,vroomControlBlock
|
||||
|
||||
syntax region vroomHijackAction
|
||||
\ matchgroup=vroomHijack
|
||||
\ start='\m^ \$ ' end='\m$' keepend
|
||||
\ contains=vroomControlBlock
|
||||
|
||||
syntax match vroomControlBlock contains=vroomControlEscape,@vroomControls
|
||||
\ '\v \([^&()][^()]*\)$'
|
||||
|
||||
syntax match vroomControlEscape '\m&' contained
|
||||
|
||||
syntax cluster vroomControls
|
||||
\ contains=vroomDelay,vroomMode,vroomBuffer,vroomRange
|
||||
\,vroomChannel,vroomBind,vroomStrictness
|
||||
syntax match vroomRange '\v\.(,\+?(\d+|\$)?)?' contained
|
||||
syntax match vroomRange '\v\d*,\+?(\d+|\$)?' contained
|
||||
syntax match vroomBuffer '\v\d+,@!' contained
|
||||
syntax match vroomDelay '\v\d+(\.\d+)?s' contained
|
||||
syntax match vroomMode '\v<%(regex|glob|verbatim)' contained
|
||||
syntax match vroomChannel '\v<%(stderr|stdout|command|status)>' contained
|
||||
syntax match vroomBind '\v<bind>' contained
|
||||
syntax match vroomStrictness '\v\<%(STRICT|RELAXED|GUESS-ERRORS)\>' contained
|
||||
|
||||
highlight default link vroomInput Identifier
|
||||
highlight default link vroomDirective vroomInput
|
||||
highlight default link vroomControlBlock vroomInput
|
||||
highlight default link vroomSystem vroomInput
|
||||
highlight default link vroomOutput Statement
|
||||
highlight default link vroomContinuation Constant
|
||||
highlight default link vroomHijack Special
|
||||
highlight default link vroomColoredAction Statement
|
||||
highlight default link vroomSystemAction vroomSystem
|
||||
highlight default link vroomHijackAction vroomHijack
|
||||
highlight default link vroomMessage vroomOutput
|
||||
highlight default link vroomMessageBody Constant
|
||||
|
||||
highlight default link vroomControlEscape Special
|
||||
highlight default link vroomBuffer vroomInput
|
||||
highlight default link vroomRange Include
|
||||
highlight default link vroomMode Constant
|
||||
highlight default link vroomDelay Type
|
||||
highlight default link vroomStrictness vroomMode
|
||||
highlight default link vroomChannel vroomMode
|
||||
highlight default link vroomBind vroomMode
|
||||
|
||||
let b:current_syntax = 'vroom'
|
||||
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Zimbu
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Last Change: 2012 Jun 01
|
||||
" Last Change: 2014 Nov 23
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
@ -12,7 +12,10 @@ syn include @Ccode syntax/c.vim
|
||||
syn keyword zimbuTodo TODO FIXME XXX contained
|
||||
syn match zimbuNoBar "|" contained
|
||||
syn match zimbuParam "|[^| ]\+|" contained contains=zimbuNoBar
|
||||
syn match zimbuComment "#.*$" contains=zimbuTodo,zimbuParam,@Spell
|
||||
syn match zimbuNoBacktick "`" contained
|
||||
syn match zimbuCode "`[^`]\+`" contained contains=zimbuNoBacktick
|
||||
syn match zimbuComment "#.*$" contains=zimbuTodo,zimbuParam,zimbuCode,@Spell
|
||||
syn match zimbuComment "/\*.\{-}\*/" contains=zimbuTodo,zimbuParam,zimbuCode,@Spell
|
||||
|
||||
syn match zimbuChar "'\\\=.'"
|
||||
|
||||
@ -28,27 +31,32 @@ syn keyword zimbuBasicType fixed1 fixed2 fixed3 fixed4 fixed5 fixed6
|
||||
syn keyword zimbuBasicType fixed7 fixed8 fixed9 fixed10 fixed11 fixed12
|
||||
syn keyword zimbuBasicType fixed13 fixed14 fixed15
|
||||
|
||||
syn keyword zimbuCompType string stringval cstring varstring
|
||||
syn keyword zimbuCompType bytes varbytes
|
||||
syn keyword zimbuCompType tuple array list dict multiDict set multiSet
|
||||
syn keyword zimbuCompType string varString
|
||||
syn keyword zimbuCompType byteString varByteString
|
||||
syn keyword zimbuCompType tuple array list dict dictList set callback
|
||||
syn keyword zimbuCompType sortedList multiDict multiDictList multiSet
|
||||
syn keyword zimbuCompType complex complex32 complex64 complex80 complex128
|
||||
syn keyword zimbuCompType proc func def thread evalThread lock cond pipe
|
||||
|
||||
syn keyword zimbuType VAR ANY USE GET
|
||||
syn keyword zimbuType VAR dyn type USE GET
|
||||
syn match zimbuType "IO.File"
|
||||
syn match zimbuType "IO.Stat"
|
||||
|
||||
syn keyword zimbuStatement IF ELSE ELSEIF WHILE REPEAT FOR IN TO STEP
|
||||
syn keyword zimbuStatement IF ELSE ELSEIF IFNIL WHILE REPEAT FOR IN TO STEP
|
||||
syn keyword zimbuStatement DO UNTIL SWITCH WITH
|
||||
syn keyword zimbuStatement TRY CATCH FINALLY
|
||||
syn keyword zimbuStatement GENERATE_IF GENERATE_ELSE GENERATE_ELSEIF
|
||||
syn keyword zimbuStatement GENERATE_ERROR
|
||||
syn keyword zimbuStatement BUILD_IF BUILD_ELSE BUILD_ELSEIF
|
||||
syn keyword zimbuStatement CASE DEFAULT FINAL ABSTRACT VIRTUAL DEFINE REPLACE
|
||||
syn keyword zimbuStatement IMPLEMENTS EXTENDS PARENT LOCAL
|
||||
syn keyword zimbuStatement PART ALIAS CONNECT WRAP
|
||||
syn keyword zimbuStatement PART ALIAS TYPE CONNECT WRAP
|
||||
syn keyword zimbuStatement BREAK CONTINUE PROCEED
|
||||
syn keyword zimbuStatement RETURN EXIT THROW
|
||||
syn keyword zimbuStatement RETURN EXIT THROW DEFER
|
||||
syn keyword zimbuStatement IMPORT AS OPTIONS MAIN
|
||||
syn keyword zimbuStatement INTERFACE MODULE ENUM BITS SHARED
|
||||
syn keyword zimbuStatement INTERFACE PIECE INCLUDE MODULE ENUM BITS
|
||||
syn keyword zimbuStatement SHARED STATIC
|
||||
syn keyword zimbuStatement LAMBDA
|
||||
syn match zimbuStatement "\<\(FUNC\|PROC\|DEF\)\>"
|
||||
syn match zimbuStatement "\<CLASS\>"
|
||||
syn match zimbuStatement "}"
|
||||
@ -61,10 +69,13 @@ syn match zimbuAttribute "@default\>"
|
||||
syn match zimbuAttribute "@define\>"
|
||||
syn match zimbuAttribute "@replace\>"
|
||||
syn match zimbuAttribute "@final\>"
|
||||
syn match zimbuAttribute "@primitive\>"
|
||||
syn match zimbuAttribute "@notOnExit\>"
|
||||
|
||||
syn match zimbuAttribute "@private\>"
|
||||
syn match zimbuAttribute "@protected\>"
|
||||
syn match zimbuAttribute "@public\>"
|
||||
syn match zimbuAttribute "@local\>"
|
||||
syn match zimbuAttribute "@file\>"
|
||||
syn match zimbuAttribute "@directory\>"
|
||||
syn match zimbuAttribute "@read=private\>"
|
||||
@ -78,15 +89,22 @@ syn match zimbuAttribute "@items=public\>"
|
||||
syn match zimbuAttribute "@items=file\>"
|
||||
syn match zimbuAttribute "@items=directory\>"
|
||||
|
||||
syn keyword zimbuMethod NEW EQUAL COPY COMPARE SIZE GET SET
|
||||
syn keyword zimbuMethod NEW EQUAL COPY COMPARE SIZE GET SET INIT EARLYINIT
|
||||
|
||||
syn keyword zimbuOperator IS ISNOT ISA ISNOTA
|
||||
|
||||
syn keyword zimbuModule ARG CHECK E IO PROTO SYS HTTP ZC ZWT TIME THREAD
|
||||
syn keyword zimbuModule ARG CHECK E GC IO LOG PROTO SYS HTTP ZC ZWT T TIME THREAD
|
||||
|
||||
syn match zimbuString +"\([^"\\]\|\\.\)*\("\|$\)+
|
||||
syn match zimbuImport "\.\zsPROTO"
|
||||
syn match zimbuImport "\.\zsCHEADER"
|
||||
|
||||
"syn match zimbuString +"\([^"\\]\|\\.\)*\("\|$\)+ contains=zimbuStringExpr
|
||||
syn region zimbuString start=+"+ skip=+[^"\\]\|\\.+ end=+"\|$+ contains=zimbuStringExpr
|
||||
syn match zimbuString +R"\([^"]\|""\)*\("\|$\)+
|
||||
syn region zimbuString start=+'''+ end=+'''+
|
||||
syn region zimbuLongString start=+''"+ end=+"''+
|
||||
syn match zimbuStringExpr +\\([^)]*)+hs=s+2,he=e-1 contained contains=zimbuString,zimbuParenPairOuter
|
||||
syn region zimbuParenPairOuter start=+(+ms=s+1 end=+)+me=e-1 contained contains=zimbuString,zimbuParenPair
|
||||
syn region zimbuParenPair start=+(+ end=+)+ contained contains=zimbuString,zimbuParenPair
|
||||
|
||||
syn keyword zimbuFixed TRUE FALSE NIL THIS THISTYPE FAIL OK
|
||||
syn keyword zimbuError NULL
|
||||
@ -97,12 +115,18 @@ syn match zimbuSpaceError display excludenl "\S\s\+$"ms=s+1
|
||||
syn match zimbuSpaceError display " \+\t"
|
||||
syn match zimbuSpaceError display "\t\+ "
|
||||
|
||||
syn match zimbuUses contained "uses([a-zA-Z_ ,]*)"
|
||||
syn match zimbuUses contained "\<uses([a-zA-Z_ ,]*)"
|
||||
syn match zimbuBlockgc contained "blockgc"
|
||||
syn match zimbuBlockComment contained " #.*"
|
||||
|
||||
syn region zimbuCregion matchgroup=zimbuCblock start="^>>>" end="^<<<.*" contains=@Ccode,zimbuUses,zimbuBlockComment keepend
|
||||
syn region zimbuCregion matchgroup=zimbuCblock start="^>>>" end="^<<<.*" contains=@Ccode,zimbuUses,zimbuBlockgc,zimbuBlockComment keepend
|
||||
|
||||
syn sync minlines=2000
|
||||
" Assume long strings and C regions don't take more than 200 lines.
|
||||
syn sync minlines=200
|
||||
|
||||
" When we find the start of a long string, without a # or " before it, we are
|
||||
" sure to be inside a long string.
|
||||
syn sync match zimbuLongStringSync grouphere zimbuLongString +^[^"#]*''\"+
|
||||
|
||||
hi def link zimbuBasicType Type
|
||||
hi def link zimbuCompType Type
|
||||
@ -111,17 +135,23 @@ hi def link zimbuStatement Statement
|
||||
hi def link zimbuOperator Statement
|
||||
hi def link zimbuMethod PreProc
|
||||
hi def link zimbuModule PreProc
|
||||
hi def link zimbuImport PreProc
|
||||
hi def link zimbuUses PreProc
|
||||
hi def link zimbuBlockgc PreProc
|
||||
hi def link zimbuAttribute PreProc
|
||||
hi def link zimbuString Constant
|
||||
hi def link zimbuLongString Special
|
||||
hi def link zimbuChar Constant
|
||||
hi def link zimbuFixed Constant
|
||||
hi def link zimbuComment Comment
|
||||
hi def link zimbuCommentStart zimbuComment
|
||||
hi def link zimbuBlockComment Comment
|
||||
hi def link zimbuCblock Comment
|
||||
hi def link zimbuTodo Todo
|
||||
hi def link zimbuParam Constant
|
||||
hi def link zimbuCode Statement
|
||||
hi def link zimbuNoBar Ignore
|
||||
hi def link zimbuNoBacktick Ignore
|
||||
hi def link zimbuSpaceError Error
|
||||
hi def link zimbuError Error
|
||||
|
||||
|
@ -121,7 +121,7 @@ NOTA: A medida que vaya avanzando en este tutor no intente memorizar,
|
||||
h (izquierda) j (abajo) k (arriba) l (derecha)
|
||||
|
||||
2. Para acceder a Vim (desde el símbolo del sistema %) escriba:
|
||||
vin FILENAME <INTRO>
|
||||
vim FILENAME <INTRO>
|
||||
|
||||
3. Para salir de Vim escriba: <ESC> :q! <INTRO> para eliminar todos
|
||||
los cambios.
|
||||
|
@ -1029,10 +1029,10 @@ NOTE : Le compl
|
||||
des Mines du Colorado et reprend des id<69>es fournies par Charles Smith,
|
||||
Universit<69> d'<27>tat du Colorado. E-mail : bware@mines.colorado.edu.
|
||||
|
||||
Modifi<66> pour Vim par Bram Moolenar.
|
||||
Modifi<66> pour Vim par Bram Moolenaar.
|
||||
Traduit en fran<61>ais par Adrien Beau, en avril 2001.
|
||||
Derni<6E>res mises <20> jour par Dominique Pell<6C>.
|
||||
|
||||
E-mail : dominique.pelle@gmail.com
|
||||
Last Change : 2013 May 10
|
||||
Last Change : 2014 Aug 18
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -1029,10 +1029,10 @@ NOTE : Le complètement fonctionne pour de nombreuses commandes. Essayez
|
||||
des Mines du Colorado et reprend des idées fournies par Charles Smith,
|
||||
Université d'État du Colorado. E-mail : bware@mines.colorado.edu.
|
||||
|
||||
Modifié pour Vim par Bram Moolenar.
|
||||
Modifié pour Vim par Bram Moolenaar.
|
||||
Traduit en français par Adrien Beau, en avril 2001.
|
||||
Dernières mises à jour par Dominique Pellé.
|
||||
|
||||
E-mail : dominique.pelle@gmail.com
|
||||
Last Change : 2013 May 10
|
||||
Last Change : 2014 Aug 18
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -55,8 +55,7 @@ NOTE:
|
||||
2. <20><><EFBFBD>Τ褦<CEA4>˥<EFBFBD><CBA5><EFBFBD><EFBFBD><EFBFBD>: :q! <ENTER>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD><CBA4><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4><EFBFBD>¸<EFBFBD><C2B8><EFBFBD><EFBFBD><EFBFBD>˥<EFBFBD><CBA5>ǥ<EFBFBD><C7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
3. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץȤ<EFBFBD><EFBFBD>ФƤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>顢<EFBFBD><EFBFBD><EFBFBD>Υ<EFBFBD><EFBFBD>塼<EFBFBD>ȥꥢ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>٤ˤ˥<EFBFBD><EFBFBD>ޥ<EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
3. <20><><EFBFBD>Υ<EFBFBD><EFBFBD>塼<EFBFBD>ȥꥢ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>٤Υ<EFBFBD><EFBFBD>ޥ<EFBFBD><EFBFBD>ɤ<EFBFBD><EFBFBD>¹Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD>Υ<EFBFBD><CEA5>ޥ<EFBFBD><DEA5>ɤ<EFBFBD>: vimtutor <ENTER>
|
||||
|
||||
4. <20><><EFBFBD><EFBFBD><EFBFBD>ޤǤΥ<C7A4><CEA5>ƥåפ<C3A5><D7A4>Ф<EFBFBD><D0A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĥ<EFBFBD><C4A4><EFBFBD><EFBFBD>ʤ<EFBFBD><CAA4>С<EFBFBD><D0A1><EFBFBD><EFBFBD>ƥå<C6A5> 1 <20><><EFBFBD><EFBFBD> 3 <20>ޤǤ<DEA4><C7A4><EFBFBD>
|
||||
@ -904,7 +903,7 @@ NOTE: 1
|
||||
|
||||
** CTRL-D <20><> <TAB> <20>ǥ<EFBFBD><C7A5>ޥ<EFBFBD><DEA5>ɥ饤<C9A5><E9A5A4><EFBFBD><EFBFBD><EFBFBD>䴰<EFBFBD><E4B4B0><EFBFBD><EFBFBD> **
|
||||
|
||||
1. <20><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѥ<EFBFBD><EFBFBD>⡼<EFBFBD>ɤǤʤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD><EFBFBD>ǧ<EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD>: :set nocp
|
||||
1. <20>ߴ<EFBFBD><EFBFBD>⡼<EFBFBD>ɤǤʤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD><EFBFBD>ǧ<EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD>: :set nocp
|
||||
|
||||
2. <20><><EFBFBD>ߤΥǥ<CEA5><C7A5>쥯<EFBFBD>ȥ<EFBFBD><C8A5>˺ߤ<CBBA><DFA4>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> :!ls <20><> :!dir <20>dz<EFBFBD>ǧ<EFBFBD><C7A7><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
@ -949,7 +948,7 @@ NOTE:
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD> Vim <20>Υ<EFBFBD><CEA5>塼<EFBFBD>ȥꥢ<C8A5><EAA5A2><EFBFBD><EFBFBD><F2BDAAA4><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><C7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⽼ʬ<E2BDBC><CAAC>
|
||||
<20>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>Ǥ<EFBFBD><C7A4><EFBFBD><EFBFBD>褦<EFBFBD>ˤȡ<CBA4>Vim <20>λ<EFBFBD><CEBB>ij<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Τߤ<CEA4><DFA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>褦<EFBFBD>Ȥ<EFBFBD><C8A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>
|
||||
Vim <20>ˤϤ<CBA4><CFA4><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD><C2BF><EFBFBD>Υ<EFBFBD><CEA5>ޥ<EFBFBD><DEA5>ɤ<EFBFBD><C9A4><EFBFBD><EFBFBD>ꡢ<EFBFBD><EAA1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뤳<EFBFBD>ȤϤǤ<CFA4><C7A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20>ʹߤϥ桼<CFA5><E6A1BC><EFBFBD>ޥ˥奢<CBA5><E5A5A2><EFBFBD>Ȥ<F2BBB2BE><C8A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ":help user-manual"
|
||||
<20>ʹߤϥ桼<CFA5><E6A1BC><EFBFBD><EFBFBD><EFBFBD>ޥ˥奢<EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ":help user-manual"
|
||||
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8>γؽ<CEB3><D8BD>Τ<EFBFBD><CEA4><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܤ<EFBFBD><DCA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
Vim - Vi Improved - by Steve Oualline
|
||||
|
@ -55,8 +55,7 @@ NOTE:
|
||||
2. <20><><EFBFBD>̂悤<CC82>Ƀ^<5E>C<EFBFBD>v: :q! <ENTER>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>ҏW<D28F><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD><65><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɃG<C983>f<EFBFBD>B<EFBFBD>^<5E><><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
3. <20>V<EFBFBD>F<EFBFBD><EFBFBD><EFBFBD>v<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>g<EFBFBD><EFBFBD><EFBFBD>o<EFBFBD>Ă<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><EFBFBD><EFBFBD>̃`<60><><EFBFBD>[<5B>g<EFBFBD><67><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD>߂<EFBFBD><EFBFBD>ׂɂɃR<EFBFBD>}<7D><><EFBFBD>h
|
||||
<20><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82>B
|
||||
3. <20><><EFBFBD>̃`<60><><EFBFBD>[<5B>g<EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD>߂<EFBFBD><EFBFBD>ׂ̃R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƁA<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɖ߂<EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD>B
|
||||
<20><><EFBFBD>̃R<CC83>}<7D><><EFBFBD>h<EFBFBD><68>: vimtutor <ENTER>
|
||||
|
||||
4. <20><><EFBFBD><EFBFBD><EFBFBD>܂ł̃X<CC83>e<EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD>M<EFBFBD><4D><EFBFBD><EFBFBD><C282><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>A<CE81>X<EFBFBD>e<EFBFBD>b<EFBFBD>v 1 <20><><EFBFBD><EFBFBD> 3 <20>܂ł<DC82><C582><EFBFBD>
|
||||
@ -904,7 +903,7 @@ NOTE: 1
|
||||
|
||||
** CTRL-D <20><> <TAB> <20>ŃR<C583>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>⊮<EFBFBD><E28AAE><EFBFBD><EFBFBD> **
|
||||
|
||||
1. <20>R<EFBFBD><EFBFBD><EFBFBD>p<EFBFBD>`<EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>łȂ<C582><C882><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>m<EFBFBD>F<EFBFBD><46><EFBFBD>܂<EFBFBD>: :set nocp
|
||||
1. <20>݊<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>łȂ<C582><C882><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>m<EFBFBD>F<EFBFBD><46><EFBFBD>܂<EFBFBD>: :set nocp
|
||||
|
||||
2. <20><><EFBFBD>݂̃f<CC83>B<EFBFBD><42><EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD>ɍ݂<C98D><DD82>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD> :!ls <20><> :!dir <20>Ŋm<C58A>F<EFBFBD><46><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
@ -949,7 +948,7 @@ NOTE:
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD> Vim <20>̃`<60><><EFBFBD>[<5B>g<EFBFBD><67><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B<EFBFBD>G<EFBFBD>f<EFBFBD>B<EFBFBD>^<5E><><EFBFBD>ȒP<C892>ɁA<C981><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<5B><><EFBFBD><EFBFBD>
|
||||
<20>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>ł<EFBFBD><C582><EFBFBD><EFBFBD>悤<EFBFBD>ɂƁAVim <20>̎<EFBFBD><CC8E>T<C28A>O<EFBFBD>̗v<CC97>_<EFBFBD>݂̂<CC82><DD82>`<60><><EFBFBD>悤<EFBFBD>Ƃ<EFBFBD><C682>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
|
||||
Vim <20>ɂ͂<C982><CD82><EFBFBD><EFBFBD>ɑ<EFBFBD><C991><EFBFBD><EFBFBD>̃R<CC83>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>őS<C591>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>邱<EFBFBD>Ƃ͂ł<CD82><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
|
||||
<20>ȍ~<7E>̓<EFBFBD><CD83>[<5B>U<EFBFBD>}<7D>j<EFBFBD><6A><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>Q<EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ":help user-manual"
|
||||
<20>ȍ~<7E>̓<EFBFBD><CD83>[<5B>U<EFBFBD>[<5B>}<7D>j<EFBFBD><6A><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>Q<EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ":help user-manual"
|
||||
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>Ȍ<EFBFBD><C88C>̊w<CC8A>K<EFBFBD>̂<EFBFBD><CC82>߂ɁA<C981><41><EFBFBD>̖{<7B>𐄑E<F0908491><45><EFBFBD>܂<EFBFBD><DC82>B
|
||||
Vim - Vi Improved - by Steve Oualline
|
||||
|
@ -55,8 +55,7 @@ NOTE: カーソルキーでも移動できます。しかし hjkl に一度慣
|
||||
2. 次のようにタイプ: :q! <ENTER>
|
||||
これにより編集した内容を保存せずにエディタが終了します。
|
||||
|
||||
3. シェルプロンプトが出てきたら、このチュートリアルを始める為ににコマンド
|
||||
をタイプします。
|
||||
3. このチュートリアルを始める為のコマンドを実行すると、ここに戻れます。
|
||||
そのコマンドは: vimtutor <ENTER>
|
||||
|
||||
4. これまでのステップを覚え自信がついたならば、ステップ 1 から 3 までを実
|
||||
@ -904,7 +903,7 @@ NOTE: 1つの検索コマンドだけ大文字小文字の区別をやめたい
|
||||
|
||||
** CTRL-D と <TAB> でコマンドラインを補完する **
|
||||
|
||||
1. コンパチモードでないことを確認します: :set nocp
|
||||
1. 互換モードでないことを確認します: :set nocp
|
||||
|
||||
2. 現在のディレクトリに在るファイルを :!ls か :!dir で確認します。
|
||||
|
||||
@ -949,7 +948,7 @@ NOTE: 補完は多くのコマンドで動作します。そして CTRL-D と <T
|
||||
これにて Vim のチュートリアルを終わります。エディタを簡単に、しかも充分に
|
||||
使うことができるようにと、Vim の持つ概念の要点のみを伝えようとしました。
|
||||
Vim にはさらに多くのコマンドがあり、ここで全てを説明することはできません。
|
||||
以降はユーザマニュアルを参照ください: ":help user-manual"
|
||||
以降はユーザーマニュアルを参照ください: ":help user-manual"
|
||||
|
||||
これ以後の学習のために、次の本を推薦します。
|
||||
Vim - Vi Improved - by Steve Oualline
|
||||
|
@ -572,7 +572,7 @@ Nota: Isso
|
||||
digite :#,#s/velho/novo/g onde #,# s<>o os n<>meros das duas linhas.
|
||||
Digite :%s/velho/novo/g para mudar todas as ocorr<72>ncias no arquivo
|
||||
inteiro.
|
||||
Digite :%/velho/novo/gc para mudar todas as ocorr<72>ncia no arquivo
|
||||
Digite :%s/velho/novo/gc para mudar todas as ocorr<72>ncia no arquivo
|
||||
inteiro, com a op<6F><70>o de confirmar cada
|
||||
substitui<75><69>o.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@ -971,7 +971,7 @@ NOTA: A completa
|
||||
Colorado School of Mines, usando id<69>ias fornecidas por Charles Smith,
|
||||
Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Modificado para o Vim por Bram Moolenar.
|
||||
Modificado para o Vim por Bram Moolenaar.
|
||||
|
||||
Vers<72>o 1.4 traduzida para o portugu<67>s por Marcelo Drudi Miranda, Escola
|
||||
Polit<69>cnica da Universidade de S<>o Paulo.
|
||||
|
@ -572,7 +572,7 @@ Nota: Isso é muito útil para corrigir um programa com parênteses não-casados
|
||||
digite :#,#s/velho/novo/g onde #,# são os números das duas linhas.
|
||||
Digite :%s/velho/novo/g para mudar todas as ocorrências no arquivo
|
||||
inteiro.
|
||||
Digite :%/velho/novo/gc para mudar todas as ocorrência no arquivo
|
||||
Digite :%s/velho/novo/gc para mudar todas as ocorrência no arquivo
|
||||
inteiro, com a opção de confirmar cada
|
||||
substituição.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@ -971,7 +971,7 @@ NOTA: A completação funciona com muitos comandos. Basta pressionar CTRL-D e
|
||||
Colorado School of Mines, usando idéias fornecidas por Charles Smith,
|
||||
Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Modificado para o Vim por Bram Moolenar.
|
||||
Modificado para o Vim por Bram Moolenaar.
|
||||
|
||||
Versão 1.4 traduzida para o português por Marcelo Drudi Miranda, Escola
|
||||
Politécnica da Universidade de São Paulo.
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -55,8 +55,8 @@ NOTE: The cursor keys should also work. But using hjkl you will be able to
|
||||
2. Type: :q! <ENTER>.
|
||||
This exits the editor, DISCARDING any changes you have made.
|
||||
|
||||
3. When you see the shell prompt, type the command that got you into this
|
||||
tutor. That would be: vimtutor <ENTER>
|
||||
3. Get back here by executing the command that got you into this tutor. That
|
||||
might be: vimtutor <ENTER>
|
||||
|
||||
4. If you have these steps memorized and are confident, execute steps
|
||||
1 through 3 to exit and re-enter the editor.
|
||||
|
@ -843,10 +843,10 @@ Open up a line above this by typing Shift-O while the cursor is on this line.
|
||||
<20>P<EFBFBD><50> xuandong@sh163.net <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>N<EFBFBD><4E><EFBFBD>B<EFBFBD><42><EFBFBD>O<EFBFBD>r<EFBFBD>ץ<EFBFBD><D7A5>C
|
||||
|
||||
2002<30>~03<30><33>18<31><38> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <linuxrat@gnuchina.org>
|
||||
<20>ھ<EFBFBD>Bram Molenaar<61><72><EFBFBD>ͦb2002<30>~03<30><33>16<31>骺<EFBFBD>ӫH<D3AB>n<EFBFBD>D<EFBFBD>A<EFBFBD>Nvimtutor1.4<EFBFBD><EFBFBD>Ķ
|
||||
<20>ھ<EFBFBD>Bram Moolenaar<EFBFBD><EFBFBD><EFBFBD>ͦb2002<EFBFBD>~03<30><33>16<31>骺<EFBFBD>ӫH<D3AB>n<EFBFBD>D<EFBFBD>A<EFBFBD>Nvimtutor1.4<EFBFBD><EFBFBD>Ķ
|
||||
<20><><EFBFBD>ɯŨ<C9AF>vimtutor1.5<EFBFBD>C
|
||||
|
||||
2001<30>~11<31><31>15<31><35> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <linuxrat@gnuchina.org>
|
||||
<20>Nvimtutor1.4<EFBFBD><EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>浹Bram Molenaar<61>MSven Guckes<65>C
|
||||
<20>Nvimtutor1.4<EFBFBD><EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>浹Bram Moolenaar<EFBFBD>MSven Guckes<65>C
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -988,9 +988,9 @@
|
||||
<20><>л xuandong@sh163.net <20><>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
2002<30><32>03<30><33>18<31><38> <20><><EFBFBD><EFBFBD>̩ <linuxrat@gnuchina.org>
|
||||
<20><><EFBFBD><EFBFBD>Bram Molenaar<61><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2002<30><32>03<30><33>16<31>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>vimtutor1.4<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD>Bram Moolenaar<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2002<EFBFBD><EFBFBD>03<EFBFBD><EFBFBD>16<EFBFBD>յ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>vimtutor1.4<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>vimtutor1.5<EFBFBD><EFBFBD>
|
||||
|
||||
2001<30><31>11<31><31>15<31><35> <20><><EFBFBD><EFBFBD>̩ <linuxrat@gnuchina.org>
|
||||
<20><>vimtutor1.4<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ύ<EFBFBD><EFBFBD>Bram Molenaar<61><72>Sven Guckes<65><73>
|
||||
<20><>vimtutor1.4<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ύ<EFBFBD><EFBFBD>Bram Moolenaar<EFBFBD><EFBFBD>Sven Guckes<65><73>
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -843,10 +843,10 @@ Open up a line above this by typing Shift-O while the cursor is on this line.
|
||||
感謝 xuandong@sh163.net 的指正,將兩處錯別字修正。
|
||||
|
||||
2002年03月18日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
根據Bram Molenaar先生在2002年03月16日的來信要求,將vimtutor1.4中譯
|
||||
根據Bram Moolenaar先生在2002年03月16日的來信要求,將vimtutor1.4中譯
|
||||
版升級到vimtutor1.5。
|
||||
|
||||
2001年11月15日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
將vimtutor1.4中譯版提交給Bram Molenaar和Sven Guckes。
|
||||
將vimtutor1.4中譯版提交給Bram Moolenaar和Sven Guckes。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user