mirror of
https://github.com/zoriya/vim.git
synced 2025-12-29 10:28:23 +00:00
Compare commits
149 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fbc0d2ea1e | ||
|
|
6fa41fb374 | ||
|
|
7533fddd09 | ||
|
|
9e74e30b5f | ||
|
|
ad3b366c82 | ||
|
|
d620aa9be4 | ||
|
|
cfef5ff23e | ||
|
|
cabf80ff2f | ||
|
|
105bc355a6 | ||
|
|
55b8ad3dab | ||
|
|
c24c1acd82 | ||
|
|
07729b25bf | ||
|
|
54e8f00581 | ||
|
|
2cd7362e30 | ||
|
|
3dab2806fe | ||
|
|
71700b8903 | ||
|
|
a4720019cf | ||
|
|
b983f75d22 | ||
|
|
d5f729cada | ||
|
|
e761459eb6 | ||
|
|
8661b17843 | ||
|
|
4d188da22b | ||
|
|
5e538ecd5e | ||
|
|
03db85b398 | ||
|
|
b6c589a529 | ||
|
|
46a7561f3a | ||
|
|
dfa38d4e45 | ||
|
|
29607acff6 | ||
|
|
bd80f35bc5 | ||
|
|
8f1723de47 | ||
|
|
3d0c52db9c | ||
|
|
4e5dfb5700 | ||
|
|
99add41656 | ||
|
|
6d21645f46 | ||
|
|
971db46799 | ||
|
|
3b9abb6cc2 | ||
|
|
76a86063ca | ||
|
|
82e803b055 | ||
|
|
99685e6a7e | ||
|
|
6800186a03 | ||
|
|
09bb33dde9 | ||
|
|
290424868d | ||
|
|
51ac8a27e5 | ||
|
|
161fb5e302 | ||
|
|
531da5955e | ||
|
|
229f8dbf7a | ||
|
|
49e649fc2e | ||
|
|
84a05acc8c | ||
|
|
84e0f6ca9a | ||
|
|
d1864597a0 | ||
|
|
8fadd8b840 | ||
|
|
29f49ee8d7 | ||
|
|
4e0d974645 | ||
|
|
02938a970c | ||
|
|
ff0341946e | ||
|
|
7afea82f50 | ||
|
|
811fe63f39 | ||
|
|
567199b68f | ||
|
|
e8d9530b0e | ||
|
|
2ab0713279 | ||
|
|
f687cf3f36 | ||
|
|
ec38d6932c | ||
|
|
230bb3f09d | ||
|
|
335e0b6974 | ||
|
|
4d1da49cfe | ||
|
|
7a26dd860a | ||
|
|
af6abb9d93 | ||
|
|
3f99152276 | ||
|
|
b70a473e24 | ||
|
|
3bb28557e1 | ||
|
|
a8565fecc6 | ||
|
|
4c7e9db0d6 | ||
|
|
687a29c5e2 | ||
|
|
f6dcbb245b | ||
|
|
f8de161090 | ||
|
|
54c34fa6f5 | ||
|
|
768baacdc8 | ||
|
|
b376647bb1 | ||
|
|
332ac0621c | ||
|
|
84b0493c34 | ||
|
|
429fa85392 | ||
|
|
07219f911c | ||
|
|
6f852a557d | ||
|
|
7311c6932c | ||
|
|
0bcdd6e709 | ||
|
|
0187ca0bdf | ||
|
|
38ec50bea8 | ||
|
|
e3e6e573d1 | ||
|
|
8185111125 | ||
|
|
644cf03b7e | ||
|
|
126bdeeabe | ||
|
|
2a66a07b29 | ||
|
|
25a6df90df | ||
|
|
bf88493c09 | ||
|
|
68879258d9 | ||
|
|
24b11fb173 | ||
|
|
b3049f4a34 | ||
|
|
d7fbfe107d | ||
|
|
91fc43d3f9 | ||
|
|
7bcb30e913 | ||
|
|
cdffbeae2b | ||
|
|
95a5135118 | ||
|
|
d0e2d94589 | ||
|
|
c2c355df6f | ||
|
|
71afbfe6cd | ||
|
|
db333a5b8d | ||
|
|
af62ff3696 | ||
|
|
0c279bbb9c | ||
|
|
b59494cab1 | ||
|
|
186628f671 | ||
|
|
090cfc1b02 | ||
|
|
ac7bd63844 | ||
|
|
b897871ce9 | ||
|
|
a5be25e1db | ||
|
|
e533bbe094 | ||
|
|
2526ef276b | ||
|
|
20754027b3 | ||
|
|
1e284f5155 | ||
|
|
9584b31aae | ||
|
|
a390bb6ad3 | ||
|
|
4f8301f641 | ||
|
|
1a0316ca2a | ||
|
|
b3cb982162 | ||
|
|
3978e08fbe | ||
|
|
db813951c4 | ||
|
|
e2e663f67d | ||
|
|
210f3704f7 | ||
|
|
60abe75379 | ||
|
|
c389fd3a49 | ||
|
|
db3fbe5228 | ||
|
|
4e3c70d241 | ||
|
|
84e80b51d1 | ||
|
|
d999db2f1e | ||
|
|
34700a6a15 | ||
|
|
7534221eba | ||
|
|
b8f8461d94 | ||
|
|
988232fabb | ||
|
|
e17c260335 | ||
|
|
f5e44a7e90 | ||
|
|
e468e266c4 | ||
|
|
fdf447b286 | ||
|
|
f13f45d59b | ||
|
|
693e40c2cd | ||
|
|
53eb37e9f9 | ||
|
|
886ed691d2 | ||
|
|
40cf4b44ed | ||
|
|
5c9626301b | ||
|
|
26402cb2de | ||
|
|
63dbda1caa |
4
Filelist
4
Filelist
@@ -57,6 +57,7 @@ SRC_ALL = \
|
||||
src/popupmnu.c \
|
||||
src/quickfix.c \
|
||||
src/regexp.c \
|
||||
src/regexp_nfa.c \
|
||||
src/regexp.h \
|
||||
src/screen.c \
|
||||
src/search.c \
|
||||
@@ -73,6 +74,7 @@ SRC_ALL = \
|
||||
src/version.c \
|
||||
src/version.h \
|
||||
src/vim.h \
|
||||
src/winclip.c \
|
||||
src/window.c \
|
||||
src/xxd/xxd.c \
|
||||
src/main.aap \
|
||||
@@ -130,6 +132,7 @@ SRC_ALL = \
|
||||
src/proto/ui.pro \
|
||||
src/proto/undo.pro \
|
||||
src/proto/version.pro \
|
||||
src/proto/winclip.pro \
|
||||
src/proto/window.pro \
|
||||
|
||||
|
||||
@@ -444,6 +447,7 @@ SRC_EXTRA = \
|
||||
src/os_beos.c \
|
||||
src/os_beos.h \
|
||||
src/os_beos.rsrc \
|
||||
src/proto/os_beos.pro \
|
||||
src/os_mint.h \
|
||||
src/os_vms_fix.com \
|
||||
src/toolbar.phi \
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" ---------------------------------------------------------------------
|
||||
" getscript.vim
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 34
|
||||
" Author: Charles E. Campbell
|
||||
" Date: Apr 17, 2013
|
||||
" Version: 35
|
||||
" Installing: :help glvs-install
|
||||
" Usage: :help glvs
|
||||
"
|
||||
@@ -15,7 +15,7 @@
|
||||
if exists("g:loaded_getscript")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_getscript= "v34"
|
||||
let g:loaded_getscript= "v35"
|
||||
if &cp
|
||||
echoerr "GetLatestVimScripts is not vi-compatible; not loaded (you need to set nocp)"
|
||||
finish
|
||||
@@ -74,6 +74,11 @@ if !exists("g:GetLatestVimScripts_allowautoinstall")
|
||||
let g:GetLatestVimScripts_allowautoinstall= 1
|
||||
endif
|
||||
|
||||
" set up default scriptaddr address
|
||||
if !exists("g:GetLatestVimScripts_scriptaddr")
|
||||
let g:GetLatestVimScripts_scriptaddr = 'http://vim.sourceforge.net/script.php?script_id='
|
||||
endif
|
||||
|
||||
"" For debugging:
|
||||
"let g:GetLatestVimScripts_wget = "echo"
|
||||
"let g:GetLatestVimScripts_options = "options"
|
||||
@@ -314,7 +319,7 @@ fun! getscript#GetLatestVimScripts()
|
||||
if &mod
|
||||
silent! w!
|
||||
endif
|
||||
q
|
||||
q!
|
||||
|
||||
" restore events and current directory
|
||||
exe "cd ".fnameescape(substitute(origdir,'\','/','ge'))
|
||||
@@ -415,7 +420,7 @@ fun! s:GetOneScript(...)
|
||||
echo 'considering <'.aicmmnt.'> scriptid='.scriptid.' srcid='.srcid
|
||||
|
||||
" grab a copy of the plugin's vim.sourceforge.net webpage
|
||||
let scriptaddr = 'http://vim.sourceforge.net/script.php?script_id='.scriptid
|
||||
let scriptaddr = g:GetLatestVimScripts_scriptaddr.scriptid
|
||||
let tmpfile = tempname()
|
||||
let v:errmsg = ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,9 @@
|
||||
" netrwFileHandlers: contains various extension-based file handlers for
|
||||
" netrw's browsers' x command ("eXecute launcher")
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Author: Charles E. Campbell
|
||||
" Date: Mar 14, 2012
|
||||
" Version: 11a
|
||||
" Copyright: Copyright (C) 1999-2012 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 1999-2012 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" netrwSettings.vim: makes netrw settings simpler
|
||||
" Date: Sep 03, 2008
|
||||
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
|
||||
" Maintainer: Charles E Campbell <drchipNOSPAM at campbellfamily dot biz>
|
||||
" Version: 13
|
||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
@@ -63,7 +63,7 @@ fun! netrwSettings#NetrwSettings()
|
||||
endif
|
||||
|
||||
put ='+ ---------------------------------------------'
|
||||
put ='+ NetrwSettings: by Charles E. Campbell, Jr.'
|
||||
put ='+ NetrwSettings: by Charles E. Campbell'
|
||||
put ='+ Press <F1> with cursor atop any line for help'
|
||||
put ='+ ---------------------------------------------'
|
||||
let s:netrw_settings_stop= line(".")
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim OMNI completion script for SQL
|
||||
" Language: SQL
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Version: 14.0
|
||||
" Last Change: 2012 Dec 04
|
||||
" Version: 15.0
|
||||
" Last Change: 2013 May 13
|
||||
" Homepage: http://www.vim.org/scripts/script.php?script_id=1572
|
||||
" Usage: For detailed help
|
||||
" ":help sql.txt"
|
||||
@@ -11,6 +11,18 @@
|
||||
|
||||
" History
|
||||
"
|
||||
" TODO
|
||||
" - Jonas Enberg - if no table is found when using column completion
|
||||
" look backwards to a FROM clause and find the first table
|
||||
" and complete it.
|
||||
"
|
||||
" Version 15.0 (May 2013)
|
||||
" - NF: Changed the SQL precached syntax items, omni_sql_precache_syntax_groups,
|
||||
" to use regular expressions to pick up extended syntax group names.
|
||||
" This requires an updated SyntaxComplete plugin version 13.0.
|
||||
" If the required versions have not been installed, previous
|
||||
" behaviour will not be impacted.
|
||||
"
|
||||
" Version 14.0 (Dec 2012)
|
||||
" - BF: Added check for cpo
|
||||
"
|
||||
@@ -91,7 +103,7 @@ endif
|
||||
if exists('g:loaded_sql_completion')
|
||||
finish
|
||||
endif
|
||||
let g:loaded_sql_completion = 130
|
||||
let g:loaded_sql_completion = 150
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -110,12 +122,14 @@ let s:syn_value = []
|
||||
" Used in conjunction with the syntaxcomplete plugin
|
||||
let s:save_inc = ""
|
||||
let s:save_exc = ""
|
||||
if exists('g:omni_syntax_group_include_sql')
|
||||
let s:save_inc = g:omni_syntax_group_include_sql
|
||||
if !exists('g:omni_syntax_group_include_sql')
|
||||
let g:omni_syntax_group_include_sql = ''
|
||||
endif
|
||||
if exists('g:omni_syntax_group_exclude_sql')
|
||||
let s:save_exc = g:omni_syntax_group_exclude_sql
|
||||
if !exists('g:omni_syntax_group_exclude_sql')
|
||||
let g:omni_syntax_group_exclude_sql = ''
|
||||
endif
|
||||
let s:save_inc = g:omni_syntax_group_include_sql
|
||||
let s:save_exc = g:omni_syntax_group_exclude_sql
|
||||
|
||||
" Used with the column list
|
||||
let s:save_prev_table = ""
|
||||
@@ -127,12 +141,12 @@ endif
|
||||
" Default syntax items to precache
|
||||
if !exists('g:omni_sql_precache_syntax_groups')
|
||||
let g:omni_sql_precache_syntax_groups = [
|
||||
\ 'syntax',
|
||||
\ 'sqlKeyword',
|
||||
\ 'sqlFunction',
|
||||
\ 'sqlOption',
|
||||
\ 'sqlType',
|
||||
\ 'sqlStatement'
|
||||
\ 'syntax\w*',
|
||||
\ 'sqlKeyword\w*',
|
||||
\ 'sqlFunction\w*',
|
||||
\ 'sqlOption\w*',
|
||||
\ 'sqlType\w*',
|
||||
\ 'sqlStatement\w*'
|
||||
\ ]
|
||||
endif
|
||||
" Set ignorecase to the ftplugin standard
|
||||
@@ -621,19 +635,23 @@ function! s:SQLCGetSyntaxList(syn_group)
|
||||
" Return previously cached value
|
||||
let compl_list = s:syn_value[list_idx]
|
||||
else
|
||||
let s:save_inc = g:omni_syntax_group_include_sql
|
||||
let s:save_exc = g:omni_syntax_group_exclude_sql
|
||||
let g:omni_syntax_group_include_sql = ''
|
||||
let g:omni_syntax_group_exclude_sql = ''
|
||||
|
||||
" Request the syntax list items from the
|
||||
" syntax completion plugin
|
||||
if syn_group == 'syntax'
|
||||
" Handle this special case. This allows the user
|
||||
" to indicate they want all the syntax items available,
|
||||
" so do not specify a specific include list.
|
||||
let g:omni_syntax_group_include_sql = ''
|
||||
let syn_value = syntaxcomplete#OmniSyntaxList()
|
||||
else
|
||||
" The user has specified a specific syntax group
|
||||
let g:omni_syntax_group_include_sql = syn_group
|
||||
let syn_value = syntaxcomplete#OmniSyntaxList(syn_group)
|
||||
endif
|
||||
let g:omni_syntax_group_exclude_sql = ''
|
||||
let syn_value = syntaxcomplete#OmniSyntaxList()
|
||||
let g:omni_syntax_group_include_sql = s:save_inc
|
||||
let g:omni_syntax_group_exclude_sql = s:save_exc
|
||||
" Cache these values for later use
|
||||
|
||||
@@ -1,18 +1,34 @@
|
||||
" Vim completion script
|
||||
" Language: All languages, uses existing syntax highlighting rules
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Version: 11.0
|
||||
" Last Change: 2012 Dec 04
|
||||
" Version: 13.0
|
||||
" Last Change: 2013 May 14
|
||||
" Usage: For detailed help, ":help ft-syntax-omni"
|
||||
|
||||
" History
|
||||
"
|
||||
" Version 13.0
|
||||
" - Extended the option omni_syntax_group_include_{filetype}
|
||||
" to accept a comma separated list of regex's rather than
|
||||
" string. For example, for the javascript filetype you could
|
||||
" use:
|
||||
" let g:omni_syntax_group_include_javascript = 'javascript\w\+,jquery\w\+'
|
||||
" - Some syntax files (perl.vim) use the match // syntax as a mechanism
|
||||
" to identify keywords. This update attempts to parse the
|
||||
" match syntax and pull out syntax items which are at least
|
||||
" 3 words or more.
|
||||
"
|
||||
" Version 12.0
|
||||
" - It is possible to have '-' as part of iskeyword, when
|
||||
" checking for character ranges, tighten up the regex.
|
||||
" E688: More targets than List items.
|
||||
"
|
||||
" Version 11.0
|
||||
" Corrected which characters required escaping during
|
||||
" - Corrected which characters required escaping during
|
||||
" substitution calls.
|
||||
"
|
||||
" Version 10.0
|
||||
" Cycle through all the character ranges specified in the
|
||||
" - Cycle through all the character ranges specified in the
|
||||
" iskeyword option and build a list of valid word separators.
|
||||
" Prior to this change, only actual characters were used,
|
||||
" where for example ASCII "45" == "-". If "45" were used
|
||||
@@ -20,30 +36,30 @@
|
||||
" This introduces a new option, since the character ranges
|
||||
" specified could be multibyte:
|
||||
" let g:omni_syntax_use_single_byte = 1
|
||||
" This by default will only allow single byte ASCII
|
||||
" - This by default will only allow single byte ASCII
|
||||
" characters to be added and an additional check to ensure
|
||||
" the charater is printable (see documentation for isprint).
|
||||
"
|
||||
" Version 9.0
|
||||
" Add the check for cpo.
|
||||
" - Add the check for cpo.
|
||||
"
|
||||
" Version 8.0
|
||||
" Updated SyntaxCSyntaxGroupItems()
|
||||
" - Updated SyntaxCSyntaxGroupItems()
|
||||
" - Some additional syntax items were also allowed
|
||||
" on nextgroup= lines which were ignored by default.
|
||||
" Now these lines are processed independently.
|
||||
"
|
||||
" Version 7.0
|
||||
" Updated syntaxcomplete#OmniSyntaxList()
|
||||
" - Updated syntaxcomplete#OmniSyntaxList()
|
||||
" - Looking up the syntax groups defined from a syntax file
|
||||
" looked for only 1 format of {filetype}GroupName, but some
|
||||
" syntax writers use this format as well:
|
||||
" {b:current_syntax}GroupName
|
||||
" OmniSyntaxList() will now check for both if the first
|
||||
" - OmniSyntaxList() will now check for both if the first
|
||||
" method does not find a match.
|
||||
"
|
||||
" Version 6.0
|
||||
" Added syntaxcomplete#OmniSyntaxList()
|
||||
" - Added syntaxcomplete#OmniSyntaxList()
|
||||
" - Allows other plugins to use this for their own
|
||||
" purposes.
|
||||
" - It will return a List of all syntax items for the
|
||||
@@ -52,7 +68,7 @@
|
||||
" sqlcomplete plugin to populate a Choose box.
|
||||
"
|
||||
" Version 5.0
|
||||
" Updated SyntaxCSyntaxGroupItems()
|
||||
" - Updated SyntaxCSyntaxGroupItems()
|
||||
" - When processing a list of syntax groups, the final group
|
||||
" was missed in function SyntaxCSyntaxGroupItems.
|
||||
"
|
||||
@@ -70,7 +86,7 @@ endif
|
||||
if exists('g:loaded_syntax_completion')
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntax_completion = 110
|
||||
let g:loaded_syntax_completion = 130
|
||||
|
||||
" Turn on support for line continuations when creating the script
|
||||
let s:cpo_save = &cpo
|
||||
@@ -113,7 +129,8 @@ endif
|
||||
|
||||
" This script will build a completion list based on the syntax
|
||||
" elements defined by the files in $VIMRUNTIME/syntax.
|
||||
let s:syn_remove_words = 'match,matchgroup=,contains,'.
|
||||
" let s:syn_remove_words = 'match,matchgroup=,contains,'.
|
||||
let s:syn_remove_words = 'matchgroup=,contains,'.
|
||||
\ 'links to,start=,end='
|
||||
" \ 'links to,start=,end=,nextgroup='
|
||||
|
||||
@@ -275,9 +292,19 @@ function! OmniSyntaxList(...)
|
||||
" sqlType
|
||||
" sqlOperators
|
||||
" sqlKeyword ...
|
||||
redir @l
|
||||
silent! exec 'syntax list '.join(list_parms)
|
||||
redir END
|
||||
if !empty(list_parms) && empty(substitute(join(list_parms), '[a-zA-Z ]', '', 'g'))
|
||||
" If list_parms only includes word characters, use it to limit
|
||||
" the syntax elements.
|
||||
" If using regex syntax list will fail to find those items, so
|
||||
" simply grab the who syntax list.
|
||||
redir @l
|
||||
silent! exec 'syntax list '.join(list_parms)
|
||||
redir END
|
||||
else
|
||||
redir @l
|
||||
silent! exec 'syntax list'
|
||||
redir END
|
||||
endif
|
||||
|
||||
let syntax_full = "\n".@l
|
||||
let @l = saveL
|
||||
@@ -311,82 +338,167 @@ function! OmniSyntaxList(...)
|
||||
endif
|
||||
endif
|
||||
|
||||
" Sometimes filetypes can be composite names, like c.doxygen
|
||||
" Loop through each individual part looking for the syntax
|
||||
" items specific to each individual filetype.
|
||||
if empty(list_parms)
|
||||
let list_parms = [&filetype.'\w\+']
|
||||
endif
|
||||
|
||||
let syn_list = ''
|
||||
let ftindex = 0
|
||||
let ftindex = match(&filetype, '\w\+', ftindex)
|
||||
let index = 0
|
||||
for group_regex in list_parms
|
||||
" Sometimes filetypes can be composite names, like c.doxygen
|
||||
" Loop through each individual part looking for the syntax
|
||||
" items specific to each individual filetype.
|
||||
" let ftindex = 0
|
||||
" let ftindex = match(syntax_full, group_regex, ftindex)
|
||||
|
||||
while ftindex > -1
|
||||
let ft_part_name = matchstr( &filetype, '\w\+', ftindex )
|
||||
" while ftindex > -1
|
||||
" let ft_part_name = matchstr( syntax_full, '\w\+', ftindex )
|
||||
|
||||
" Syntax rules can contain items for more than just the current
|
||||
" filetype. They can contain additional items added by the user
|
||||
" via autocmds or their vimrc.
|
||||
" Some syntax files can be combined (html, php, jsp).
|
||||
" We want only items that begin with the filetype we are interested in.
|
||||
let next_group_regex = '\n' .
|
||||
\ '\zs'.ft_part_name.'\w\+\ze'.
|
||||
\ '\s\+xxx\s\+'
|
||||
let index = 0
|
||||
let index = match(syntax_full, next_group_regex, index)
|
||||
|
||||
if index == -1 && exists('b:current_syntax') && ft_part_name != b:current_syntax
|
||||
" There appears to be two standards when writing syntax files.
|
||||
" Either items begin as:
|
||||
" syn keyword {filetype}Keyword values ...
|
||||
" let b:current_syntax = "sql"
|
||||
" let b:current_syntax = "sqlanywhere"
|
||||
" Or
|
||||
" syn keyword {syntax_filename}Keyword values ...
|
||||
" let b:current_syntax = "mysql"
|
||||
" So, we will make the format of finding the syntax group names
|
||||
" a bit more flexible and look for both if the first fails to
|
||||
" find a match.
|
||||
" Syntax rules can contain items for more than just the current
|
||||
" filetype. They can contain additional items added by the user
|
||||
" via autocmds or their vimrc.
|
||||
" Some syntax files can be combined (html, php, jsp).
|
||||
" We want only items that begin with the filetype we are interested in.
|
||||
let next_group_regex = '\n' .
|
||||
\ '\zs'.b:current_syntax.'\w\+\ze'.
|
||||
\ '\zs'.group_regex.'\ze'.
|
||||
\ '\s\+xxx\s\+'
|
||||
let index = 0
|
||||
let index = match(syntax_full, next_group_regex, index)
|
||||
endif
|
||||
|
||||
while index > -1
|
||||
let group_name = matchstr( syntax_full, '\w\+', index )
|
||||
|
||||
let get_syn_list = 1
|
||||
for exclude_group_name in list_exclude_groups
|
||||
if '\<'.exclude_group_name.'\>' =~ '\<'.group_name.'\>'
|
||||
let get_syn_list = 0
|
||||
endif
|
||||
endfor
|
||||
|
||||
" This code is no longer needed in version 6.0 since we have
|
||||
" augmented the syntax list command to only retrieve the syntax
|
||||
" groups we are interested in.
|
||||
"
|
||||
" if get_syn_list == 1
|
||||
" if syntax_group_include_{filetype} != ''
|
||||
" if '\<'.syntax_group_include_{filetype}.'\>' !~ '\<'.group_name.'\>'
|
||||
" let get_syn_list = 0
|
||||
" endif
|
||||
" endif
|
||||
" endif
|
||||
|
||||
if get_syn_list == 1
|
||||
" Pass in the full syntax listing, plus the group name we
|
||||
" are interested in.
|
||||
let extra_syn_list = s:SyntaxCSyntaxGroupItems(group_name, syntax_full)
|
||||
let syn_list = syn_list . extra_syn_list . "\n"
|
||||
" For the matched group name, strip off any of the regex special
|
||||
" characters and see if we get a match with the current syntax
|
||||
if index == -1 && exists('b:current_syntax') && substitute(group_regex, '[^a-zA-Z ]\+.*', '', 'g') !~ '^'.b:current_syntax
|
||||
" There appears to be two standards when writing syntax files.
|
||||
" Either items begin as:
|
||||
" syn keyword {filetype}Keyword values ...
|
||||
" let b:current_syntax = "sql"
|
||||
" let b:current_syntax = "sqlanywhere"
|
||||
" Or
|
||||
" syn keyword {syntax_filename}Keyword values ...
|
||||
" let b:current_syntax = "mysql"
|
||||
" So, we will make the format of finding the syntax group names
|
||||
" a bit more flexible and look for both if the first fails to
|
||||
" find a match.
|
||||
let next_group_regex = '\n' .
|
||||
\ '\zs'.b:current_syntax.'\w\+\ze'.
|
||||
\ '\s\+xxx\s\+'
|
||||
let index = 0
|
||||
let index = match(syntax_full, next_group_regex, index)
|
||||
endif
|
||||
|
||||
let index = index + strlen(group_name)
|
||||
let index = match(syntax_full, next_group_regex, index)
|
||||
endwhile
|
||||
while index > -1
|
||||
let group_name = matchstr( syntax_full, '\w\+', index )
|
||||
|
||||
let ftindex = ftindex + len(ft_part_name)
|
||||
let ftindex = match( &filetype, '\w\+', ftindex )
|
||||
endwhile
|
||||
let get_syn_list = 1
|
||||
for exclude_group_name in list_exclude_groups
|
||||
if '\<'.exclude_group_name.'\>' =~ '\<'.group_name.'\>'
|
||||
let get_syn_list = 0
|
||||
endif
|
||||
endfor
|
||||
|
||||
" This code is no longer needed in version 6.0 since we have
|
||||
" augmented the syntax list command to only retrieve the syntax
|
||||
" groups we are interested in.
|
||||
"
|
||||
" if get_syn_list == 1
|
||||
" if syntax_group_include_{filetype} != ''
|
||||
" if '\<'.syntax_group_include_{filetype}.'\>' !~ '\<'.group_name.'\>'
|
||||
" let get_syn_list = 0
|
||||
" endif
|
||||
" endif
|
||||
" endif
|
||||
|
||||
if get_syn_list == 1
|
||||
" Pass in the full syntax listing, plus the group name we
|
||||
" are interested in.
|
||||
let extra_syn_list = s:SyntaxCSyntaxGroupItems(group_name, syntax_full)
|
||||
let syn_list = syn_list . extra_syn_list . "\n"
|
||||
endif
|
||||
|
||||
let index = index + strlen(group_name)
|
||||
let index = match(syntax_full, next_group_regex, index)
|
||||
endwhile
|
||||
|
||||
" let ftindex = ftindex + len(ft_part_name)
|
||||
" let ftindex = match( syntax_full, group_regex, ftindex )
|
||||
" endwhile
|
||||
endfor
|
||||
|
||||
" " Sometimes filetypes can be composite names, like c.doxygen
|
||||
" " Loop through each individual part looking for the syntax
|
||||
" " items specific to each individual filetype.
|
||||
" let syn_list = ''
|
||||
" let ftindex = 0
|
||||
" let ftindex = match(&filetype, '\w\+', ftindex)
|
||||
|
||||
" while ftindex > -1
|
||||
" let ft_part_name = matchstr( &filetype, '\w\+', ftindex )
|
||||
|
||||
" " Syntax rules can contain items for more than just the current
|
||||
" " filetype. They can contain additional items added by the user
|
||||
" " via autocmds or their vimrc.
|
||||
" " Some syntax files can be combined (html, php, jsp).
|
||||
" " We want only items that begin with the filetype we are interested in.
|
||||
" let next_group_regex = '\n' .
|
||||
" \ '\zs'.ft_part_name.'\w\+\ze'.
|
||||
" \ '\s\+xxx\s\+'
|
||||
" let index = 0
|
||||
" let index = match(syntax_full, next_group_regex, index)
|
||||
|
||||
" if index == -1 && exists('b:current_syntax') && ft_part_name != b:current_syntax
|
||||
" " There appears to be two standards when writing syntax files.
|
||||
" " Either items begin as:
|
||||
" " syn keyword {filetype}Keyword values ...
|
||||
" " let b:current_syntax = "sql"
|
||||
" " let b:current_syntax = "sqlanywhere"
|
||||
" " Or
|
||||
" " syn keyword {syntax_filename}Keyword values ...
|
||||
" " let b:current_syntax = "mysql"
|
||||
" " So, we will make the format of finding the syntax group names
|
||||
" " a bit more flexible and look for both if the first fails to
|
||||
" " find a match.
|
||||
" let next_group_regex = '\n' .
|
||||
" \ '\zs'.b:current_syntax.'\w\+\ze'.
|
||||
" \ '\s\+xxx\s\+'
|
||||
" let index = 0
|
||||
" let index = match(syntax_full, next_group_regex, index)
|
||||
" endif
|
||||
|
||||
" while index > -1
|
||||
" let group_name = matchstr( syntax_full, '\w\+', index )
|
||||
|
||||
" let get_syn_list = 1
|
||||
" for exclude_group_name in list_exclude_groups
|
||||
" if '\<'.exclude_group_name.'\>' =~ '\<'.group_name.'\>'
|
||||
" let get_syn_list = 0
|
||||
" endif
|
||||
" endfor
|
||||
|
||||
" " This code is no longer needed in version 6.0 since we have
|
||||
" " augmented the syntax list command to only retrieve the syntax
|
||||
" " groups we are interested in.
|
||||
" "
|
||||
" " if get_syn_list == 1
|
||||
" " if syntax_group_include_{filetype} != ''
|
||||
" " if '\<'.syntax_group_include_{filetype}.'\>' !~ '\<'.group_name.'\>'
|
||||
" " let get_syn_list = 0
|
||||
" " endif
|
||||
" " endif
|
||||
" " endif
|
||||
|
||||
" if get_syn_list == 1
|
||||
" " Pass in the full syntax listing, plus the group name we
|
||||
" " are interested in.
|
||||
" let extra_syn_list = s:SyntaxCSyntaxGroupItems(group_name, syntax_full)
|
||||
" let syn_list = syn_list . extra_syn_list . "\n"
|
||||
" endif
|
||||
|
||||
" let index = index + strlen(group_name)
|
||||
" let index = match(syntax_full, next_group_regex, index)
|
||||
" endwhile
|
||||
|
||||
" let ftindex = ftindex + len(ft_part_name)
|
||||
" let ftindex = match( &filetype, '\w\+', ftindex )
|
||||
" endwhile
|
||||
|
||||
" Convert the string to a List and sort it.
|
||||
let compl_list = sort(split(syn_list))
|
||||
@@ -454,10 +566,65 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
||||
\ , "\n", 'g'
|
||||
\ )
|
||||
|
||||
" Attempt to deal with lines using the match syntax
|
||||
" javaScriptDocTags xxx match /@\(param\|argument\|requires\|file\)\>/
|
||||
" Though it can use any types of regex, so this plugin will attempt
|
||||
" to restrict it
|
||||
" 1. Only use \( or \%( constructs remove all else
|
||||
" 2 Remove and []s
|
||||
" 3. Account for match //constructs
|
||||
" \%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?
|
||||
" 4. Hope for the best
|
||||
"
|
||||
"
|
||||
let syn_list_old = syn_list
|
||||
while syn_list =~ '\<match\>\s\+\/'
|
||||
if syn_list =~ 'perlElseIfError'
|
||||
let syn_list = syn_list
|
||||
endif
|
||||
" Check if the match has words at least 3 characters long
|
||||
if syn_list =~ '\<match \/\zs.\{-}\<\w\{3,}\>.\{-}\ze\\\@<!\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?\s\+'
|
||||
" Remove everything after / and before the first \(
|
||||
let syn_list = substitute( syn_list, '\<match \/\zs.\{-}\ze\\%\?(.\{-}\\\@<!\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?\s\+', '', 'g' )
|
||||
" Remove everything after \) and up to the ending /
|
||||
let syn_list = substitute( syn_list, '\<match \/.\{-}\\)\zs.\{-}\ze\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?\s\+', '', 'g' )
|
||||
|
||||
" Remove any character classes
|
||||
" let syn_list = substitute( syn_list, '\<match /\zs.\{-}\[[^]]*\].\{-}\ze\/ ', '', 'g' )
|
||||
let syn_list = substitute( syn_list, '\%(\<match \/[^/]\{-}\)\@<=\[[^]]*\]\ze.\{-}\\\@<!\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?', '', 'g' )
|
||||
" Remove any words < 3 characters
|
||||
let syn_list = substitute( syn_list, '\%(\<match \/[^/]\{-}\)\@<=\<\w\{1,2}\>\ze.\{-}\\\@<!\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?\s\+', '', 'g' )
|
||||
" Remove all non-word characters
|
||||
" let syn_list = substitute( syn_list, '\<match /\zs.\{-}\<\W\+\>.\{-}\ze\/ ', "", 'g' )
|
||||
" let syn_list = substitute( syn_list, '\%(\<match \/[^/]\{-}\)\@<=\W\+\ze.\{-}\/ ', ' ', 'g' )
|
||||
" Do this by using the outer substitue() call to gather all
|
||||
" text between the match /.../ tags.
|
||||
" The inner substitute() call operates on the text selected
|
||||
" and replaces all non-word characters.
|
||||
let syn_list = substitute( syn_list, '\<match \/\zs\(.\{-}\)\ze\\\@<!\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?\s\+'
|
||||
\ , '\=substitute(submatch(1), "\\W\\+", " ", "g")'
|
||||
\ , 'g' )
|
||||
" Remove the match / / syntax
|
||||
let syn_list = substitute( syn_list, '\<match \/\(.\{-}\)\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?\s\+', '\1', 'g' )
|
||||
else
|
||||
" No words long enough, remove the match
|
||||
" Remove the match syntax
|
||||
" let syn_list = substitute( syn_list, '\<match \/[^\/]*\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?\s\+', '', 'g' )
|
||||
let syn_list = substitute( syn_list, '\<match \/\%(.\{-}\)\?\/\%(\%(ms\|me\|hs\|he\|rs\|re\|lc\)\S\+\)\?\s\+', '', 'g' )
|
||||
endif
|
||||
if syn_list =~ '\<match\>\s\+\/'
|
||||
" Problem removing the match / / tags
|
||||
let syn_list = ''
|
||||
endif
|
||||
endwhile
|
||||
|
||||
|
||||
" Now strip off the newline + blank space + contained.
|
||||
" Also include lines with nextgroup=@someName skip_key_words syntax_element
|
||||
" \ syn_list, '\%(^\|\n\)\@<=\s*\<\(contained\|nextgroup=\)'
|
||||
" \ syn_list, '\%(^\|\n\)\@<=\s*\<\(contained\|nextgroup=[@a-zA-Z,]*\)'
|
||||
let syn_list = substitute(
|
||||
\ syn_list, '\%(^\|\n\)\@<=\s*\<\(contained\|nextgroup=\)'
|
||||
\ syn_list, '\<\(contained\|nextgroup=[@a-zA-Z,]*\)'
|
||||
\ , "", 'g'
|
||||
\ )
|
||||
|
||||
@@ -497,7 +664,7 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
||||
" If so, add it to the list.
|
||||
let accepted_chars = ''
|
||||
for item in split(&iskeyword, ',')
|
||||
if item =~ '-'
|
||||
if item =~ '\d-\d'
|
||||
" This is a character range (ie 47-58),
|
||||
" cycle through each character within the range
|
||||
let [b:start, b:end] = split(item, '-')
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
" tar.vim: Handles browsing tarfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 28
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" Date: Apr 17, 2013
|
||||
" Version: 29
|
||||
" Maintainer: Charles E Campbell <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
"
|
||||
" Contains many ideas from Michael Toren's <tar.vim>
|
||||
"
|
||||
" Copyright: Copyright (C) 2005-2011 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 2005-2011 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
@@ -22,7 +22,7 @@
|
||||
if &cp || exists("g:loaded_tar")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tar= "v28"
|
||||
let g:loaded_tar= "v29"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of tar needs vim 7.2"
|
||||
@@ -31,6 +31,7 @@ if v:version < 702
|
||||
endif
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
"DechoTabOn
|
||||
"call Decho("loading autoload/tar.vim")
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
@@ -80,7 +81,7 @@ endif
|
||||
|
||||
" set up shell quoting character
|
||||
if !exists("g:tar_shq")
|
||||
if exists("&shq") && &shq != ""
|
||||
if exists("+shq") && exists("&shq") && &shq != ""
|
||||
let g:tar_shq= &shq
|
||||
elseif has("win32") || has("win95") || has("win64") || has("win16")
|
||||
if exists("g:netrw_cygwin") && g:netrw_cygwin
|
||||
@@ -147,7 +148,7 @@ fun! tar#Browse(tarfile)
|
||||
keepj $
|
||||
|
||||
let tarfile= a:tarfile
|
||||
if has("win32") && executable("cygpath")
|
||||
if has("win32unix") && executable("cygpath")
|
||||
" assuming cygwin
|
||||
let tarfile=substitute(system("cygpath -u ".shellescape(tarfile,0)),'\n$','','e')
|
||||
endif
|
||||
@@ -227,7 +228,7 @@ fun! s:TarBrowseSelect()
|
||||
" about to make a new window, need to use b:tarfile
|
||||
let tarfile= b:tarfile
|
||||
let curfile= expand("%")
|
||||
if has("win32") && executable("cygpath")
|
||||
if has("win32unix") && executable("cygpath")
|
||||
" assuming cygwin
|
||||
let tarfile=substitute(system("cygpath -u ".shellescape(tarfile,0)),'\n$','','e')
|
||||
endif
|
||||
@@ -239,6 +240,8 @@ fun! s:TarBrowseSelect()
|
||||
let s:tblfile_{winnr()}= curfile
|
||||
call tar#Read("tarfile:".tarfile.'::'.fname,1)
|
||||
filetype detect
|
||||
set nomod
|
||||
exe 'com! -buffer -nargs=? -complete=file TarDiff :call tar#Diff(<q-args>,"'.fnameescape(fname).'")'
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("TarBrowseSelect : s:tblfile_".winnr()."<".s:tblfile_{winnr()}.">")
|
||||
@@ -252,7 +255,7 @@ fun! tar#Read(fname,mode)
|
||||
set report=10
|
||||
let tarfile = substitute(a:fname,'tarfile:\(.\{-}\)::.*$','\1','')
|
||||
let fname = substitute(a:fname,'tarfile:.\{-}::\(.*\)$','\1','')
|
||||
if has("win32") && executable("cygpath")
|
||||
if has("win32unix") && executable("cygpath")
|
||||
" assuming cygwin
|
||||
let tarfile=substitute(system("cygpath -u ".shellescape(tarfile,0)),'\n$','','e')
|
||||
endif
|
||||
@@ -425,7 +428,7 @@ fun! tar#Write(fname)
|
||||
|
||||
if fname =~ '/'
|
||||
let dirpath = substitute(fname,'/[^/]\+$','','e')
|
||||
if executable("cygpath")
|
||||
if has("win32unix") && executable("cygpath")
|
||||
let dirpath = substitute(system("cygpath ".shellescape(dirpath, 0)),'\n','','e')
|
||||
endif
|
||||
call mkdir(dirpath,"p")
|
||||
@@ -445,7 +448,7 @@ fun! tar#Write(fname)
|
||||
let tar_secure= " "
|
||||
endif
|
||||
exe "w! ".fnameescape(fname)
|
||||
if executable("cygpath")
|
||||
if has("win32unix") && executable("cygpath")
|
||||
let tarfile = substitute(system("cygpath ".shellescape(tarfile,0)),'\n','','e')
|
||||
endif
|
||||
|
||||
@@ -500,6 +503,30 @@ fun! tar#Write(fname)
|
||||
" call Dret("tar#Write")
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" tar#Diff: {{{2
|
||||
fun! tar#Diff(userfname,fname)
|
||||
" call Dfunc("tar#Diff(userfname<".a:userfname."> fname<".a:fname.")")
|
||||
let fname= a:fname
|
||||
if a:userfname != ""
|
||||
let fname= a:userfname
|
||||
endif
|
||||
if filereadable(fname)
|
||||
" sets current file (from tarball) for diff'ing
|
||||
" splits window vertically
|
||||
" opens original file, sets it for diff'ing
|
||||
" sets up b:tardiff_otherbuf variables so each buffer knows about the other (for closing purposes)
|
||||
diffthis
|
||||
wincmd v
|
||||
exe "e ".fnameescape(fname)
|
||||
diffthis
|
||||
else
|
||||
redraw!
|
||||
echo "***warning*** unable to read file<".fname.">"
|
||||
endif
|
||||
" call Dret("tar#Diff")
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:Rmdir: {{{2
|
||||
fun! s:Rmdir(fname)
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" zip.vim: Handles browsing zipfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 25
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" Date: Apr 17, 2013
|
||||
" Version: 26
|
||||
" Maintainer: Charles E Campbell <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
" Copyright: Copyright (C) 2005-2012 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 2005-2012 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
@@ -19,7 +19,7 @@
|
||||
if &cp || exists("g:loaded_zip")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_zip= "v25"
|
||||
let g:loaded_zip= "v26"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of zip needs vim 7.2"
|
||||
@@ -188,13 +188,23 @@ fun! zip#Read(fname,mode)
|
||||
else
|
||||
let zipfile = substitute(a:fname,'^.\{-}zipfile:\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'^.\{-}zipfile:.\{-}::\([^\\].*\)$','\1','')
|
||||
let fname = substitute(fname, '[', '[[]', 'g')
|
||||
let fname = substitute(fname, '[', '[[]', 'g')
|
||||
endif
|
||||
" call Decho("zipfile<".zipfile.">")
|
||||
" call Decho("fname <".fname.">")
|
||||
|
||||
" call Decho("exe r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fnameescape(fname),1))
|
||||
exe "keepj sil! r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fnameescape(fname),1)
|
||||
" the following code does much the same thing as
|
||||
" exe "keepj sil! r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fnameescape(fname),1)
|
||||
" but allows zipfile:... entries in quickfix lists
|
||||
let temp = tempname()
|
||||
let fn = expand('%:p')
|
||||
exe "sil! !".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fnameescape(fname),1).' > '.temp
|
||||
" call Decho("exe sil! !".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fnameescape(fname),1).' > '.temp)
|
||||
sil exe 'keepalt file '.temp
|
||||
sil keepj e!
|
||||
sil exe 'keepalt file '.fnameescape(fn)
|
||||
call delete(temp)
|
||||
|
||||
filetype detect
|
||||
|
||||
" cleanup
|
||||
@@ -267,7 +277,7 @@ fun! zip#Write(fname)
|
||||
|
||||
if fname =~ '/'
|
||||
let dirpath = substitute(fname,'/[^/]\+$','','e')
|
||||
if executable("cygpath")
|
||||
if has("win32unix") && executable("cygpath")
|
||||
let dirpath = substitute(system("cygpath ".s:Escape(dirpath,0)),'\n','','e')
|
||||
endif
|
||||
" call Decho("mkdir(dirpath<".dirpath.">,p)")
|
||||
@@ -279,7 +289,7 @@ fun! zip#Write(fname)
|
||||
" call Decho("zipfile<".zipfile."> fname<".fname.">")
|
||||
|
||||
exe "w! ".fnameescape(fname)
|
||||
if executable("cygpath")
|
||||
if has("win32unix") && executable("cygpath")
|
||||
let zipfile = substitute(system("cygpath ".s:Escape(zipfile,0)),'\n','','e')
|
||||
endif
|
||||
|
||||
|
||||
21
runtime/compiler/msbuild.vim
Normal file
21
runtime/compiler/msbuild.vim
Normal file
@@ -0,0 +1,21 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Microsoft Visual Studio C#
|
||||
" Maintainer: Chiel ten Brinke (ctje92@gmail.com)
|
||||
" Last Change: 2013 May 13
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "msbuild"
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
CompilerSet errorformat=\ %#%f(%l\\\,%c):\ %m
|
||||
CompilerSet makeprg=msbuild\ /nologo\ /v:q\ /property:GenerateFullPaths=true
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
22
runtime/compiler/xbuild.vim
Normal file
22
runtime/compiler/xbuild.vim
Normal file
@@ -0,0 +1,22 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Mono C#
|
||||
" Maintainer: Chiel ten Brinke (ctje92@gmail.com)
|
||||
" Last Change: 2013 May 13
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
|
||||
let current_compiler = "xbuild"
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
CompilerSet errorformat=\ %#%f(%l\\\,%c):\ %m
|
||||
CompilerSet makeprg=xbuild\ /nologo\ /v:q\ /property:GenerateFullPaths=true
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2012 Sep 05
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2013 Mar 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -519,8 +519,9 @@ CursorMoved After the cursor was moved in Normal mode.
|
||||
Not triggered when there is typeahead or when
|
||||
an operator is pending.
|
||||
For an example see |match-parens|.
|
||||
Careful: Don't do anything that the user does
|
||||
not expect or that is slow.
|
||||
Careful: This is triggered very often, don't
|
||||
do anything that the user does not expect or
|
||||
that is slow.
|
||||
*CursorMovedI*
|
||||
CursorMovedI After the cursor was moved in Insert mode.
|
||||
Not triggered when the popup menu is visible.
|
||||
@@ -730,11 +731,11 @@ QuickFixCmdPost Like QuickFixCmdPre, but after a quickfix
|
||||
moving to the first error.
|
||||
See |QuickFixCmdPost-example|.
|
||||
*QuitPre*
|
||||
QuitPre When using `:quit`, before deciding whether it
|
||||
closes the current window or quits Vim. Can
|
||||
be used to close any non-essential window if
|
||||
the current window is the last ordinary
|
||||
window.
|
||||
QuitPre When using `:quit`, `:wq` or `:qall`, before
|
||||
deciding whether it closes the current window
|
||||
or quits Vim. Can be used to close any
|
||||
non-essential window if the current window is
|
||||
the last ordinary window.
|
||||
*RemoteReply*
|
||||
RemoteReply When a reply from a Vim that functions as
|
||||
server was received |server2client()|. The
|
||||
@@ -831,12 +832,27 @@ TermResponse After the response to |t_RV| is received from
|
||||
triggered halfway executing another event,
|
||||
especially if file I/O, a shell command or
|
||||
anything else that takes time is involved.
|
||||
*TextChanged*
|
||||
TextChanged After a change was made to the text in the
|
||||
current buffer in Normal mode. That is when
|
||||
|b:changedtick| has changed.
|
||||
Not triggered when there is typeahead or when
|
||||
an operator is pending.
|
||||
Careful: This is triggered very often, don't
|
||||
do anything that the user does not expect or
|
||||
that is slow.
|
||||
*TextChangedI*
|
||||
TextChangedI After a change was made to the text in the
|
||||
current buffer in Insert mode.
|
||||
Not triggered when the popup menu is visible.
|
||||
Otherwise the same as TextChanged.
|
||||
*User*
|
||||
User Never executed automatically. To be used for
|
||||
autocommands that are only executed with
|
||||
":doautocmd".
|
||||
*UserGettingBored*
|
||||
UserGettingBored When the user hits CTRL-C. Just kidding! :-)
|
||||
UserGettingBored When the user presses the same key 42 times.
|
||||
Just kidding! :-)
|
||||
*VimEnter*
|
||||
VimEnter After doing all the startup stuff, including
|
||||
loading .vimrc files, executing the "-c cmd"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 7.3. Last change: 2012 Nov 02
|
||||
*change.txt* For Vim version 7.3. Last change: 2013 Mar 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -600,7 +600,7 @@ For other systems the tmpnam() library function is used.
|
||||
*g&*
|
||||
g& Synonym for `:%s//~/&` (repeat last substitute with
|
||||
last search pattern on all lines with the same flags).
|
||||
For exaple, when you first do a substitution with
|
||||
For example, when you first do a substitution with
|
||||
`:s/pattern/repl/flags` and then `/search` for
|
||||
something else, `g&` will do `:%s/search/repl/flags`.
|
||||
Mnemonic: global substitute. {not in Vi}
|
||||
@@ -784,6 +784,11 @@ Examples: >
|
||||
:s/abcde/abc^Mde/ modifies "abcde" to "abc", "de" (two lines)
|
||||
:s/$/\^M/ modifies "abcde" to "abcde^M"
|
||||
:s/\w\+/\u\0/g modifies "bla bla" to "Bla Bla"
|
||||
:s/\w\+/\L\u/g modifies "BLA bla" to "Bla Bla"
|
||||
|
||||
Note: "\L\u" can be used to capitalize the first letter of a word. This is
|
||||
not compatible with Vi and older versions of Vim, where the "\u" would cancel
|
||||
out the "\L". Same for "\U\l".
|
||||
|
||||
Note: In previous versions CTRL-V was handled in a special way. Since this is
|
||||
not Vi compatible, this was removed. Use a backslash instead.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 7.3. Last change: 2013 Jan 17
|
||||
*cmdline.txt* For Vim version 7.3. Last change: 2013 Mar 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -964,7 +964,7 @@ for the file "$home" in the root directory. A few examples:
|
||||
\\$home file "\\", followed by expanded $home
|
||||
|
||||
==============================================================================
|
||||
6. Command-line window *cmdline-window* *cmdwin*
|
||||
7. Command-line window *cmdline-window* *cmdwin*
|
||||
*command-line-window*
|
||||
In the command-line window the command line can be edited just like editing
|
||||
text in any window. It is a special kind of window, because you cannot leave
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*develop.txt* For Vim version 7.3. Last change: 2012 Jan 10
|
||||
*develop.txt* For Vim version 7.3. Last change: 2013 Apr 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -20,6 +20,7 @@ code.
|
||||
Vim is open source software. Everybody is encouraged to contribute to help
|
||||
improving Vim. For sending patches a context diff "diff -c" is preferred.
|
||||
Also see http://www.vim.org/tips/tip.php?tip_id=618.
|
||||
Also see http://vim.wikia.com/wiki/How_to_make_and_submit_a_patch.
|
||||
|
||||
==============================================================================
|
||||
1. Design goals *design-goals*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.3. Last change: 2013 Jan 23
|
||||
*eval.txt* For Vim version 7.3. Last change: 2013 May 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -503,7 +503,7 @@ This removes all entries from "dict" with a value not matching 'x'.
|
||||
|
||||
|
||||
Dictionary function ~
|
||||
*Dictionary-function* *self* *E725*
|
||||
*Dictionary-function* *self* *E725* *E862*
|
||||
When a function is defined with the "dict" attribute it can be used in a
|
||||
special way with a dictionary. Example: >
|
||||
:function Mylen() dict
|
||||
@@ -1150,14 +1150,14 @@ delete all script-local variables: >
|
||||
: unlet s:[k]
|
||||
:endfor
|
||||
<
|
||||
*buffer-variable* *b:var*
|
||||
*buffer-variable* *b:var* *b:*
|
||||
A variable name that is preceded with "b:" is local to the current buffer.
|
||||
Thus you can have several "b:foo" variables, one for each buffer.
|
||||
This kind of variable is deleted when the buffer is wiped out or deleted with
|
||||
|:bdelete|.
|
||||
|
||||
One local buffer variable is predefined:
|
||||
*b:changedtick-variable* *changetick*
|
||||
*b:changedtick* *changetick*
|
||||
b:changedtick The total number of changes to the current buffer. It is
|
||||
incremented for each change. An undo command is also a change
|
||||
in this case. This can be used to perform an action only when
|
||||
@@ -1167,21 +1167,21 @@ b:changedtick The total number of changes to the current buffer. It is
|
||||
: call My_Update()
|
||||
:endif
|
||||
<
|
||||
*window-variable* *w:var*
|
||||
*window-variable* *w:var* *w:*
|
||||
A variable name that is preceded with "w:" is local to the current window. It
|
||||
is deleted when the window is closed.
|
||||
|
||||
*tabpage-variable* *t:var*
|
||||
*tabpage-variable* *t:var* *t:*
|
||||
A variable name that is preceded with "t:" is local to the current tab page,
|
||||
It is deleted when the tab page is closed. {not available when compiled
|
||||
without the |+windows| feature}
|
||||
|
||||
*global-variable* *g:var*
|
||||
*global-variable* *g:var* *g:*
|
||||
Inside functions global variables are accessed with "g:". Omitting this will
|
||||
access a variable local to a function. But "g:" can also be used in any other
|
||||
place if you like.
|
||||
|
||||
*local-variable* *l:var*
|
||||
*local-variable* *l:var* *l:*
|
||||
Inside functions local variables are accessed without prepending anything.
|
||||
But you can also prepend "l:" if you like. However, without prepending "l:"
|
||||
you may run into reserved variable names. For example "count". By itself it
|
||||
@@ -1264,7 +1264,7 @@ Note that this means that filetype plugins don't get a different set of script
|
||||
variables for each buffer. Use local buffer variables instead |b:var|.
|
||||
|
||||
|
||||
Predefined Vim variables: *vim-variable* *v:var*
|
||||
Predefined Vim variables: *vim-variable* *v:var* *v:*
|
||||
|
||||
*v:beval_col* *beval_col-variable*
|
||||
v:beval_col The number of the column, over which the mouse pointer is.
|
||||
@@ -1777,7 +1777,8 @@ get( {list}, {idx} [, {def}]) any get item {idx} from {list} or {def}
|
||||
get( {dict}, {key} [, {def}]) any get item {key} from {dict} or {def}
|
||||
getbufline( {expr}, {lnum} [, {end}])
|
||||
List lines {lnum} to {end} of buffer {expr}
|
||||
getbufvar( {expr}, {varname}) any variable {varname} in buffer {expr}
|
||||
getbufvar( {expr}, {varname} [, {def}])
|
||||
any variable {varname} in buffer {expr}
|
||||
getchar( [expr]) Number get one character from the user
|
||||
getcharmod( ) Number modifiers for the last typed character
|
||||
getcmdline() String return the current command-line
|
||||
@@ -1798,12 +1799,14 @@ getpos( {expr}) List position of cursor, mark, etc.
|
||||
getqflist() List list of quickfix items
|
||||
getreg( [{regname} [, 1]]) String contents of register
|
||||
getregtype( [{regname}]) String type of register
|
||||
gettabvar( {nr}, {varname}) any variable {varname} in tab {nr}
|
||||
gettabwinvar( {tabnr}, {winnr}, {name})
|
||||
gettabvar( {nr}, {varname} [, {def}])
|
||||
any variable {varname} in tab {nr} or {def}
|
||||
gettabwinvar( {tabnr}, {winnr}, {name} [, {def}])
|
||||
any {name} in {winnr} in tab page {tabnr}
|
||||
getwinposx() Number X coord in pixels of GUI Vim window
|
||||
getwinposy() Number Y coord in pixels of GUI Vim window
|
||||
getwinvar( {nr}, {varname}) any variable {varname} in window {nr}
|
||||
getwinvar( {nr}, {varname} [, {def}])
|
||||
any variable {varname} in window {nr}
|
||||
glob( {expr} [, {nosuf} [, {list}]])
|
||||
any expand file wildcards in {expr}
|
||||
globpath( {path}, {expr} [, {flag}])
|
||||
@@ -2580,6 +2583,8 @@ delete({fname}) *delete()*
|
||||
which is 0 if the file was deleted successfully, and non-zero
|
||||
when the deletion failed.
|
||||
Use |remove()| to delete an item from a |List|.
|
||||
To delete a line from the buffer use |:delete|. Use |:exe|
|
||||
when the line number is in a variable.
|
||||
|
||||
*did_filetype()*
|
||||
did_filetype() Returns non-zero when autocommands are being executed and the
|
||||
@@ -3143,7 +3148,7 @@ getbufline({expr}, {lnum} [, {end}])
|
||||
Example: >
|
||||
:let lines = getbufline(bufnr("myfile"), 1, "$")
|
||||
|
||||
getbufvar({expr}, {varname}) *getbufvar()*
|
||||
getbufvar({expr}, {varname} [, {def}]) *getbufvar()*
|
||||
The result is the value of option or local buffer variable
|
||||
{varname} in buffer {expr}. Note that the name without "b:"
|
||||
must be used.
|
||||
@@ -3153,8 +3158,8 @@ getbufvar({expr}, {varname}) *getbufvar()*
|
||||
doesn't work for a global variable, window-local variable or
|
||||
window-local option.
|
||||
For the use of {expr}, see |bufname()| above.
|
||||
When the buffer or variable doesn't exist an empty string is
|
||||
returned, there is no error message.
|
||||
When the buffer or variable doesn't exist {def} or an empty
|
||||
string is returned, there is no error message.
|
||||
Examples: >
|
||||
:let bufmodified = getbufvar(1, "&mod")
|
||||
:echo "todo myvar = " . getbufvar("todo", "myvar")
|
||||
@@ -3431,26 +3436,30 @@ getregtype([{regname}]) *getregtype()*
|
||||
<CTRL-V> is one character with value 0x16.
|
||||
If {regname} is not specified, |v:register| is used.
|
||||
|
||||
gettabvar({tabnr}, {varname}) *gettabvar()*
|
||||
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.
|
||||
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.
|
||||
|
||||
gettabwinvar({tabnr}, {winnr}, {varname}) *gettabwinvar()*
|
||||
gettabwinvar({tabnr}, {winnr}, {varname} [, {def}]) *gettabwinvar()*
|
||||
Get the value of window-local variable {varname} in window
|
||||
{winnr} in tab page {tabnr}.
|
||||
When {varname} starts with "&" get the value of a window-local
|
||||
option.
|
||||
When {varname} is empty a dictionary with all window-local
|
||||
variables is returned.
|
||||
Note that {varname} must be the name without "w:".
|
||||
Tabs are numbered starting with one. For the current tabpage
|
||||
use |getwinvar()|.
|
||||
When {winnr} is zero the current window is used.
|
||||
This also works for a global option, buffer-local option and
|
||||
window-local option, but it doesn't work for a global variable
|
||||
or buffer-local variable.
|
||||
When {varname} is empty a dictionary with all window-local
|
||||
variables is returned.
|
||||
Note that {varname} must be the name without "w:".
|
||||
When the tab, window or variable doesn't exist {def} or an
|
||||
empty string is returned, there is no error message.
|
||||
Examples: >
|
||||
:let list_is_on = gettabwinvar(1, 2, '&list')
|
||||
:echo "myvar = " . gettabwinvar(3, 1, 'myvar')
|
||||
@@ -3465,7 +3474,7 @@ getwinposy() The result is a Number, which is the Y coordinate in pixels of
|
||||
the top of the GUI Vim window. The result will be -1 if the
|
||||
information is not available.
|
||||
|
||||
getwinvar({winnr}, {varname}) *getwinvar()*
|
||||
getwinvar({winnr}, {varname} [, {def}]) *getwinvar()*
|
||||
Like |gettabwinvar()| for the current tabpage.
|
||||
Examples: >
|
||||
:let list_is_on = getwinvar(2, '&list')
|
||||
@@ -5311,8 +5320,6 @@ settabvar({tabnr}, {varname}, {val}) *settabvar()*
|
||||
|t:var|
|
||||
Note that the variable name without "t:" must be used.
|
||||
Tabs are numbered starting with one.
|
||||
Vim briefly goes to the tab page {tabnr}, this may trigger
|
||||
TabLeave and TabEnter autocommands.
|
||||
This function is not available in the |sandbox|.
|
||||
|
||||
settabwinvar({tabnr}, {winnr}, {varname}, {val}) *settabwinvar()*
|
||||
@@ -5325,8 +5332,6 @@ settabwinvar({tabnr}, {winnr}, {varname}, {val}) *settabwinvar()*
|
||||
doesn't work for a global or local buffer variable.
|
||||
For a local buffer option the global value is unchanged.
|
||||
Note that the variable name without "w:" must be used.
|
||||
Vim briefly goes to the tab page {tabnr}, this may trigger
|
||||
TabLeave and TabEnter autocommands.
|
||||
Examples: >
|
||||
:call settabwinvar(1, 1, "&list", 0)
|
||||
:call settabwinvar(3, 2, "myvar", "foobar")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*ft_sql.txt* For Vim version 7.3. Last change: 2010 Jul 20
|
||||
*ft_sql.txt* For Vim version 7.3. Last change: 2013 May 15
|
||||
|
||||
by David Fishburn
|
||||
|
||||
@@ -349,6 +349,7 @@ may not work properly on all platforms: >
|
||||
The static maps (which are based on the syntax highlight groups) follow this
|
||||
format: >
|
||||
imap <buffer> <C-C>k <C-\><C-O>:call sqlcomplete#Map('sqlKeyword')<CR><C-X><C-O>
|
||||
imap <buffer> <C-C>k <C-\><C-O>:call sqlcomplete#Map('sqlKeyword\w*')<CR><C-X><C-O>
|
||||
|
||||
This command breaks down as: >
|
||||
imap - Create an insert map
|
||||
@@ -369,6 +370,9 @@ This command breaks down as: >
|
||||
command while editing a SQL file.
|
||||
'sqlKeyword' - Display the items for the sqlKeyword highlight
|
||||
group
|
||||
'sqlKeyword\w*' - A second option available with Vim 7.4 which
|
||||
uses a regular expression to determine which
|
||||
syntax groups to use
|
||||
)<CR> - Execute the :let command
|
||||
<C-X><C-O> - Trigger the standard omni completion key stroke.
|
||||
Passing in 'sqlKeyword' instructs the SQL
|
||||
@@ -435,7 +439,7 @@ the space bar):
|
||||
of columns, you can press <Left>, this will
|
||||
replace the column list with the list of tables.
|
||||
- This allows you to quickly drill down into a
|
||||
table to view it's columns and back again.
|
||||
table to view its columns and back again.
|
||||
- <Right> and <Left> can be also be chosen via
|
||||
your |.vimrc| >
|
||||
let g:ftplugin_sql_omni_key_right = '<Right>'
|
||||
@@ -645,7 +649,7 @@ your |vimrc|: >
|
||||
- When completing tables, procedure or views and using dbext.vim 3.00
|
||||
or higher the list of objects will also include the owner name.
|
||||
When completing these objects and omni_sql_include_owner is enabled
|
||||
the owner name will be be replaced. >
|
||||
the owner name will be replaced. >
|
||||
|
||||
omni_sql_precache_syntax_groups
|
||||
< - Default:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2013 Feb 03
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2013 May 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -57,6 +57,22 @@ Example: >
|
||||
Note: Python is very sensitive to the indenting. Make sure the "class" line
|
||||
and "EOF" do not have any indent.
|
||||
|
||||
*:pydo*
|
||||
:[range]pydo {body} Execute Python function "def _vim_pydo(line, linenr):
|
||||
{body}" for each line in the [range], with the
|
||||
function arguments being set to the text of each line
|
||||
in turn, without a trailing <EOL>, and the current
|
||||
line number. The function should return a string or
|
||||
None. If a string is returned, it becomes the text of
|
||||
the line in the current turn. The default for [range]
|
||||
is the whole file: "1,$".
|
||||
{not in Vi}
|
||||
|
||||
Examples:
|
||||
>
|
||||
:pydo return "%s\t%d" % (line[::-1], len(line))
|
||||
:pydo if line: return "%4d: %s" % (linenr, line)
|
||||
<
|
||||
*:pyfile* *:pyf*
|
||||
:[range]pyf[ile] {file}
|
||||
Execute the Python script in {file}. The whole
|
||||
@@ -209,12 +225,12 @@ Constants of the "vim" module
|
||||
to which the variables referred.
|
||||
|
||||
vim.buffers *python-buffers*
|
||||
A sequence object providing access to the list of vim buffers. The
|
||||
A mapping object providing access to the list of vim buffers. The
|
||||
object supports the following operations: >
|
||||
:py b = vim.buffers[i] # Indexing (read-only)
|
||||
:py b in vim.buffers # Membership test
|
||||
:py n = len(vim.buffers) # Number of elements
|
||||
:py for b in vim.buffers: # Sequential access
|
||||
:py for b in vim.buffers: # Iterating over buffer list
|
||||
<
|
||||
vim.windows *python-windows*
|
||||
A sequence object providing access to the list of vim windows. The
|
||||
@@ -223,13 +239,28 @@ vim.windows *python-windows*
|
||||
:py w in vim.windows # Membership test
|
||||
:py n = len(vim.windows) # Number of elements
|
||||
:py for w in vim.windows: # Sequential access
|
||||
< Note: vim.windows object always accesses current tab page,.
|
||||
|python-tabpage|.windows objects are bound to parent |python-tabpage|
|
||||
object and always use windows from that tab page (or throw vim.error
|
||||
in case tab page was deleted). You can keep a reference to both
|
||||
without keeping a reference to vim module object or |python-tabpage|,
|
||||
they will not loose their properties in this case.
|
||||
|
||||
vim.tabpages *python-tabpages*
|
||||
A sequence object providing access to the list of vim tab pages. The
|
||||
object supports the following operations: >
|
||||
:py t = vim.tabpages[i] # Indexing (read-only)
|
||||
:py t in vim.tabpages # Membership test
|
||||
:py n = len(vim.tabpages) # Number of elements
|
||||
:py for t in vim.tabpages: # Sequential access
|
||||
<
|
||||
vim.current *python-current*
|
||||
An object providing access (via specific attributes) to various
|
||||
"current" objects available in vim:
|
||||
vim.current.line The current line (RW) String
|
||||
vim.current.buffer The current buffer (RO) Buffer
|
||||
vim.current.window The current window (RO) Window
|
||||
vim.current.buffer The current buffer (RW) Buffer
|
||||
vim.current.window The current window (RW) Window
|
||||
vim.current.tabpage The current tab page (RW) TabPage
|
||||
vim.current.range The current line range (RO) Range
|
||||
|
||||
The last case deserves a little explanation. When the :python or
|
||||
@@ -237,6 +268,39 @@ vim.current *python-current*
|
||||
"current range". A range is a bit like a buffer, but with all access
|
||||
restricted to a subset of lines. See |python-range| for more details.
|
||||
|
||||
Note: When assigning to vim.current.{buffer,window,tabpage} it expects
|
||||
valid |python-buffer|, |python-window| or |python-tabpage| objects
|
||||
respectively. Assigning triggers normal (with |autocommand|s)
|
||||
switching to given buffer, window or tab page. It is the only way to
|
||||
switch UI objects in python: you can't assign to
|
||||
|python-tabpage|.window attribute. To switch without triggering
|
||||
autocommands use >
|
||||
py << EOF
|
||||
saved_eventignore = vim.options['eventignore']
|
||||
vim.options['eventignore'] = 'all'
|
||||
try:
|
||||
vim.current.buffer = vim.buffers[2] # Switch to buffer 2
|
||||
finally:
|
||||
vim.options['eventignore'] = saved_eventignore
|
||||
EOF
|
||||
<
|
||||
vim.vars *python-vars*
|
||||
vim.vvars *python-vvars*
|
||||
Dictionary-like objects holding dictionaries with global (|g:|) and
|
||||
vim (|v:|) variables respectively. Identical to `vim.bindeval("g:")`,
|
||||
but faster.
|
||||
|
||||
vim.options *python-options*
|
||||
Object partly supporting mapping protocol (supports setting and
|
||||
getting items) providing a read-write access to global options.
|
||||
Note: unlike |:set| this provides access only to global options. You
|
||||
cannot use this object to obtain or set local options' values or
|
||||
access local-only options in any fashion. Raises KeyError if no global
|
||||
option with such name exists (i.e. does not raise KeyError for
|
||||
|global-local| options and global only options, but does for window-
|
||||
and buffer-local ones). Use |python-buffer| objects to access to
|
||||
buffer-local options and |python-window| objects to access to
|
||||
window-local options.
|
||||
|
||||
Output from Python *python-output*
|
||||
Vim displays all Python code output in the Vim message area. Normal
|
||||
@@ -278,6 +342,17 @@ Buffer indexes start at zero, as is normal in Python. This differs from vim
|
||||
line numbers, which start from 1. This is particularly relevant when dealing
|
||||
with marks (see below) which use vim line numbers.
|
||||
|
||||
The buffer object attributes are:
|
||||
b.vars Dictionary-like object used to access
|
||||
|buffer-variable|s.
|
||||
b.options Mapping object (supports item getting, setting and
|
||||
deleting) that provides access to buffer-local options
|
||||
and buffer-local values of |global-local| options. Use
|
||||
|python-window|.options if option is window-local,
|
||||
this object will raise KeyError. If option is
|
||||
|global-local| and local value is missing getting it
|
||||
will return None.
|
||||
|
||||
The buffer object methods are:
|
||||
b.append(str) Append a line to the buffer
|
||||
b.append(str, nr) Idem, below line "nr"
|
||||
@@ -307,6 +382,9 @@ Examples (assume b is the current buffer) >
|
||||
:py n = len(b) # number of lines
|
||||
:py (row,col) = b.mark('a') # named mark
|
||||
:py r = b.range(1,5) # a sub-range of the buffer
|
||||
:py b.vars["foo"] = "bar" # assign b:foo variable
|
||||
:py b.options["ff"] = "dos" # set fileformat
|
||||
:py del b.options["ar"] # same as :set autoread<
|
||||
|
||||
==============================================================================
|
||||
4. Range objects *python-range*
|
||||
@@ -344,6 +422,8 @@ Example (assume r is the current range):
|
||||
Window objects represent vim windows. You can obtain them in a number of ways:
|
||||
- via vim.current.window (|python-current|)
|
||||
- from indexing vim.windows (|python-windows|)
|
||||
- from indexing "windows" attribute of a tab page (|python-tabpage|)
|
||||
- from the "window" attribute of a tab page (|python-tabpage|)
|
||||
|
||||
You can manipulate window objects only through their attributes. They have no
|
||||
methods, and no sequence or other interface.
|
||||
@@ -354,9 +434,46 @@ Window attributes are:
|
||||
This is a tuple, (row,col).
|
||||
height (read-write) The window height, in rows
|
||||
width (read-write) The window width, in columns
|
||||
vars (read-only) The window |w:| variables. Attribute is
|
||||
unassignable, but you can change window
|
||||
variables this way
|
||||
options (read-only) The window-local options. Attribute is
|
||||
unassignable, but you can change window
|
||||
options this way. Provides access only to
|
||||
window-local options, for buffer-local use
|
||||
|python-buffer| and for global ones use
|
||||
|python-options|. If option is |global-local|
|
||||
and local value is missing getting it will
|
||||
return None.
|
||||
number (read-only) Window number. The first window has number 1.
|
||||
This is zero in case it cannot be determined
|
||||
(e.g. when the window object belongs to other
|
||||
tab page).
|
||||
row, col (read-only) On-screen window position in display cells.
|
||||
First position is zero.
|
||||
tabpage (read-only) Window tab page.
|
||||
|
||||
The height attribute is writable only if the screen is split horizontally.
|
||||
The width attribute is writable only if the screen is split vertically.
|
||||
|
||||
==============================================================================
|
||||
6. Tab page objects *python-tabpage*
|
||||
|
||||
Tab page objects represent vim tab pages. You can obtain them in a number of
|
||||
ways:
|
||||
- via vim.current.tabpage (|python-current|)
|
||||
- from indexing vim.tabpages (|python-tabpages|)
|
||||
|
||||
You can use this object to access tab page windows. They have no methods and
|
||||
no sequence or other interfaces.
|
||||
|
||||
Tab page attributes are:
|
||||
number The tab page number like the one returned by
|
||||
|tabpagenr()|.
|
||||
windows Like |python-windows|, but for current tab page.
|
||||
vars The tab page |t:| variables.
|
||||
window Current tabpage window.
|
||||
|
||||
==============================================================================
|
||||
6. pyeval() and py3eval() Vim functions *python-pyeval*
|
||||
|
||||
@@ -384,11 +501,13 @@ sure edit "gvim.exe" and search for "python\d*.dll\c".
|
||||
8. Python 3 *python3*
|
||||
|
||||
*:py3* *:python3*
|
||||
The |:py3| and |:python3| commands work similar to |:python|. A simple check
|
||||
The `:py3` and `:python3` commands work similar to `:python`. A simple check
|
||||
if the `:py3` command is working: >
|
||||
:py3 print("Hello")
|
||||
< *:py3file*
|
||||
The |:py3file| command works similar to |:pyfile|.
|
||||
The `:py3file` command works similar to `:pyfile`.
|
||||
*:py3do* *E863*
|
||||
The `:py3do` command works similar to `:pydo`.
|
||||
|
||||
|
||||
Vim can be built in four ways (:version output):
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.3. Last change: 2012 Jul 25
|
||||
*index.txt* For Vim version 7.3. Last change: 2013 May 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -725,6 +725,7 @@ tag char note action in Normal mode ~
|
||||
cursor N times, leave the cursor after it
|
||||
|gQ| gQ switch to "Ex" mode with Vim editing
|
||||
|gR| gR 2 enter Virtual Replace mode
|
||||
|gT| gT go to the previous tab page
|
||||
|gU| gU{motion} 2 make Nmove text uppercase
|
||||
|gV| gV don't reselect the previous Visual area
|
||||
when executing a mapping or menu in Select
|
||||
@@ -762,6 +763,7 @@ tag char note action in Normal mode ~
|
||||
|gq| gq{motion} 2 format Nmove text
|
||||
|gr| gr{char} 2 virtual replace N chars with {char}
|
||||
|gs| gs go to sleep for N seconds (default 1)
|
||||
|gt| gt go to the next tab page
|
||||
|gu| gu{motion} 2 make Nmove text lowercase
|
||||
|gv| gv reselect the previous Visual area
|
||||
|gw| gw{motion} 2 format Nmove text and keep cursor
|
||||
@@ -1134,7 +1136,7 @@ tag command action ~
|
||||
|:cgetbuffer| :cgetb[uffer] get errors from buffer
|
||||
|:cgetexpr| :cgete[xpr] get errors from expr
|
||||
|:cgetfile| :cg[etfile] read file with error messages
|
||||
|:changes| :cha[nges] print the change list
|
||||
|:changes| :changes print the change list
|
||||
|:chdir| :chd[ir] change directory
|
||||
|:checkpath| :che[ckpath] list included files
|
||||
|:checktime| :checkt[ime] check timestamp of loaded buffers
|
||||
@@ -1383,7 +1385,7 @@ tag command action ~
|
||||
|:promptrepl| :promptr[epl] open GUI dialog for search/replace
|
||||
|:perldo| :perld[o] execute Perl command for each line
|
||||
|:pop| :po[p] jump to older entry in tag stack
|
||||
|:popup| :pop[up] popup a menu by name
|
||||
|:popup| :popu[p] popup a menu by name
|
||||
|:ppop| :pp[op] ":pop" in preview window
|
||||
|:preserve| :pre[serve] write all text to swap file
|
||||
|:previous| :prev[ious] go to previous file in argument list
|
||||
@@ -1401,8 +1403,10 @@ tag command action ~
|
||||
|:pwd| :pw[d] print current directory
|
||||
|:py3| :py3 execute Python 3 command
|
||||
|:python3| :python3 same as :py3
|
||||
|:py3do| :py3d[o] execute Python 3 command for each line
|
||||
|:py3file| :py3f[ile] execute Python 3 script file
|
||||
|:python| :py[thon] execute Python command
|
||||
|:pydo| :pyd[o] execute Python command for each line
|
||||
|:pyfile| :pyf[ile] execute Python script file
|
||||
|:quit| :q[uit] quit current window (when one window quit Vim)
|
||||
|:quitall| :quita[ll] quit Vim
|
||||
@@ -1469,7 +1473,7 @@ tag command action ~
|
||||
|:slast| :sla[st] split window and go to last file in the
|
||||
argument list
|
||||
|:smagic| :sm[agic] :substitute with 'magic'
|
||||
|:smap| :sma[p] like ":map" but for Select mode
|
||||
|:smap| :smap like ":map" but for Select mode
|
||||
|:smapclear| :smapc[lear] remove all mappings for Select mode
|
||||
|:smenu| :sme[nu] add menu for Select mode
|
||||
|:snext| :sn[ext] split window and go to next file in the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.3. Last change: 2013 Jan 09
|
||||
*insert.txt* For Vim version 7.3. Last change: 2013 Apr 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1869,13 +1869,15 @@ NOTE: These commands cannot be used with |:global| or |:vglobal|.
|
||||
See |++opt| for the possible values of [++opt].
|
||||
|
||||
*:r!* *:read!*
|
||||
:[range]r[ead] !{cmd} Execute {cmd} and insert its standard output below
|
||||
:[range]r[ead] [++opt] !{cmd}
|
||||
Execute {cmd} and insert its standard output below
|
||||
the cursor or the specified line. A temporary file is
|
||||
used to store the output of the command which is then
|
||||
read into the buffer. 'shellredir' is used to save
|
||||
the output of the command, which can be set to include
|
||||
stderr or not. {cmd} is executed like with ":!{cmd}",
|
||||
any '!' is replaced with the previous command |:!|.
|
||||
See |++opt| for the possible values of [++opt].
|
||||
|
||||
These commands insert the contents of a file, or the output of a command,
|
||||
into the buffer. They can be undone. They cannot be repeated with the "."
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 7.3. Last change: 2012 Apr 13
|
||||
*map.txt* For Vim version 7.3. Last change: 2013 May 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -49,7 +49,7 @@ modes.
|
||||
:nm[ap] {lhs} {rhs} |mapmode-n| *:nm* *:nmap*
|
||||
:vm[ap] {lhs} {rhs} |mapmode-v| *:vm* *:vmap*
|
||||
:xm[ap] {lhs} {rhs} |mapmode-x| *:xm* *:xmap*
|
||||
:smap {lhs} {rhs} |mapmode-s| *:smap*
|
||||
:smap {lhs} {rhs} |mapmode-s| *:smap*
|
||||
:om[ap] {lhs} {rhs} |mapmode-o| *:om* *:omap*
|
||||
:map! {lhs} {rhs} |mapmode-ic| *:map!*
|
||||
:im[ap] {lhs} {rhs} |mapmode-i| *:im* *:imap*
|
||||
|
||||
@@ -1067,7 +1067,7 @@ The actual mappings are in the lines below "loadkeymap". In the example "a"
|
||||
is mapped to "A" and "b" to "B". Thus the first item is mapped to the second
|
||||
item. This is done for each line, until the end of the file.
|
||||
These items are exactly the same as what can be used in a |:lnoremap| command,
|
||||
using "<buffer>" to make the mappings local to the buffer..
|
||||
using "<buffer>" to make the mappings local to the buffer.
|
||||
You can check the result with this command: >
|
||||
:lmap
|
||||
The two items must be separated by white space. You cannot include white
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*message.txt* For Vim version 7.3. Last change: 2011 May 10
|
||||
*message.txt* For Vim version 7.3. Last change: 2013 Feb 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -730,7 +730,11 @@ Vim cannot create a temporary file.
|
||||
Can't open file {filename}
|
||||
Can't read file {filename}
|
||||
|
||||
Vim cannot read a temporary file.
|
||||
Vim cannot read a temporary file. Especially on Windows, this can be caused
|
||||
by wrong escaping of special characters for cmd.exe; the approach was
|
||||
changed with patch 7.3.443. Try using |shellescape()| for all shell arguments
|
||||
given to |system()|, or explicitly add escaping with ^. Also see
|
||||
'shellxquote' and 'shellxescape'.
|
||||
|
||||
*E464* >
|
||||
Ambiguous use of user-defined command
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 7.3. Last change: 2012 Aug 04
|
||||
*motion.txt* For Vim version 7.3. Last change: 2013 Mar 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -104,13 +104,14 @@ strokes and has limited redo functionality. See the chapter on Visual mode
|
||||
|Visual-mode|.
|
||||
|
||||
You can use a ":" command for a motion. For example "d:call FindEnd()".
|
||||
But this can't be redone with "." if the command is more than one line.
|
||||
But this can't be repeated with "." if the command is more than one line.
|
||||
This can be repeated: >
|
||||
d:call search("f")<CR>
|
||||
This cannot be repeated: >
|
||||
d:if 1<CR>
|
||||
call search("f")<CR>
|
||||
endif<CR>
|
||||
Note that when using ":" any motion becomes characterwise exclusive.
|
||||
|
||||
|
||||
FORCING A MOTION TO BE LINEWISE, CHARACTERWISE OR BLOCKWISE
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.3. Last change: 2013 Feb 13
|
||||
*options.txt* For Vim version 7.3. Last change: 2013 Apr 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -277,8 +277,10 @@ Now the 'list' option is not set, because ":set nolist" resets the global
|
||||
value, ":setlocal list" only changes the local value and ":e two" gets the
|
||||
global value. Note that if you do this next: >
|
||||
:e one
|
||||
You will not get back the 'list' value as it was the last time you edited
|
||||
"one". The options local to a window are not remembered for each buffer.
|
||||
You will get back the 'list' value as it was the last time you edited "one".
|
||||
The options local to a window are remembered for each buffer. This also
|
||||
happens when the buffer is not loaded, but they are lost when the buffer is
|
||||
wiped out |:bwipe|.
|
||||
|
||||
*:setl* *:setlocal*
|
||||
:setl[ocal] ... Like ":set" but set only the value local to the
|
||||
@@ -699,6 +701,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
when the system locale is set to one of CJK locales. See Unicode
|
||||
Standard Annex #11 (http://www.unicode.org/reports/tr11).
|
||||
|
||||
Vim may set this option automatically at startup time when Vim is
|
||||
compiled with the |+termresponse| feature and if |t_u7| is set to the
|
||||
escape sequence to request cursor position report.
|
||||
|
||||
*'antialias'* *'anti'* *'noantialias'* *'noanti'*
|
||||
'antialias' 'anti' boolean (default: off)
|
||||
global
|
||||
@@ -986,7 +992,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
- The backup file will be created in the first directory in the list
|
||||
where this is possible. The directory must exist, Vim will not
|
||||
create it for you.
|
||||
- Empty means that no backup file will be created ('patchmode' is
|
||||
- Empty means that no backup file will be created ( 'patchmode' is
|
||||
impossible!). Writing may fail because of this.
|
||||
- A directory "." means to put the backup file in the same directory
|
||||
as the edited file.
|
||||
@@ -1703,7 +1709,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
when CTRL-P or CTRL-N are used. It is also used for whole-line
|
||||
completion |i_CTRL-X_CTRL-L|. It indicates the type of completion
|
||||
and the places to scan. It is a comma separated list of flags:
|
||||
. scan the current buffer ('wrapscan' is ignored)
|
||||
. scan the current buffer ( 'wrapscan' is ignored)
|
||||
w scan buffers from other windows
|
||||
b scan other loaded buffers that are in the buffer list
|
||||
u scan the unloaded buffers that are in the buffer list
|
||||
@@ -2868,7 +2874,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
See |file-formats| and |file-read|.
|
||||
For the character encoding of the file see 'fileencoding'.
|
||||
When 'binary' is set, the value of 'fileformat' is ignored, file I/O
|
||||
works like it was set to "unix'.
|
||||
works like it was set to "unix".
|
||||
This option is set automatically when starting to edit a file and
|
||||
'fileformats' is not empty and 'binary' is off.
|
||||
When this option is set, after starting to edit a file, the 'modified'
|
||||
@@ -2937,6 +2943,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
|
||||
*'fileignorecase'* *'fic'* *'nofileignorecase'* *'nofic'*
|
||||
'fileignorecase' 'fic' boolean (default on for systems where case in file
|
||||
names is normally ignored)
|
||||
global
|
||||
{not in Vi}
|
||||
When set case is ignored when using file names and directories.
|
||||
See 'wildignorecase' for only ignoring case when doing completion.
|
||||
|
||||
*'filetype'* *'ft'*
|
||||
'filetype' 'ft' string (default: "")
|
||||
local to buffer
|
||||
@@ -7085,7 +7099,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
Encoding used for the terminal. This specifies what character
|
||||
encoding the keyboard produces and the display will understand. For
|
||||
the GUI it only applies to the keyboard ('encoding' is used for the
|
||||
the GUI it only applies to the keyboard ( 'encoding' is used for the
|
||||
display). Except for the Mac when 'macatsui' is off, then
|
||||
'termencoding' should be "macroman".
|
||||
In the Win32 console version the default value is the console codepage
|
||||
@@ -7899,7 +7913,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
global
|
||||
{not in Vi}
|
||||
When set case is ignored when completing file names and directories.
|
||||
Has no effect on systems where file name case is generally ignored.
|
||||
Has no effect when 'fileignorecase' is set.
|
||||
Does not apply when the shell is used to expand wildcards, which
|
||||
happens when there are special characters.
|
||||
|
||||
@@ -7918,6 +7932,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
CTRL-P/CTRL-N, cause the highlight to move to the appropriate match.
|
||||
When 'wildmode' is used, "wildmenu" mode is used where "full" is
|
||||
specified. "longest" and "list" do not start "wildmenu" mode.
|
||||
You can check the current mode with |wildmenumode()|.
|
||||
If there are more matches than can fit in the line, a ">" is shown on
|
||||
the right and/or a "<" is shown on the left. The status line scrolls
|
||||
as needed.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 7.3. Last change: 2013 Jan 25
|
||||
*pattern.txt* For Vim version 7.3. Last change: 2013 May 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -350,6 +350,27 @@ For starters, read chapter 27 of the user manual |usr_27.txt|.
|
||||
or \z( pattern \) |/\z(|
|
||||
|
||||
|
||||
*/\%#=* *two-engines*
|
||||
Vim includes two regexp engines:
|
||||
1. An old, backtracking engine that supports everything.
|
||||
2. A new, NFA engine that works much faster on some patterns, but does not
|
||||
support everything.
|
||||
|
||||
Vim will automatically select the right engine for you. However, if you run
|
||||
into a problem or want to specifically select one engine or the other, you can
|
||||
prepend one of the following to the pattern:
|
||||
|
||||
\%#=0 Force automatic selection. Only has an effect when
|
||||
'regexpengine' has been set to a non-zero value.
|
||||
\%#=1 Force using the old engine.
|
||||
\%#=2 Force using the NFA engine.
|
||||
|
||||
You can also use the 'regexpengine' option to change the default.
|
||||
|
||||
*E864* *E868* *E874* *E875* *E876* *E877* *E878*
|
||||
If selecting the NFA engine and it runs into something that is not implemented
|
||||
the pattern will not match. This is only useful when debugging Vim.
|
||||
|
||||
==============================================================================
|
||||
3. Magic */magic*
|
||||
|
||||
@@ -396,9 +417,10 @@ pattern.
|
||||
|
||||
==============================================================================
|
||||
4. Overview of pattern items *pattern-overview*
|
||||
*E865* *E866* *E867* *E869*
|
||||
|
||||
Overview of multi items. */multi* *E61* *E62*
|
||||
More explanation and examples below, follow the links. *E64*
|
||||
More explanation and examples below, follow the links. *E64* *E871*
|
||||
|
||||
multi ~
|
||||
'magic' 'nomagic' matches of the preceding atom ~
|
||||
@@ -508,12 +530,14 @@ Character classes {not in Vi}: */character-classes*
|
||||
|
||||
|/\c| \c \c ignore case, do not use the 'ignorecase' option
|
||||
|/\C| \C \C match case, do not use the 'ignorecase' option
|
||||
|/\Z| \Z \Z ignore differences in Unicode "combining characters".
|
||||
Useful when searching voweled Hebrew or Arabic text.
|
||||
|
||||
|/\m| \m \m 'magic' on for the following chars in the pattern
|
||||
|/\M| \M \M 'magic' off for the following chars in the pattern
|
||||
|/\v| \v \v the following chars in the pattern are "very magic"
|
||||
|/\V| \V \V the following chars in the pattern are "very nomagic"
|
||||
|/\Z| \Z \Z ignore differences in Unicode "combining characters".
|
||||
Useful when searching voweled Hebrew or Arabic text.
|
||||
|/\%#=| \%#=1 \%#=1 select regexp engine |/zero-width|
|
||||
|
||||
|/\%d| \%d \%d match specified decimal character (eg \%d123)
|
||||
|/\%x| \%x \%x match specified hex character (eg \%x2a)
|
||||
@@ -581,7 +605,7 @@ overview.
|
||||
\? Just like \=. Cannot be used when searching backwards with the "?"
|
||||
command. {not in Vi}
|
||||
|
||||
*/\{* *E58* *E60* *E554*
|
||||
*/\{* *E58* *E60* *E554* *E870*
|
||||
\{n,m} Matches n to m of the preceding atom, as many as possible
|
||||
\{n} Matches n of the preceding atom
|
||||
\{n,} Matches at least n of the preceding atom, as many as possible
|
||||
@@ -962,7 +986,8 @@ match ASCII characters, as indicated by the range.
|
||||
~ matches the last given substitute string */~* */\~*
|
||||
|
||||
\(\) A pattern enclosed by escaped parentheses. */\(* */\(\)* */\)*
|
||||
E.g., "\(^a\)" matches 'a' at the start of a line. *E51* *E54* *E55*
|
||||
E.g., "\(^a\)" matches 'a' at the start of a line.
|
||||
*E51* *E54* *E55* *E872* *E873*
|
||||
|
||||
\1 Matches the same string that was matched by */\1* *E65*
|
||||
the first sub-expression in \( and \). {not in Vi}
|
||||
@@ -1061,6 +1086,8 @@ x A single character, with no special meaning, matches itself
|
||||
any character that's not in "^]-\bdertnoUux". "[\xyz]" matches '\',
|
||||
'x', 'y' and 'z'. It's better to use "\\" though, future expansions
|
||||
may use other characters after '\'.
|
||||
- Omitting the trailing ] is not considered an error. "[]" works like
|
||||
"[]]", it matches the ']' character.
|
||||
- The following translations are accepted when the 'l' flag is not
|
||||
included in 'cpoptions' {not in Vi}:
|
||||
\e <Esc>
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
*pi_getscript.txt* For Vim version 7.0. Last change: 2011 Jun 23
|
||||
*pi_getscript.txt* For Vim version 7.0. Last change: 2012 Apr 07
|
||||
>
|
||||
GETSCRIPT REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||
GETSCRIPT REFERENCE MANUAL by Charles E. Campbell
|
||||
<
|
||||
Authors: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamilyA.Mbiz>
|
||||
Authors: Charles E. Campbell <NdrOchip@ScampbellPfamilyA.Mbiz>
|
||||
(remove NOSPAM from the email address)
|
||||
*GetLatestVimScripts-copyright*
|
||||
Copyright: (c) 2004-2012 by Charles E. Campbell, Jr. *glvs-copyright*
|
||||
Copyright: (c) 2004-2012 by Charles E. Campbell *glvs-copyright*
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
package, including getscriptPlugin.vim, getscript.vim,
|
||||
GetLatestVimScripts.dist, and pi_getscript.txt, except use "getscript"
|
||||
@@ -343,6 +343,11 @@ after/syntax/c.vim contained in it to overwrite a user's c.vim.
|
||||
default= $HOME/vimfiles (windows)
|
||||
Override where :AutoInstall: scripts will be installed.
|
||||
Doesn't override vimball installation.
|
||||
>
|
||||
g:GetLatestVimScripts_scriptaddr
|
||||
< default='http://vim.sourceforge.net/script.php?script_id='
|
||||
Override this if your system needs
|
||||
... ='http://vim.sourceforge.net/script/script.php?script_id='
|
||||
|
||||
==============================================================================
|
||||
8. GetLatestVimScripts Algorithm *glvs-algorithm* *glvs-alg*
|
||||
@@ -380,7 +385,11 @@ The AutoInstall process will:
|
||||
==============================================================================
|
||||
9. GetLatestVimScripts History *getscript-history* *glvs-hist* {{{1
|
||||
|
||||
v44 Jun 23, 2011 : * handles additional decompression options for tarballs
|
||||
v35 Apr 07, 2012 : * (MengHuan Yu) pointed out that the script url has
|
||||
changed (somewhat). However, it doesn't work, and
|
||||
the original one does (under Linux). I'll make it
|
||||
yet-another-option.
|
||||
v34 Jun 23, 2011 : * handles additional decompression options for tarballs
|
||||
(tgz taz tbz txz)
|
||||
v33 May 31, 2011 : * using fnameescape() instead of escape()
|
||||
* *.xz support
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
*pi_netrw.txt* For Vim version 7.3. Last change: 2012 Oct 25
|
||||
*pi_netrw.txt* For Vim version 7.3. Last change: 2013 Apr 19
|
||||
|
||||
-----------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||
-----------------------------------------------------
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell
|
||||
------------------------------------------------
|
||||
Author: Charles E. Campbell <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
|
||||
Copyright: Copyright (C) 1999-2012 Charles E Campbell, Jr *netrw-copyright*
|
||||
Copyright: Copyright (C) 1999-2013 Charles E Campbell *netrw-copyright*
|
||||
The VIM LICENSE applies to the files in this package, including
|
||||
netrw.vim, pi_netrw.txt, netrwFileHandlers.vim, netrwSettings.vim, and
|
||||
syntax/netrw.vim. Like anything else that's free, netrw.vim and its
|
||||
@@ -25,83 +25,87 @@ Copyright: Copyright (C) 1999-2012 Charles E Campbell, Jr *netrw-copyright*
|
||||
==============================================================================
|
||||
1. Contents *netrw-contents* {{{1
|
||||
|
||||
1. Contents.............................................|netrw-contents|
|
||||
2. Starting With Netrw..................................|netrw-start|
|
||||
3. Netrw Reference......................................|netrw-ref|
|
||||
EXTERNAL APPLICATIONS AND PROTOCOLS................|netrw-externapp|
|
||||
READING............................................|netrw-read|
|
||||
WRITING............................................|netrw-write|
|
||||
SOURCING...........................................|netrw-source|
|
||||
DIRECTORY LISTING..................................|netrw-dirlist|
|
||||
CHANGING THE USERID AND PASSWORD...................|netrw-chgup|
|
||||
VARIABLES AND SETTINGS.............................|netrw-variables|
|
||||
PATHS..............................................|netrw-path|
|
||||
4. Network-Oriented File Transfer.......................|netrw-xfer|
|
||||
NETRC..............................................|netrw-netrc|
|
||||
PASSWORD...........................................|netrw-passwd|
|
||||
5. Activation...........................................|netrw-activate|
|
||||
6. Transparent Remote File Editing......................|netrw-transparent|
|
||||
7. Ex Commands..........................................|netrw-ex|
|
||||
8. Variables and Options................................|netrw-variables|
|
||||
9. Browsing.............................................|netrw-browse|
|
||||
Introduction To Browsing...........................|netrw-intro-browse|
|
||||
Quick Reference: Maps..............................|netrw-browse-maps|
|
||||
Quick Reference: Commands..........................|netrw-browse-cmds|
|
||||
Bookmarking A Directory............................|netrw-mb|
|
||||
Browsing...........................................|netrw-cr|
|
||||
Browsing With A Horizontally Split Window..........|netrw-o|
|
||||
Browsing With A New Tab............................|netrw-t|
|
||||
Browsing With A Vertically Split Window............|netrw-v|
|
||||
Change Listing Style.(thin wide long tree).........|netrw-i|
|
||||
Changing To A Bookmarked Directory.................|netrw-gb|
|
||||
Changing To A Predecessor Directory................|netrw-u|
|
||||
Changing To A Successor Directory..................|netrw-U|
|
||||
Customizing Browsing With A User Function..........|netrw-x|
|
||||
Deleting Bookmarks.................................|netrw-mB|
|
||||
Deleting Files Or Directories......................|netrw-D|
|
||||
Directory Exploring Commands.......................|netrw-explore|
|
||||
Exploring With Stars and Patterns..................|netrw-star|
|
||||
Displaying Information About File..................|netrw-qf|
|
||||
Edit File Or Directory Hiding List.................|netrw-ctrl-h|
|
||||
Editing The Sorting Sequence.......................|netrw-S|
|
||||
Forcing treatment as a file or directory...........|netrw-gd| |netrw-gf|
|
||||
Going Up...........................................|netrw--|
|
||||
Hiding Files Or Directories........................|netrw-a|
|
||||
Improving Browsing.................................|netrw-ssh-hack|
|
||||
Listing Bookmarks And History......................|netrw-qb|
|
||||
Making A New Directory.............................|netrw-d|
|
||||
Making The Browsing Directory The Current Directory|netrw-c|
|
||||
Marking Files......................................|netrw-mf|
|
||||
Marking Files By Regular Expression................|netrw-mr|
|
||||
Marked Files: Arbitrary Command....................|netrw-mx|
|
||||
Marked Files: Compression And Decompression........|netrw-mz|
|
||||
Marked Files: Copying..............................|netrw-mc|
|
||||
Marked Files: Diff.................................|netrw-md|
|
||||
Marked Files: Editing..............................|netrw-me|
|
||||
Marked Files: Grep.................................|netrw-mg|
|
||||
Marked Files: Hiding and Unhiding by Suffix........|netrw-mh|
|
||||
Marked Files: Moving...............................|netrw-mm|
|
||||
Marked Files: Printing.............................|netrw-mp|
|
||||
Marked Files: Sourcing.............................|netrw-ms|
|
||||
Marked Files: Tagging..............................|netrw-mT|
|
||||
Marked Files: Setting the Target Directory.........|netrw-mt|
|
||||
Marked Files: Unmarking............................|netrw-mu|
|
||||
Netrw Browser Variables............................|netrw-browser-var|
|
||||
Netrw Browsing And Option Incompatibilities........|netrw-incompatible|
|
||||
Netrw Settings Window..............................|netrw-settings-window|
|
||||
Obtaining A File...................................|netrw-O|
|
||||
Preview Window.....................................|netrw-p|
|
||||
Previous Window....................................|netrw-P|
|
||||
Refreshing The Listing.............................|netrw-ctrl-l|
|
||||
Renaming Files Or Directories......................|netrw-move|
|
||||
Reversing Sorting Order............................|netrw-r|
|
||||
Selecting Sorting Style............................|netrw-s|
|
||||
Setting Editing Window.............................|netrw-C|
|
||||
10. Problems and Fixes...................................|netrw-problems|
|
||||
11. Debugging Netrw Itself...............................|netrw-debug|
|
||||
12. History..............................................|netrw-history|
|
||||
13. Todo.................................................|netrw-todo|
|
||||
14. Credits..............................................|netrw-credits|
|
||||
1. Contents..............................................|netrw-contents|
|
||||
2. Starting With Netrw...................................|netrw-start|
|
||||
3. Netrw Reference.......................................|netrw-ref|
|
||||
EXTERNAL APPLICATIONS AND PROTOCOLS.................|netrw-externapp|
|
||||
READING.............................................|netrw-read|
|
||||
WRITING.............................................|netrw-write|
|
||||
SOURCING............................................|netrw-source|
|
||||
DIRECTORY LISTING...................................|netrw-dirlist|
|
||||
CHANGING THE USERID AND PASSWORD....................|netrw-chgup|
|
||||
VARIABLES AND SETTINGS..............................|netrw-variables|
|
||||
PATHS...............................................|netrw-path|
|
||||
4. Network-Oriented File Transfer........................|netrw-xfer|
|
||||
NETRC...............................................|netrw-netrc|
|
||||
PASSWORD............................................|netrw-passwd|
|
||||
5. Activation............................................|netrw-activate|
|
||||
6. Transparent Remote File Editing.......................|netrw-transparent|
|
||||
7. Ex Commands...........................................|netrw-ex|
|
||||
8. Variables and Options.................................|netrw-variables|
|
||||
9. Browsing..............................................|netrw-browse|
|
||||
Introduction To Browsing............................|netrw-intro-browse|
|
||||
Quick Reference: Maps...............................|netrw-browse-maps|
|
||||
Quick Reference: Commands...........................|netrw-browse-cmds|
|
||||
Bookmarking A Directory.............................|netrw-mb|
|
||||
Browsing............................................|netrw-cr|
|
||||
Browsing With A Horizontally Split Window...........|netrw-o|
|
||||
Browsing With A New Tab.............................|netrw-t|
|
||||
Browsing With A Vertically Split Window.............|netrw-v|
|
||||
Change Listing Style.(thin wide long tree)..........|netrw-i|
|
||||
Changing To A Bookmarked Directory..................|netrw-gb|
|
||||
Changing To A Predecessor Directory.................|netrw-u|
|
||||
Changing To A Successor Directory...................|netrw-U|
|
||||
Customizing Browsing With A User Function...........|netrw-x|
|
||||
Deleting Bookmarks..................................|netrw-mB|
|
||||
Deleting Files Or Directories.......................|netrw-D|
|
||||
Directory Exploring Commands........................|netrw-explore|
|
||||
Exploring With Stars and Patterns...................|netrw-star|
|
||||
Displaying Information About File...................|netrw-qf|
|
||||
Edit File Or Directory Hiding List..................|netrw-ctrl-h|
|
||||
Editing The Sorting Sequence........................|netrw-S|
|
||||
Forcing treatment as a file or directory............|netrw-gd| |netrw-gf|
|
||||
Going Up............................................|netrw--|
|
||||
Hiding Files Or Directories.........................|netrw-a|
|
||||
Improving Browsing..................................|netrw-ssh-hack|
|
||||
Listing Bookmarks And History.......................|netrw-qb|
|
||||
Making A New Directory..............................|netrw-d|
|
||||
Making The Browsing Directory The Current Directory.|netrw-c|
|
||||
Marking Files.......................................|netrw-mf|
|
||||
Unmarking Files.....................................|netrw-mF|
|
||||
Marking Files By QuickFix List......................|netrw-qF|
|
||||
Marking Files By Regular Expression.................|netrw-mr|
|
||||
Marked Files: Arbitrary Command.....................|netrw-mx|
|
||||
Marked Files: Compression And Decompression.........|netrw-mz|
|
||||
Marked Files: Copying...............................|netrw-mc|
|
||||
Marked Files: Diff..................................|netrw-md|
|
||||
Marked Files: Editing...............................|netrw-me|
|
||||
Marked Files: Grep..................................|netrw-mg|
|
||||
Marked Files: Hiding and Unhiding by Suffix.........|netrw-mh|
|
||||
Marked Files: Moving................................|netrw-mm|
|
||||
Marked Files: Printing..............................|netrw-mp|
|
||||
Marked Files: Sourcing..............................|netrw-ms|
|
||||
Marked Files: Setting the Target Directory..........|netrw-mt|
|
||||
Marked Files: Tagging...............................|netrw-mT|
|
||||
Marked Files: Target Directory Using Bookmarks......|netrw-Tb|
|
||||
Marked Files: Target Directory Using History........|netrw-Th|
|
||||
Marked Files: Unmarking.............................|netrw-mu|
|
||||
Netrw Browser Variables.............................|netrw-browser-var|
|
||||
Netrw Browsing And Option Incompatibilities.........|netrw-incompatible|
|
||||
Netrw Settings Window...............................|netrw-settings-window|
|
||||
Obtaining A File....................................|netrw-O|
|
||||
Preview Window......................................|netrw-p|
|
||||
Previous Window.....................................|netrw-P|
|
||||
Refreshing The Listing..............................|netrw-ctrl-l|
|
||||
Reversing Sorting Order.............................|netrw-r|
|
||||
Renaming Files Or Directories.......................|netrw-R|
|
||||
Selecting Sorting Style.............................|netrw-s|
|
||||
Setting Editing Window..............................|netrw-C|
|
||||
10. Problems and Fixes....................................|netrw-problems|
|
||||
11. Debugging Netrw Itself................................|netrw-debug|
|
||||
12. History...............................................|netrw-history|
|
||||
13. Todo..................................................|netrw-todo|
|
||||
14. Credits...............................................|netrw-credits|
|
||||
|
||||
{Vi does not have any of this}
|
||||
|
||||
@@ -142,7 +146,7 @@ and has lines resembling >
|
||||
<
|
||||
Windows' ftp doesn't support .netrc; however, one may have in one's .vimrc: >
|
||||
|
||||
let g:netrw_ftp_cmd= 'c:\Windows\System32\ftp -s:C:\Users\Myself\MACHINE'
|
||||
let g:netrw_ftp_cmd= 'c:\Windows\System32\ftp -s:C:\Users\Myself\MACHINE'
|
||||
<
|
||||
Netrw will substitute the host's machine name for MACHINE from the url it is
|
||||
attempting to open, and so one may specify >
|
||||
@@ -282,7 +286,7 @@ SOURCING *netrw-source* {{{2
|
||||
:Nsource "scp://[user@]machine[[:#]port]/path" uses scp
|
||||
:Nsource "sftp://[user@]machine/path" uses sftp
|
||||
|
||||
DIRECTORY LISTING *netrw-trailingslash* *netrw-dirlist* {{{2
|
||||
DIRECTORY LISTING *netrw-trailingslash* *netrw-dirlist* {{{2
|
||||
|
||||
One may browse a directory to get a listing by simply attempting to
|
||||
edit the directory: >
|
||||
@@ -538,8 +542,8 @@ netrw will substitute the current machine name requested for ftp connections
|
||||
for MACHINE. Hence one can have multiple machine.ftp files containing login
|
||||
and password for ftp. Example: >
|
||||
|
||||
let g:netrw_ftp_cmd= 'c:\Windows\System32\ftp -s:C:\Users\Myself\MACHINE'
|
||||
vim ftp://myhost.somewhere.net/
|
||||
let g:netrw_ftp_cmd= 'c:\Windows\System32\ftp -s:C:\Users\Myself\MACHINE'
|
||||
vim ftp://myhost.somewhere.net/
|
||||
will use a file >
|
||||
C:\Users\Myself\myhost.ftp
|
||||
<
|
||||
@@ -1086,8 +1090,8 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
||||
<2-leftmouse> (gvim only) when:
|
||||
* in a netrw-selected file, AND
|
||||
* |g:netrw_retmap| == 1 AND
|
||||
* the user doesn't already have a <2-leftmouse> mapping
|
||||
defined before netrw is autoloaded,
|
||||
* the user doesn't already have a <2-leftmouse>
|
||||
mapping defined before netrw is autoloaded,
|
||||
then a double clicked leftmouse button will return
|
||||
to the netrw browser window. See |g:netrw_retmap|.
|
||||
<s-leftmouse> (gvim only) like mf, will mark files
|
||||
@@ -1183,17 +1187,18 @@ cursor at the top.
|
||||
|
||||
Associated setting variables: |g:netrw_alto| |g:netrw_winsize|
|
||||
|
||||
Related Actions |netrw-cr| |netrw-p| |netrw-t| |netrw-T| |netrw-v|
|
||||
Related Actions |netrw-cr| |netrw-p| |netrw-t| |netrw-v|
|
||||
Associated setting variables:
|
||||
|g:netrw_alto| control above/below splitting
|
||||
|g:netrw_winsize| control initial sizing
|
||||
|
||||
BROWSING WITH A NEW TAB *netrw-t* *netrw-T* {{{2
|
||||
BROWSING WITH A NEW TAB *netrw-t*
|
||||
|
||||
Normally one enters a file or directory using the <cr>. The "t" map
|
||||
allows one to open a new window holding the new directory listing or file in
|
||||
a new tab. The "T" version puts the file or directory into a background tab
|
||||
(see |gT|)
|
||||
a new tab.
|
||||
|
||||
If you'd like to have the new listing in a background tab, use |gT|.
|
||||
|
||||
Related Actions |netrw-cr| |netrw-o| |netrw-p| |netrw-v|
|
||||
Associated setting variables:
|
||||
@@ -1213,7 +1218,7 @@ will split the screen, but the same buffer will be shown twice.
|
||||
|
||||
Associated setting variable: |g:netrw_altv| |g:netrw_winsize|
|
||||
|
||||
Related Actions |netrw-cr| |netrw-o| |netrw-t| |netrw-T| |netrw-v|
|
||||
Related Actions |netrw-cr| |netrw-o| |netrw-t| |netrw-v|
|
||||
Associated setting variables:
|
||||
|g:netrw_altv| control right/left splitting
|
||||
|g:netrw_winsize| control initial sizing
|
||||
@@ -1276,6 +1281,8 @@ To change directory back to a bookmarked directory, use
|
||||
{cnt}gb
|
||||
|
||||
Any count may be used to reference any of the bookmarks.
|
||||
Note that |netrw-qb| shows both bookmarks and history; to go
|
||||
to a location stored in the history see |netrw-u| and |netrw-U|.
|
||||
|
||||
Related Topics:
|
||||
|netrw-mB| how to delete bookmarks
|
||||
@@ -1291,6 +1298,13 @@ list (unless |g:netrw_dirhistmax| is zero; by default, it's ten). With the
|
||||
"u" map, one can change to an earlier directory (predecessor). To do
|
||||
the opposite, see |netrw-U|.
|
||||
|
||||
The "u" map also accepts counts to go back in the history several slots.
|
||||
For your convenience, |netrw-qb| lists the history number which can be
|
||||
re-used in that count.
|
||||
|
||||
See |g:netrw_dirhistmax| for how to control the quantity of history stack
|
||||
slots.
|
||||
|
||||
|
||||
CHANGING TO A SUCCESSOR DIRECTORY *netrw-U* *netrw-downdir* {{{2
|
||||
|
||||
@@ -1298,6 +1312,11 @@ With the "U" map, one can change to a later directory (successor).
|
||||
This map is the opposite of the "u" map. (see |netrw-u|) Use the
|
||||
q map to list both the bookmarks and history. (see |netrw-qb|)
|
||||
|
||||
The "U" map also accepts counts to go forward in the history several slots.
|
||||
|
||||
See |g:netrw_dirhistmax| for how to control the quantity of history stack
|
||||
slots.
|
||||
|
||||
|
||||
NETRW CLEAN *netrw-clean* *:NetrwClean*
|
||||
|
||||
@@ -1674,7 +1693,7 @@ As a quick shortcut, one may press >
|
||||
to toggle between hiding files which begin with a period (dot) and not hiding
|
||||
them.
|
||||
|
||||
Associated setting variable: |g:netrw_list_hide|
|
||||
Associated setting variable: |g:netrw_list_hide| |g:netrw_hide|
|
||||
Associated topics: |netrw-a| |netrw-ctrl-h| |netrw-mh|
|
||||
|
||||
IMPROVING BROWSING *netrw-listhack* *netrw-ssh-hack* {{{2
|
||||
@@ -1785,9 +1804,10 @@ Associated setting variables: |g:netrw_localmkdir| |g:netrw_mkdir_cmd|
|
||||
MAKING THE BROWSING DIRECTORY THE CURRENT DIRECTORY *netrw-c* {{{2
|
||||
|
||||
By default, |g:netrw_keepdir| is 1. This setting means that the current
|
||||
directory will not track the browsing directory.
|
||||
directory will not track the browsing directory. (done for backwards
|
||||
compatibility with v6's file explorer).
|
||||
|
||||
Setting g:netrw_keepdir to 0 tells netrw to make vim's current directory to
|
||||
Setting g:netrw_keepdir to 0 tells netrw to make vim's current directory
|
||||
track netrw's browsing directory.
|
||||
|
||||
However, given the default setting for g:netrw_keepdir of 1 where netrw
|
||||
@@ -1810,6 +1830,7 @@ maps make use of marked files:
|
||||
|netrw-mc| Copy marked files to target
|
||||
|netrw-md| Apply vimdiff to marked files
|
||||
|netrw-me| Edit marked files
|
||||
|netrw-mF| Unmark marked files
|
||||
|netrw-mg| Apply vimgrep to marked files
|
||||
|netrw-mm| Move marked files
|
||||
|netrw-mp| Print marked files
|
||||
@@ -1817,6 +1838,7 @@ maps make use of marked files:
|
||||
|netrw-mT| Generate tags using marked files
|
||||
|netrw-mx| Apply shell command to marked files
|
||||
|netrw-mz| Compress/Decompress marked files
|
||||
|netrw-qF| Mark files using quickfix list
|
||||
|netrw-O| Obtain marked files
|
||||
|netrw-R| Rename marked files
|
||||
|
||||
@@ -1844,6 +1866,22 @@ commands which operate on marked files use one or the other of the marked file
|
||||
lists.
|
||||
|
||||
|
||||
UNMARKING FILES *netrw-mF* {{{2
|
||||
(also see |netrw-mf|)
|
||||
|
||||
This command will unmark all files in the current buffer. One may also use
|
||||
mf (|netrw-mf|) on a specific file to unmark just that file.
|
||||
|
||||
|
||||
MARKING FILES BY QUICKFIX LIST *netrw-qF*
|
||||
(also see |netrw-mf|)
|
||||
|
||||
One may convert the |quickfix-error-lists| into a marked file list using
|
||||
"qF". You may then proceed with commands such as me (|netrw-me|) to
|
||||
edit them. Quickfix error lists are generated, for example, by calls
|
||||
to |:vimgrep|.
|
||||
|
||||
|
||||
MARKING FILES BY REGULAR EXPRESSION *netrw-mr* {{{2
|
||||
(also see |netrw-mf|)
|
||||
|
||||
@@ -1902,17 +1940,27 @@ MARKED FILES: EDITING *netrw-me* {{{2
|
||||
|
||||
This command will place the marked files on the |arglist| and commence
|
||||
editing them. One may return the to explorer window with |:Rexplore|.
|
||||
(use |:n| and |:p| to edit next and previous files in the arglist)
|
||||
|
||||
MARKED FILES: GREP *netrw-mg* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the global marked file list)
|
||||
|
||||
This command will apply |:vimgrep| to the marked files. The command will ask
|
||||
for the requested pattern; one may enter: >
|
||||
This command will apply |:vimgrep| to the marked files.
|
||||
The command will ask for the requested pattern; one may then enter: >
|
||||
|
||||
/pattern/[g][j]
|
||||
! /pattern/[g][j]
|
||||
pattern
|
||||
<
|
||||
In the cases of "j" option usage as shown above, "mg" will winnow the current
|
||||
marked file list to just those possessing the specified pattern.
|
||||
Thus, one may use >
|
||||
mr ...file-pattern
|
||||
mg ..contents-pattern
|
||||
to have a marked file list satisfying the file-pattern but containing the
|
||||
desried contents-pattern.
|
||||
|
||||
MARKED FILES: HIDING AND UNHIDING BY SUFFIX *netrw-mh* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the local marked file list)
|
||||
@@ -1958,6 +2006,36 @@ MARKED FILES: SOURCING *netrw-ms* {{{2
|
||||
Netrw will source the marked files (using vim's |:source| command)
|
||||
|
||||
|
||||
MARKED FILES: SETTING THE TARGET DIRECTORY *netrw-mt* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
|
||||
Set the marked file copy/move-to target (see |netrw-mc| and |netrw-mm|):
|
||||
|
||||
* If the cursor is atop a file name, then the netrw window's currently
|
||||
displayed directory is used for the copy/move-to target.
|
||||
|
||||
* Also, if the cursor is in the banner, then the netrw window's currently
|
||||
displayed directory is used for the copy/move-to target.
|
||||
Unless the target already is the current directory. In which case,
|
||||
remove the target.
|
||||
|
||||
* However, if the cursor is atop a directory name, then that directory is
|
||||
used for the copy/move-to target
|
||||
|
||||
There is only one copy/move-to target per vim session; ie. the target is a
|
||||
script variable (see |s:var|) and is shared between all netrw windows (in an
|
||||
instance of vim).
|
||||
|
||||
When using menus and gvim, netrw provides a "Targets" entry which allows one
|
||||
to pick a target from the list of bookmarks and history.
|
||||
|
||||
Related topics:
|
||||
Marking Files......................................|netrw-mf|
|
||||
Marking Files by Regular Expression................|netrw-mr|
|
||||
Marked Files: Target Directory Using Bookmarks.....|netrw-Tb|
|
||||
Marked Files: Target Directory Using History.......|netrw-Th|
|
||||
|
||||
|
||||
MARKED FILES: TAGGING *netrw-mT* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the global marked file list)
|
||||
@@ -1983,24 +2061,37 @@ edit the desired file and go to the tag.
|
||||
|
||||
Associated setting variables: |g:netrw_ctags| |g:netrw_ssh_cmd|
|
||||
|
||||
MARKED FILES: TARGET DIRECTORY USING BOOKMARKS *netrw-Tb* {{{2
|
||||
|
||||
MARKED FILES: SETTING THE TARGET DIRECTORY *netrw-mt* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
Sets the marked file copy/move-to target (see |netrw-mc| and |netrw-mm|).
|
||||
|
||||
Set the marked file copy/move-to target (see |netrw-mc| and |netrw-mm|):
|
||||
The |netrw-qb| map will give you a list of bookmarks (and history).
|
||||
One may choose one of the bookmarks to become your marked file
|
||||
target by using [count]Tb (default count: 1).
|
||||
|
||||
* if the cursor is atop a file name, then the netrw window's currently
|
||||
displayed directory is used for the copy/move-to target.
|
||||
Related topics:
|
||||
Listing Bookmarks and History......................|netrw-qb|
|
||||
Marked Files: Setting The Target Directory.........|netrw-mt|
|
||||
Marked Files: Target Directory Using History.......|netrw-Th|
|
||||
Marking Files......................................|netrw-mf|
|
||||
Marking Files by Regular Expression................|netrw-mr|
|
||||
|
||||
* also, if the cursor is in the banner, then the netrw window's currently
|
||||
displayed directory is used for the copy/move-to target.
|
||||
|
||||
* however, if the cursor is atop a directory name, then that directory is
|
||||
used for the copy/move-to target
|
||||
MARKED FILES: TARGET DIRECTORY USING HISTORY *netrw-Th* {{{2
|
||||
|
||||
Sets the marked file copy/move-to target (see |netrw-mc| and |netrw-mm|).
|
||||
|
||||
The |netrw-qb| map will give you a list of history (and bookmarks).
|
||||
One may choose one of the history entries to become your marked file
|
||||
target by using [count]Th (default count: 0; ie. the current directory).
|
||||
|
||||
Related topics:
|
||||
Listing Bookmarks and History......................|netrw-qb|
|
||||
Marked Files: Setting The Target Directory.........|netrw-mt|
|
||||
Marked Files: Target Directory Using Bookmarks.....|netrw-Tb|
|
||||
Marking Files......................................|netrw-mf|
|
||||
Marking Files by Regular Expression................|netrw-mr|
|
||||
|
||||
There is only one copy/move-to target per vim session; ie. the target is a
|
||||
script variable (see |s:var|) and is shared between all netrw windows (in an
|
||||
instance of vim).
|
||||
|
||||
MARKED FILES: UNMARKING *netrw-mu* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
@@ -2020,21 +2111,21 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
--- -----------
|
||||
Var Explanation
|
||||
--- -----------
|
||||
< *g:netrw_alto* change from above splitting to below splitting
|
||||
< *g:netrw_alto* change from above splitting to below splitting
|
||||
by setting this variable (see |netrw-o|)
|
||||
default: =&sb (see |'sb'|)
|
||||
|
||||
*g:netrw_altv* change from left splitting to right splitting
|
||||
*g:netrw_altv* change from left splitting to right splitting
|
||||
by setting this variable (see |netrw-v|)
|
||||
default: =&spr (see |'spr'|)
|
||||
|
||||
*g:netrw_banner* enable/suppress the banner
|
||||
*g:netrw_banner* enable/suppress the banner
|
||||
=0: suppress the banner
|
||||
=1: banner is enabled (default)
|
||||
NOTE: suppressing the banner is a new feature
|
||||
which may cause problems.
|
||||
|
||||
*g:netrw_browse_split* when browsing, <cr> will open the file by:
|
||||
*g:netrw_browse_split* when browsing, <cr> will open the file by:
|
||||
=0: re-using the same window
|
||||
=1: horizontally splitting the window first
|
||||
=2: vertically splitting the window first
|
||||
@@ -2044,7 +2135,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
to get vertical splitting instead of
|
||||
horizontal splitting.
|
||||
|
||||
*g:netrw_browsex_viewer* specify user's preference for a viewer: >
|
||||
*g:netrw_browsex_viewer* specify user's preference for a viewer: >
|
||||
"kfmclient exec"
|
||||
"gnome-open"
|
||||
< If >
|
||||
@@ -2053,15 +2144,15 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
a script/function to handle the given
|
||||
extension. (see |netrw_filehandler|).
|
||||
|
||||
*g:netrw_chgperm* Unix/Linux: "chmod PERM FILENAME"
|
||||
*g:netrw_chgperm* Unix/Linux: "chmod PERM FILENAME"
|
||||
Windows: "cacls FILENAME /e /p PERM"
|
||||
Used to change access permission for a file.
|
||||
|
||||
*g:netrw_compress* ="gzip"
|
||||
*g:netrw_compress* ="gzip"
|
||||
Will compress marked files with this
|
||||
command
|
||||
|
||||
*g:Netrw_corehandler* Allows one to specify something additional
|
||||
*g:Netrw_corehandler* Allows one to specify something additional
|
||||
to do when handling <core> files via netrw's
|
||||
browser's "x" command (see |netrw-x|). If
|
||||
present, g:Netrw_corehandler specifies
|
||||
@@ -2070,10 +2161,11 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
is required its holding a function reference)
|
||||
|
||||
|
||||
*g:netrw_ctags* ="ctags"
|
||||
The default external program used to create tags
|
||||
*g:netrw_ctags* ="ctags"
|
||||
The default external program used to create
|
||||
tags
|
||||
|
||||
*g:netrw_cursor* = 2 (default)
|
||||
*g:netrw_cursor* = 2 (default)
|
||||
This option controls the use of the
|
||||
|'cursorline'| (cul) and |'cursorcolumn'|
|
||||
(cuc) settings by netrw:
|
||||
@@ -2091,7 +2183,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
cul : |'cursorline'| locally set
|
||||
cuc : |'cursorcolumn'| locally set
|
||||
|
||||
*g:netrw_decompress* = { ".gz" : "gunzip" ,
|
||||
*g:netrw_decompress* = { ".gz" : "gunzip" ,
|
||||
".bz2" : "bunzip2" ,
|
||||
".zip" : "unzip" ,
|
||||
".tar" : "tar -xf"}
|
||||
@@ -2112,7 +2204,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
1: warnings
|
||||
2: errors
|
||||
|
||||
*g:netrw_fastbrowse* =0: slow speed directory browsing;
|
||||
*g:netrw_fastbrowse* =0: slow speed directory browsing;
|
||||
never re-uses directory listings,
|
||||
always obtains directory listings.
|
||||
=1: medium speed directory browsing;
|
||||
@@ -2136,10 +2228,10 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
trading off accuracy (ie. up-to-date listing)
|
||||
versus speed.
|
||||
|
||||
*g:netrw_fname_escape* =' ?&;%'
|
||||
*g:netrw_fname_escape* =' ?&;%'
|
||||
Used on filenames before remote reading/writing
|
||||
|
||||
*g:netrw_ftp_browse_reject* ftp can produce a number of errors and warnings
|
||||
*g:netrw_ftp_browse_reject* ftp can produce a number of errors and warnings
|
||||
that can show up as "directories" and "files"
|
||||
in the listing. This pattern is used to
|
||||
remove such embedded messages. By default its
|
||||
@@ -2152,19 +2244,19 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
: connect to address [0-9a-fA-F:]*
|
||||
: No route to host$'
|
||||
|
||||
*g:netrw_ftp_list_cmd* options for passing along to ftp for directory
|
||||
*g:netrw_ftp_list_cmd* options for passing along to ftp for directory
|
||||
listing. Defaults:
|
||||
unix or g:netrw_cygwin set: : "ls -lF"
|
||||
otherwise "dir"
|
||||
|
||||
|
||||
*g:netrw_ftp_sizelist_cmd* options for passing along to ftp for directory
|
||||
*g:netrw_ftp_sizelist_cmd* options for passing along to ftp for directory
|
||||
listing, sorted by size of file.
|
||||
Defaults:
|
||||
unix or g:netrw_cygwin set: : "ls -slF"
|
||||
otherwise "dir"
|
||||
|
||||
*g:netrw_ftp_timelist_cmd* options for passing along to ftp for directory
|
||||
*g:netrw_ftp_timelist_cmd* options for passing along to ftp for directory
|
||||
listing, sorted by time of last modification.
|
||||
Defaults:
|
||||
unix or g:netrw_cygwin set: : "ls -tlF"
|
||||
@@ -2175,61 +2267,64 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
These characters in directory names are
|
||||
escaped before applying glob()
|
||||
|
||||
*g:netrw_hide* if true, the hiding list is used
|
||||
*g:netrw_hide* Controlled by the "a" map (see |netrw-a|)
|
||||
=0 : show all
|
||||
=1 : show not-hidden files
|
||||
=2 : show hidden files only
|
||||
default: =0
|
||||
|
||||
*g:netrw_home* The home directory for where bookmarks and
|
||||
*g:netrw_home* The home directory for where bookmarks and
|
||||
history are saved (as .netrwbook and
|
||||
.netrwhist).
|
||||
default: the first directory on the
|
||||
|'runtimepath'|
|
||||
|
||||
*g:netrw_keepdir* =1 (default) keep current directory immune from
|
||||
*g:netrw_keepdir* =1 (default) keep current directory immune from
|
||||
the browsing directory.
|
||||
=0 keep the current directory the same as the
|
||||
browsing directory.
|
||||
The current browsing directory is contained in
|
||||
b:netrw_curdir (also see |netrw-c|)
|
||||
|
||||
*g:netrw_list_cmd* command for listing remote directories
|
||||
*g:netrw_list_cmd* command for listing remote directories
|
||||
default: (if ssh is executable)
|
||||
"ssh HOSTNAME ls -FLa"
|
||||
|
||||
*g:netrw_liststyle* Set the default listing style:
|
||||
*g:netrw_liststyle* Set the default listing style:
|
||||
= 0: thin listing (one file per line)
|
||||
= 1: long listing (one file per line with time
|
||||
stamp information and file size)
|
||||
= 2: wide listing (multiple files in columns)
|
||||
= 3: tree style listing
|
||||
*g:netrw_list_hide* comma separated pattern list for hiding files
|
||||
*g:netrw_list_hide* comma separated pattern list for hiding files
|
||||
Patterns are regular expressions (see |regexp|)
|
||||
Example: let g:netrw_list_hide= '.*\.swp$'
|
||||
default: ""
|
||||
|
||||
*g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin
|
||||
*g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin
|
||||
="copy" Windows
|
||||
Copies marked files (|netrw-mf|) to target
|
||||
directory (|netrw-mt|, |netrw-mc|)
|
||||
|
||||
*g:netrw_localmovecmd* ="mv" Linux/Unix/MacOS/Cygwin
|
||||
*g:netrw_localmovecmd* ="mv" Linux/Unix/MacOS/Cygwin
|
||||
="move" Windows
|
||||
Moves marked files (|netrw-mf|) to target
|
||||
directory (|netrw-mt|, |netrw-mm|)
|
||||
|
||||
*g:netrw_localmkdir* command for making a local directory
|
||||
*g:netrw_localmkdir* command for making a local directory
|
||||
default: "mkdir"
|
||||
|
||||
*g:netrw_localrmdir* remove directory command (rmdir)
|
||||
*g:netrw_localrmdir* remove directory command (rmdir)
|
||||
default: "rmdir"
|
||||
|
||||
*g:netrw_maxfilenamelen* =32 by default, selected so as to make long
|
||||
*g:netrw_maxfilenamelen* =32 by default, selected so as to make long
|
||||
listings fit on 80 column displays.
|
||||
If your screen is wider, and you have file
|
||||
or directory names longer than 32 bytes,
|
||||
you may set this option to keep listings
|
||||
columnar.
|
||||
|
||||
*g:netrw_mkdir_cmd* command for making a remote directory
|
||||
*g:netrw_mkdir_cmd* command for making a remote directory
|
||||
via ssh (also see |g:netrw_remote_mkdir|)
|
||||
default: "ssh USEPORT HOSTNAME mkdir"
|
||||
|
||||
@@ -2246,11 +2341,11 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
evaluation will be suppressed
|
||||
(see |'ballooneval'|)
|
||||
|
||||
*g:netrw_remote_mkdir* command for making a local directory
|
||||
*g:netrw_remote_mkdir* command for making a local directory
|
||||
via ftp (also see |g:netrw_mkdir_cmd|)
|
||||
default: "mkdir"
|
||||
|
||||
*g:netrw_retmap* if it exists and is set to one, then:
|
||||
*g:netrw_retmap* if it exists and is set to one, then:
|
||||
* if in a netrw-selected file, AND
|
||||
* no normal-mode <2-leftmouse> mapping exists,
|
||||
then the <2-leftmouse> will be mapped for easy
|
||||
@@ -2269,22 +2364,22 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
|
||||
default: =0
|
||||
|
||||
*g:netrw_rm_cmd* command for removing files
|
||||
*g:netrw_rm_cmd* command for removing files
|
||||
default: "ssh USEPORT HOSTNAME rm"
|
||||
|
||||
*g:netrw_rmdir_cmd* command for removing directories
|
||||
*g:netrw_rmdir_cmd* command for removing directories
|
||||
default: "ssh USEPORT HOSTNAME rmdir"
|
||||
|
||||
*g:netrw_rmf_cmd* command for removing softlinks
|
||||
*g:netrw_rmf_cmd* command for removing softlinks
|
||||
default: "ssh USEPORT HOSTNAME rm -f"
|
||||
|
||||
*g:netrw_sort_by* sort by "name", "time", or "size"
|
||||
*g:netrw_sort_by* sort by "name", "time", or "size"
|
||||
default: "name"
|
||||
|
||||
*g:netrw_sort_direction* sorting direction: "normal" or "reverse"
|
||||
*g:netrw_sort_direction* sorting direction: "normal" or "reverse"
|
||||
default: "normal"
|
||||
|
||||
*g:netrw_sort_options* sorting is done using |:sort|; this
|
||||
*g:netrw_sort_options* sorting is done using |:sort|; this
|
||||
variable's value is appended to the
|
||||
sort command. Thus one may ignore case,
|
||||
for example, with the following in your
|
||||
@@ -2292,14 +2387,14 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
let g:netrw_sort_options="i"
|
||||
< default: ""
|
||||
|
||||
*g:netrw_sort_sequence* when sorting by name, first sort by the
|
||||
*g:netrw_sort_sequence* when sorting by name, first sort by the
|
||||
comma-separated pattern sequence. Note that
|
||||
the filigree added to indicate filetypes
|
||||
should be accounted for in your pattern.
|
||||
default: '[\/]$,*,\.bak$,\.o$,\.h$,
|
||||
\.info$,\.swp$,\.obj$'
|
||||
|
||||
*g:netrw_special_syntax* If true, then certain files will be shown
|
||||
*g:netrw_special_syntax* If true, then certain files will be shown
|
||||
using special syntax in the browser:
|
||||
|
||||
netrwBak : *.bak
|
||||
@@ -2321,12 +2416,12 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
< into one's <.vimrc> to use one's own
|
||||
preferences.
|
||||
|
||||
*g:netrw_ssh_cmd* One may specify an executable command
|
||||
*g:netrw_ssh_cmd* One may specify an executable command
|
||||
to use instead of ssh for remote actions
|
||||
such as listing, file removal, etc.
|
||||
default: ssh
|
||||
|
||||
*g:netrw_ssh_browse_reject* ssh can sometimes produce unwanted lines,
|
||||
*g:netrw_ssh_browse_reject* ssh can sometimes produce unwanted lines,
|
||||
messages, banners, and whatnot that one doesn't
|
||||
want masquerading as "directories" and "files".
|
||||
Use this pattern to remove such embedded
|
||||
@@ -2334,11 +2429,11 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
'^total\s\+\d\+$'
|
||||
|
||||
|
||||
*g:netrw_tmpfile_escape* =' &;'
|
||||
*g:netrw_tmpfile_escape* =' &;'
|
||||
escape() is applied to all temporary files
|
||||
to escape these characters.
|
||||
|
||||
*g:netrw_timefmt* specify format string to vim's strftime().
|
||||
*g:netrw_timefmt* specify format string to vim's strftime().
|
||||
The default, "%c", is "the preferred date
|
||||
and time representation for the current
|
||||
locale" according to my manpage entry for
|
||||
@@ -2348,7 +2443,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
" %a %Y-%m-%d %I-%M-%S %p"
|
||||
default: "%c"
|
||||
|
||||
*g:netrw_use_noswf* netrw normally avoids writing swapfiles
|
||||
*g:netrw_use_noswf* netrw normally avoids writing swapfiles
|
||||
for browser buffers. However, under some
|
||||
systems this apparently is causing nasty
|
||||
ml_get errors to appear; if you're getting
|
||||
@@ -2356,7 +2451,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
let g:netrw_use_noswf= 0
|
||||
in your .vimrc.
|
||||
|
||||
*g:netrw_winsize* specify initial size of new windows made with
|
||||
*g:netrw_winsize* specify initial size of new windows made with
|
||||
"o" (see |netrw-o|), "v" (see |netrw-v|),
|
||||
|:Hexplore| or |:Vexplore|. The g:netrw_winsize
|
||||
is an integer describing the percentage of the
|
||||
@@ -2367,7 +2462,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
or columns will be used for the new window.
|
||||
default: 50 (for 50%)
|
||||
|
||||
*g:netrw_xstrlen* Controls how netrw computes string lengths,
|
||||
*g:netrw_xstrlen* Controls how netrw computes string lengths,
|
||||
including multi-byte characters' string
|
||||
length. (thanks to N Weibull, T Mechelynck)
|
||||
=0: uses Vim's built-in strlen()
|
||||
@@ -2383,7 +2478,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
immediately preceded by lam, one
|
||||
otherwise, etc)
|
||||
|
||||
*g:NetrwTopLvlMenu* This variable specifies the top level
|
||||
*g:NetrwTopLvlMenu* This variable specifies the top level
|
||||
menu name; by default, it's "Netrw.". If
|
||||
you wish to change this, do so in your
|
||||
.vimrc.
|
||||
@@ -2483,7 +2578,7 @@ has been modified, and there's only one window with that buffer, then
|
||||
the user will be asked if s/he wishes to save the buffer first (yes,
|
||||
no, or cancel).
|
||||
|
||||
Related Actions |netrw-cr| |netrw-o| |netrw-t| |netrw-T| |netrw-v|
|
||||
Related Actions |netrw-cr| |netrw-o| |netrw-t| |netrw-v|
|
||||
Associated setting variables:
|
||||
|g:netrw_alto| control above/below splitting
|
||||
|g:netrw_altv| control right/left splitting
|
||||
@@ -2498,6 +2593,15 @@ hit the <cr> when atop the ./ directory entry in the listing. One may also
|
||||
refresh a local directory by using ":e .".
|
||||
|
||||
|
||||
REVERSING SORTING ORDER *netrw-r* *netrw-reverse* {{{2
|
||||
|
||||
One may toggle between normal and reverse sorting order by pressing the
|
||||
"r" key.
|
||||
|
||||
Related topics: |netrw-s|
|
||||
Associated setting variable: |g:netrw_sort_direction|
|
||||
|
||||
|
||||
RENAMING FILES OR DIRECTORIES *netrw-move* *netrw-rename* *netrw-R* {{{2
|
||||
|
||||
If there are no marked files: (see |netrw-mf|)
|
||||
@@ -2528,15 +2632,6 @@ One may rename a block of files and directories by selecting them with
|
||||
the V (|linewise-visual|).
|
||||
|
||||
|
||||
REVERSING SORTING ORDER *netrw-r* *netrw-reverse* {{{2
|
||||
|
||||
One may toggle between normal and reverse sorting order by pressing the
|
||||
"r" key.
|
||||
|
||||
Related topics: |netrw-s|
|
||||
Associated setting variable: |g:netrw_sort_direction|
|
||||
|
||||
|
||||
SELECTING SORTING STYLE *netrw-s* *netrw-sort* {{{2
|
||||
|
||||
One may select the sorting style by name, time, or (file) size. The "s" map
|
||||
@@ -2620,9 +2715,9 @@ Associated setting variables: |g:netrw_chgwin|
|
||||
P5. My times come up oddly in local browsing
|
||||
|
||||
Does your system's strftime() accept the "%c" to yield dates
|
||||
such as "Sun Apr 27 11:49:23 1997"? If not, do a "man strftime"
|
||||
and find out what option should be used. Then put it into
|
||||
your |.vimrc|: >
|
||||
such as "Sun Apr 27 11:49:23 1997"? If not, do a
|
||||
"man strftime" and find out what option should be used. Then
|
||||
put it into your |.vimrc|: >
|
||||
|
||||
let g:netrw_timefmt= "%X" (where X is the option)
|
||||
<
|
||||
@@ -2895,6 +2990,57 @@ which is loaded automatically at startup (assuming :set nocp).
|
||||
==============================================================================
|
||||
12. History *netrw-history* {{{1
|
||||
|
||||
v148: Apr 16, 2013 * changed Netrw's Style menu to allow direct
|
||||
choice of listing style, hiding style, and
|
||||
sorting style
|
||||
v147: Nov 24, 2012 * (James McCoy) Even with g:netrw_dirhistmax
|
||||
at zero, the .vim/ directory would be
|
||||
created to support history/bookmarks. I've
|
||||
gone over netrw to suppress history and
|
||||
bookmarking when g:netrw_dirhistmax is zero.
|
||||
For instance, the menus will display
|
||||
(disabled) when attempts to use
|
||||
bookmarks/history are made.
|
||||
Nov 29, 2012 * (Kim Jang-hwan) reported that with
|
||||
g:Align_xstrlen set to 3 that the cursor was
|
||||
moved (linewise) after invocation. This
|
||||
problem also afflicted netrw.
|
||||
(see |g:netrw_xstrlen|) Fixed.
|
||||
Jan 21, 2013 * (mattn) provided a patch to insert some
|
||||
endifs needed with the code implementing
|
||||
|netrw-O|.
|
||||
Jan 24, 2013 * (John Szakmeister) found that remote file
|
||||
editing resulted in filetype options being
|
||||
overwritten by NetrwOptionRestore(). I
|
||||
moved filetype detect from NetrwGetFile()
|
||||
to NetrwOptionRestore.
|
||||
Feb 17, 2013 * (Yukhiro Nakadaira) provided a patch
|
||||
correcting some syntax errors.
|
||||
Feb 28, 2013 * (Ingo Karkat) provided a patch preventing
|
||||
receipt of an |E95| when revisiting a
|
||||
file://... style url.
|
||||
Mar 18, 2013 * (Gary Johnson) pointed out that changing
|
||||
cedit to <Esc> caused problems with visincr;
|
||||
the cedit setting is now bypassed in netrw too.
|
||||
Apr 02, 2013 * (Paul Domaskis) reported an undefined
|
||||
variable error (s:didstarstar) was
|
||||
occurring. It is now defined at
|
||||
initialization.
|
||||
* included additional sanity checking for the
|
||||
marked file functions.
|
||||
* included |netrw-qF| and special "j" option
|
||||
handling for |netrw-mg|
|
||||
Apr 12, 2013 * |netrw-u| and |netrw-U| now handle counts
|
||||
* the former mapping for "T" has been removed;
|
||||
in its place are new maps, |netrw-Tb| and |netrw-Th|.
|
||||
* the menu now supports a "Targets" entry for
|
||||
easier target selection. (see |netrw-mt|)
|
||||
* (Paul Domaskis) reported some problems with
|
||||
moving/copying files under Windows' gvim
|
||||
(ie. not cygwin). Fixed.
|
||||
* (Paul Mueller) provided a patch to get
|
||||
start and rundll working via |netrw-gx|
|
||||
by bypassing the user's |'shellslash'| option.
|
||||
v146: Oct 20, 2012 * (David Kotchan) reported that under Windows,
|
||||
directories named with unusual characters
|
||||
such as "#" or "$" were not being listed
|
||||
@@ -2904,6 +3050,10 @@ which is loaded automatically at startup (assuming :set nocp).
|
||||
Netrw will now |:bwipe| netrw buffers
|
||||
upon editing a file if g:netrw_fastbrowse
|
||||
is zero and its not in tree listing style.
|
||||
* fixed a bug with s:NetrwInit() that
|
||||
prevented initialization with |Lists| and
|
||||
|Dictionaries|.
|
||||
* |netrw-mu| now unmarks marked-file lists
|
||||
v145: Apr 05, 2012 * moved some command from a g:netrw_local_...
|
||||
format to g:netwr_local... format
|
||||
* included some NOTE level messages about
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_paren.txt* For Vim version 7.3. Last change: 2008 Jun 16
|
||||
*pi_paren.txt* For Vim version 7.3. Last change: 2013 May 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -46,7 +46,10 @@ are:
|
||||
closed folds.
|
||||
- 'synmaxcol' times 2 bytes before or after the cursor to avoid a delay
|
||||
in a long line with syntax highlighting.
|
||||
|
||||
- A timeout of 300 msec (60 msec in Insert mode). This can be changed with the
|
||||
g:matchparen_timeout and g:matchparen_insert_timeout variables and their
|
||||
buffer-local equivalents b:matchparen_timeout and
|
||||
b:matchparen_insert_timeout.
|
||||
|
||||
If you would like the |%| command to work better, the matchit plugin can be
|
||||
used, see |matchit-install|. This plugin also helps to skip matches in
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
*pi_tar.txt* For Vim version 7.3. Last change: 2012 Jan 17
|
||||
*pi_tar.txt* For Vim version 7.3. Last change: 2013 Apr 17
|
||||
|
||||
+====================+
|
||||
| Tar File Interface |
|
||||
+====================+
|
||||
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
Author: Charles E. Campbell <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Copyright 2005-2012: *tar-copyright*
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
@@ -50,6 +50,21 @@ Copyright 2005-2012: *tar-copyright*
|
||||
*g:tar_extractcmd* , which by default is >
|
||||
"tar -xf"
|
||||
<
|
||||
*:TarDiff*
|
||||
DIFFERENCING SUPPORT~
|
||||
|
||||
:TarDiff [filename]
|
||||
|
||||
This command will attempt to show the differences between the tarball
|
||||
version of a file and the associated file on the system. In order to
|
||||
find that file on the system, the script uses the path associated with
|
||||
the file mentioned in the tarball. If the current directory is not
|
||||
correct for that path, :TarDiff will fail to find the associated file.
|
||||
|
||||
If the [filename] is given, that that filename (and path) will be used
|
||||
to specify the associated file.
|
||||
|
||||
|
||||
PREVENTING LOADING~
|
||||
|
||||
If for some reason you do not wish to use vim to examine tar'd files,
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
*pi_zip.txt* For Vim version 7.3. Last change: 2012 Jan 17
|
||||
*pi_zip.txt* For Vim version 7.3. Last change: 2013 Apr 17
|
||||
|
||||
+====================+
|
||||
| Zip File Interface |
|
||||
+====================+
|
||||
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
Author: Charles E. Campbell <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
Copyright: Copyright (C) 2005-2012 Charles E Campbell *zip-copyright*
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
package, including zipPlugin.vim, zip.vim, and pi_zip.vim. except use
|
||||
"zip.vim" instead of "VIM". Like anything else that's free, zip.vim
|
||||
@@ -85,8 +85,13 @@ Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
|
||||
==============================================================================
|
||||
4. History *zip-history* {{{1
|
||||
v26 Nov 15, 2012 * (Jason Spiro) provided a lot of new extensions that
|
||||
are synonyms for .zip
|
||||
v25 Jun 27, 2011 * using keepj with unzip -Z
|
||||
(consistent with the -p variant)
|
||||
* (Ben Staniford) now uses
|
||||
has("win32unix") && executable("cygpath")
|
||||
before converting to cygwin-style paths
|
||||
v24 Jun 21, 2010 * (Cédric Bosdonnat) unzip seems to need its filenames
|
||||
fnameescape'd as well as shellquote'd
|
||||
* (Motoya Kurotsu) inserted keepj before 0d to protect
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 7.3. Last change: 2011 May 10
|
||||
*quickfix.txt* For Vim version 7.3. Last change: 2013 Mar 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -574,6 +574,8 @@ commands can be combined to create a NewGrep command: >
|
||||
'ignorecase' applies. To overrule it put |/\c| in the
|
||||
pattern to ignore case or |/\C| to match case.
|
||||
'smartcase' is not used.
|
||||
If {pattern} is empty (e.g. // is specified), the last
|
||||
used search pattern is used. |last-pattern|
|
||||
|
||||
When a number is put before the command this is used
|
||||
as the maximum number of matches to find. Use
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 7.3. Last change: 2013 Feb 06
|
||||
*quickref.txt* For Vim version 7.3. Last change: 2013 Apr 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -691,6 +691,7 @@ Short explanation of each option: *option-list*
|
||||
'fileencodings' 'fencs' automatically detected character encodings
|
||||
'fileformat' 'ff' file format used for file I/O
|
||||
'fileformats' 'ffs' automatically detected values for 'fileformat'
|
||||
'fileignorecase' 'fic' ignore case when using file names
|
||||
'filetype' 'ft' type of file, used for autocommands
|
||||
'fillchars' 'fcs' characters to use for displaying special items
|
||||
'fkmap' 'fk' Farsi keyboard mapping
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2013 Jan 30
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2013 Apr 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -999,6 +999,14 @@ comment highlighting, add the following line to your startup file: >
|
||||
The ColdFusion syntax file is based on the HTML syntax file.
|
||||
|
||||
|
||||
CPP *cpp.vim* *ft-cpp-syntax*
|
||||
|
||||
Most of things are same as |ft-c-syntax|.
|
||||
|
||||
Variable Highlight ~
|
||||
cpp_no_c11 don't highlight C++11 standard items
|
||||
|
||||
|
||||
CSH *csh.vim* *ft-csh-syntax*
|
||||
|
||||
This covers the shell named "csh". Note that on some systems tcsh is actually
|
||||
@@ -1231,17 +1239,17 @@ to your startup file.
|
||||
|
||||
ERLANG *erlang.vim* *ft-erlang-syntax*
|
||||
|
||||
The erlang highlighting supports Erlang (ERicsson LANGuage).
|
||||
Erlang is case sensitive and default extension is ".erl".
|
||||
Erlang is a functional programming language developed by Ericsson. Files with
|
||||
the following extentions are recognized as Erlang files: erl, hrl, yaws.
|
||||
|
||||
If you want to disable keywords highlighting, put in your .vimrc: >
|
||||
:let erlang_keywords = 1
|
||||
If you want to disable built-in-functions highlighting, put in your
|
||||
.vimrc file: >
|
||||
:let erlang_functions = 1
|
||||
If you want to disable special characters highlighting, put in
|
||||
your .vimrc: >
|
||||
:let erlang_characters = 1
|
||||
The BIFs (built-in functions) are highlighted by default. To disable this,
|
||||
put the following line in your vimrc: >
|
||||
|
||||
:let g:erlang_highlight_bifs = 0
|
||||
|
||||
To enable highlighting some special atoms, put this in your vimrc: >
|
||||
|
||||
:let g:erlang_highlight_special_atoms = 1
|
||||
|
||||
|
||||
FLEXWIKI *flexwiki.vim* *ft-flexwiki-syntax*
|
||||
@@ -2061,7 +2069,7 @@ Therefore, you should be careful about not using more space between sentences
|
||||
than you intend to have in your final document. For this reason, the common
|
||||
practice is to insert a carriage return immediately after all punctuation
|
||||
marks. If you want to have "even" text in your final processed output, you
|
||||
need to maintaining regular spacing in the input text. To mark both trailing
|
||||
need to maintain regular spacing in the input text. To mark both trailing
|
||||
spaces and two or more spaces after a punctuation as an error, use: >
|
||||
|
||||
:let nroff_space_errors = 1
|
||||
@@ -2440,24 +2448,33 @@ Pascal. Use this if you don't use assembly and Pascal: >
|
||||
|
||||
PYTHON *python.vim* *ft-python-syntax*
|
||||
|
||||
There are four options to control Python syntax highlighting.
|
||||
There are six options to control Python syntax highlighting.
|
||||
|
||||
For highlighted numbers: >
|
||||
:let python_highlight_numbers = 1
|
||||
:let python_no_number_highlight = 1
|
||||
|
||||
For highlighted builtin functions: >
|
||||
:let python_highlight_builtins = 1
|
||||
:let python_no_builtin_highlight = 1
|
||||
|
||||
For highlighted standard exceptions: >
|
||||
:let python_highlight_exceptions = 1
|
||||
:let python_no_exception_highlight = 1
|
||||
|
||||
For highlighted doctests and code inside: >
|
||||
:let python_no_doctest_highlight = 1
|
||||
or >
|
||||
:let python_no_doctest_code_highlight = 1
|
||||
(first option implies second one).
|
||||
|
||||
For highlighted trailing whitespace and mix of spaces and tabs: >
|
||||
:let python_highlight_space_errors = 1
|
||||
:let python_space_error_highlight = 1
|
||||
|
||||
If you want all possible Python highlighting (the same as setting the
|
||||
preceding three options): >
|
||||
preceding last option and unsetting all other ones): >
|
||||
:let python_highlight_all = 1
|
||||
|
||||
Note: only existence of these options matter, not their value. You can replace
|
||||
1 above with anything.
|
||||
|
||||
|
||||
QUAKE *quake.vim* *ft-quake-syntax*
|
||||
|
||||
@@ -2911,6 +2928,35 @@ if any, is the text at the top of the screen supposed to be in?).
|
||||
Another cause of slow highlighting is due to syntax-driven folding; see
|
||||
|tex-folding| for a way around this.
|
||||
|
||||
*g:tex_fast*
|
||||
|
||||
Finally, if syntax highlighting is still too slow, you may set >
|
||||
|
||||
:let g:tex_fast= ""
|
||||
|
||||
in your .vimrc. Used this way, the g:tex_fast variable causes the syntax
|
||||
highlighting script to avoid defining any regions and associated
|
||||
synchronization. The result will be much faster syntax highlighting; the
|
||||
price: you will no longer have as much highlighting or any syntax-based
|
||||
folding, and you will be missing syntax-based error checking.
|
||||
|
||||
You may decide that some syntax is acceptable; you may use the following table
|
||||
selectively to enable just some syntax highlighting: >
|
||||
|
||||
b : allow bold and italic syntax
|
||||
c : allow texComment syntax
|
||||
m : allow texMatcher syntax (ie. {...} and [...])
|
||||
M : allow texMath syntax
|
||||
p : allow parts, chapter, section, etc syntax
|
||||
r : allow texRefZone syntax (nocite, bibliography, label, pageref, eqref)
|
||||
s : allow superscript/subscript regions
|
||||
S : allow texStyle syntax
|
||||
v : allow verbatim syntax
|
||||
V : allow texNewEnv and texNewCmd syntax
|
||||
<
|
||||
As an example, let g:tex_fast= "M" will allow math-associated highlighting
|
||||
but suppress all the other region-based syntax highlighting.
|
||||
|
||||
*tex-morecommands* *tex-package*
|
||||
Tex: Want To Highlight More Commands? ~
|
||||
|
||||
@@ -3805,7 +3851,7 @@ s-{nr} start of the matched pattern plus {nr} chars to the left
|
||||
e end of the matched pattern
|
||||
e+{nr} end of the matched pattern plus {nr} chars to the right
|
||||
e-{nr} end of the matched pattern plus {nr} chars to the left
|
||||
{nr} (for "lc" only): start matching {nr} chars to the left
|
||||
{nr} (for "lc" only): start matching {nr} chars right of the start
|
||||
|
||||
Examples: "ms=s+1", "hs=e-2", "lc=3".
|
||||
|
||||
@@ -4882,7 +4928,7 @@ restoring "b:current_syntax", since the syntax files do set
|
||||
|
||||
Once a window has its own syntax, syntax commands executed from other windows
|
||||
on the same buffer (including :syntax clear) have no effect. Conversely,
|
||||
syntax commands executed from that window do not effect other windows on the
|
||||
syntax commands executed from that window do not affect other windows on the
|
||||
same buffer.
|
||||
|
||||
A window with its own syntax reverts to normal behavior when another buffer
|
||||
|
||||
@@ -233,10 +233,12 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'fex' options.txt /*'fex'*
|
||||
'ff' options.txt /*'ff'*
|
||||
'ffs' options.txt /*'ffs'*
|
||||
'fic' options.txt /*'fic'*
|
||||
'fileencoding' options.txt /*'fileencoding'*
|
||||
'fileencodings' options.txt /*'fileencodings'*
|
||||
'fileformat' options.txt /*'fileformat'*
|
||||
'fileformats' options.txt /*'fileformats'*
|
||||
'fileignorecase' options.txt /*'fileignorecase'*
|
||||
'filetype' options.txt /*'filetype'*
|
||||
'fillchars' options.txt /*'fillchars'*
|
||||
'fk' options.txt /*'fk'*
|
||||
@@ -523,6 +525,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'noexpandtab' options.txt /*'noexpandtab'*
|
||||
'noexrc' options.txt /*'noexrc'*
|
||||
'nofen' options.txt /*'nofen'*
|
||||
'nofic' options.txt /*'nofic'*
|
||||
'nofileignorecase' options.txt /*'nofileignorecase'*
|
||||
'nofk' options.txt /*'nofk'*
|
||||
'nofkmap' options.txt /*'nofkmap'*
|
||||
'nofoldenable' options.txt /*'nofoldenable'*
|
||||
@@ -732,9 +736,11 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'quote motion.txt /*'quote*
|
||||
'quoteescape' options.txt /*'quoteescape'*
|
||||
'rdt' options.txt /*'rdt'*
|
||||
're' options.txt /*'re'*
|
||||
'readonly' options.txt /*'readonly'*
|
||||
'redraw' vi_diff.txt /*'redraw'*
|
||||
'redrawtime' options.txt /*'redrawtime'*
|
||||
'regexpengine'' options.txt /*'regexpengine''*
|
||||
'relativenumber' options.txt /*'relativenumber'*
|
||||
'remap' options.txt /*'remap'*
|
||||
'report' options.txt /*'report'*
|
||||
@@ -964,6 +970,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
't_te' term.txt /*'t_te'*
|
||||
't_ti' term.txt /*'t_ti'*
|
||||
't_ts' term.txt /*'t_ts'*
|
||||
't_u7' term.txt /*'t_u7'*
|
||||
't_ue' term.txt /*'t_ue'*
|
||||
't_us' term.txt /*'t_us'*
|
||||
't_ut' term.txt /*'t_ut'*
|
||||
@@ -1384,6 +1391,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
/\ pattern.txt /*\/\\*
|
||||
/\$ pattern.txt /*\/\\$*
|
||||
/\%# pattern.txt /*\/\\%#*
|
||||
/\%#= pattern.txt /*\/\\%#=*
|
||||
/\%$ pattern.txt /*\/\\%$*
|
||||
/\%'m pattern.txt /*\/\\%'m*
|
||||
/\%( pattern.txt /*\/\\%(*
|
||||
@@ -1829,6 +1837,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:RmVimball pi_vimball.txt /*:RmVimball*
|
||||
:Sexplore pi_netrw.txt /*:Sexplore*
|
||||
:TOhtml syntax.txt /*:TOhtml*
|
||||
:TarDiff pi_tar.txt /*:TarDiff*
|
||||
:Texplore pi_netrw.txt /*:Texplore*
|
||||
:UseVimball pi_vimball.txt /*:UseVimball*
|
||||
:Vexplore pi_netrw.txt /*:Vexplore*
|
||||
@@ -2584,7 +2593,9 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:pwd editing.txt /*:pwd*
|
||||
:py if_pyth.txt /*:py*
|
||||
:py3 if_pyth.txt /*:py3*
|
||||
:py3do if_pyth.txt /*:py3do*
|
||||
:py3file if_pyth.txt /*:py3file*
|
||||
:pydo if_pyth.txt /*:pydo*
|
||||
:pyf if_pyth.txt /*:pyf*
|
||||
:pyfile if_pyth.txt /*:pyfile*
|
||||
:python if_pyth.txt /*:python*
|
||||
@@ -4251,7 +4262,24 @@ E859 eval.txt /*E859*
|
||||
E86 windows.txt /*E86*
|
||||
E860 eval.txt /*E860*
|
||||
E861 eval.txt /*E861*
|
||||
E862 eval.txt /*E862*
|
||||
E863 if_pyth.txt /*E863*
|
||||
E864 pattern.txt /*E864*
|
||||
E865 pattern.txt /*E865*
|
||||
E866 pattern.txt /*E866*
|
||||
E867 pattern.txt /*E867*
|
||||
E868 pattern.txt /*E868*
|
||||
E869 pattern.txt /*E869*
|
||||
E87 windows.txt /*E87*
|
||||
E870 pattern.txt /*E870*
|
||||
E871 pattern.txt /*E871*
|
||||
E872 pattern.txt /*E872*
|
||||
E873 pattern.txt /*E873*
|
||||
E874 pattern.txt /*E874*
|
||||
E875 pattern.txt /*E875*
|
||||
E876 pattern.txt /*E876*
|
||||
E877 pattern.txt /*E877*
|
||||
E878 pattern.txt /*E878*
|
||||
E88 windows.txt /*E88*
|
||||
E89 message.txt /*E89*
|
||||
E90 message.txt /*E90*
|
||||
@@ -4478,6 +4506,8 @@ TabLeave autocmd.txt /*TabLeave*
|
||||
Tcl if_tcl.txt /*Tcl*
|
||||
TermChanged autocmd.txt /*TermChanged*
|
||||
TermResponse autocmd.txt /*TermResponse*
|
||||
TextChanged autocmd.txt /*TextChanged*
|
||||
TextChangedI autocmd.txt /*TextChangedI*
|
||||
Transact-SQL ft_sql.txt /*Transact-SQL*
|
||||
U undo.txt /*U*
|
||||
UTF-8 mbyte.txt /*UTF-8*
|
||||
@@ -4768,7 +4798,8 @@ aw motion.txt /*aw*
|
||||
a{ motion.txt /*a{*
|
||||
a} motion.txt /*a}*
|
||||
b motion.txt /*b*
|
||||
b:changedtick-variable eval.txt /*b:changedtick-variable*
|
||||
b: eval.txt /*b:*
|
||||
b:changedtick eval.txt /*b:changedtick*
|
||||
b:changelog_name filetype.txt /*b:changelog_name*
|
||||
b:current_syntax-variable syntax.txt /*b:current_syntax-variable*
|
||||
b:netrw_lastfile pi_netrw.txt /*b:netrw_lastfile*
|
||||
@@ -5181,6 +5212,7 @@ cpo-w options.txt /*cpo-w*
|
||||
cpo-x options.txt /*cpo-x*
|
||||
cpo-y options.txt /*cpo-y*
|
||||
cpo-{ options.txt /*cpo-{*
|
||||
cpp.vim syntax.txt /*cpp.vim*
|
||||
crash-recovery recover.txt /*crash-recovery*
|
||||
creating-menus gui.txt /*creating-menus*
|
||||
credits intro.txt /*credits*
|
||||
@@ -5657,6 +5689,7 @@ ft-chill-syntax syntax.txt /*ft-chill-syntax*
|
||||
ft-clojure-indent indent.txt /*ft-clojure-indent*
|
||||
ft-cobol-syntax syntax.txt /*ft-cobol-syntax*
|
||||
ft-coldfusion-syntax syntax.txt /*ft-coldfusion-syntax*
|
||||
ft-cpp-syntax syntax.txt /*ft-cpp-syntax*
|
||||
ft-csh-syntax syntax.txt /*ft-csh-syntax*
|
||||
ft-css-omni insert.txt /*ft-css-omni*
|
||||
ft-cweb-syntax syntax.txt /*ft-cweb-syntax*
|
||||
@@ -5794,6 +5827,7 @@ g, motion.txt /*g,*
|
||||
g- undo.txt /*g-*
|
||||
g0 motion.txt /*g0*
|
||||
g8 various.txt /*g8*
|
||||
g: eval.txt /*g:*
|
||||
g:NetrwTopLvlMenu pi_netrw.txt /*g:NetrwTopLvlMenu*
|
||||
g:Netrw_corehandler pi_netrw.txt /*g:Netrw_corehandler*
|
||||
g:Netrw_funcref pi_netrw.txt /*g:Netrw_funcref*
|
||||
@@ -5957,6 +5991,7 @@ g:tar_readoptions pi_tar.txt /*g:tar_readoptions*
|
||||
g:tar_secure pi_tar.txt /*g:tar_secure*
|
||||
g:tar_writeoptions pi_tar.txt /*g:tar_writeoptions*
|
||||
g:tex_conceal syntax.txt /*g:tex_conceal*
|
||||
g:tex_fast syntax.txt /*g:tex_fast*
|
||||
g:tex_isk syntax.txt /*g:tex_isk*
|
||||
g:var eval.txt /*g:var*
|
||||
g:vimball_home pi_vimball.txt /*g:vimball_home*
|
||||
@@ -6560,6 +6595,7 @@ keypad-point intro.txt /*keypad-point*
|
||||
keys() eval.txt /*keys()*
|
||||
known-bugs todo.txt /*known-bugs*
|
||||
l motion.txt /*l*
|
||||
l: eval.txt /*l:*
|
||||
l:var eval.txt /*l:var*
|
||||
lCursor mbyte.txt /*lCursor*
|
||||
lace.vim syntax.txt /*lace.vim*
|
||||
@@ -6694,6 +6730,7 @@ mapmode-s map.txt /*mapmode-s*
|
||||
mapmode-v map.txt /*mapmode-v*
|
||||
mapmode-x map.txt /*mapmode-x*
|
||||
mapping map.txt /*mapping*
|
||||
mapping-functions usr_41.txt /*mapping-functions*
|
||||
mark motion.txt /*mark*
|
||||
mark-functions usr_41.txt /*mark-functions*
|
||||
mark-motions motion.txt /*mark-motions*
|
||||
@@ -6850,7 +6887,8 @@ netrw-O pi_netrw.txt /*netrw-O*
|
||||
netrw-P pi_netrw.txt /*netrw-P*
|
||||
netrw-R pi_netrw.txt /*netrw-R*
|
||||
netrw-S pi_netrw.txt /*netrw-S*
|
||||
netrw-T pi_netrw.txt /*netrw-T*
|
||||
netrw-Tb pi_netrw.txt /*netrw-Tb*
|
||||
netrw-Th pi_netrw.txt /*netrw-Th*
|
||||
netrw-U pi_netrw.txt /*netrw-U*
|
||||
netrw-X pi_netrw.txt /*netrw-X*
|
||||
netrw-a pi_netrw.txt /*netrw-a*
|
||||
@@ -6919,6 +6957,7 @@ netrw-listbookmark pi_netrw.txt /*netrw-listbookmark*
|
||||
netrw-listhack pi_netrw.txt /*netrw-listhack*
|
||||
netrw-login pi_netrw.txt /*netrw-login*
|
||||
netrw-mB pi_netrw.txt /*netrw-mB*
|
||||
netrw-mF pi_netrw.txt /*netrw-mF*
|
||||
netrw-mT pi_netrw.txt /*netrw-mT*
|
||||
netrw-mb pi_netrw.txt /*netrw-mb*
|
||||
netrw-mc pi_netrw.txt /*netrw-mc*
|
||||
@@ -6973,6 +7012,7 @@ netrw-prvwin pi_netrw.txt /*netrw-prvwin*
|
||||
netrw-pscp pi_netrw.txt /*netrw-pscp*
|
||||
netrw-psftp pi_netrw.txt /*netrw-psftp*
|
||||
netrw-putty pi_netrw.txt /*netrw-putty*
|
||||
netrw-qF pi_netrw.txt /*netrw-qF*
|
||||
netrw-qb pi_netrw.txt /*netrw-qb*
|
||||
netrw-qf pi_netrw.txt /*netrw-qf*
|
||||
netrw-quickcom pi_netrw.txt /*netrw-quickcom*
|
||||
@@ -7313,10 +7353,15 @@ python-error if_pyth.txt /*python-error*
|
||||
python-eval if_pyth.txt /*python-eval*
|
||||
python-examples if_pyth.txt /*python-examples*
|
||||
python-input if_pyth.txt /*python-input*
|
||||
python-options if_pyth.txt /*python-options*
|
||||
python-output if_pyth.txt /*python-output*
|
||||
python-pyeval if_pyth.txt /*python-pyeval*
|
||||
python-range if_pyth.txt /*python-range*
|
||||
python-tabpage if_pyth.txt /*python-tabpage*
|
||||
python-tabpages if_pyth.txt /*python-tabpages*
|
||||
python-vars if_pyth.txt /*python-vars*
|
||||
python-vim if_pyth.txt /*python-vim*
|
||||
python-vvars if_pyth.txt /*python-vvars*
|
||||
python-window if_pyth.txt /*python-window*
|
||||
python-windows if_pyth.txt /*python-windows*
|
||||
python.vim syntax.txt /*python.vim*
|
||||
@@ -7561,6 +7606,7 @@ sgr-mouse options.txt /*sgr-mouse*
|
||||
sh-awk syntax.txt /*sh-awk*
|
||||
sh-embed syntax.txt /*sh-embed*
|
||||
sh.vim syntax.txt /*sh.vim*
|
||||
sha256() eval.txt /*sha256()*
|
||||
shell-window tips.txt /*shell-window*
|
||||
shell_error-variable eval.txt /*shell_error-variable*
|
||||
shellescape() eval.txt /*shellescape()*
|
||||
@@ -7828,6 +7874,7 @@ system-functions usr_41.txt /*system-functions*
|
||||
system-vimrc starting.txt /*system-vimrc*
|
||||
s~ change.txt /*s~*
|
||||
t motion.txt /*t*
|
||||
t: eval.txt /*t:*
|
||||
t:var eval.txt /*t:var*
|
||||
t_#2 term.txt /*t_#2*
|
||||
t_#4 term.txt /*t_#4*
|
||||
@@ -7972,6 +8019,7 @@ t_ti term.txt /*t_ti*
|
||||
t_tp version4.txt /*t_tp*
|
||||
t_ts term.txt /*t_ts*
|
||||
t_ts_old version4.txt /*t_ts_old*
|
||||
t_u7 term.txt /*t_u7*
|
||||
t_ue term.txt /*t_ue*
|
||||
t_undo version4.txt /*t_undo*
|
||||
t_us term.txt /*t_us*
|
||||
@@ -8142,6 +8190,7 @@ try-nested eval.txt /*try-nested*
|
||||
try-nesting eval.txt /*try-nesting*
|
||||
tutor usr_01.txt /*tutor*
|
||||
twice if_cscop.txt /*twice*
|
||||
two-engines pattern.txt /*two-engines*
|
||||
type() eval.txt /*type()*
|
||||
type-mistakes tips.txt /*type-mistakes*
|
||||
typecorr-settings usr_41.txt /*typecorr-settings*
|
||||
@@ -8222,6 +8271,7 @@ utf-8-in-xwindows mbyte.txt /*utf-8-in-xwindows*
|
||||
utf-8-typing mbyte.txt /*utf-8-typing*
|
||||
utf8 mbyte.txt /*utf8*
|
||||
v visual.txt /*v*
|
||||
v: eval.txt /*v:*
|
||||
v:beval_bufnr eval.txt /*v:beval_bufnr*
|
||||
v:beval_col eval.txt /*v:beval_col*
|
||||
v:beval_lnum eval.txt /*v:beval_lnum*
|
||||
@@ -8515,6 +8565,7 @@ vt100-function-keys term.txt /*vt100-function-keys*
|
||||
w motion.txt /*w*
|
||||
w32-clientserver remote.txt /*w32-clientserver*
|
||||
w32-xpm-support gui_w32.txt /*w32-xpm-support*
|
||||
w: eval.txt /*w:*
|
||||
w:current_syntax syntax.txt /*w:current_syntax*
|
||||
w:quickfix_title quickfix.txt /*w:quickfix_title*
|
||||
w:var eval.txt /*w:var*
|
||||
@@ -8523,6 +8574,7 @@ white-space pattern.txt /*white-space*
|
||||
whitespace pattern.txt /*whitespace*
|
||||
wildcard editing.txt /*wildcard*
|
||||
wildcards editing.txt /*wildcards*
|
||||
wildmenumode() eval.txt /*wildmenumode()*
|
||||
win16-!start gui_w16.txt /*win16-!start*
|
||||
win16-clipboard gui_w16.txt /*win16-clipboard*
|
||||
win16-colors gui_w16.txt /*win16-colors*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*term.txt* For Vim version 7.3. Last change: 2011 Feb 16
|
||||
*term.txt* For Vim version 7.3. Last change: 2013 Mar 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -294,6 +294,8 @@ Added by Vim (there are no standard codes for these):
|
||||
|termcap-cursor-shape|
|
||||
t_RV request terminal version string (for xterm) *t_RV* *'t_RV'*
|
||||
|xterm-8bit| |v:termresponse| |'ttymouse'| |xterm-codes|
|
||||
t_u7 request cursor position (for xterm) *t_u7* *'t_u7'*
|
||||
see |'ambiwidth'|
|
||||
|
||||
KEY CODES
|
||||
Note: Use the <> form if possible
|
||||
@@ -326,7 +328,7 @@ Note: Use the <> form if possible
|
||||
t_k8 <F8> function key 8 *<F8>* *t_k8* *'t_k8'*
|
||||
t_k9 <F9> function key 9 *<F9>* *t_k9* *'t_k9'*
|
||||
t_k; <F10> function key 10 *<F10>* *t_k;* *'t_k;'*
|
||||
t_F1 <F11> function key 11 *<F11>* *t_F1* *'t_F1'*
|
||||
t_F1 <F11> function key 11 *<F11>* *t_F1* *'t_F1'*
|
||||
t_F2 <F12> function key 12 *<F12>* *t_F2* *'t_F2'*
|
||||
t_F3 <F13> function key 13 *<F13>* *t_F3* *'t_F3'*
|
||||
t_F4 <F14> function key 14 *<F14>* *t_F4* *'t_F4'*
|
||||
@@ -356,9 +358,9 @@ Note: Use the <> form if possible
|
||||
t_kI <Insert> insert key *t_kI* *'t_kI'*
|
||||
t_kD <Del> delete key *t_kD* *'t_kD'*
|
||||
t_kb <BS> backspace key *t_kb* *'t_kb'*
|
||||
t_kB <S-Tab> back-tab (shift-tab) *<S-Tab>* *t_kB* *'t_kB'*
|
||||
t_kB <S-Tab> back-tab (shift-tab) *<S-Tab>* *t_kB* *'t_kB'*
|
||||
t_kh <Home> home key *t_kh* *'t_kh'*
|
||||
t_#2 <S-Home> shifted home key *<S-Home>* *t_#2* *'t_#2'*
|
||||
t_#2 <S-Home> shifted home key *<S-Home>* *t_#2* *'t_#2'*
|
||||
<xHome> alternate home key *<xHome>*
|
||||
t_@7 <End> end key *t_@7* *'t_@7'*
|
||||
t_*7 <S-End> shifted end key *<S-End>* *t_star7* *'t_star7'*
|
||||
@@ -371,8 +373,8 @@ Note: Use the <> form if possible
|
||||
t_K5 <kPageDown> keypad page-down key *t_K5* *'t_K5'*
|
||||
t_K6 <kPlus> keypad plus key *<kPlus>* *t_K6* *'t_K6'*
|
||||
t_K7 <kMinus> keypad minus key *<kMinus>* *t_K7* *'t_K7'*
|
||||
t_K8 <kDivide> keypad divide *<kDivide>* *t_K8* *'t_K8'*
|
||||
t_K9 <kMultiply> keypad multiply *<kMultiply>* *t_K9* *'t_K9'*
|
||||
t_K8 <kDivide> keypad divide *<kDivide>* *t_K8* *'t_K8'*
|
||||
t_K9 <kMultiply> keypad multiply *<kMultiply>* *t_K9* *'t_K9'*
|
||||
t_KA <kEnter> keypad enter key *<kEnter>* *t_KA* *'t_KA'*
|
||||
t_KB <kPoint> keypad decimal point *<kPoint>* *t_KB* *'t_KB'*
|
||||
t_KC <k0> keypad 0 *<k0>* *t_KC* *'t_KC'*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.3. Last change: 2013 Feb 13
|
||||
*todo.txt* For Vim version 7.3. Last change: 2013 May 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -34,9 +34,133 @@ not be repeated below, unless there is extra information.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Download counter for scripts no longer incremented?
|
||||
Because SourceForge does not have the IP address now, see ticket
|
||||
https://sourceforge.net/p/forge/site-support/2461/?page=1
|
||||
--- Python interface
|
||||
|
||||
Python SystemExit exception is not handled properly. Patch to catch the
|
||||
exception and give an error. (Yasuhiro Matsumoto)
|
||||
Does not work, tests fail.
|
||||
|
||||
Patch to print the result of a :python command. (Maxim Philippov
|
||||
<philippovmi@gmail.com>, 2012 Aug 16) Update Aug 17.
|
||||
Patch no longer applies.
|
||||
|
||||
":python os.chdir('/tmp')" makes short buffer names invalid. (Xavier de Gaye)
|
||||
Check directory and call shorten_fnames()? Better: make os.chdir()
|
||||
invoke the interal :cd implementation, that takes care of all side
|
||||
effects.
|
||||
|
||||
Mac: OS/X 10.4 with Python 2.5 installed: configure finds an extra argument
|
||||
that breaks the build. (Brian Victor, 2008 Sep 1)
|
||||
|
||||
Patch to access screen under Python. (Marko Mahni, 2010 Jul 18)
|
||||
|
||||
Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
|
||||
|
||||
Win32: The Python interface only works with one version of Python, selected at
|
||||
compile time. Can this be made to work with version 2.1 and 2.2 dynamically?
|
||||
|
||||
Python: Be able to define a Python function that can be called directly from
|
||||
Vim script. Requires converting the arguments and return value.
|
||||
|
||||
--- runtime files
|
||||
|
||||
Syntax file for protocol buffers. (Feng Xiao, 2013 May 9)
|
||||
Has an ugly copyright notice. No conflict with Vim license?
|
||||
|
||||
Patch for JavaScript syntax. (Kevin Locke, 2013 May 9)
|
||||
Claudio didn't respond yet.
|
||||
|
||||
--- Fast regexp engine
|
||||
|
||||
Including NFA regexp code. Latest version probably is:
|
||||
https://code.google.com/p/vim-soc2008-regexp/source/browse/trunk/vim72-re/src/regexp_nfa.c
|
||||
Patch updated by Ken Takata. (May 13)
|
||||
|
||||
To be able to run tests:
|
||||
- set defaultre=old / nfa / auto
|
||||
- In pattern use "\%#= to set the engine: 0 = automatic, 1 = old 2 = nfa
|
||||
|
||||
Get example files for many languages. Compare syntax highlighting with old and
|
||||
new regexp, find regexp constructs where NFA does not work correctly.
|
||||
Idea for comparing output: use format.vim (ZyX, 2013 May 12)
|
||||
MakeSynChk from Charles Campbell. (May 14)
|
||||
|
||||
Performance tests:
|
||||
- ~/vim/test/veryslow.js (file from Daniel Fetchinson)
|
||||
- ~/vim/test/slowsearch
|
||||
- ~/vim/test/rgb.vim
|
||||
- ~/vim/text/FeiqCfg.xml (file from Netjune)
|
||||
- ~/vim/text/edl.svg (also XML)
|
||||
- search for a.*e*exn in the vim executable. Go to last line to use
|
||||
'hlsearch'.
|
||||
|
||||
--- bug fixes
|
||||
|
||||
Patch to avoid wrong error message for 1.0[0]. (Yasuhiro Matsumoto, 2013 May
|
||||
1)
|
||||
|
||||
Patch for if_lua. (Luis Carvalho, 2012 Aug 26, update Aug 29, another Aug 30,
|
||||
then Sep 1, reminder Oct 14)
|
||||
|
||||
Patch to check if 'foldexpr' sets did_emsg. (Christian Brabandt, 2013 Mar 20)
|
||||
|
||||
Patch for 'backupcopy' default behavior for symlinks on Windows. (David Pope,
|
||||
2012 Mar 21, update Mar 31)
|
||||
With fix for memory leak: Ken Takata, 2012 Aug 24
|
||||
Another update Sep 24.
|
||||
Also patch from Joerg Bornemann, 2013 Apr 30.
|
||||
|
||||
Undo problem: line not removed as expected when using setline() from Insert
|
||||
mode. (Israel Chauca, 2010 May 13, more in second msg)
|
||||
Break undo when CTRL-R = changes the text? Or save more lines?
|
||||
Patch by Christian Brabandt, 2012 Nov 16.
|
||||
|
||||
Do allow real tags above the !_TAG entries. Undo older patch. Issue 90.
|
||||
|
||||
Matches might be highlighted correctly. Inefficient patch by Christian
|
||||
Brabandt, 2013 Feb 26.
|
||||
|
||||
Patch to use bold/italic fonts when 'guifontewide' is set. (Ken Takata, 2013
|
||||
Mar 31)
|
||||
|
||||
Problem with winfixheight and resizing. (Yukihiro Nakadaira, 2011 Sep 17)
|
||||
Patch Sep 18.
|
||||
|
||||
Patch for IME problems. Remove hacking code for old IM. (Yukihiro Nakadaira,
|
||||
2012 Jul 20)
|
||||
|
||||
Patch to fix finding toolbar bitmaps. Issue 129.
|
||||
|
||||
Combining characters are not used when executing a register with :@w.
|
||||
(William Fugh, 2013 Apr 5, more info from Ben Fritz)
|
||||
Patch by Christian Brabandt, 2013 Apr 6. Second one.
|
||||
|
||||
MS-Windows ACL support doesn't work well. Patch from Ken Takata, 2012 Aug 29.
|
||||
Update Aug 31.
|
||||
Another patch for MingW, 2012 Dec 29.
|
||||
|
||||
Bug in completion menu. (Olivier Teuliere, 2013 Feb 15)
|
||||
Patch by Christian Brabandt, Feb 16.
|
||||
|
||||
'cursorline' is drawn incorrectly in diff mode. Patch by Christian Brabandt,
|
||||
2012 Apr 2.
|
||||
|
||||
--- slightly incompatible changes
|
||||
|
||||
Patch to load ~/.vim/vimrc when ~/.vimrc isn't found. (Lech Lorens, 2013 Apr
|
||||
13)
|
||||
|
||||
It's probably a good idea to make a negative value for 'sts' use the value of
|
||||
'sw'. Patch by So8res, Oct 3 2012
|
||||
|
||||
When a buffer-local mapping is used, but a global mapping starts with the same
|
||||
characters, Vim currently waits for the next typed character to find out if
|
||||
the global mapping matches. It is probably better to let the local mapping
|
||||
win and not wait. (discussion with Andy Wokula, 2013 Jan 30)
|
||||
Patch by Michael Henry, 2013 Jan 30, update Feb 15.
|
||||
|
||||
|
||||
---- Fixes to be included before 7.4 above, less important stuff below ----
|
||||
|
||||
Several syntax file match "^\s*" which may get underlined if that's in the
|
||||
highlight group. Add a "\zs" after it?
|
||||
@@ -52,65 +176,43 @@ GTK: problem with 'L' in 'guioptions' changing the window width.
|
||||
|
||||
Javascript file where indent gets stuck on: GalaxyMaster, 2012 May 3.
|
||||
|
||||
Patch to trigger CompleteDone when there are no pattern matches. (Christian
|
||||
Brabandt, 2013 Feb 7)
|
||||
|
||||
The CompleteDone autocommand needs some info passed to it:
|
||||
- The word that was selected (empty if abandoned complete)
|
||||
- Type of completion: tag, omnifunc, user func.
|
||||
|
||||
Patch to make multibyte input work on Win32 console when codepage differs from
|
||||
'encoding'. (Ken Takata, 2012 Sep 29)
|
||||
|
||||
Patch for building with Ruby and Cygwin. (Ken Takata, 2013 Jan 9)
|
||||
|
||||
Patch to make 'relativenumber' show the current lnum instead of zero.
|
||||
(Nazri Ramliy, 2013 Jan 29)
|
||||
|
||||
It's possible to define an input() function that overrides the built-in one.
|
||||
(ZyX, 2012 Sep 28)
|
||||
|
||||
Patch to add sha256() function. (Tyru, 2013 Jan 8)
|
||||
Test by Higashi, 2013 Feb 2.
|
||||
All together (tyru, 2013 Feb 5)
|
||||
|
||||
Patch to make pyeval() print error messages. (ZyX, 2013 Jan 12)
|
||||
Using ":call foo#d.f()" doesn't autoload the "foo.vim" file.
|
||||
That is, calling a dictionary function on an autoloaded dict.
|
||||
Works OK for echo, just not for ":call" and ":call call()". (Ted, 2011 Mar
|
||||
17)
|
||||
Patch by Christian Brabandt, 2013 Mar 23.
|
||||
Not 100% sure this is the right solution.
|
||||
|
||||
Win32: When a directory name contains an exclamation mark, completion doesn't
|
||||
complete the contents of the directory. No escaping for the "!"? (Jan
|
||||
Stocker, 2012 Jan 5)
|
||||
|
||||
Patch for Win32 clipboard under Cygwin. (Frodak Baksik, Feb 15)
|
||||
Sutcliffe says it works well.
|
||||
Update 2007 May 22 for Vim 7.1
|
||||
Update 2008 Dec 2008 for Vim 7.2.xx (Sharonov)
|
||||
Update by Ken Takata (2012 Dec 31, 2013 Jan 4, 2013 Jan 26)
|
||||
|
||||
Problem parsing expression with function(). (Andy Wokula, 2012 Nov 22)
|
||||
Patch by Christian Brabandt, Nov 22. Tests in another patch, Nov 23.
|
||||
|
||||
Patch to detect value of 'ambiwidth' from the termresponse.
|
||||
(Hayaki Saito, 2013 Feb 11)
|
||||
|
||||
Matchparen does not update match when indenting. (Marc Aldorasi, 2013 Feb 9)
|
||||
|
||||
Patch to add default value to getbufvar() et al. (Shougo Matsushita, Hirohito
|
||||
Higashi, 2013 Jan 1)
|
||||
|
||||
Problem caused by patch 7.3.638: window->open does not update window
|
||||
correctly. Issue 91.
|
||||
|
||||
Patch to add argument to bufname() to only consider buffers in the current
|
||||
tab. (Alexey Radkov, 2013 Feb 8) Example in later email.
|
||||
Is this right?
|
||||
Patch to fix that 'cedit' is recognized after :normal. (Christian Brabandt,
|
||||
2013 Mar 19, later message)
|
||||
|
||||
Patch to fix compiler warnings for MingW 4.5.3. (Ken Takata, 2013 Jan 26)
|
||||
Patch to view coverage of the tests. (Nazri Ramliy, 2013 Feb 15)
|
||||
|
||||
Do allow real tags above the !_TAG entries. Undo older patch. Issue 90.
|
||||
Patch to invert characters differently in GTK. (Yukihiro Nakadaira, 2013 May
|
||||
5)
|
||||
|
||||
Patch to add the bufferlist() function. (Yegappan Lakshmanan, 2013 May 5)
|
||||
|
||||
Patch to allow setting w:quickfix_title via setqflist() and setloclist()
|
||||
functions. (Christian Brabandt, 2013 May 8, update May 11)
|
||||
|
||||
Patch to support 'u' in interactive substitute. (Christian Brabandt, 2012 Sep
|
||||
28) With tests: Oct 9.
|
||||
|
||||
Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14)
|
||||
Second one.
|
||||
|
||||
Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
|
||||
|
||||
Patch for IME handling, adds 'imactivatefunc' and 'imstatusfunc' option.
|
||||
@@ -119,20 +221,24 @@ Patch to improve IME handling. (Yasuhiro Matsumoto, 2012 Jul 18)
|
||||
|
||||
Issue 54: document behavior of -complete, also expands arg.
|
||||
|
||||
New syntax files for apt. (quidame, 2012 Sep 21)
|
||||
- Add regex for 'paragraphs' and 'sections': 'parare' and 'sectre'. Combine
|
||||
the two into a regex for searching. (Ned Konz)
|
||||
Patch by Christian Brabandt, 2013 Apr 20, unfinished.
|
||||
|
||||
Bug: findfile("any", "http://;") returns http://any. (Andrew Pimlott, 2013 May
|
||||
7) Not sure if that can be fixed, but when using "file://" it should be
|
||||
possible to check if the file exists.
|
||||
|
||||
v:register is not directly reset to " after a delete command that specifies a
|
||||
register. It is reset after the next command. (Steve Vermeulen, 2013 Mar 16)
|
||||
|
||||
'ff' is wrong for one-line file without EOL. (Issue 77)
|
||||
|
||||
Patch for if_lua. (Luis Carvalho, 2012 Aug 26, update Aug 29, another Aug 30,
|
||||
then Sep 1, reminder Oct 14)
|
||||
Patch to set antialiasing style on Windows. (Ondrej Balaz, 2013 Mar 14)
|
||||
Needs a different check for CLEARTYPE_QUALITY.
|
||||
|
||||
Issue 72: 'autochdir' causes problems for :vimgrep.
|
||||
|
||||
Undo problem: line not removed as expected when using setline() from Insert
|
||||
mode. (Israel Chauca, 2010 May 13, more in second msg)
|
||||
Break undo when CTRL-R = changes the text? Or save more lines?
|
||||
Patch by Christian Brabandt, 2012 Nov 16.
|
||||
|
||||
In the ATTENTION message about an existing swap file, mention the name of the
|
||||
process that is running. It might actually be some other program, e.g. after
|
||||
a reboot.
|
||||
@@ -140,9 +246,6 @@ a reboot.
|
||||
MS-Windows: Crash opening very long file name starting with "\\".
|
||||
(Christian Brock, 2012 Jun 29)
|
||||
|
||||
It's probably a good idea to make a negative value for 'sts' use the value of
|
||||
'sw'. Patch by So8res, Oct 3 2012
|
||||
|
||||
patch to add "combine" flag to syntax commands. (so8res, 2012 Dec 6)
|
||||
|
||||
Syntax update problem in one buffer opened in two windows, bottom window is
|
||||
@@ -156,10 +259,12 @@ Or use expand('<sid>')?
|
||||
|
||||
Patch to make confirm() display colors. (Christian Brabandt, 2012 Nov 9)
|
||||
|
||||
Patch to add functions for signs. (Christian Brabandt,, 2013 Jan 27)
|
||||
Patch to add functions for signs. (Christian Brabandt, 2013 Jan 27)
|
||||
|
||||
Patch to use directX to draw text on Windows. Adds the 'directx' option.
|
||||
(Taro Muraoka, 2013 Jan 25)
|
||||
Patch to use directX to draw text on Windows. Adds the 'renderoptions'
|
||||
option. (Taro Muraoka, 2013 Jan 25, update 2013 Apr 3, May 14)
|
||||
|
||||
Problem with refresh:always in completion. (Tyler Wade, 2013 Mar 17)
|
||||
|
||||
b:undo_ftplugin cannot call a script-local function. (Boris Danilov, 2013 Jan
|
||||
7)
|
||||
@@ -173,6 +278,9 @@ Patch to improve equivalence classes in regexp patterns.
|
||||
Patch with suggestions for starting.txt. (Tony Mechelynck, 2012 Oct 24)
|
||||
But use Gnome instead of GTK?
|
||||
|
||||
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
|
||||
Saito, 2013 Apr 24)
|
||||
|
||||
Should be possible to enable/disable matchparen per window or buffer.
|
||||
Add a check for b:no_match_paren in Highlight_matching_Pair() (Marcin
|
||||
Szamotulski, 2012 Nov 8)
|
||||
@@ -180,10 +288,6 @@ Szamotulski, 2012 Nov 8)
|
||||
Crash in autocmd that unloads buffers in a BufUnload event. (Andrew Pimlott,
|
||||
2012 Aug 11) Disallow :new when BufUnload is being handled?
|
||||
|
||||
MS-Windows ACL support doesn't work well. Patch from Ken Takata, 2012 Aug 29.
|
||||
Update Aug 31.
|
||||
Another patch for MingW, 2012 Dec 29.
|
||||
|
||||
MS-Windows resizing problems:
|
||||
- Windows window on screen positioning: Patch by Yukihiro Nakadaira, 2012 Jun
|
||||
20. Uses getWindowRect() instead of GetWindowPlacement()
|
||||
@@ -193,7 +297,10 @@ MS-Windows resizing problems:
|
||||
|
||||
'iminsert' global value set when using ":setlocal iminsert"? (Wu, 2012 Jun 23)
|
||||
|
||||
Help for b:undo_indent'. (Thilo Six, 2012 May 28)
|
||||
Patch to append regexp to tag commands to make it possible to select one out
|
||||
of many matches. (Cody Cutler, 2013 Mar 28)
|
||||
|
||||
Help for 'b:undo_indent'. (Thilo Six, 2012 May 28)
|
||||
Also question if examples are correct.
|
||||
|
||||
It should be possible to make globpath() return a list instead of a string,
|
||||
@@ -227,23 +334,12 @@ When running Vim in silent ex mode, an existing swapfile causes Vim to wait
|
||||
for a user action without a prompt. (Maarten Billemont, 2012 Feb 3)
|
||||
Do give the prompt? Quit with an error?
|
||||
|
||||
Patch for 'backupcopy' default behavior for symlinks on Windows. (David Pope,
|
||||
2012 Mar 21, update Mar 31)
|
||||
With fix for memory leak: Ken Takata, 2012 Aug 24
|
||||
Another update Sep 24.
|
||||
|
||||
Patch to list user digraphs. (Christian Brabandt, 2012 Apr 14)
|
||||
|
||||
Patch for input method status. (Hirohito Higashi, 2012 Apr 18)
|
||||
|
||||
Patch to print the result of a :python command. (Maxim Philippov
|
||||
<philippovmi@gmail.com>, 2012 Aug 16) Update Aug 17.
|
||||
|
||||
Problem with winfixheight and resizing. (Yukihiro Nakadaira, 2011 Sep 17)
|
||||
Patch Sep 18.
|
||||
|
||||
Patch for IME problems. Remove hacking code for old IM. (Yukihiro Nakadaira,
|
||||
2012 Jul 20)
|
||||
Patch to use .png icons for the toolbar on MS-Windows. (Martin Gieseking, 2013
|
||||
Apr 18)
|
||||
|
||||
Patch for has('unnamedplus') docs. (Tony Mechelynck, 2011 Sep 27)
|
||||
And one for gui_x11.txt.
|
||||
@@ -254,9 +350,6 @@ And one for gui_x11.txt.
|
||||
More recent version: https://retracile.net/wiki/VimBreakIndent
|
||||
Posted to vim-dev by Taylor Hedberg, 2011 Nov 25
|
||||
|
||||
Problem with starting Visual block mode with :norm when 'virtualedit' is set.
|
||||
(David glts, 2012 Jun 5)
|
||||
|
||||
":cd" doesn't work when current directory path contains "**".
|
||||
finddir() has the same problem. (Yukihiro Nakadaira, 2012 Jan 10)
|
||||
Requires a rewrite of the file_file_in_path code.
|
||||
@@ -265,10 +358,9 @@ Problem with l: dictionary being locked in a function. (ZyX, 2011 Jul 21)
|
||||
|
||||
Should use has("browsefilter") in ftplugins. Requires patch 7.3.593.
|
||||
|
||||
Issue 48: foldopen error can't be caught by try/catch
|
||||
Update for vim2html.pl. (Tyru, 2013 Feb 22)
|
||||
|
||||
"dg_" deletes including the last character, "d:normal! g_" doesn't.
|
||||
(Nomen Nescio, 2012 Jun 27)
|
||||
Issue 48: foldopen error can't be caught by try/catch
|
||||
|
||||
Patch to sort functions starting with '<' after others. Omit dict functions,
|
||||
they can't be called. (Yasuhiro Matsumoto, 2011 Oct 11)
|
||||
@@ -281,16 +373,11 @@ Nov 20)
|
||||
Patch to improve GUI find/replace dialog. (Christian Brabandt, 2012 May 26)
|
||||
Update Jun 2.
|
||||
|
||||
Patch to add ":py3do". (Lilydjwg, 2012 Apr 7)
|
||||
|
||||
`] moves to character after insert, instead of the last inserted character.
|
||||
(Yukihiro Nakadaira, 2011 Dec 9)
|
||||
|
||||
Plugin for Modeleasy. (Massimiliano Tripoli, 2011 Nov 29)
|
||||
|
||||
Updated syntax file for ssh_config, maintainer doesn't respond.
|
||||
(Leonard Ehrenfried, 2011 Sep 26)
|
||||
|
||||
BufWinLeave triggers too late when quitting last window in a tab page. (Lech
|
||||
Lorens, 2012 Feb 21)
|
||||
|
||||
@@ -320,15 +407,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)
|
||||
|
||||
'cursorline' is drawn incorrectly in diff mode. Patch by Christian Brabandt,
|
||||
2012 Apr 2.
|
||||
|
||||
'cursorline' works on a text line only. Add 'cursorscreenline' for
|
||||
highlighting the screen line. (Christian Brabandt, 2012 Mar 31)
|
||||
|
||||
Win32: Does building a 64 bit version with VC9 give warnings for int
|
||||
conversions? (Mike Williams)
|
||||
|
||||
Win32: Patch to use task dialogs when available. (Sergiu Dotenco, 2011 Sep 17)
|
||||
New feature, requires testing. Made some remarks.
|
||||
|
||||
@@ -408,12 +489,6 @@ string() can't parse back "inf" and "nan". Fix documentation or fix code?
|
||||
|
||||
Make 'formatprg' global-local. (Sung Pae)
|
||||
|
||||
When a buffer-local mapping is used, but a global mapping starts with the same
|
||||
characters, Vim currently waits for the next typed character to find out if
|
||||
the global mapping matches. It is probably better to let the local mapping
|
||||
win and not wait. (discussion with Andy Wokula, 2013 Jan 30)
|
||||
Patch by Michael Henry, 2013 Jan 30.
|
||||
|
||||
When doing "redir => s:foo" in a script and then "redir END" somewhere else
|
||||
(e.g. in a function) it can't find s:foo.
|
||||
|
||||
@@ -513,6 +588,9 @@ New esperanto spell file can't be processed. (Dominique Pelle, 2011 Jan 30)
|
||||
"L'Italie" noted as a spell error at start of the sentence. (Dominique Pelle,
|
||||
2011 Feb 27)
|
||||
|
||||
Functions to read the actual contents of the screen, so that things like
|
||||
conceal can be tested. (Nazri Ramliy, 2013 Feb 18)
|
||||
|
||||
Copy/paste between Vim and Google chrome doesn't work well for multi-byte
|
||||
characters. (Ben Haskell, 2010 Sep 17)
|
||||
When putting text in the cut buffer (when exiting) and conversion doesn't work
|
||||
@@ -524,6 +602,9 @@ Experimental patch by Christian Brabandt, 2012 Apr 19.
|
||||
Editing a file with a ^M with 'ff' set to "mac", opening a help file, then the
|
||||
^M is displayed as ^J sometimes. Getting 'ff' value from wrong window/buffer?
|
||||
|
||||
'colorcolumn' has higher priority than hlsearch. Should probably be the other
|
||||
way around. (Nazri Ramliy, 2013 Feb 19)
|
||||
|
||||
When Vim is put in the background (SIGTSTP) and then gets a SIGHUP it doesn't
|
||||
exit. It exists as soon as back in the foreground. (Stephen Liang, 2011 Jan
|
||||
9) Caused by vim_handle_signal(SIGNAL_BLOCK); in ui.c.
|
||||
@@ -534,9 +615,6 @@ the command line. (Ingo Karkat, 2011 Jan 25)
|
||||
Since patch 7.2.46 Yankring plugin has become very slow, eventually make Vim
|
||||
crash? (Raiwil, 2010 Nov 17)
|
||||
|
||||
Python: Adding line to buffer other than the current one doesn't work
|
||||
correctly. (Rozbujnik, 2010 Dec 19)
|
||||
|
||||
Patch to add 'systemencoding', convert between 'encoding' and this for file
|
||||
names, shell commands and the like. (Kikuchan, 2010 Oct 14)
|
||||
Assume the system converts between the actual encoding of the filesystem to
|
||||
@@ -712,9 +790,6 @@ Syntax priority problem. (Charles Campbell, 2011 Sep 15)
|
||||
When completion inserts the first match, it may trigger the line to be folded.
|
||||
Disable updating folds while completion is active? (Peter Odding, 2010 Jun 9)
|
||||
|
||||
Using ":call foo#d.f()" doesn't autoload the "foo.vim" file. Works OK for
|
||||
echo, just not for ":call" and ":call call()". (Ted, 2011 Mar 17)
|
||||
|
||||
When a:base in 'completefunc' starts with a number it's passed as a number,
|
||||
not a string. (Sean Ma) Need to add flag to call_func_retlist() to force a
|
||||
string value.
|
||||
@@ -899,9 +974,6 @@ shellescape() depends on 'shellshash' for quoting. That doesn't work when
|
||||
Use a different option or let it depend on whether 'shell' looks like a
|
||||
unix-like shell?
|
||||
|
||||
Allow patches to add something to version.c, like with an official patch, so
|
||||
that :version output shows which patches have been applied.
|
||||
|
||||
Bug: in Ex mode (after "Q") backslash before line break, when yanked into a
|
||||
register and executed, results in <Nul>: instead of line break.
|
||||
(Konrad Schwarz, 2010 Apr 16)
|
||||
@@ -928,6 +1000,7 @@ ATTENTION message? (Tony Mechelynck, 2008 Dec 1)
|
||||
Also: swap files are in ~/tmp/ One has relative file name ".mozilla/...".
|
||||
|
||||
Add v:motion_force. (Kana Natsuno, 2008 Dec 6)
|
||||
Maybe call it v:motiontype.
|
||||
|
||||
Runtime files for Clojure. (Toralf Wittner, 2008 Jun 25)
|
||||
|
||||
@@ -1115,18 +1188,6 @@ Would be more consistent when an existing tab is re-used. (Tony Mechelynck)
|
||||
|
||||
Add ":nofold". Range will apply without expanding to closed fold.
|
||||
|
||||
Including NFA regexp code:
|
||||
Use "\%#= to set the engine: 0 = automatic, 1 = backtracking, 2 = new.
|
||||
Useful in tests.
|
||||
Performance tests:
|
||||
- ~/vim/test/veryslow.js (file from Daniel Fetchinson)
|
||||
- ~/vim/test/slowsearch
|
||||
- ~/vim/test/rgb.vim
|
||||
- ~/vim/text/FeiqCfg.xml (file from Netjune)
|
||||
- ~/vim/text/edl.svg (also XML)
|
||||
- search for a.*e*exn in the vim executable. Go to last line to use
|
||||
'hlsearch'.
|
||||
|
||||
Using Aap to build Vim: add remarks about how to set personal preferences.
|
||||
Example on http://www.calmar.ws/tmp/aap.html
|
||||
|
||||
@@ -1359,9 +1420,6 @@ if_ruby.c.
|
||||
|
||||
":helpgrep" should use the directory from 'helpfile'.
|
||||
|
||||
Patch to dynamically load Python on Solaris. (Danek Duvall, 2009 Feb 16)
|
||||
Needs more work.
|
||||
|
||||
The need_fileinfo flag is messy. Instead make the message right away and put
|
||||
it in keep_msg?
|
||||
|
||||
@@ -1403,9 +1461,6 @@ When doing ":quit" the Netbeans "killed" event isn't sent. (Xavier de Gaye,
|
||||
2008 Nov 10) call netbeans_file_closed() at the end of buf_freeall(), or in
|
||||
all places where buf_freeall() is called?
|
||||
|
||||
":python os.chdir('/tmp')" makes short buffer names invalid. (Xavier de Gaye)
|
||||
Check directory and call shorten_fnames()?
|
||||
|
||||
aucmd_prepbuf() should also use a window in another tab page.
|
||||
|
||||
When unloading a buffer in a BufHidden autocommand the hidden flag is reset?
|
||||
@@ -1441,9 +1496,6 @@ somehow? Or use a new function.
|
||||
|
||||
Mac: Using gvim: netrw window disappears. (Nick Lo, 2006 Jun 21)
|
||||
|
||||
Mac: OS/X 10.4 with Python 2.5 installed: configure finds an extra argument
|
||||
that breaks the build. (Brian Victor, 2008 Sep 1)
|
||||
|
||||
Add an option to specify the character to use when a double-width character is
|
||||
moved to the next line. Default '>', set to a space to blank it out. Check
|
||||
that char is single width when it's set (compare with 'listchars').
|
||||
@@ -1730,7 +1782,6 @@ More patches:
|
||||
more friendly for the Vim distribution.
|
||||
New version received 2008 Jan 6.
|
||||
No maintenance in two years...
|
||||
- Patch to access screen under Python. (Marko Mahni, 2010 Jul 18)
|
||||
- Patch to open dropped files in new tabs. (Michael Trim, 2010 Aug 3)
|
||||
|
||||
Awaiting updated patches:
|
||||
@@ -2282,8 +2333,6 @@ Macintosh:
|
||||
the :catch commands are always executed, also when the file is edited
|
||||
normally. Should reset did_emsg and undo side effects. Also make sure
|
||||
the ATTENTION message shows up. Servatius Brandt works on this.
|
||||
8 ":g//" gives "Pattern not found error" with E486. Should not use the
|
||||
error number, it's not a regular error message.
|
||||
7 Vimtutor leaves escape sequence in terminal. This is the xterm response to
|
||||
requesting the version number. (Yasuhiro Matsumoto)
|
||||
8 When redirecting and using ":silent" the current column for displaying and
|
||||
@@ -2311,7 +2360,6 @@ Macintosh:
|
||||
8 When doing Insert mode completion a mapping cannot recursively call
|
||||
edit(), because the completion information is global. Put everything in
|
||||
an allocated structure?
|
||||
6 Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
|
||||
8 Command line completion: buffers "foo.txt" and "../b/foo.txt", completing
|
||||
":buf foo<Tab>" doesn't find the second one. (George V. Reilly)
|
||||
7 mb_off2cells() doesn't work correctly on the tail byte of a double-byte
|
||||
@@ -3608,9 +3656,6 @@ Tags:
|
||||
Win32 GUI:
|
||||
8 Make debug mode work while starting up (vim -D). Open console window for
|
||||
the message and input?
|
||||
7 The Python interface only works with one version of Python, selected at
|
||||
compile time. Can this be made to work with version 2.1 and 2.2
|
||||
dynamically?
|
||||
7 GvimExt: when there are several existing Vims, move the list to a submenu.
|
||||
(Mike McCollister)
|
||||
8 When using "Edit with Vim" for one file it changes directory, when several
|
||||
@@ -3972,9 +4017,6 @@ Command line completion:
|
||||
|
||||
|
||||
Command line history:
|
||||
9 Remember which command lines were actually typed and were not loaded from
|
||||
viminfo. When writing viminfo append only these lines, so that lines from
|
||||
other Vim's are not overwritten.
|
||||
- Add "KeyWasTyped" flag: It's reset before each command and set when a
|
||||
character from the keyboard is consumed. Value is used to decide to put a
|
||||
command line in history or not. Put line in history if it didn't
|
||||
@@ -4163,7 +4205,7 @@ Select mode:
|
||||
8 In blockwise mode, typed characters are inserted in front of the block,
|
||||
backspace deletes a column before the block. (Steve Hall)
|
||||
7 Alt-leftmouse starts block mode selection in MS Word.
|
||||
See http://www.vim.org/tips/tip.php?tip_id=743
|
||||
See http://vim.wikia.com/wiki/Use_Alt-Mouse_to_select_blockwise.
|
||||
7 Add Cmdline-select mode. Like Select mode, but used on the command line.
|
||||
- Change gui_send_mouse_event() to pass on mouse events when 'mouse'
|
||||
contains 'C' or 'A'.
|
||||
@@ -4828,8 +4870,6 @@ Debug mode:
|
||||
|
||||
|
||||
Various improvements:
|
||||
9 Python: be able to define a Python function that can be called directly
|
||||
from Vim script. Requires converting the arguments and return value.
|
||||
7 Add plugins for formatting? Should be able to make a choice depending on
|
||||
the language of a file (English/Korean/Japanese/etc.).
|
||||
Setting the 'langformat' option to "chinese" would load the
|
||||
@@ -4854,7 +4894,6 @@ Various improvements:
|
||||
7 Allow a window not to have a statusline. Makes it possible to use a
|
||||
window as a buffer-tab selection.
|
||||
8 Allow non-active windows to have a different statusline. (Yakov Lerner)
|
||||
6 Python interface: add vim.message() function. (Michal Vitecek, 2002 Nov 5)
|
||||
7 Support using ":vert" with User commands. Add expandable items <vert>.
|
||||
Do the same for ":browse" and ":confirm"?
|
||||
For ":silent" and ":debug" apply to the whole user command.
|
||||
@@ -5085,8 +5124,6 @@ Various improvements:
|
||||
- Add a variant of CTRL-V that stops interpretation of more than one
|
||||
character. For entering mappings on the command line where a key contains
|
||||
several special characters, e.g. a trailing newline.
|
||||
- Add regex for 'paragraphs' and 'sections': 'parare' and 'sectre'. Combine
|
||||
the two into a regex for searching. (Ned Konz)
|
||||
- Make '2' option in 'formatoptions' also work inside comments.
|
||||
- Add 's' flag to 'formatoptions': Do not break when inside a string. (Dodt)
|
||||
- When window size changed (with the mouse) and made too small, set it back
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 7.3. Last change: 2012 Oct 13
|
||||
*usr_41.txt* For Vim version 7.3. Last change: 2013 Feb 20
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -863,12 +863,15 @@ Window size and position: *window-size-functions*
|
||||
winsaveview() get view of current window
|
||||
winrestview() restore saved view of current window
|
||||
|
||||
Various: *various-functions*
|
||||
mode() get current editing mode
|
||||
visualmode() last visual mode used
|
||||
Mappings: *mapping-functions*
|
||||
hasmapto() check if a mapping exists
|
||||
mapcheck() check if a matching mapping exists
|
||||
maparg() get rhs of a mapping
|
||||
wildmenumode() check if the wildmode is active
|
||||
|
||||
Various: *various-functions*
|
||||
mode() get current editing mode
|
||||
visualmode() last visual mode used
|
||||
exists() check if a variable, function, etc. exists
|
||||
has() check if a feature is supported in Vim
|
||||
changenr() return number of most recent change
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2013 Feb 12
|
||||
" Last Change: 2013 May 15
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -139,6 +139,9 @@ au BufNewFile,BufRead .arch-inventory,=tagging-method setf arch
|
||||
" ART*Enterprise (formerly ART-IM)
|
||||
au BufNewFile,BufRead *.art setf art
|
||||
|
||||
" AsciiDoc
|
||||
au BufNewFile,BufRead *.asciidoc setf asciidoc
|
||||
|
||||
" ASN.1
|
||||
au BufNewFile,BufRead *.asn,*.asn1 setf asn
|
||||
|
||||
@@ -325,6 +328,9 @@ au BufNewFile,BufRead calendar setf calendar
|
||||
" C#
|
||||
au BufNewFile,BufRead *.cs setf cs
|
||||
|
||||
" CSDL
|
||||
au BufNewFile,BufRead *.csdl setf csdl
|
||||
|
||||
" Cabal
|
||||
au BufNewFile,BufRead *.cabal setf cabal
|
||||
|
||||
@@ -746,12 +752,12 @@ au BufNewFile,BufRead *.mo,*.gdmo setf gdmo
|
||||
au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom
|
||||
|
||||
" Git
|
||||
au BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit
|
||||
au BufNewFile,BufRead *.git/MERGE_MSG setf gitcommit
|
||||
au BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit
|
||||
au BufNewFile,BufRead *.git/MERGE_MSG setf gitcommit
|
||||
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 git-rebase-todo setf gitrebase
|
||||
au BufNewFile,BufRead *.git/modules/**/config setf gitconfig
|
||||
au BufNewFile,BufRead git-rebase-todo setf gitrebase
|
||||
au BufNewFile,BufRead .msg.[0-9]*
|
||||
\ if getline(1) =~ '^From.*# This line is ignored.$' |
|
||||
\ setf gitsendemail |
|
||||
@@ -778,7 +784,7 @@ au BufNewFile,BufRead gnashrc,.gnashrc,gnashpluginrc,.gnashpluginrc setf gnash
|
||||
" Gitolite
|
||||
au BufNewFile,BufRead gitolite.conf setf gitolite
|
||||
au BufNewFile,BufRead */gitolite-admin/conf/* call s:StarSetf('gitolite')
|
||||
au BufNewFile,BufRead {,.}gitolite.rc,example.gitolite.rc setf perl
|
||||
au BufNewFile,BufRead {,.}gitolite.rc,example.gitolite.rc setf perl
|
||||
|
||||
" Gnuplot scripts
|
||||
au BufNewFile,BufRead *.gpi setf gnuplot
|
||||
@@ -1641,6 +1647,9 @@ au BufNewFile,BufRead resolv.conf setf resolv
|
||||
" Relax NG Compact
|
||||
au BufNewFile,BufRead *.rnc setf rnc
|
||||
|
||||
" Relax NG XML
|
||||
au BufNewFile,BufRead *.rng setf rng
|
||||
|
||||
" RPL/2
|
||||
au BufNewFile,BufRead *.rpl setf rpl
|
||||
|
||||
@@ -2191,8 +2200,12 @@ au BufNewFile,BufRead *.uc setf uc
|
||||
au BufNewFile,BufRead */etc/updatedb.conf setf updatedb
|
||||
|
||||
" Upstart (init(8)) config files
|
||||
au BufNewFile,BufRead */etc/init/*.conf,*/.init/*.conf setf upstart
|
||||
au BufNewFile,BufRead */etc/init/*.override,*/.init/*.override setf upstart
|
||||
au BufNewFile,BufRead */usr/share/upstart/*.conf setf upstart
|
||||
au BufNewFile,BufRead */usr/share/upstart/*.override setf upstart
|
||||
au BufNewFile,BufRead */etc/init/*.conf,*/etc/init/*.override setf upstart
|
||||
au BufNewFile,BufRead */.init/*.conf,*/.init/*.override setf upstart
|
||||
au BufNewFile,BufRead */.config/upstart/*.conf setf upstart
|
||||
au BufNewFile,BufRead */.config/upstart/*.override setf upstart
|
||||
|
||||
" Vera
|
||||
au BufNewFile,BufRead *.vr,*.vri,*.vrh setf vera
|
||||
@@ -2402,10 +2415,10 @@ endfunc
|
||||
au BufNewFile,BufRead *.yaml,*.yml setf yaml
|
||||
|
||||
" yum conf (close enough to dosini)
|
||||
au BufNewFile,BufRead */etc/yum.conf setf dosini
|
||||
au BufNewFile,BufRead */etc/yum.conf setf dosini
|
||||
|
||||
" Zimbu
|
||||
au BufNewFile,BufRead *.zu setf zimbu
|
||||
au BufNewFile,BufRead *.zu setf zimbu
|
||||
|
||||
" Zope
|
||||
" dtml (zope dynamic template markup language), pt (zope page template),
|
||||
@@ -2550,6 +2563,20 @@ au BufNewFile,BufRead *termcap*
|
||||
\| let b:ptcap_type = "term" | call s:StarSetf('ptcap')
|
||||
\|endif
|
||||
|
||||
" ReDIF
|
||||
" Only used when the .rdf file was not detected to be XML.
|
||||
au BufRead,BufNewFile *.rdf call s:Redif()
|
||||
func! s:Redif()
|
||||
let lnum = 1
|
||||
while lnum <= 5 && lnum < line('$')
|
||||
if getline(lnum) =~ "^\ctemplate-type:"
|
||||
setf redif
|
||||
return
|
||||
endif
|
||||
let lnum = lnum + 1
|
||||
endwhile
|
||||
endfunc
|
||||
|
||||
" Remind
|
||||
au BufNewFile,BufRead .reminders* call s:StarSetf('remind')
|
||||
|
||||
@@ -2578,7 +2605,7 @@ au BufNewFile,BufRead *xmodmap* call s:StarSetf('xmodmap')
|
||||
au BufNewFile,BufRead */etc/xinetd.d/* call s:StarSetf('xinetd')
|
||||
|
||||
" yum conf (close enough to dosini)
|
||||
au BufNewFile,BufRead */etc/yum.repos.d/* call s:StarSetf('dosini')
|
||||
au BufNewFile,BufRead */etc/yum.repos.d/* call s:StarSetf('dosini')
|
||||
|
||||
" Z-Shell script
|
||||
au BufNewFile,BufRead zsh*,zlog* call s:StarSetf('zsh')
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Aap recipe
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2003 Nov 04
|
||||
" Last Change: 2013 Apr 05
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -19,7 +19,7 @@ let b:undo_ftplugin = "setl fo< com< et<"
|
||||
setlocal fo-=t fo+=croql
|
||||
|
||||
" Set 'comments' to format dashed lists in comments.
|
||||
setlocal comments=s:#\ -,m:#\ \,e:#,n:#,fb:-
|
||||
setlocal comments=s:#\ -,m:#\ \ ,e:#,n:#,fb:-
|
||||
|
||||
" Expand tabs to spaces to avoid trouble.
|
||||
setlocal expandtab
|
||||
|
||||
29
runtime/ftplugin/abap.vim
Normal file
29
runtime/ftplugin/abap.vim
Normal file
@@ -0,0 +1,29 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: ABAP
|
||||
" Author: Steven Oliver <oliver.steven@gmail.com>
|
||||
" Copyright: Copyright (c) 2013 Steven Oliver
|
||||
" License: You may redistribute this under the same terms as Vim itself
|
||||
" --------------------------------------------------------------------------
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal softtabstop=2 shiftwidth=2
|
||||
setlocal suffixesadd=.abap
|
||||
|
||||
" Windows allows you to filter the open file dialog
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
let b:browsefilter = "ABAP Source Files (*.abap)\t*.abap\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: set sw=4 sts=4 et tw=80 :
|
||||
@@ -7,7 +7,7 @@
|
||||
" Neil Bird <neil@fnxweb.com>
|
||||
" $Author: krischik $
|
||||
" $Date: 2008-07-08 16:29:01 +0200 (Di, 08 Jul 2008) $
|
||||
" Version: 4.6
|
||||
" Version: 4.6 with patch from David Bürgin
|
||||
" $Revision: 887 $
|
||||
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/ftplugin/ada.vim $
|
||||
" History: 24.05.2006 MK Unified Headers
|
||||
@@ -42,7 +42,7 @@ set cpoptions-=C
|
||||
|
||||
" Section: Comments {{{1
|
||||
"
|
||||
setlocal comments=O:--,:--\ \
|
||||
setlocal comments=O:--,:--\ \
|
||||
setlocal commentstring=--\ \ %s
|
||||
setlocal complete=.,w,b,u,t,i
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Make
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2006 Jun 17
|
||||
" Last Change: 2013 Apr 22
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -26,3 +26,8 @@ setlocal commentstring=#\ %s
|
||||
|
||||
" Including files.
|
||||
let &l:include = '^\s*include'
|
||||
|
||||
" For matchit.vim, suggested by Albert Netymk.
|
||||
if exists("loaded_matchit")
|
||||
let b:match_words = '\<if\(n\)\=\(eq\|def\)\>:\<else\>:\<endif\>,\<define\>:\<endef\>'
|
||||
endif
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" SQL filetype plugin file
|
||||
" Language: SQL (Common for Oracle, Microsoft SQL Server, Sybase)
|
||||
" Version: 10.0
|
||||
" Version: 11.0
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Last Change: 2012 Dec 04
|
||||
" Last Change: 2013 May 13
|
||||
" Download: http://vim.sourceforge.net/script.php?script_id=454
|
||||
|
||||
" For more details please use:
|
||||
@@ -36,6 +36,10 @@
|
||||
"
|
||||
" History
|
||||
"
|
||||
" Version 11.0 (May 2013)
|
||||
"
|
||||
" NF: Updated to use SyntaxComplete's new regex support for syntax groups.
|
||||
"
|
||||
" Version 10.0 (Dec 2012)
|
||||
"
|
||||
" NF: Changed all maps to use noremap instead of must map
|
||||
@@ -189,7 +193,7 @@ if !exists("*SQL_SetType")
|
||||
|
||||
" Remove any cached SQL since a new sytax will have different
|
||||
" items and groups
|
||||
if !exists('g:loaded_sql_completion') || 100 == g:loaded_sql_completion
|
||||
if !exists('g:loaded_sql_completion') || g:loaded_sql_completion >= 100
|
||||
call sqlcomplete#ResetCacheSyntax()
|
||||
endif
|
||||
|
||||
@@ -458,6 +462,8 @@ if exists('&omnifunc')
|
||||
" OMNI function prior to setting up the SQL OMNI function
|
||||
let b:sql_compl_savefunc = &omnifunc
|
||||
|
||||
" Source it to determine it's version
|
||||
runtime autoload/sqlcomplete.vim
|
||||
" This is used by the sqlcomplete.vim plugin
|
||||
" Source it for it's global functions
|
||||
runtime autoload/syntaxcomplete.vim
|
||||
@@ -466,14 +472,20 @@ if exists('&omnifunc')
|
||||
" Prevent the intellisense plugin from loading
|
||||
let b:sql_vis = 1
|
||||
if !exists('g:omni_sql_no_default_maps')
|
||||
let regex_extra = ''
|
||||
if exists('g:loaded_syntax_completion') && exists('g:loaded_sql_completion')
|
||||
if g:loaded_syntax_completion > 120 && g:loaded_sql_completion > 140
|
||||
let regex_extra = '\\w*'
|
||||
endif
|
||||
endif
|
||||
" Static maps which use populate the completion list
|
||||
" using Vim's syntax highlighting rules
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'a <C-\><C-O>:call sqlcomplete#Map("syntax")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'k <C-\><C-O>:call sqlcomplete#Map("sqlKeyword")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'f <C-\><C-O>:call sqlcomplete#Map("sqlFunction")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'o <C-\><C-O>:call sqlcomplete#Map("sqlOption")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'T <C-\><C-O>:call sqlcomplete#Map("sqlType")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'s <C-\><C-O>:call sqlcomplete#Map("sqlStatement")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'k <C-\><C-O>:call sqlcomplete#Map("sqlKeyword'.regex_extra.'")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'f <C-\><C-O>:call sqlcomplete#Map("sqlFunction'.regex_extra.'")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'o <C-\><C-O>:call sqlcomplete#Map("sqlOption'.regex_extra.'")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'T <C-\><C-O>:call sqlcomplete#Map("sqlType'.regex_extra.'")<CR><C-X><C-O>'
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'s <C-\><C-O>:call sqlcomplete#Map("sqlStatement'.regex_extra.'")<CR><C-X><C-O>'
|
||||
" Dynamic maps which use populate the completion list
|
||||
" using the dbext.vim plugin
|
||||
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'t <C-\><C-O>:call sqlcomplete#Map("table")<CR><C-X><C-O>'
|
||||
@@ -510,4 +522,3 @@ let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim:sw=4:
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -5,7 +5,6 @@
|
||||
" Credits: Thanks to the ruby.vim authors, I borrow a lot!
|
||||
" Previous Maintainer: Brent A. Fulgham <bfulgham@debian.org>
|
||||
" -----------------------------------------------------------
|
||||
" GetLatestVimScripts: 2752 1 :AutoInstall: falcon.vim
|
||||
|
||||
"======================================
|
||||
" SETUP
|
||||
@@ -132,7 +131,7 @@ function FalconGetIndent()
|
||||
" If previous line ends in a semi-colon reset indent to previous
|
||||
" lines setting
|
||||
if prevline =~? ';\s*$' && prevnonblank(prevline) =~? ',\s*$'
|
||||
return chg = chg - (2 * &sw)
|
||||
let chg = chg - (2 * &sw)
|
||||
endif
|
||||
|
||||
" If previous line ended in a comma, indent again
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
" Vim indent file
|
||||
" Language: R
|
||||
" Author: Jakson Alves de Aquino <jalvesaq@gmail.com>
|
||||
" Last Change: Fri Oct 14, 2011 09:50PM
|
||||
" Last Change: Fri Feb 15, 2013 08:11PM
|
||||
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_r_indent")
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_r_indent = 1
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentkeys=0{,0},:,!^F,o,O,e
|
||||
setlocal indentexpr=GetRIndent()
|
||||
|
||||
@@ -73,7 +73,7 @@ function! GetSDLIndent()
|
||||
|
||||
" Systems and packages are always in column 0
|
||||
if getline(v:lnum) =~? '^\s*\(\(end\)\=system\|\(end\)\=package\)'
|
||||
return 0;
|
||||
return 0
|
||||
endif
|
||||
|
||||
" Put each end* where the corresponding begin was
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim indent file
|
||||
" Language: LaTeX
|
||||
" Maintainer: Zhou YiChao <broken.zhou AT gmail.com>
|
||||
" Maintainer: YiChao Zhou <broken.zhou AT gmail.com>
|
||||
" Created: Sat, 16 Feb 2002 16:50:19 +0100
|
||||
" Last Change: 2012 Mar 18 19:19:50
|
||||
" Version: 0.7
|
||||
@@ -46,6 +46,9 @@
|
||||
" (*) Modify indentkeys.
|
||||
" 2012/03/18 by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Add &cpo
|
||||
" 2013/05/02 by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Fix problem about GetTeXIndent checker. Thank Albert Netymk
|
||||
" for reporting this.
|
||||
" }}}
|
||||
|
||||
" Document: {{{
|
||||
@@ -106,10 +109,6 @@
|
||||
" }}}
|
||||
|
||||
" Only define the function once
|
||||
if exists("*GetTeXIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
@@ -158,7 +157,7 @@ exec 'setlocal indentkeys+=[,(,{,),},],\&' . substitute(g:tex_items, '^\|\(\\|\)
|
||||
let g:tex_items = '^\s*' . substitute(g:tex_items, '^\(\^\\s\*\)*', '', '')
|
||||
" }}}
|
||||
|
||||
function GetTeXIndent() " {{{
|
||||
function! GetTeXIndent() " {{{
|
||||
" Find a non-blank line above the current line.
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"
|
||||
" Menu Translations: Japanese (EUC-JP)
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
" Last Change: 24-Feb-2013.
|
||||
"
|
||||
" Copyright (C) 2001-12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
@@ -241,6 +241,8 @@ menutrans &Paste Ž
|
||||
menutrans &Delete <09><><EFBFBD><EFBFBD>(&D)
|
||||
menutrans Select\ Blockwise <09><><EFBFBD><EFBFBD><EFBFBD>֥<EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
menutrans Select\ &Word ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
|
||||
menutrans Select\ &Sentence ʸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans Select\ Pa&ragraph <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
|
||||
menutrans Select\ &Line <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans Select\ &Block <09>֥<EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
|
||||
menutrans Select\ &All <09><><EFBFBD>٤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)
|
||||
@@ -301,12 +303,12 @@ menutrans &Convert\ to\ HTML HTML
|
||||
" <20><><EFBFBD>ݤ<EFBFBD>iconv<6E><76><EFBFBD>衢ɬ<E8A1A2><C9AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꤷ<EFBFBD><EAA4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F3A5B3A1>ɤˤʤ<CBA4><CAA4>櫓<EFBFBD>ǤϤʤ<CFA4><CAA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD><EFBFBD>
|
||||
if has('iconv')
|
||||
" iconv<6E>ΥС<CEA5><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD>
|
||||
let support_jisx0213 = (iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb") ? 1 : 0
|
||||
"
|
||||
let s:support_jisx0213 = (iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb") ? 1 : 0
|
||||
|
||||
" <20>ɤ߹<C9A4><DFB9><EFBFBD>
|
||||
an 10.395 &File.-SEPICONV- <Nop>
|
||||
an 10.396.100.100 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><><EFBFBD><EFBFBD>(&O)\.\.\..SJIS(&S)<Tab>fenc=cp932 :browse confirm e ++enc=cp932<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.100.110 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><><EFBFBD><EFBFBD>(&O)\.\.\..EUC(&E)<Tab>fenc=euc-jp :browse confirm e ++enc=euc-jp<CR>
|
||||
an 10.396.100.120 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><><EFBFBD><EFBFBD>(&O)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :browse confirm e ++enc=iso-2022-jp<CR>
|
||||
else
|
||||
@@ -317,7 +319,7 @@ if has('iconv')
|
||||
|
||||
" <20><><EFBFBD>ɹ<EFBFBD>
|
||||
an 10.396.110.100 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><><EFBFBD>ɹ<EFBFBD>(&R)\.\.\..SJIS(&S)<Tab>fenc=cp932 :e ++enc=cp932<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.110.110 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><><EFBFBD>ɹ<EFBFBD>(&R)\.\.\..EUC(&E)<Tab>fenc=euc-jp :e ++enc=euc-jp<CR>
|
||||
an 10.396.110.120 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><><EFBFBD>ɹ<EFBFBD>(&R)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :e ++enc=iso-2022-jp<CR>
|
||||
else
|
||||
@@ -329,7 +331,7 @@ if has('iconv')
|
||||
" <20><>¸
|
||||
an 10.396.115 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..-SEP1- <Nop>
|
||||
an 10.396.120.100 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><>¸(&S)\.\.\..SJIS(&S)<Tab>fenc=cp932 :set fenc=cp932 \| w<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.120.110 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><>¸(&S)\.\.\..EUC(&E)<Tab>fenc=euc-jp :set fenc=euc-jp \| w<CR>
|
||||
an 10.396.120.120 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><>¸(&S)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :set fenc=iso-2022-jp \| w<CR>
|
||||
else
|
||||
@@ -337,6 +339,8 @@ if has('iconv')
|
||||
an 10.396.120.120 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><>¸(&S)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp-3 :set fenc=iso-2022-jp-3 \| w<CR>
|
||||
endif
|
||||
an 10.396.120.130 &File.<2E><><EFBFBD><EFBFBD><F3A5B3A1>ɻ<EFBFBD><EFBFBD><EFBFBD>(&E)\.\.\..<2E><>¸(&S)\.\.\..UTF-8(&8)<Tab>fenc=utf-8 :set fenc=utf-8 \| w<CR>
|
||||
|
||||
unlet s:support_jisx0213
|
||||
endif
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"
|
||||
" Menu Translations: Japanese (UTF-8)
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
" Last Change: 24-Feb-2013.
|
||||
"
|
||||
" Copyright (C) 2001-12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
@@ -241,6 +241,8 @@ menutrans &Paste 貼り付け(&P)
|
||||
menutrans &Delete 削除(&D)
|
||||
menutrans Select\ Blockwise 矩形ブロック選択
|
||||
menutrans Select\ &Word 単語選択(&W)
|
||||
menutrans Select\ &Sentence 文選択(&S)
|
||||
menutrans Select\ Pa&ragraph 段落選択(&R)
|
||||
menutrans Select\ &Line 行選択(&L)
|
||||
menutrans Select\ &Block ブロック選択(&B)
|
||||
menutrans Select\ &All すべて選択(&A)
|
||||
@@ -301,12 +303,12 @@ menutrans &Convert\ to\ HTML HTMLへコンバート(&C)
|
||||
" 成否はiconv次第、必ずしも指定したエンコードになるわけではないことに注意
|
||||
if has('iconv')
|
||||
" iconvのバージョン判定
|
||||
let support_jisx0213 = (iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb") ? 1 : 0
|
||||
"
|
||||
let s:support_jisx0213 = (iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb") ? 1 : 0
|
||||
|
||||
" 読み込み
|
||||
an 10.395 &File.-SEPICONV- <Nop>
|
||||
an 10.396.100.100 &File.エンコード指定(&E)\.\.\..開く(&O)\.\.\..SJIS(&S)<Tab>fenc=cp932 :browse confirm e ++enc=cp932<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.100.110 &File.エンコード指定(&E)\.\.\..開く(&O)\.\.\..EUC(&E)<Tab>fenc=euc-jp :browse confirm e ++enc=euc-jp<CR>
|
||||
an 10.396.100.120 &File.エンコード指定(&E)\.\.\..開く(&O)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :browse confirm e ++enc=iso-2022-jp<CR>
|
||||
else
|
||||
@@ -317,7 +319,7 @@ if has('iconv')
|
||||
|
||||
" 再読込
|
||||
an 10.396.110.100 &File.エンコード指定(&E)\.\.\..再読込(&R)\.\.\..SJIS(&S)<Tab>fenc=cp932 :e ++enc=cp932<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.110.110 &File.エンコード指定(&E)\.\.\..再読込(&R)\.\.\..EUC(&E)<Tab>fenc=euc-jp :e ++enc=euc-jp<CR>
|
||||
an 10.396.110.120 &File.エンコード指定(&E)\.\.\..再読込(&R)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :e ++enc=iso-2022-jp<CR>
|
||||
else
|
||||
@@ -329,7 +331,7 @@ if has('iconv')
|
||||
" 保存
|
||||
an 10.396.115 &File.エンコード指定(&E)\.\.\..-SEP1- <Nop>
|
||||
an 10.396.120.100 &File.エンコード指定(&E)\.\.\..保存(&S)\.\.\..SJIS(&S)<Tab>fenc=cp932 :set fenc=cp932 \| w<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.120.110 &File.エンコード指定(&E)\.\.\..保存(&S)\.\.\..EUC(&E)<Tab>fenc=euc-jp :set fenc=euc-jp \| w<CR>
|
||||
an 10.396.120.120 &File.エンコード指定(&E)\.\.\..保存(&S)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :set fenc=iso-2022-jp \| w<CR>
|
||||
else
|
||||
@@ -337,6 +339,8 @@ if has('iconv')
|
||||
an 10.396.120.120 &File.エンコード指定(&E)\.\.\..保存(&S)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp-3 :set fenc=iso-2022-jp-3 \| w<CR>
|
||||
endif
|
||||
an 10.396.120.130 &File.エンコード指定(&E)\.\.\..保存(&S)\.\.\..UTF-8(&8)<Tab>fenc=utf-8 :set fenc=utf-8 \| w<CR>
|
||||
|
||||
unlet s:support_jisx0213
|
||||
endif
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"
|
||||
" Menu Translations: Japanese (CP932)
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
" Last Change: 24-Feb-2013.
|
||||
"
|
||||
" Copyright (C) 2001-12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
@@ -241,6 +241,8 @@ menutrans &Paste
|
||||
menutrans &Delete <09>폜(&D)
|
||||
menutrans Select\ Blockwise <09><><EFBFBD>`<60>u<EFBFBD><EFBFBD><EFBFBD>b<EFBFBD>N<EFBFBD>I<EFBFBD><EFBFBD>
|
||||
menutrans Select\ &Word <09>P<EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><EFBFBD>(&W)
|
||||
menutrans Select\ &Sentence <09><><EFBFBD>I<EFBFBD><EFBFBD>(&S)
|
||||
menutrans Select\ Pa&ragraph <09>i<EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><EFBFBD>(&R)
|
||||
menutrans Select\ &Line <09>s<EFBFBD>I<EFBFBD><EFBFBD>(&L)
|
||||
menutrans Select\ &Block <09>u<EFBFBD><EFBFBD><EFBFBD>b<EFBFBD>N<EFBFBD>I<EFBFBD><EFBFBD>(&B)
|
||||
menutrans Select\ &All <09><><EFBFBD>ׂđI<EFBFBD><EFBFBD>(&A)
|
||||
@@ -301,12 +303,12 @@ menutrans &Convert\ to\ HTML HTML
|
||||
" <20><><EFBFBD>ۂ<EFBFBD>iconv<6E><76><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>w<EFBFBD>肵<EFBFBD><E882B5><EFBFBD>G<EFBFBD><47><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>ɂȂ<C982><C882>킯<EFBFBD>ł͂Ȃ<CD82><C882><EFBFBD><EFBFBD>Ƃɒ<C682><C992><EFBFBD>
|
||||
if has('iconv')
|
||||
" iconv<6E>̃o<CC83>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
let support_jisx0213 = (iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb") ? 1 : 0
|
||||
"
|
||||
let s:support_jisx0213 = (iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb") ? 1 : 0
|
||||
|
||||
" <20>ǂݍ<C782><DD8D><EFBFBD>
|
||||
an 10.395 &File.-SEPICONV- <Nop>
|
||||
an 10.396.100.100 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>J<EFBFBD><EFBFBD>(&O)\.\.\..SJIS(&S)<Tab>fenc=cp932 :browse confirm e ++enc=cp932<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.100.110 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>J<EFBFBD><EFBFBD>(&O)\.\.\..EUC(&E)<Tab>fenc=euc-jp :browse confirm e ++enc=euc-jp<CR>
|
||||
an 10.396.100.120 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>J<EFBFBD><EFBFBD>(&O)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :browse confirm e ++enc=iso-2022-jp<CR>
|
||||
else
|
||||
@@ -317,7 +319,7 @@ if has('iconv')
|
||||
|
||||
" <20>ēǍ<C493>
|
||||
an 10.396.110.100 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>ēǍ<EFBFBD>(&R)\.\.\..SJIS(&S)<Tab>fenc=cp932 :e ++enc=cp932<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.110.110 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>ēǍ<EFBFBD>(&R)\.\.\..EUC(&E)<Tab>fenc=euc-jp :e ++enc=euc-jp<CR>
|
||||
an 10.396.110.120 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>ēǍ<EFBFBD>(&R)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :e ++enc=iso-2022-jp<CR>
|
||||
else
|
||||
@@ -329,7 +331,7 @@ if has('iconv')
|
||||
" <20>ۑ<EFBFBD>
|
||||
an 10.396.115 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..-SEP1- <Nop>
|
||||
an 10.396.120.100 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>ۑ<EFBFBD>(&S)\.\.\..SJIS(&S)<Tab>fenc=cp932 :set fenc=cp932 \| w<CR>
|
||||
if !support_jisx0213
|
||||
if !s:support_jisx0213
|
||||
an 10.396.120.110 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>ۑ<EFBFBD>(&S)\.\.\..EUC(&E)<Tab>fenc=euc-jp :set fenc=euc-jp \| w<CR>
|
||||
an 10.396.120.120 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>ۑ<EFBFBD>(&S)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp :set fenc=iso-2022-jp \| w<CR>
|
||||
else
|
||||
@@ -337,6 +339,8 @@ if has('iconv')
|
||||
an 10.396.120.120 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>ۑ<EFBFBD>(&S)\.\.\..JIS(&J)<Tab>fenc=iso-2022-jp-3 :set fenc=iso-2022-jp-3 \| w<CR>
|
||||
endif
|
||||
an 10.396.120.130 &File.<2E>G<EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>w<EFBFBD><EFBFBD>(&E)\.\.\..<2E>ۑ<EFBFBD>(&S)\.\.\..UTF-8(&8)<Tab>fenc=utf-8 :set fenc=utf-8 \| w<CR>
|
||||
|
||||
unlet s:support_jisx0213
|
||||
endif
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim Plugin: Edit the file with an existing Vim if possible
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Last Change: 2008 May 29
|
||||
" Last Change: 2013 Feb 24
|
||||
|
||||
" 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
|
||||
@@ -98,7 +98,7 @@ func! EditExisting(fname, command)
|
||||
" Make this tab page the current one and find the window number.
|
||||
exe 'tabnext ' . (i + 1)
|
||||
let winnr = bufwinnr(a:fname)
|
||||
break;
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
endif
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" You can also use this as a start for your own set of menus.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 Dec 06
|
||||
" Last Change: 2013 May 17
|
||||
|
||||
" Note that ":an" (short for ":anoremenu") is often used to make a menu work
|
||||
" in all modes and avoid side effects from mappings defined by the user.
|
||||
@@ -308,8 +308,10 @@ fun! s:TextWidth()
|
||||
endif
|
||||
let n = inputdialog(g:menutrans_textwidth_dialog, &tw)
|
||||
if n != ""
|
||||
" remove leading zeros to avoid it being used as an octal number
|
||||
let &tw = substitute(n, "^0*", "", "")
|
||||
" Remove leading zeros to avoid it being used as an octal number.
|
||||
" But keep a zero by itself.
|
||||
let tw = substitute(n, "^0*", "", "")
|
||||
let &tw = tw == '' ? 0 : tw
|
||||
endif
|
||||
endfun
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" These commands create the option window.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 Feb 22
|
||||
" Last Change: 2013 Apr 05
|
||||
|
||||
" If there already is an option window, jump to that one.
|
||||
if bufwinnr("option-window") > 0
|
||||
@@ -1035,6 +1035,8 @@ if has("wildignore")
|
||||
call append("$", "wildignore\tlist of patterns to ignore files for file name completion")
|
||||
call <SID>OptionG("wig", &wig)
|
||||
endif
|
||||
call append("$", "fileignorecase\tignore case when using file names")
|
||||
call <SID>BinOptionG("fic", &fic)
|
||||
call append("$", "wildignorecase\tignore case when completing file names")
|
||||
call <SID>BinOptionG("wic", &wic)
|
||||
if has("wildmenu")
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" ---------------------------------------------------------------------
|
||||
" getscriptPlugin.vim
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Author: Charles E. Campbell
|
||||
" Date: Jan 07, 2008
|
||||
" Installing: :help glvs-install
|
||||
" Usage: :help glvs
|
||||
@@ -19,7 +19,7 @@ if &cp || exists("g:loaded_getscriptPlugin")
|
||||
endif
|
||||
finish
|
||||
endif
|
||||
let g:loaded_getscriptPlugin = "v34"
|
||||
let g:loaded_getscriptPlugin = "v35"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -1,19 +1,29 @@
|
||||
" Vim plugin for showing matching parens
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2011 Aug 27
|
||||
" Last Change: 2013 May 08
|
||||
|
||||
" Exit quickly when:
|
||||
" - this plugin was already loaded (or disabled)
|
||||
" - when 'compatible' is set
|
||||
" - the "CursorMoved" autocmd event is not availble.
|
||||
" - the "CursorMoved" autocmd event is not available.
|
||||
if exists("g:loaded_matchparen") || &cp || !exists("##CursorMoved")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_matchparen = 1
|
||||
|
||||
if !exists("g:matchparen_timeout")
|
||||
let g:matchparen_timeout = 300
|
||||
endif
|
||||
if !exists("g:matchparen_insert_timeout")
|
||||
let g:matchparen_insert_timeout = 60
|
||||
endif
|
||||
|
||||
augroup matchparen
|
||||
" Replace all matchparen autocommands
|
||||
autocmd! CursorMoved,CursorMovedI,WinEnter * call s:Highlight_Matching_Pair()
|
||||
if exists('##TextChanged')
|
||||
autocmd! TextChanged,TextChangedI * call s:Highlight_Matching_Pair()
|
||||
endif
|
||||
augroup END
|
||||
|
||||
" Skip the rest if it was already done.
|
||||
@@ -96,10 +106,15 @@ function! s:Highlight_Matching_Pair()
|
||||
let stopline = stoplinetop
|
||||
endif
|
||||
|
||||
" Limit the search time to 300 msec to avoid a hang on very long lines.
|
||||
" This fails when a timeout is not supported.
|
||||
if mode() == 'i' || mode() == 'R'
|
||||
let timeout = exists("b:matchparen_insert_timeout") ? b:matchparen_insert_timeout : g:matchparen_insert_timeout
|
||||
else
|
||||
let timeout = exists("b:matchparen_timeout") ? b:matchparen_timeout : g:matchparen_timeout
|
||||
endif
|
||||
try
|
||||
" Limit the search time to 300 msec to avoid a hang on very long lines.
|
||||
" This fails when a timeout is not supported.
|
||||
let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline, 300)
|
||||
let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline, timeout)
|
||||
catch /E118/
|
||||
" Can't use the timeout, restrict the stopline a bit more to avoid taking
|
||||
" a long time on closed folds and long lines.
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
" netrwPlugin.vim: Handles file transfer and remote directory listing across a network
|
||||
" PLUGIN SECTION
|
||||
" Date: Aug 24, 2011
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" Date: Dec 06, 2012
|
||||
" Maintainer: Charles E Campbell <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
|
||||
" Copyright: Copyright (C) 1999-2008 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 1999-2012 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
@@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_netrwPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwPlugin = "v146"
|
||||
let g:loaded_netrwPlugin = "v148"
|
||||
if v:version < 702
|
||||
echohl WarningMsg | echo "***netrw*** you need vim version 7.2 for this version of netrw" | echohl None
|
||||
finish
|
||||
@@ -48,10 +48,10 @@ augroup END
|
||||
augroup Network
|
||||
au!
|
||||
au BufReadCmd file://* call netrw#FileUrlRead(expand("<amatch>"))
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(1,expand("<amatch>"))|exe "silent doau FileReadPost ".fnameescape(expand("<amatch>"))
|
||||
au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau BufWritePost ".fnameescape(expand("<amatch>"))
|
||||
au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau FileWritePost ".fnameescape(expand("<amatch>"))
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "sil doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau FileReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(1,expand("<amatch>"))|exe "sil doau FileReadPost ".fnameescape(expand("<amatch>"))
|
||||
au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "sil doau BufWritePost ".fnameescape(expand("<amatch>"))
|
||||
au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "sil doau FileWritePost ".fnameescape(expand("<amatch>"))
|
||||
try
|
||||
au SourceCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
catch /^Vim\%((\a\+)\)\=:E216/
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" tarPlugin.vim -- a Vim plugin for browsing tarfiles
|
||||
" Original was copyright (c) 2002, Michael C. Toren <mct@toren.net>
|
||||
" Modified by Charles E. Campbell, Jr.
|
||||
" Modified by Charles E. Campbell
|
||||
" Distributed under the GNU General Public License.
|
||||
"
|
||||
" Updates are available from <http://michael.toren.net/code/>. If you
|
||||
@@ -14,7 +14,7 @@
|
||||
if &cp || exists("g:loaded_tarPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tarPlugin = "v28"
|
||||
let g:loaded_tarPlugin = "v29"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
" zipPlugin.vim: Handles browsing zipfiles
|
||||
" PLUGIN PORTION
|
||||
" Date: Aug 15, 2011
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" Date: Nov 15, 2012
|
||||
" Maintainer: Charles E Campbell <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
" Copyright: Copyright (C) 2005-2011 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 2005-2012 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
@@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_zipPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_zipPlugin = "v25"
|
||||
let g:loaded_zipPlugin = "v26"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -40,7 +40,7 @@ augroup zip
|
||||
au FileWriteCmd zipfile:*/* call zip#Write(expand("<amatch>"))
|
||||
endif
|
||||
|
||||
au BufReadCmd *.zip,*.jar,*.xpi,*.war,*.ear,*.celzip,*.oxt call zip#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.zip,*.jar,*.xpi,*.ja,*.war,*.ear,*.celzip,*.oxt,*.kmz,*.wsz,*.xap,*.docx,*.docm,*.dotx,*.dotm,*.potx,*.potm,*.ppsx,*.ppsm,*.pptx,*.pptm,*.ppam,*.sldx,*.thmx,*.xlam,*.xlsx,*.xlsm,*.xlsb,*.xltx,*.xltm,*.xlam,*.crtx,*.vdw,*.glox,*.gcsx,*.gqsx call zip#Browse(expand("<amatch>"))
|
||||
augroup END
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
|
||||
@@ -124,16 +124,17 @@ an 50.20.360 &Syntax.C.Config.Configure\.in :cal SetSyn("config")<CR>
|
||||
an 50.20.370 &Syntax.C.Config.Generic\ Config\ file :cal SetSyn("conf")<CR>
|
||||
an 50.20.380 &Syntax.C.CRM114 :cal SetSyn("crm")<CR>
|
||||
an 50.20.390 &Syntax.C.Crontab :cal SetSyn("crontab")<CR>
|
||||
an 50.20.400 &Syntax.C.CSP :cal SetSyn("csp")<CR>
|
||||
an 50.20.410 &Syntax.C.Ctrl-H :cal SetSyn("ctrlh")<CR>
|
||||
an 50.20.420 &Syntax.C.Cucumber :cal SetSyn("cucumber")<CR>
|
||||
an 50.20.430 &Syntax.C.CUDA :cal SetSyn("cuda")<CR>
|
||||
an 50.20.440 &Syntax.C.CUPL.CUPL :cal SetSyn("cupl")<CR>
|
||||
an 50.20.450 &Syntax.C.CUPL.Simulation :cal SetSyn("cuplsim")<CR>
|
||||
an 50.20.460 &Syntax.C.CVS.commit\ file :cal SetSyn("cvs")<CR>
|
||||
an 50.20.470 &Syntax.C.CVS.cvsrc :cal SetSyn("cvsrc")<CR>
|
||||
an 50.20.480 &Syntax.C.Cyn++ :cal SetSyn("cynpp")<CR>
|
||||
an 50.20.490 &Syntax.C.Cynlib :cal SetSyn("cynlib")<CR>
|
||||
an 50.20.400 &Syntax.C.CSDL :cal SetSyn("csdl")<CR>
|
||||
an 50.20.410 &Syntax.C.CSP :cal SetSyn("csp")<CR>
|
||||
an 50.20.420 &Syntax.C.Ctrl-H :cal SetSyn("ctrlh")<CR>
|
||||
an 50.20.430 &Syntax.C.Cucumber :cal SetSyn("cucumber")<CR>
|
||||
an 50.20.440 &Syntax.C.CUDA :cal SetSyn("cuda")<CR>
|
||||
an 50.20.450 &Syntax.C.CUPL.CUPL :cal SetSyn("cupl")<CR>
|
||||
an 50.20.460 &Syntax.C.CUPL.Simulation :cal SetSyn("cuplsim")<CR>
|
||||
an 50.20.470 &Syntax.C.CVS.commit\ file :cal SetSyn("cvs")<CR>
|
||||
an 50.20.480 &Syntax.C.CVS.cvsrc :cal SetSyn("cvsrc")<CR>
|
||||
an 50.20.490 &Syntax.C.Cyn++ :cal SetSyn("cynpp")<CR>
|
||||
an 50.20.500 &Syntax.C.Cynlib :cal SetSyn("cynlib")<CR>
|
||||
an 50.30.100 &Syntax.DE.D :cal SetSyn("d")<CR>
|
||||
an 50.30.110 &Syntax.DE.Datascript :cal SetSyn("datascript")<CR>
|
||||
an 50.30.120 &Syntax.DE.Debian.Debian\ ChangeLog :cal SetSyn("debchangelog")<CR>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: APT config file
|
||||
" Maintainer: Yann Amar <quidame@poivron.org>
|
||||
" Last Change: 2012 Oct 06
|
||||
" Last Change: 2013 Apr 12
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x and 7.x: Quit when a syntax file was already loaded
|
||||
@@ -17,7 +17,6 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
" Errors:
|
||||
" Catch all that is not overridden by next rules/items:
|
||||
syn match aptconfError display '[^[:blank:]]'
|
||||
@@ -198,6 +197,24 @@ syn keyword aptconfAptitudeUI contained
|
||||
\ Package-Status-Format Pause-After-Download Preview-Limit
|
||||
\ Prompt-On-Exit Styles ViewTabs
|
||||
|
||||
syn keyword aptconfAptitudeUIKeyBindings contained
|
||||
\ ApplySolution Begin BugReport Cancel Changelog ChangePkgTreeGrouping
|
||||
\ ChangePkgTreeLimit ChangePkgTreeSorting ClearAuto CollapseAll
|
||||
\ CollapseTree Commit Confirm Cycle CycleNext CycleOrder CyclePrev
|
||||
\ DelBOL DelBack DelEOL DelForward Dependencies DescriptionCycle
|
||||
\ DescriptionDown DescriptionUp DoInstallRun Down DpkgReconfigure
|
||||
\ DumpResolver EditHier End ExamineSolution ExpandAll ExpandTree
|
||||
\ FirstSolution ForbidUpgrade ForgetNewPackages Help HistoryNext
|
||||
\ HistoryPrev Hold Install InstallSingle Keep LastSolution Left
|
||||
\ LevelDown LevelUp MarkUpgradable MineFlagSquare MineLoadGame
|
||||
\ MineSaveGame MineSweepSquare MineUncoverSquare MineUncoverSweepSquare
|
||||
\ NextPage NextSolution No Parent PrevPage PrevSolution Purge
|
||||
\ PushButton Quit QuitProgram RejectBreakHolds Refresh Remove
|
||||
\ ReInstall RepeatSearchBack ReSearch ReverseDependencies Right
|
||||
\ SaveHier Search SearchBack SearchBroken SetAuto ShowHideDescription
|
||||
\ SolutionActionApprove SolutionActionReject ToggleExpanded
|
||||
\ ToggleMenuActive Undo Up UpdatePackageList Versions Yes
|
||||
|
||||
syn keyword aptconfAptitudeUIStyles contained
|
||||
\ Bullet ChangeLogNewerVersion Default DepBroken DisabledMenuEntry
|
||||
\ DownloadHit DownloadProgress EditLine Error Header HighlightedMenuBar
|
||||
@@ -220,7 +237,8 @@ syn cluster aptconfAptitude_ contains=aptconfAptitude,
|
||||
\ aptconfAptitudeCmdlineSafeUpgrade,aptconfAptitudeLogging,
|
||||
\ aptconfAptitudeProblemResolver,aptconfAptitudeSafeResolver,
|
||||
\ aptconfAptitudeScreenshot,aptconfAptitudeSections,aptconfAptitudeUI,
|
||||
\ aptconfAptitudeUIStyles,aptconfAptitudeUIStylesElements
|
||||
\ aptconfAptitudeUIKeyBindings,aptconfAptitudeUIStyles,
|
||||
\ aptconfAptitudeUIStylesElements
|
||||
" }}}
|
||||
" DebTags: {{{
|
||||
syn keyword aptconfDebTags contained
|
||||
@@ -449,6 +467,7 @@ hi def link aptconfAptitudeSafeResolver aptconfOption
|
||||
hi def link aptconfAptitudeScreenshot aptconfOption
|
||||
hi def link aptconfAptitudeSections aptconfOption
|
||||
hi def link aptconfAptitudeUI aptconfOption
|
||||
hi def link aptconfAptitudeUIKeyBindings aptconfOption
|
||||
hi def link aptconfAptitudeUIStyles aptconfOption
|
||||
hi def link aptconfAptitudeUIStylesElements aptconfOption
|
||||
|
||||
|
||||
183
runtime/syntax/asciidoc.vim
Normal file
183
runtime/syntax/asciidoc.vim
Normal file
@@ -0,0 +1,183 @@
|
||||
" Vim syntax file
|
||||
" Language: AsciiDoc
|
||||
" Author: Stuart Rackham <srackham@gmail.com> (inspired by Felix
|
||||
" Obenhuber's original asciidoc.vim script).
|
||||
" URL: http://asciidoc.org/
|
||||
" Licence: GPL (http://www.gnu.org)
|
||||
" Remarks: Vim 6 or greater
|
||||
" Limitations:
|
||||
"
|
||||
" - Nested quoted text formatting is highlighted according to the outer
|
||||
" format.
|
||||
" - If a closing Example Block delimiter may be mistaken for a title
|
||||
" underline. A workaround is to insert a blank line before the closing
|
||||
" delimiter.
|
||||
" - Lines within a paragraph starting with equals characters are
|
||||
" highlighted as single-line titles.
|
||||
" - Lines within a paragraph beginning with a period are highlighted as
|
||||
" block titles.
|
||||
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn clear
|
||||
syn sync fromstart
|
||||
syn sync linebreaks=100
|
||||
|
||||
" Run :help syn-priority to review syntax matching priority.
|
||||
syn keyword asciidocToDo TODO FIXME CHECK TEST XXX ZZZ DEPRECATED
|
||||
syn match asciidocBackslash /\\/
|
||||
syn region asciidocIdMarker start=/^\$Id:\s/ end=/\s\$$/
|
||||
syn match asciidocCallout /\\\@<!<\d\{1,2}>/
|
||||
syn match asciidocOpenBlockDelimiter /^--$/
|
||||
syn match asciidocLineBreak /[ \t]+$/ containedin=asciidocList
|
||||
syn match asciidocRuler /^'\{3,}$/
|
||||
syn match asciidocPagebreak /^<\{3,}$/
|
||||
syn match asciidocEntityRef /\\\@<!&[#a-zA-Z]\S\{-};/
|
||||
syn region asciidocLiteralParagraph start=/\(\%^\|\_^\s*\n\)\@<=\s\+\S\+/ end=/\(^\(+\|--\)\?\s*$\)\@=/ contains=asciidocToDo
|
||||
syn match asciidocURL /\\\@<!\<\(http\|https\|ftp\|file\|irc\):\/\/[^| \t]*\(\w\|\/\)/
|
||||
syn match asciidocEmail /[\\.:]\@<!\(\<\|<\)\w\(\w\|[.-]\)*@\(\w\|[.-]\)*\w>\?[0-9A-Za-z_]\@!/
|
||||
syn match asciidocAttributeRef /\\\@<!{\w\(\w\|[-,+]\)*\([=!@#$%?:].*\)\?}/
|
||||
|
||||
" As a damage control measure quoted patterns always terminate at a blank
|
||||
" line (see 'Limitations' above).
|
||||
syn match asciidocQuotedAttributeList /\\\@<!\[[a-zA-Z0-9_-][a-zA-Z0-9 _-]*\][+_'`#*]\@=/
|
||||
syn match asciidocQuotedSubscript /\\\@<!\~\S\_.\{-}\(\~\|\n\s*\n\)/ contains=asciidocEntityRef
|
||||
syn match asciidocQuotedSuperscript /\\\@<!\^\S\_.\{-}\(\^\|\n\s*\n\)/ contains=asciidocEntityRef
|
||||
|
||||
syn match asciidocQuotedMonospaced /\(^\|[| \t([.,=\]]\)\@<=+\([+ \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(+\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
|
||||
syn match asciidocQuotedMonospaced2 /\(^\|[| \t([.,=\]]\)\@<=`\([` \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(`\([| \t)[\],.?!;:=]\|$\)\@=\)/
|
||||
syn match asciidocQuotedUnconstrainedMonospaced /[\\+]\@<!++\S\_.\{-}\(++\|\n\s*\n\)/ contains=asciidocEntityRef
|
||||
|
||||
syn match asciidocQuotedEmphasized /\(^\|[| \t([.,=\]]\)\@<=_\([_ \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(_\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
|
||||
syn match asciidocQuotedEmphasized2 /\(^\|[| \t([.,=\]]\)\@<='\([' \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\('\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
|
||||
syn match asciidocQuotedUnconstrainedEmphasized /\\\@<!__\S\_.\{-}\(__\|\n\s*\n\)/ contains=asciidocEntityRef
|
||||
|
||||
syn match asciidocQuotedBold /\(^\|[| \t([.,=\]]\)\@<=\*\([* \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(\*\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
|
||||
syn match asciidocQuotedUnconstrainedBold /\\\@<!\*\*\S\_.\{-}\(\*\*\|\n\s*\n\)/ contains=asciidocEntityRef
|
||||
|
||||
" Don't allow ` in single quoted (a kludge to stop confusion with `monospaced`).
|
||||
syn match asciidocQuotedSingleQuoted /\(^\|[| \t([.,=\]]\)\@<=`\([` \n\t]\)\@!\([^`]\|\n\(\s*\n\)\@!\)\{-}[^` \t]\('\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
|
||||
|
||||
syn match asciidocQuotedDoubleQuoted /\(^\|[| \t([.,=\]]\)\@<=``\([` \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(''\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
|
||||
|
||||
syn match asciidocDoubleDollarPassthrough /\\\@<!\(^\|[^0-9a-zA-Z$]\)\@<=\$\$..\{-}\(\$\$\([^0-9a-zA-Z$]\|$\)\@=\|^$\)/
|
||||
syn match asciidocTriplePlusPassthrough /\\\@<!\(^\|[^0-9a-zA-Z$]\)\@<=+++..\{-}\(+++\([^0-9a-zA-Z$]\|$\)\@=\|^$\)/
|
||||
|
||||
syn match asciidocAdmonition /^\u\{3,15}:\(\s\+.*\)\@=/
|
||||
|
||||
syn region asciidocTable_OLD start=/^\([`.']\d*[-~_]*\)\+[-~_]\+\d*$/ end=/^$/
|
||||
syn match asciidocBlockTitle /^\.[^. \t].*[^-~_]$/ contains=asciidocQuoted.*,asciidocAttributeRef
|
||||
syn match asciidocTitleUnderline /[-=~^+]\{2,}$/ transparent contained contains=NONE
|
||||
syn match asciidocOneLineTitle /^=\{1,5}\s\+\S.*$/ contains=asciidocQuoted.*,asciidocMacroAttributes,asciidocAttributeRef,asciidocEntityRef,asciidocEmail,asciidocURL,asciidocBackslash
|
||||
syn match asciidocTwoLineTitle /^[^. +/].*[^.]\n[-=~^+]\{3,}$/ contains=asciidocQuoted.*,asciidocMacroAttributes,asciidocAttributeRef,asciidocEntityRef,asciidocEmail,asciidocURL,asciidocBackslash,asciidocTitleUnderline
|
||||
|
||||
syn match asciidocAttributeList /^\[[^[ \t].*\]$/
|
||||
syn match asciidocQuoteBlockDelimiter /^_\{4,}$/
|
||||
syn match asciidocExampleBlockDelimiter /^=\{4,}$/
|
||||
syn match asciidocSidebarDelimiter /^*\{4,}$/
|
||||
|
||||
" See http://vimdoc.sourceforge.net/htmldoc/usr_44.html for excluding region
|
||||
" contents from highlighting.
|
||||
syn match asciidocTablePrefix /\(\S\@<!\(\([0-9.]\+\)\([*+]\)\)\?\([<\^>.]\{,3}\)\?\([a-z]\)\?\)\?|/ containedin=asciidocTableBlock contained
|
||||
syn region asciidocTableBlock matchgroup=asciidocTableDelimiter start=/^|=\{3,}$/ end=/^|=\{3,}$/ keepend contains=ALL
|
||||
syn match asciidocTablePrefix /\(\S\@<!\(\([0-9.]\+\)\([*+]\)\)\?\([<\^>.]\{,3}\)\?\([a-z]\)\?\)\?!/ containedin=asciidocTableBlock contained
|
||||
syn region asciidocTableBlock2 matchgroup=asciidocTableDelimiter2 start=/^!=\{3,}$/ end=/^!=\{3,}$/ keepend contains=ALL
|
||||
|
||||
syn match asciidocListContinuation /^+$/
|
||||
syn region asciidocLiteralBlock start=/^\.\{4,}$/ end=/^\.\{4,}$/ contains=asciidocCallout,asciidocToDo keepend
|
||||
syn region asciidocListingBlock start=/^-\{4,}$/ end=/^-\{4,}$/ contains=asciidocCallout,asciidocToDo keepend
|
||||
syn region asciidocCommentBlock start="^/\{4,}$" end="^/\{4,}$" contains=asciidocToDo
|
||||
syn region asciidocPassthroughBlock start="^+\{4,}$" end="^+\{4,}$"
|
||||
|
||||
" Allowing leading \w characters in the filter delimiter is to accomodate
|
||||
" the pre version 8.2.7 syntax and may be removed in future releases.
|
||||
syn region asciidocFilterBlock start=/^\w*\~\{4,}$/ end=/^\w*\~\{4,}$/
|
||||
|
||||
syn region asciidocMacroAttributes matchgroup=asciidocRefMacro start=/\\\@<!<<"\{-}\(\w\|-\|_\|:\|\.\)\+"\?,\?/ end=/\(>>\)\|^$/ contains=asciidocQuoted.* keepend
|
||||
syn region asciidocMacroAttributes matchgroup=asciidocAnchorMacro start=/\\\@<!\[\{2}\(\w\|-\|_\|:\|\.\)\+,\?/ end=/\]\{2}/ keepend
|
||||
syn region asciidocMacroAttributes matchgroup=asciidocAnchorMacro start=/\\\@<!\[\{3}\(\w\|-\|_\|:\|\.\)\+/ end=/\]\{3}/ keepend
|
||||
syn region asciidocMacroAttributes matchgroup=asciidocMacro start=/[\\0-9a-zA-Z]\@<!\w\(\w\|-\)*:\S\{-}\[/ skip=/\\\]/ end=/\]\|^$/ contains=asciidocQuoted.*,asciidocAttributeRef,asciidocEntityRef keepend
|
||||
" Highlight macro that starts with an attribute reference (a common idiom).
|
||||
syn region asciidocMacroAttributes matchgroup=asciidocMacro start=/\(\\\@<!{\w\(\w\|[-,+]\)*\([=!@#$%?:].*\)\?}\)\@<=\S\{-}\[/ skip=/\\\]/ end=/\]\|^$/ contains=asciidocQuoted.*,asciidocAttributeRef keepend
|
||||
syn region asciidocMacroAttributes matchgroup=asciidocIndexTerm start=/\\\@<!(\{2,3}/ end=/)\{2,3}/ contains=asciidocQuoted.*,asciidocAttributeRef keepend
|
||||
|
||||
syn match asciidocCommentLine "^//\([^/].*\|\)$" contains=asciidocToDo
|
||||
|
||||
syn region asciidocAttributeEntry start=/^:\w/ end=/:\(\s\|$\)/ oneline
|
||||
|
||||
" Lists.
|
||||
syn match asciidocListBullet /^\s*\zs\(-\|\*\{1,5}\)\ze\s/
|
||||
syn match asciidocListNumber /^\s*\zs\(\(\d\+\.\)\|\.\{1,5}\|\(\a\.\)\|\([ivxIVX]\+)\)\)\ze\s\+/
|
||||
syn region asciidocListLabel start=/^\s*/ end=/\(:\{2,4}\|;;\)$/ oneline contains=asciidocQuoted.*,asciidocMacroAttributes,asciidocAttributeRef,asciidocEntityRef,asciidocEmail,asciidocURL,asciidocBackslash,asciidocToDo keepend
|
||||
" DEPRECATED: Horizontal label.
|
||||
syn region asciidocHLabel start=/^\s*/ end=/\(::\|;;\)\(\s\+\|\\$\)/ oneline contains=asciidocQuoted.*,asciidocMacroAttributes keepend
|
||||
" Starts with any of the above.
|
||||
syn region asciidocList start=/^\s*\(-\|\*\{1,5}\)\s/ start=/^\s*\(\(\d\+\.\)\|\.\{1,5}\|\(\a\.\)\|\([ivxIVX]\+)\)\)\s\+/ start=/.\+\(:\{2,4}\|;;\)$/ end=/\(^[=*]\{4,}$\)\@=/ end=/\(^\(+\|--\)\?\s*$\)\@=/ contains=asciidocList.\+,asciidocQuoted.*,asciidocMacroAttributes,asciidocAttributeRef,asciidocEntityRef,asciidocEmail,asciidocURL,asciidocBackslash,asciidocCommentLine,asciidocAttributeList,asciidocToDo
|
||||
|
||||
hi def link asciidocAdmonition Special
|
||||
hi def link asciidocAnchorMacro Macro
|
||||
hi def link asciidocAttributeEntry Special
|
||||
hi def link asciidocAttributeList Special
|
||||
hi def link asciidocAttributeMacro Macro
|
||||
hi def link asciidocAttributeRef Special
|
||||
hi def link asciidocBackslash Special
|
||||
hi def link asciidocBlockTitle Title
|
||||
hi def link asciidocCallout Label
|
||||
hi def link asciidocCommentBlock Comment
|
||||
hi def link asciidocCommentLine Comment
|
||||
hi def link asciidocDoubleDollarPassthrough Special
|
||||
hi def link asciidocEmail Macro
|
||||
hi def link asciidocEntityRef Special
|
||||
hi def link asciidocExampleBlockDelimiter Type
|
||||
hi def link asciidocFilterBlock Type
|
||||
hi def link asciidocHLabel Label
|
||||
hi def link asciidocIdMarker Special
|
||||
hi def link asciidocIndexTerm Macro
|
||||
hi def link asciidocLineBreak Special
|
||||
hi def link asciidocOpenBlockDelimiter Label
|
||||
hi def link asciidocListBullet Label
|
||||
hi def link asciidocListContinuation Label
|
||||
hi def link asciidocListingBlock Identifier
|
||||
hi def link asciidocListLabel Label
|
||||
hi def link asciidocListNumber Label
|
||||
hi def link asciidocLiteralBlock Identifier
|
||||
hi def link asciidocLiteralParagraph Identifier
|
||||
hi def link asciidocMacroAttributes Label
|
||||
hi def link asciidocMacro Macro
|
||||
hi def link asciidocOneLineTitle Title
|
||||
hi def link asciidocPagebreak Type
|
||||
hi def link asciidocPassthroughBlock Identifier
|
||||
hi def link asciidocQuoteBlockDelimiter Type
|
||||
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 def link asciidocQuotedMonospaced2 Identifier
|
||||
hi def link asciidocQuotedMonospaced Identifier
|
||||
hi def link asciidocQuotedSingleQuoted Label
|
||||
hi def link asciidocQuotedSubscript Type
|
||||
hi def link asciidocQuotedSuperscript Type
|
||||
hi def link asciidocQuotedUnconstrainedBold Special
|
||||
hi def link asciidocQuotedUnconstrainedEmphasized Type
|
||||
hi def link asciidocQuotedUnconstrainedMonospaced Identifier
|
||||
hi def link asciidocRefMacro Macro
|
||||
hi def link asciidocRuler Type
|
||||
hi def link asciidocSidebarDelimiter Type
|
||||
hi def link asciidocTableBlock2 NONE
|
||||
hi def link asciidocTableBlock NONE
|
||||
hi def link asciidocTableDelimiter2 Label
|
||||
hi def link asciidocTableDelimiter Label
|
||||
hi def link asciidocTable_OLD Type
|
||||
hi def link asciidocTablePrefix2 Label
|
||||
hi def link asciidocTablePrefix Label
|
||||
hi def link asciidocToDo Todo
|
||||
hi def link asciidocTriplePlusPassthrough Special
|
||||
hi def link asciidocTwoLineTitle Title
|
||||
hi def link asciidocURL Macro
|
||||
let b:current_syntax = "asciidoc"
|
||||
|
||||
" vim: wrap et sw=2 sts=2:
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 Dec 14
|
||||
" Last Change: 2013 Mar 13
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -36,7 +36,13 @@ 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
|
||||
syn region cCppString start=+L\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,@Spell
|
||||
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_c99") " ISO C99
|
||||
syn match cFormat display "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlLjzt]\|ll\|hh\)\=\([aAbdiuoxXDOUfFeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained
|
||||
@@ -104,30 +110,57 @@ endif
|
||||
" 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")
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cCppString,@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 "^[{}]\|^<%\|^%>"
|
||||
if &filetype ==# 'cpp' && !exists("cpp_no_cpp11")
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cCppString,@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
|
||||
" 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 "^[{}]\|^<%\|^%>"
|
||||
endif
|
||||
elseif exists("c_no_bracket_error")
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cCppString,@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 "[{}]\|<%\|%>"
|
||||
if &filetype ==# 'cpp' && !exists("cpp_no_cpp11")
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cCppString,@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
|
||||
" 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 "[{}]\|<%\|%>"
|
||||
endif
|
||||
else
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,cCppString,@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
|
||||
if &filetype ==# 'cpp' && !exists("cpp_no_cpp11")
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,cCppString,@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
|
||||
else
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,cCppString,@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
|
||||
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
|
||||
syn match cErrInBracket display contained "[);{}]\|<%\|%>"
|
||||
endif
|
||||
|
||||
syntax region cBadBlock keepend start="{" end="}" contained containedin=cParen,cBracket,cBadBlock transparent fold
|
||||
if &filetype ==# 'c' || exists("cpp_no_cpp11")
|
||||
syn region cBadBlock keepend start="{" end="}" contained containedin=cParen,cBracket,cBadBlock transparent fold
|
||||
endif
|
||||
|
||||
"integer number, or floating point number without a dot and with "f".
|
||||
syn case ignore
|
||||
@@ -164,16 +197,16 @@ if exists("c_comment_strings")
|
||||
" need to use a special type of cString: cCommentString, which also ends on
|
||||
" "*/", and sees a "*" at the start of the line as comment again.
|
||||
" Unfortunately this doesn't very well work for // type of comments :-(
|
||||
syntax match cCommentSkip contained "^\s*\*\($\|\s\+\)"
|
||||
syntax region cCommentString contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=cSpecial,cCommentSkip
|
||||
syntax region cComment2String contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=cSpecial
|
||||
syntax region cCommentL start="//" skip="\\$" end="$" keepend contains=@cCommentGroup,cComment2String,cCharacter,cNumbersCom,cSpaceError,@Spell
|
||||
syn match cCommentSkip contained "^\s*\*\($\|\s\+\)"
|
||||
syn region cCommentString contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=cSpecial,cCommentSkip
|
||||
syn region cComment2String contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=cSpecial
|
||||
syn region cCommentL start="//" skip="\\$" end="$" keepend contains=@cCommentGroup,cComment2String,cCharacter,cNumbersCom,cSpaceError,@Spell
|
||||
if exists("c_no_comment_fold")
|
||||
" Use "extend" here to have preprocessor lines not terminate halfway a
|
||||
" comment.
|
||||
syntax region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cCommentString,cCharacter,cNumbersCom,cSpaceError,@Spell extend
|
||||
syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cCommentString,cCharacter,cNumbersCom,cSpaceError,@Spell extend
|
||||
else
|
||||
syntax region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cCommentString,cCharacter,cNumbersCom,cSpaceError,@Spell fold extend
|
||||
syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cCommentString,cCharacter,cNumbersCom,cSpaceError,@Spell fold extend
|
||||
endif
|
||||
else
|
||||
syn region cCommentL start="//" skip="\\$" end="$" keepend contains=@cCommentGroup,cSpaceError,@Spell
|
||||
@@ -184,8 +217,8 @@ else
|
||||
endif
|
||||
endif
|
||||
" keep a // comment separately, it terminates a preproc. conditional
|
||||
syntax match cCommentError display "\*/"
|
||||
syntax match cCommentStartError display "/\*"me=e-1 contained
|
||||
syn match cCommentError display "\*/"
|
||||
syn match cCommentStartError display "/\*"me=e-1 contained
|
||||
|
||||
syn keyword cOperator sizeof
|
||||
if exists("c_gnu")
|
||||
@@ -337,7 +370,9 @@ 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
|
||||
syn region cMulti transparent start='?' skip='::' end=':' contains=ALLBUT,@cMultiGroup,@Spell
|
||||
if &filetype ==# 'c' || exists("cpp_no_cpp11")
|
||||
syn region cMulti transparent start='?' skip='::' end=':' contains=ALLBUT,@cMultiGroup,@Spell
|
||||
endif
|
||||
" Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
|
||||
syn cluster cLabelGroup contains=cUserLabel
|
||||
syn match cUserCont display "^\s*\I\i*\s*:$" contains=@cLabelGroup
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
" Vim syntax file
|
||||
" Language: CL
|
||||
" (pronounced alphabetically, and NOT known as Clever)
|
||||
" (CL was created by Multibase, http://www.mbase.com.au)
|
||||
" Language: CL
|
||||
" (pronounced alphabetically: "Cee-El".
|
||||
" CL stands for Clever Language,
|
||||
" but the language is CL, not "Clever".
|
||||
" CL was created by Multibase, http://www.mbase.com.au)
|
||||
" Filename extensions: *.ent
|
||||
" *.eni
|
||||
" *.eni
|
||||
" Maintainer: Philip Uren <philuSPAX@ieee.org> Remove SPAX spam block
|
||||
" Version: 5
|
||||
" Last Change: Aug 16 2012
|
||||
" Version: 6
|
||||
" Last Change: Mar 06 2013
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
" Language: Clean
|
||||
" Author: Pieter van Engelen <pietere@sci.kun.nl>
|
||||
" Co-Author: Arthur van Leeuwen <arthurvl@sci.kun.nl>
|
||||
" Last Change: 2011 Dec 25 by Thilo Six
|
||||
" Previous Change: 2011 Dec 25 by Thilo Six
|
||||
" Last Change: 2013 Apr 25 by Jurriën Stutterheim
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -18,7 +19,7 @@ set cpo&vim
|
||||
" Some Clean-keywords
|
||||
syn keyword cleanConditional if case
|
||||
syn keyword cleanLabel let! with where in of
|
||||
syn keyword cleanInclude from import
|
||||
syn keyword cleanInclude from import qualified
|
||||
syn keyword cleanSpecial Start
|
||||
syn keyword cleanKeyword infixl infixr infix
|
||||
syn keyword cleanBasicType Int Real Char Bool String
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: C++
|
||||
" Maintainer: Ken Shan <ccshan@post.harvard.edu>
|
||||
" Last Change: 2002 Jul 15
|
||||
" Current Maintainer: vim-jp (https://github.com/vim-jp/cpp-vim)
|
||||
" Previous Maintainer: Ken Shan <ccshan@post.harvard.edu>
|
||||
" Last Change: 2012 Jun 14
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -19,7 +20,7 @@ else
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
|
||||
" C++ extentions
|
||||
" C++ extensions
|
||||
syn keyword cppStatement new delete this friend using
|
||||
syn keyword cppAccess public protected private
|
||||
syn keyword cppType inline virtual explicit export bool wchar_t
|
||||
@@ -30,9 +31,16 @@ syn match cppCast "\<\(const\|static\|dynamic\|reinterpret\)_cast\s*<"me=e-1
|
||||
syn match cppCast "\<\(const\|static\|dynamic\|reinterpret\)_cast\s*$"
|
||||
syn keyword cppStorageClass mutable
|
||||
syn keyword cppStructure class typename template namespace
|
||||
syn keyword cppNumber NPOS
|
||||
syn keyword cppBoolean true false
|
||||
|
||||
" C++ 11 extensions
|
||||
if !exists("cpp_no_cpp11")
|
||||
syn keyword cppType override final
|
||||
syn keyword cppExceptions noexcept
|
||||
syn keyword cppStorageClass constexpr decltype
|
||||
syn keyword cppConstant nullptr
|
||||
endif
|
||||
|
||||
" The minimum and maximum operators in GNU C++
|
||||
syn match cppMinMax "[<>]?"
|
||||
|
||||
@@ -52,8 +60,8 @@ if version >= 508 || !exists("did_cpp_syntax_inits")
|
||||
HiLink cppType Type
|
||||
HiLink cppStorageClass StorageClass
|
||||
HiLink cppStructure Structure
|
||||
HiLink cppNumber Number
|
||||
HiLink cppBoolean Boolean
|
||||
HiLink cppConstant Constant
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
|
||||
536
runtime/syntax/csdl.vim
Normal file
536
runtime/syntax/csdl.vim
Normal file
@@ -0,0 +1,536 @@
|
||||
" Vim syntax file
|
||||
" Language: Curated Stream Definition Language (CSDL)
|
||||
" Maintainer: Jacek Artymiak
|
||||
" Latest Revision: 25 February 2013
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
setlocal iskeyword=.,@,48-57,_,192-255
|
||||
syn case ignore
|
||||
|
||||
syn match csdlKeyword "tag "
|
||||
syn match csdlKeyword "stream "
|
||||
syn match csdlKeyword "return "
|
||||
|
||||
syn keyword csdlOperator contains
|
||||
syn match csdlOperator "cs contains"
|
||||
syn keyword csdlOperator substr
|
||||
syn match csdlOperator "cs substr"
|
||||
syn keyword csdlOperator contains_any
|
||||
syn match csdlOperator "cs contains_any"
|
||||
syn keyword csdlOperator any
|
||||
syn match csdlOperator "cs any"
|
||||
syn keyword csdlOperator contains_near
|
||||
syn match csdlOperator "cs contains_near"
|
||||
syn keyword csdlOperator exists
|
||||
syn keyword csdlOperator in
|
||||
syn keyword csdlOperator url_in
|
||||
syn match csdlOperator "=="
|
||||
syn match csdlOperator "!="
|
||||
syn match csdlOperator "cs =="
|
||||
syn match csdlOperator "cs !="
|
||||
syn match csdlOperator ">"
|
||||
syn match csdlOperator ">="
|
||||
syn match csdlOperator "<"
|
||||
syn match csdlOperator "<="
|
||||
syn keyword csdlOperator regex_partial
|
||||
syn keyword csdlOperator regex_exact
|
||||
syn keyword csdlOperator geo_box
|
||||
syn keyword csdlOperator geo_radius
|
||||
syn keyword csdlOperator geo_polygon
|
||||
|
||||
syn keyword csdlLogicalOperator and
|
||||
syn keyword csdlLogicalOperator or
|
||||
syn keyword csdlLogicalOperator not
|
||||
|
||||
syn match csdlTarget 'reddit\.title'
|
||||
syn match csdlTarget 'reddit\.content'
|
||||
syn match csdlTarget 'reddit\.contenttype'
|
||||
syn match csdlTarget 'reddit\.link'
|
||||
syn match csdlTarget 'reddit\.author\.name'
|
||||
syn match csdlTarget 'reddit\.author\.link'
|
||||
syn match csdlTarget 'reddit\.type'
|
||||
syn match csdlTarget 'reddit\.thread'
|
||||
syn match csdlTarget 'interaction\.type'
|
||||
syn match csdlTarget 'interaction\.title'
|
||||
syn match csdlTarget 'interaction\.content'
|
||||
syn match csdlTarget 'interaction\.source'
|
||||
syn match csdlTarget 'interaction\.geo'
|
||||
syn match csdlTarget 'interaction\.link'
|
||||
syn match csdlTarget 'interaction\.author\.username'
|
||||
syn match csdlTarget 'interaction\.author\.name'
|
||||
syn match csdlTarget 'interaction\.author\.id'
|
||||
syn match csdlTarget 'interaction\.author\.avatar'
|
||||
syn match csdlTarget 'interaction\.author\.link'
|
||||
syn match csdlTarget 'interaction\.sample'
|
||||
syn match csdlTarget 'links\.title'
|
||||
syn match csdlTarget 'links\.url'
|
||||
syn keyword csdlTarget links.normalized_url
|
||||
syn match csdlTarget 'links\.hops'
|
||||
syn match csdlTarget 'links\.code'
|
||||
syn match csdlTarget 'links\.domain'
|
||||
syn keyword csdlTarget links.retweet_count
|
||||
syn match csdlTarget 'links\.age'
|
||||
syn keyword csdlTarget links.meta.content_type
|
||||
syn match csdlTarget 'links\.meta\.charset'
|
||||
syn match csdlTarget 'links\.meta\.lang'
|
||||
syn match csdlTarget 'links\.meta\.keywords'
|
||||
syn match csdlTarget 'links\.meta\.description'
|
||||
syn match csdlTarget 'links\.meta\.newskeywords'
|
||||
syn match csdlTarget 'links\.meta\.standout'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.type'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.title'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.image'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.url'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.description'
|
||||
syn keyword csdlTarget links.meta.opengraph.site_name
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.email'
|
||||
syn keyword csdlTarget links.meta.opengraph.phone_number
|
||||
syn keyword csdlTarget links.meta.opengraph.fax_number
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.geo'
|
||||
syn keyword csdlTarget links.meta.opengraph.street_address
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.locality'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.region'
|
||||
syn keyword csdlTarget links.meta.opengraph.postal_code
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.activity'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.sport'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.bar'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.company'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.cafe'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.hotel'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.restaurant'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.cause'
|
||||
syn keyword csdlTarget links.meta.opengraph.sports_league
|
||||
syn keyword csdlTarget links.meta.opengraph.sports_team
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.band'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.government'
|
||||
syn keyword csdlTarget links.meta.opengraph.non_profit
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.school'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.university'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.actor'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.athlete'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.author'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.director'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.musician'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.politician'
|
||||
syn keyword csdlTarget links.meta.opengraph.public_figure
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.city'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.country'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.landmark'
|
||||
syn keyword csdlTarget links.meta.opengraph.state_province
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.album'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.book'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.drink'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.food'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.game'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.movie'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.product'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.song'
|
||||
syn keyword csdlTarget links.meta.opengraph.tv_show
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.blog'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.website'
|
||||
syn match csdlTarget 'links\.meta\.opengraph\.article'
|
||||
syn match csdlTarget 'links\.meta\.twitter\.card'
|
||||
syn match csdlTarget 'links\.meta\.twitter\.site'
|
||||
syn keyword csdlTarget links.meta.twitter.site_id
|
||||
syn match csdlTarget 'links\.meta\.twitter\.creator'
|
||||
syn keyword csdlTarget links.meta.twitter.creator_id
|
||||
syn match csdlTarget 'links\.meta\.twitter\.url'
|
||||
syn match csdlTarget 'links\.meta\.twitter\.description'
|
||||
syn match csdlTarget 'links\.meta\.twitter\.title'
|
||||
syn match csdlTarget 'links\.meta\.twitter\.image'
|
||||
syn keyword csdlTarget links.meta.twitter.image_width
|
||||
syn keyword csdlTarget links.meta.twitter.image_height
|
||||
syn match csdlTarget 'links\.meta\.twitter\.player'
|
||||
syn keyword csdlTarget links.meta.twitter.player_width
|
||||
syn keyword csdlTarget links.meta.twitter.player_height
|
||||
syn keyword csdlTarget links.meta.twitter.player_stream
|
||||
syn keyword csdlTarget links.meta.twitter.player_stream_content_type
|
||||
syn match csdlTarget 'myspace\.link'
|
||||
syn match csdlTarget 'myspace\.content'
|
||||
syn match csdlTarget 'myspace\.contenttype'
|
||||
syn match csdlTarget 'myspace\.category'
|
||||
syn match csdlTarget 'myspace\.author\.username'
|
||||
syn match csdlTarget 'myspace\.author\.name'
|
||||
syn match csdlTarget 'myspace\.author\.id'
|
||||
syn match csdlTarget 'myspace\.author\.link'
|
||||
syn match csdlTarget 'myspace\.author\.avatar'
|
||||
syn match csdlTarget 'myspace\.geo'
|
||||
syn match csdlTarget 'myspace\.verb'
|
||||
syn match csdlTarget 'newscred\.type'
|
||||
syn match csdlTarget 'newscred\.article\.domain'
|
||||
syn match csdlTarget 'newscred\.video\.domain'
|
||||
syn match csdlTarget 'newscred\.article\.topics'
|
||||
syn match csdlTarget 'newscred\.video\.topics'
|
||||
syn match csdlTarget 'newscred\.article\.category'
|
||||
syn match csdlTarget 'newscred\.video\.category'
|
||||
syn match csdlTarget 'newscred\.article\.title'
|
||||
syn match csdlTarget 'newscred\.video\.title'
|
||||
syn match csdlTarget 'newscred\.article\.content'
|
||||
syn match csdlTarget 'newscred\.article\.fulltext'
|
||||
syn match csdlTarget 'newscred\.article\.authors'
|
||||
syn match csdlTarget 'newscred\.image\.caption'
|
||||
syn match csdlTarget 'newscred\.video\.caption'
|
||||
syn match csdlTarget 'newscred\.image\.attribution\.text'
|
||||
syn match csdlTarget 'newscred\.image\.attribution\.link'
|
||||
syn match csdlTarget 'newscred\.source\.name'
|
||||
syn match csdlTarget 'newscred\.source\.link'
|
||||
syn match csdlTarget 'newscred\.source\.domain'
|
||||
syn keyword csdlTarget newscred.source.media_type
|
||||
syn keyword csdlTarget newscred.source.company_type
|
||||
syn match csdlTarget 'newscred\.source\.country'
|
||||
syn match csdlTarget 'newscred\.source\.circulation'
|
||||
syn match csdlTarget 'newscred\.source\.founded'
|
||||
syn match csdlTarget 'imdb\.title'
|
||||
syn match csdlTarget 'imdb\.content'
|
||||
syn match csdlTarget 'imdb\.contenttype'
|
||||
syn match csdlTarget 'imdb\.link'
|
||||
syn match csdlTarget 'imdb\.author\.name'
|
||||
syn match csdlTarget 'imdb\.author\.link'
|
||||
syn match csdlTarget 'imdb\.type'
|
||||
syn match csdlTarget 'imdb\.thread'
|
||||
syn match csdlTarget 'amazon\.title'
|
||||
syn match csdlTarget 'amazon\.content'
|
||||
syn match csdlTarget 'amazon\.contenttype'
|
||||
syn match csdlTarget 'amazon\.link'
|
||||
syn match csdlTarget 'amazon\.author\.name'
|
||||
syn match csdlTarget 'amazon\.author\.link'
|
||||
syn match csdlTarget 'amazon\.type'
|
||||
syn match csdlTarget 'amazon\.thread'
|
||||
syn match csdlTarget 'salience\.content\.sentiment'
|
||||
syn match csdlTarget 'salience\.content\.topics'
|
||||
syn match csdlTarget 'salience\.title\.sentiment'
|
||||
syn match csdlTarget 'salience\.title\.topics'
|
||||
syn match csdlTarget 'salience\.content\.entities\.name'
|
||||
syn match csdlTarget 'salience\.content\.entities\.type'
|
||||
syn match csdlTarget 'salience\.title\.entities\.name'
|
||||
syn match csdlTarget 'salience\.title\.entities\.type'
|
||||
syn match csdlTarget 'klout\.score'
|
||||
syn match csdlTarget 'klout\.network'
|
||||
syn match csdlTarget 'klout\.amplification'
|
||||
syn keyword csdlTarget klout.true_reach
|
||||
syn match csdlTarget 'klout\.topics'
|
||||
syn match csdlTarget 'wikipedia\.author\.talk'
|
||||
syn match csdlTarget 'wikipedia\.author\.contributions'
|
||||
syn match csdlTarget 'wikipedia\.author\.username'
|
||||
syn match csdlTarget 'wikipedia\.body'
|
||||
syn match csdlTarget 'wikipedia\.title'
|
||||
syn match csdlTarget 'wikipedia\.images'
|
||||
syn match csdlTarget 'wikipedia\.categories'
|
||||
syn match csdlTarget 'wikipedia\.externallinks'
|
||||
syn match csdlTarget 'wikipedia\.ns'
|
||||
syn match csdlTarget 'wikipedia\.namespace'
|
||||
syn match csdlTarget 'wikipedia\.pageid'
|
||||
syn match csdlTarget 'wikipedia\.parentid'
|
||||
syn match csdlTarget 'wikipedia\.oldlen'
|
||||
syn match csdlTarget 'wikipedia\.newlen'
|
||||
syn match csdlTarget 'wikipedia\.changetype'
|
||||
syn match csdlTarget 'wikipedia\.diff\.from'
|
||||
syn match csdlTarget 'wikipedia\.diff\.to'
|
||||
syn match csdlTarget 'wikipedia\.diff\.changes\.added'
|
||||
syn match csdlTarget 'wikipedia\.diff\.changes\.removed'
|
||||
syn keyword csdlTarget demographic.twitter_activity
|
||||
syn match csdlTarget 'demographic\.location\.country'
|
||||
syn keyword csdlTarget demographic.location.us_state
|
||||
syn match csdlTarget 'demographic\.location\.city'
|
||||
syn match csdlTarget 'demographic\.type'
|
||||
syn match csdlTarget 'demographic\.sex'
|
||||
syn match csdlTarget 'demographic\.status\.relationship'
|
||||
syn match csdlTarget 'demographic\.status\.work'
|
||||
syn keyword csdlTarget demographic.likes_and_interests
|
||||
syn keyword csdlTarget demographic.first_language
|
||||
syn match csdlTarget 'demographic\.professions'
|
||||
syn match csdlTarget 'demographic\.services'
|
||||
syn keyword csdlTarget demographic.large_accounts_followed
|
||||
syn keyword csdlTarget demographic.age_range.start
|
||||
syn keyword csdlTarget demographic.age_range.end
|
||||
syn match csdlTarget 'demographic\.income\.start'
|
||||
syn match csdlTarget 'demographic\.income\.end'
|
||||
syn keyword csdlTarget demographic.main_street.dressed_by
|
||||
syn keyword csdlTarget demographic.main_street.shop_at
|
||||
syn keyword csdlTarget demographic.main_street.eat_and_drink_at
|
||||
syn match csdlTarget 'demographic\.accounts\.categories'
|
||||
syn match csdlTarget 'tumblr\.activity'
|
||||
syn match csdlTarget 'tumblr\.source\.blogid'
|
||||
syn match csdlTarget 'tumblr\.dest\.blogid'
|
||||
syn match csdlTarget 'tumblr\.dest\.postid'
|
||||
syn match csdlTarget 'tumblr\.root\.blogid'
|
||||
syn match csdlTarget 'tumblr\.root\.postid'
|
||||
syn match csdlTarget 'tumblr\.blogid'
|
||||
syn keyword csdlTarget tumblr.blog_name
|
||||
syn match csdlTarget 'tumblr\.type'
|
||||
syn match csdlTarget 'tumblr\.title'
|
||||
syn match csdlTarget 'tumblr\.body'
|
||||
syn match csdlTarget 'tumblr\.text'
|
||||
syn match csdlTarget 'tumblr\.tags'
|
||||
syn keyword csdlTarget tumblr.track_name
|
||||
syn match csdlTarget 'tumblr\.album'
|
||||
syn match csdlTarget 'tumblr\.link'
|
||||
syn match csdlTarget 'tumblr\.meta\.url'
|
||||
syn match csdlTarget 'tumblr\.meta\.type'
|
||||
syn match csdlTarget 'tumblr\.meta\.description'
|
||||
syn keyword csdlTarget tumblr.meta.likes_local
|
||||
syn keyword csdlTarget tumblr.meta.likes_global
|
||||
syn keyword csdlTarget tumblr.meta.reblogged_global
|
||||
syn match csdlTarget 'demographic\.gender'
|
||||
syn match csdlTarget 'flickr\.title'
|
||||
syn match csdlTarget 'flickr\.content'
|
||||
syn match csdlTarget 'flickr\.contenttype'
|
||||
syn match csdlTarget 'flickr\.link'
|
||||
syn match csdlTarget 'flickr\.author\.name'
|
||||
syn match csdlTarget 'flickr\.author\.link'
|
||||
syn match csdlTarget 'flickr\.author\.username'
|
||||
syn match csdlTarget 'flickr\.type'
|
||||
syn match csdlTarget 'flickr\.thread'
|
||||
syn match csdlTarget 'twitter\.text'
|
||||
syn match csdlTarget 'twitter\.source'
|
||||
syn match csdlTarget 'twitter\.mentions'
|
||||
syn keyword csdlTarget twitter.mention_ids
|
||||
syn match csdlTarget 'twitter\.links'
|
||||
syn match csdlTarget 'twitter\.domains'
|
||||
syn keyword csdlTarget twitter.in_reply_to_screen_name
|
||||
syn keyword csdlTarget twitter.in_reply_to_user_id
|
||||
syn keyword csdlTarget twitter.in_reply_to_status_id
|
||||
syn keyword csdlTarget twitter.filter_level
|
||||
syn match csdlTarget 'twitter\.lang'
|
||||
syn match csdlTarget 'twitter\.geo'
|
||||
syn match csdlTarget 'twitter\.user\.description'
|
||||
syn match csdlTarget 'twitter\.user\.location'
|
||||
syn keyword csdlTarget twitter.user.statuses_count
|
||||
syn keyword csdlTarget twitter.user.followers_count
|
||||
syn keyword csdlTarget twitter.user.follower_ratio
|
||||
syn keyword csdlTarget twitter.user.profile_age
|
||||
syn keyword csdlTarget twitter.user.friends_count
|
||||
syn keyword csdlTarget twitter.user.screen_name
|
||||
syn match csdlTarget 'twitter\.user\.lang'
|
||||
syn keyword csdlTarget twitter.user.time_zone
|
||||
syn match csdlTarget 'twitter\.user\.name'
|
||||
syn match csdlTarget 'twitter\.user\.id'
|
||||
syn keyword csdlTarget twitter.user.listed_count
|
||||
syn match csdlTarget 'twitter\.user\.url'
|
||||
syn match csdlTarget 'twitter\.user\.verified'
|
||||
syn keyword csdlTarget twitter.place.place_type
|
||||
syn match csdlTarget 'twitter\.place\.country'
|
||||
syn keyword csdlTarget twitter.place.country_code
|
||||
syn keyword csdlTarget twitter.place.full_name
|
||||
syn match csdlTarget 'twitter\.place\.name'
|
||||
syn match csdlTarget 'twitter\.place\.url'
|
||||
syn match csdlTarget 'twitter\.place\.attributes\.locality'
|
||||
syn match csdlTarget 'twitter\.place\.attributes\.region'
|
||||
syn keyword csdlTarget twitter.place.attributes.street_address
|
||||
syn match csdlTarget 'twitter\.status'
|
||||
syn match csdlTarget 'twitter\.retweet\.text'
|
||||
syn match csdlTarget 'twitter\.retweet\.elapsed'
|
||||
syn match csdlTarget 'twitter\.retweet\.source'
|
||||
syn keyword csdlTarget twitter.retweet.filter_level
|
||||
syn match csdlTarget 'twitter\.retweet\.lang'
|
||||
syn match csdlTarget 'twitter\.retweet\.user\.description'
|
||||
syn match csdlTarget 'twitter\.retweet\.user\.location'
|
||||
syn keyword csdlTarget twitter.retweet.user.statuses_count
|
||||
syn keyword csdlTarget twitter.retweet.user.followers_count
|
||||
syn keyword csdlTarget twitter.retweet.user.follower_ratio
|
||||
syn keyword csdlTarget twitter.retweet.user.profile_age
|
||||
syn keyword csdlTarget twitter.retweet.user.friends_count
|
||||
syn keyword csdlTarget twitter.retweet.user.screen_name
|
||||
syn match csdlTarget 'twitter\.retweet\.user\.lang'
|
||||
syn keyword csdlTarget twitter.retweet.user.time_zone
|
||||
syn match csdlTarget 'twitter\.retweet\.user\.name'
|
||||
syn match csdlTarget 'twitter\.retweet\.user\.id'
|
||||
syn keyword csdlTarget twitter.retweet.user.listed_count
|
||||
syn match csdlTarget 'twitter\.retweet\.user\.url'
|
||||
syn match csdlTarget 'twitter\.retweet\.user\.verified'
|
||||
syn match csdlTarget 'twitter\.retweeted\.id'
|
||||
syn match csdlTarget 'twitter\.retweeted\.source'
|
||||
syn keyword csdlTarget twitter.retweeted.in_reply_to_screen_name
|
||||
syn keyword csdlTarget twitter.retweeted.in_reply_to_user_id_str
|
||||
syn keyword csdlTarget twitter.retweeted.in_reply_to_status_id
|
||||
syn match csdlTarget 'twitter\.retweet\.count'
|
||||
syn match csdlTarget 'twitter\.retweet\.mentions'
|
||||
syn keyword csdlTarget twitter.retweet.mention_ids
|
||||
syn match csdlTarget 'twitter\.retweet\.links'
|
||||
syn match csdlTarget 'twitter\.retweet\.domains'
|
||||
syn match csdlTarget 'twitter\.retweeted\.user\.description'
|
||||
syn match csdlTarget 'twitter\.retweeted\.user\.location'
|
||||
syn keyword csdlTarget twitter.retweeted.user.statuses_count
|
||||
syn keyword csdlTarget twitter.retweeted.user.followers_count
|
||||
syn keyword csdlTarget twitter.retweeted.user.follower_ratio
|
||||
syn keyword csdlTarget twitter.retweeted.user.profile_age
|
||||
syn keyword csdlTarget twitter.retweeted.user.friends_count
|
||||
syn keyword csdlTarget twitter.retweeted.user.screen_name
|
||||
syn match csdlTarget 'twitter\.retweeted\.user\.lang'
|
||||
syn keyword csdlTarget twitter.retweeted.user.time_zone
|
||||
syn match csdlTarget 'twitter\.retweeted\.user\.name'
|
||||
syn match csdlTarget 'twitter\.retweeted\.user\.id'
|
||||
syn keyword csdlTarget twitter.retweeted.user.listed_count
|
||||
syn match csdlTarget 'twitter\.retweeted\.user\.url'
|
||||
syn match csdlTarget 'twitter\.retweeted\.user\.verified'
|
||||
syn match csdlTarget 'twitter\.retweeted\.geo'
|
||||
syn keyword csdlTarget twitter.retweeted.place.place_type
|
||||
syn match csdlTarget 'twitter\.retweeted\.place\.country'
|
||||
syn keyword csdlTarget twitter.retweeted.place.country_code
|
||||
syn keyword csdlTarget twitter.retweeted.place.full_name
|
||||
syn match csdlTarget 'twitter\.retweeted\.place\.name'
|
||||
syn match csdlTarget 'twitter\.retweeted\.place\.url'
|
||||
syn match csdlTarget 'twitter\.retweeted\.place\.attributes'
|
||||
syn match csdlTarget 'twitter\.hashtags'
|
||||
syn match csdlTarget 'twitter\.retweet\.hashtags'
|
||||
syn match csdlTarget 'twitter\.media\.type'
|
||||
syn keyword csdlTarget twitter.media.media_url
|
||||
syn keyword csdlTarget twitter.media.display_url
|
||||
syn match csdlTarget 'twitter\.retweet\.media\.type'
|
||||
syn keyword csdlTarget twitter.retweet.media.media_url
|
||||
syn keyword csdlTarget twitter.retweet.media.display_url
|
||||
syn match csdlTarget 'blog\.title'
|
||||
syn match csdlTarget 'blog\.content'
|
||||
syn match csdlTarget 'blog\.contenttype'
|
||||
syn match csdlTarget 'blog\.link'
|
||||
syn match csdlTarget 'blog\.domain'
|
||||
syn match csdlTarget 'blog\.author\.name'
|
||||
syn match csdlTarget 'blog\.author\.link'
|
||||
syn match csdlTarget 'blog\.author\.avatar'
|
||||
syn match csdlTarget 'blog\.author\.username'
|
||||
syn match csdlTarget 'blog\.type'
|
||||
syn match csdlTarget 'blog\.post\.link'
|
||||
syn match csdlTarget 'blog\.post\.title'
|
||||
syn match csdlTarget 'facebook\.author\.name'
|
||||
syn match csdlTarget 'facebook\.author\.link'
|
||||
syn match csdlTarget 'facebook\.author\.id'
|
||||
syn match csdlTarget 'facebook\.author\.avatar'
|
||||
syn match csdlTarget 'facebook\.message'
|
||||
syn match csdlTarget 'facebook\.description'
|
||||
syn match csdlTarget 'facebook\.caption'
|
||||
syn match csdlTarget 'facebook\.type'
|
||||
syn match csdlTarget 'facebook\.application'
|
||||
syn match csdlTarget 'facebook\.source'
|
||||
syn match csdlTarget 'facebook\.link'
|
||||
syn match csdlTarget 'facebook\.name'
|
||||
syn match csdlTarget 'facebook\.to\.names'
|
||||
syn match csdlTarget 'facebook\.to\.ids'
|
||||
syn match csdlTarget 'facebook\.og\.title'
|
||||
syn match csdlTarget 'facebook\.og\.location'
|
||||
syn match csdlTarget 'facebook\.og\.photos'
|
||||
syn match csdlTarget 'facebook\.og\.by'
|
||||
syn match csdlTarget 'facebook\.og\.description'
|
||||
syn match csdlTarget 'facebook\.og\.type'
|
||||
syn match csdlTarget 'facebook\.og\.length'
|
||||
syn match csdlTarget 'facebook\.likes\.count'
|
||||
syn match csdlTarget 'facebook\.likes\.names'
|
||||
syn match csdlTarget 'facebook\.likes\.ids'
|
||||
syn match csdlTarget 'topix\.title'
|
||||
syn match csdlTarget 'topix\.content'
|
||||
syn match csdlTarget 'topix\.contenttype'
|
||||
syn match csdlTarget 'topix\.link'
|
||||
syn match csdlTarget 'topix\.author\.name'
|
||||
syn match csdlTarget 'topix\.type'
|
||||
syn match csdlTarget 'topix\.thread'
|
||||
syn match csdlTarget 'topix\.author\.location'
|
||||
syn match csdlTarget 'bitly\.user\.agent'
|
||||
syn keyword csdlTarget bitly.url_hash
|
||||
syn match csdlTarget 'bitly\.share\.hash'
|
||||
syn match csdlTarget 'bitly\.cname'
|
||||
syn keyword csdlTarget bitly.referring_url
|
||||
syn keyword csdlTarget bitly.referring_domain
|
||||
syn match csdlTarget 'bitly\.url'
|
||||
syn match csdlTarget 'bitly\.domain'
|
||||
syn keyword csdlTarget bitly.country_code
|
||||
syn keyword csdlTarget bitly.geo_region_code
|
||||
syn match csdlTarget 'bitly\.country'
|
||||
syn keyword csdlTarget bitly.geo_region
|
||||
syn keyword csdlTarget bitly.geo_city
|
||||
syn match csdlTarget 'bitly\.geo'
|
||||
syn match csdlTarget 'bitly\.timezone'
|
||||
syn match csdlTarget 'trends\.type'
|
||||
syn match csdlTarget 'trends\.content'
|
||||
syn match csdlTarget 'trends\.source'
|
||||
syn match csdlTarget 'board\.title'
|
||||
syn match csdlTarget 'board\.content'
|
||||
syn match csdlTarget 'board\.contenttype'
|
||||
syn match csdlTarget 'board\.link'
|
||||
syn match csdlTarget 'board\.domain'
|
||||
syn match csdlTarget 'board\.author\.name'
|
||||
syn match csdlTarget 'board\.author\.link'
|
||||
syn match csdlTarget 'board\.author\.avatar'
|
||||
syn match csdlTarget 'board\.author\.username'
|
||||
syn match csdlTarget 'board\.type'
|
||||
syn match csdlTarget 'board\.thread'
|
||||
syn match csdlTarget 'board\.author\.location'
|
||||
syn match csdlTarget 'board\.author\.signature'
|
||||
syn match csdlTarget 'board\.author\.registered'
|
||||
syn match csdlTarget 'board\.author\.age'
|
||||
syn match csdlTarget 'board\.author\.gender'
|
||||
syn match csdlTarget 'video\.title'
|
||||
syn match csdlTarget 'video\.content'
|
||||
syn match csdlTarget 'video\.contenttype'
|
||||
syn match csdlTarget 'video\.domain'
|
||||
syn match csdlTarget 'video\.author\.name'
|
||||
syn match csdlTarget 'video\.author\.link'
|
||||
syn match csdlTarget 'video\.author\.avatar'
|
||||
syn match csdlTarget 'video\.author\.username'
|
||||
syn match csdlTarget 'video\.type'
|
||||
syn match csdlTarget 'video\.videolink'
|
||||
syn match csdlTarget 'video\.commentslink'
|
||||
syn match csdlTarget 'video\.duration'
|
||||
syn match csdlTarget 'video\.thumbnail'
|
||||
syn match csdlTarget 'video\.category'
|
||||
syn match csdlTarget 'video\.tags'
|
||||
syn match csdlTarget '2ch\.title'
|
||||
syn match csdlTarget '2ch\.content'
|
||||
syn match csdlTarget '2ch\.contenttype'
|
||||
syn match csdlTarget '2ch\.link'
|
||||
syn match csdlTarget '2ch\.author\.name'
|
||||
syn match csdlTarget '2ch\.type'
|
||||
syn match csdlTarget '2ch\.thread'
|
||||
syn match csdlTarget 'dailymotion\.title'
|
||||
syn match csdlTarget 'dailymotion\.content'
|
||||
syn match csdlTarget 'dailymotion\.contenttype'
|
||||
syn match csdlTarget 'dailymotion\.author\.link'
|
||||
syn match csdlTarget 'dailymotion\.author\.username'
|
||||
syn match csdlTarget 'dailymotion\.videolink'
|
||||
syn match csdlTarget 'dailymotion\.duration'
|
||||
syn match csdlTarget 'dailymotion\.thumbnail'
|
||||
syn match csdlTarget 'dailymotion\.category'
|
||||
syn match csdlTarget 'dailymotion\.tags'
|
||||
syn match csdlTarget 'language\.tag'
|
||||
syn match csdlTarget 'language\.confidence'
|
||||
syn match csdlTarget 'digg\.type'
|
||||
syn match csdlTarget 'digg\.user\.name'
|
||||
syn match csdlTarget 'digg\.user\.fullname'
|
||||
syn match csdlTarget 'digg\.user\.registered'
|
||||
syn match csdlTarget 'digg\.user\.profileviews'
|
||||
syn match csdlTarget 'digg\.user\.icon'
|
||||
syn match csdlTarget 'digg\.user\.links'
|
||||
syn match csdlTarget 'digg\.item\.status'
|
||||
syn match csdlTarget 'digg\.item\.description'
|
||||
syn match csdlTarget 'digg\.item\.title'
|
||||
syn match csdlTarget 'digg\.item\.diggs'
|
||||
syn match csdlTarget 'digg\.item\.comments'
|
||||
syn match csdlTarget 'digg\.item\.topic'
|
||||
syn match csdlTarget 'digg\.comment\.buries'
|
||||
syn match csdlTarget 'digg\.comment\.diggs'
|
||||
syn match csdlTarget 'digg\.comment\.text'
|
||||
syn match csdlTarget 'youtube\.title'
|
||||
syn match csdlTarget 'youtube\.content'
|
||||
syn match csdlTarget 'youtube\.contenttype'
|
||||
syn match csdlTarget 'youtube\.author\.name'
|
||||
syn match csdlTarget 'youtube\.author\.link'
|
||||
syn match csdlTarget 'youtube\.type'
|
||||
syn match csdlTarget 'youtube\.videolink'
|
||||
syn match csdlTarget 'youtube\.commentslink'
|
||||
syn match csdlTarget 'youtube\.duration'
|
||||
syn match csdlTarget 'youtube\.thumbnail'
|
||||
syn match csdlTarget 'youtube\.category'
|
||||
syn match csdlTarget 'youtube\.tags'
|
||||
|
||||
syn match csdlComment "^\/\/.*$"
|
||||
syn match csdlComment "^\/\*.*$"
|
||||
syn match csdlComment "^.*\*\/$"
|
||||
|
||||
highlight link csdlKeyword Statement
|
||||
highlight link csdlOperator Operator
|
||||
highlight link csdlLogicalOperator Operator
|
||||
highlight link csdlTarget Constant
|
||||
highlight link csdlComment Comment
|
||||
"
|
||||
let b:current_syntax = "csdl"
|
||||
@@ -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: 2012 April 29
|
||||
" Last Change: 2013 May 05
|
||||
" 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)|%(hardy|lucid|natty|oneiric|precise|quantal)%(-%(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|%(lucid|precise|quantal|raring|saucy)%(-%(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: 2012 Jun 06
|
||||
" Last Change: 2012 Dec 31
|
||||
" URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debcontrol.vim
|
||||
|
||||
" Standard syntax initialization
|
||||
@@ -50,7 +50,9 @@ syn match debcontrolComment "^#.*$" contains=@Spell
|
||||
syn case ignore
|
||||
|
||||
" List of all legal keys
|
||||
syn match debcontrolKey contained "^\%(Source\|Package\|Section\|Priority\|\%(XSBC-Original-\)\=Maintainer\|Uploaders\|Build-\%(Conflicts\|Depends\)\%(-Indep\)\=\|Standards-Version\|\%(Pre-\)\=Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Enhances\|Breaks\|Essential\|Architecture\|Multi-Arch\|Description\|Bugs\|Origin\|X[SB]-Python-Version\|Homepage\|\(XS-\)\=Vcs-\(Browser\|Arch\|Bzr\|Cvs\|Darcs\|Git\|Hg\|Mtn\|Svn\)\|\%(XC-\)\=Package-Type\|\%(XS-\)\=DM-Upload-Allowed\): *"
|
||||
syn match debcontrolKey contained "^\%(Source\|Package\|Section\|Priority\|\%(XSBC-Original-\)\=Maintainer\|Uploaders\|Build-\%(Conflicts\|Depends\)\%(-Indep\)\=\|Standards-Version\|\%(Pre-\)\=Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Enhances\|Breaks\|Essential\|Architecture\|Multi-Arch\|Description\|Bugs\|Origin\|X[SB]-Python-Version\|Homepage\|\(XS-\)\=Vcs-\(Browser\|Arch\|Bzr\|Cvs\|Darcs\|Git\|Hg\|Mtn\|Svn\)\|\%(XC-\)\=Package-Type\): *"
|
||||
|
||||
syn match debcontrolDeprecatedKey contained "^\%(\%(XS-\)\=DM-Upload-Allowed\): *"
|
||||
|
||||
" Fields for which we do strict syntax checking
|
||||
syn region debcontrolStrictField start="^Architecture" end="$" contains=debcontrolKey,debcontrolArchitecture,debcontrolSpace oneline
|
||||
@@ -64,7 +66,7 @@ syn region debcontrolStrictField start="^\%(XS-\)\=Vcs-\%(Browser\|Arch\|Bzr\|Da
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\=Vcs-Svn" end="$" contains=debcontrolKey,debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\=Vcs-Cvs" end="$" contains=debcontrolKey,debcontrolVcsCvs oneline keepend
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\=Vcs-Git" end="$" contains=debcontrolKey,debcontrolVcsGit oneline keepend
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\=DM-Upload-Allowed" end="$" contains=debcontrolKey,debcontrolDmUpload oneline
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\=DM-Upload-Allowed" end="$" contains=debcontrolDeprecatedKey,debcontrolDmUpload oneline
|
||||
|
||||
" Catch-all for the other legal fields
|
||||
syn region debcontrolField start="^\%(\%(XSBC-Original-\)\=Maintainer\|Standards-Version\|Essential\|Bugs\|Origin\|X[SB]-Python-Version\|\%(XS-\)\=Vcs-Mtn\):" end="$" contains=debcontrolKey,debcontrolVariable,debcontrolEmail oneline
|
||||
@@ -83,6 +85,7 @@ if version >= 508 || !exists("did_debcontrol_syn_inits")
|
||||
HiLink debcontrolKey Keyword
|
||||
HiLink debcontrolField Normal
|
||||
HiLink debcontrolStrictField Error
|
||||
HiLink debcontrolDeprecatedKey Error
|
||||
HiLink debcontrolMultiField Normal
|
||||
HiLink debcontrolArchitecture Normal
|
||||
HiLink debcontrolMultiArch Normal
|
||||
|
||||
@@ -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: 2012 April 29
|
||||
" Last Change: 2013 May 05
|
||||
" 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\|hardy\|lucid\|natty\|oneiric\|precise\|quantal\)\([-[:alnum:]_./]*\)+
|
||||
syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\(squeeze\|wheezy\|\(old\)\=stable\|testing\|unstable\|sid\|rc-buggy\|experimental\|lucid\|precise\|quantal\|raring\|saucy\)\([-[:alnum:]_./]*\)+
|
||||
|
||||
" Associate our matches and regions with pretty colours
|
||||
hi def link debsourcesLine Error
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: dts/dtsi (device tree files)
|
||||
" Maintainer: Daniel Mack <vim@zonque.org>
|
||||
" Last Change: 2012 Oct 04
|
||||
" Last Change: 2013 Apr 05
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
@@ -13,6 +13,7 @@ syntax region dtsBinaryProperty start="\[" end="\]"
|
||||
syntax match dtsStringProperty "\".*\""
|
||||
syntax match dtsKeyword "/.*/"
|
||||
syntax match dtsLabel "^[[:space:]]*[[:alpha:][:digit:]_]\+:"
|
||||
syntax match dtsNode /[[:alpha:][:digit:]-_]\+\(@[0-9a-fA-F]\+\|\)[[:space:]]*{/he=e-1
|
||||
syntax region dtsCellProperty start="<" end=">" contains=dtsReference,dtsBinaryProperty,dtsStringProperty,dtsComment
|
||||
syntax region dtsCommentInner start="/\*" end="\*/"
|
||||
|
||||
@@ -21,6 +22,7 @@ hi def link dtsBinaryProperty Number
|
||||
hi def link dtsStringProperty String
|
||||
hi def link dtsKeyword Include
|
||||
hi def link dtsLabel Label
|
||||
hi def link dtsNode Structure
|
||||
hi def link dtsReference Macro
|
||||
hi def link dtsComment Comment
|
||||
hi def link dtsCommentInner Comment
|
||||
|
||||
@@ -1,126 +1,175 @@
|
||||
" Vim syntax file
|
||||
" Language: Erlang
|
||||
" Author: Oscar Hellstr<74>m <oscar@oscarh.net> (http://oscar.hellstrom.st)
|
||||
" Contributors: Ricardo Catalinas Jim<69>nez <jimenezrick@gmail.com>
|
||||
" Language: Erlang (http://www.erlang.org)
|
||||
" Maintainer: Csaba Hoch <csaba.hoch@gmail.com>
|
||||
" Former Maintainer: Kreąimir Marľić (Kresimir Marzic) <kmarzic@fly.srk.fer.hr>
|
||||
" Last Update: 2013-Mar-07
|
||||
" License: Vim license
|
||||
" Version: 2011/09/11
|
||||
" URL: https://github.com/hcs42/vim-erlang
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
else
|
||||
let b:current_syntax = "erlang"
|
||||
" Customization:
|
||||
"
|
||||
" There are two optional sets of highlighting:
|
||||
"
|
||||
" 1. The BIFs (built-in functions) are highlighted by default. To disable
|
||||
" this, put the following line in your vimrc:
|
||||
"
|
||||
" let g:erlang_highlight_bifs = 0
|
||||
"
|
||||
" 2. To enable highlighting some special atoms, put this in your vimrc:
|
||||
"
|
||||
" let g:erlang_highlight_special_atoms = 1
|
||||
|
||||
" 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
|
||||
|
||||
if !exists("g:erlang_highlight_bif")
|
||||
let g:erlang_highlight_bif = 1
|
||||
endif
|
||||
|
||||
" Erlang is case sensitive
|
||||
" Case sensitive
|
||||
syn case match
|
||||
|
||||
" Match groups
|
||||
syn match erlangStringModifier /\\./ contained
|
||||
syn match erlangStringModifier /\~\%(-\?[0-9*]\+\)\?\%(\.[0-9*]\+\..\?\)\?\%(c\|f\|e\|g\|s\|w\|p\|W\|P\|B\|X\|#\|b\|+\|n\|i\)/ contained
|
||||
syn match erlangModifier /\$\\\?./
|
||||
|
||||
syn match erlangInteger /\<\%([0-9]\+#[0-9a-fA-F]\+\|[0-9]\+\)\>/
|
||||
syn match erlangFloat /\<[0-9]\+\.[0-9]\+\%(e-\?[0-9]\+\)\?\>/
|
||||
|
||||
syn keyword erlangTodo TODO FIXME XXX contained
|
||||
syn match erlangComment /%.*$/ contains=@Spell,erlangTodo,erlangAnnotation
|
||||
syn match erlangAnnotation /\%(%\s\)\@<=@\%(author\|clear\|copyright\|deprecated\|doc\|docfile\|end\|equiv\|headerfile\|hidden\|private\|reference\|see\|since\|spec\|throws\|title\|todo\|TODO\|type\|version\)/ contained
|
||||
syn match erlangAnnotation /`[^']\+'/ contained
|
||||
|
||||
syn keyword erlangKeyword band bor bnot bsl bsr bxor div rem xor
|
||||
syn keyword erlangKeyword try catch begin receive after cond fun let query
|
||||
|
||||
syn keyword erlangConditional case if of end
|
||||
syn keyword erlangConditional not and or andalso orelse
|
||||
syn keyword erlangConditional when
|
||||
|
||||
syn keyword erlangBoolean true false
|
||||
|
||||
syn keyword erlangGuard is_list is_alive is_atom is_binary is_bitstring is_boolean is_tuple is_number is_integer is_float is_function is_constant is_pid is_port is_reference is_record is_process_alive
|
||||
|
||||
syn match erlangOperator /\/\|*\|+\|-\|++\|--/
|
||||
syn match erlangOperator /->\|<-\|||\||\|!\|=/
|
||||
syn match erlangOperator /=:=\|==\|\/=\|=\/=\|<\|>\|=<\|>=/
|
||||
syn keyword erlangOperator div rem
|
||||
|
||||
syn region erlangString start=/"/ end=/"/ skip=/\\/ contains=@Spell,erlangStringModifier
|
||||
|
||||
syn match erlangVariable /\<[A-Z_]\w*\>/
|
||||
syn match erlangAtom /\%(\%(^-\)\|#\)\@<!\<[a-z][A-Za-z0-9_]*\>\%(\s*[(:]\)\@!/
|
||||
syn match erlangAtom /\\\@<!'[^']*\\\@<!'/
|
||||
|
||||
syn match erlangRecord /#\w\+/
|
||||
|
||||
syn match erlangTuple /{\|}/
|
||||
syn match erlangList /\[\|\]/
|
||||
|
||||
syn match erlangAttribute /^-\%(vsn\|author\|copyright\|compile\|deprecated\|module\|export\|import\|behaviour\|behavior\|export_type\|ignore_xref\|on_load\)\s*(\@=/
|
||||
syn match erlangInclude /^-include\%(_lib\)\?\s*(\@=/
|
||||
syn match erlangRecordDef /^-record\s*(\@=/
|
||||
syn match erlangDefine /^-\%(define\|undef\)\s*(\@=/
|
||||
syn match erlangPreCondit /^-\%(ifdef\|ifndef\|else\|endif\)\%(\s*(\@=\)\?/
|
||||
|
||||
syn match erlangType /^-\%(spec\|type\)[( ]\@=/
|
||||
|
||||
syn match erlangMacro /\%(-define(\)\@<=\w\+/
|
||||
syn match erlangMacro /?\??\w\+/
|
||||
|
||||
syn match erlangBitType /\%(\/\|-\)\@<=\%(bits\|bitstring\|binary\|integer\|float\|unit\)\>/
|
||||
syn match erlangBitSize /:\@<=[0-9]\+/
|
||||
|
||||
syn match erlangBinary /<<\|>>/
|
||||
|
||||
" BIFs
|
||||
syn match erlangBIF /\%([^:0-9A-Za-z_]\|\<erlang:\)\@<=\%(abs\|apply\|atom_to_binary\|atom_to_list\|binary_part\|binary_to_atom\|binary_to_existing_atom\|binary_to_list\|binary_to_term\|bit_size\|bitstring_to_list\|byte_size\|check_process_code\|date\|delete_module\|demonitor\|disconnect_node\|element\|erase\|exit\|float\|float_to_list\|garbage_collect\|get\|get_keys\|group_leader\|hd\|integer_to_list\|iolist_size\|iolist_to_binary\|is_alive\|is_atom\|is_binary\|is_bitstring\|is_boolean\|is_float\|is_function\|is_integer\|is_list\|is_number\|is_pid\|is_port\|is_process_alive\|is_record\|is_reference\|is_tuple\|length\|link\|list_to_atom\|list_to_binary\|list_to_bitstring\|list_to_existing_atom\|list_to_float\|list_to_integer\|list_to_pid\|list_to_tuple\|load_module\|make_ref\|max\|min\|module_loaded\|monitor\|monitor_node\|node\|nodes\|now\|open_port\|pid_to_list\|port_close\|port_command\|port_connect\|port_control\|pre_loaded\|processes\|process_flag\|process_info\|purge_module\|put\|register\|registered\|round\|self\|setelement\|size\|spawn\|spawn_link\|spawn_monitor\|spawn_opt\|split_binary\|statistics\|term_to_binary\|time\|tl\|trunc\|tuple_size\|tuple_to_list\|unlink\|unregister\|whereis\)\%((\|\/[0-9]\)\@=/
|
||||
syn match erlangBIF /\<\%(erlang:\)\@<=\%(append_element\|bump_reductions\|cancel_timer\|decode_packet\|display\|function_exported\|fun_info\|fun_to_list\|get_cookie\|get_stacktrace\|hash\|is_builtin\|loaded\|load_nif\|localtime\|localtime_to_universaltime\|make_tuple\|memory\|monitor_node\|phash\|port_call\|port_info\|ports\|port_to_list\|process_display\|read_timer\|ref_to_list\|resume_process\|send\|send_after\|send_nosuspend\|set_cookie\|start_timer\|suspend_process\|system_flag\|system_info\|system_monitor\|system_profile\|trace\|trace_delivered\|trace_info\|trace_pattern\|universaltime\|universaltime_to_localtime\|yield\)(\@=/
|
||||
syn match erlangGBIF /erlang\%(:\w\)\@=/
|
||||
|
||||
" Link Erlang stuff to Vim groups
|
||||
hi link erlangTodo Todo
|
||||
hi link erlangString String
|
||||
hi link erlangNoSpellString String
|
||||
hi link erlangModifier SpecialChar
|
||||
hi link erlangStringModifier SpecialChar
|
||||
hi link erlangComment Comment
|
||||
hi link erlangAnnotation Special
|
||||
hi link erlangVariable Identifier
|
||||
hi link erlangInclude Include
|
||||
hi link erlangRecordDef Keyword
|
||||
hi link erlangAttribute Keyword
|
||||
hi link erlangKeyword Keyword
|
||||
hi link erlangMacro Macro
|
||||
hi link erlangDefine Define
|
||||
hi link erlangPreCondit PreCondit
|
||||
hi link erlangPreProc PreProc
|
||||
hi link erlangDelimiter Delimiter
|
||||
hi link erlangBitDelimiter Normal
|
||||
hi link erlangOperator Operator
|
||||
hi link erlangConditional Conditional
|
||||
hi link erlangGuard Conditional
|
||||
hi link erlangBoolean Boolean
|
||||
hi link erlangAtom Constant
|
||||
hi link erlangRecord Structure
|
||||
hi link erlangInteger Number
|
||||
hi link erlangFloat Number
|
||||
hi link erlangFloat Number
|
||||
hi link erlangFloat Number
|
||||
hi link erlangFloat Number
|
||||
hi link erlangHex Number
|
||||
hi link erlangFun Keyword
|
||||
hi link erlangList Delimiter
|
||||
hi link erlangTuple Delimiter
|
||||
hi link erlangBinary Keyword
|
||||
hi link erlangBitVariable Identifier
|
||||
hi link erlangBitType Type
|
||||
hi link erlangType Type
|
||||
hi link erlangBitSize Number
|
||||
|
||||
" Optional highlighting
|
||||
if g:erlang_highlight_bif
|
||||
hi link erlangBIF Keyword
|
||||
hi link erlangGBIF Keyword
|
||||
if version >= 600
|
||||
setlocal iskeyword+=$,@-@
|
||||
endif
|
||||
|
||||
" Comments
|
||||
syn match erlangComment '%.*$' contains=erlangCommentAnnotation,erlangTodo
|
||||
syn match erlangCommentAnnotation ' \@<=@\%(clear\|docfile\|end\|headerfile\|todo\|TODO\|type\|author\|copyright\|doc\|reference\|see\|since\|title\|version\|deprecated\|hidden\|private\|equiv\|spec\|throws\)' contained
|
||||
syn match erlangCommentAnnotation /`[^']*'/ contained
|
||||
syn keyword erlangTodo TODO FIXME XXX contained
|
||||
|
||||
" Numbers (minimum base is 2, maximum is 36.)
|
||||
syn match erlangNumberInteger '\<\d\+\>'
|
||||
syn match erlangNumberInteger '\<\%([2-9]\|[12]\d\|3[0-6]\)\+#[[:alnum:]]\+\>'
|
||||
syn match erlangNumberFloat '\<\d\+\.\d\+\%([eE][+-]\=\d\+\)\=\>'
|
||||
|
||||
" Strings, atoms, characters
|
||||
syn region erlangString start=/"/ end=/"/ contains=erlangStringModifier
|
||||
syn region erlangQuotedAtom start=/'/ end=/'/ contains=erlangQuotedAtomModifier
|
||||
syn match erlangStringModifier '\~\a\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)' contained
|
||||
syn match erlangQuotedAtomModifier '\~\a\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)' contained
|
||||
syn match erlangModifier '\$\%([^\\]\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)\)'
|
||||
|
||||
" Operators
|
||||
syn match erlangOperator '==\|=:=\|/=\|=/=\|<\|=<\|>\|>=\|++\|--\|=\|!\|<-\|+\|-\|\*\|\/'
|
||||
syn keyword erlangOperator div rem or xor bor bxor bsl bsr and band not bnot andalso orelse
|
||||
|
||||
" Separators
|
||||
syn match erlangSeparator '(\|)\|{\|}\|\[\|]\||\|||\|;\|,\|?\|#'
|
||||
syn match erlangRightArrow '->'
|
||||
|
||||
" Functions call
|
||||
syn match erlangFCall '\<\%(\a[[:alnum:]@]*\s*\.\s*\)*\a[[:alnum:]@]*\s*:\s*\a[[:alnum:]@]*\>'
|
||||
|
||||
" Constants and Directives
|
||||
syn match erlangDirective '-\%(behaviour\|behavior\|compile\|define\|else\|endif\|export\|file\|ifdef\|ifndef\|import\|include_lib\|include\|module\|record\|undef\|author\|copyright\|doc\|vsn\|on_load\|export_type\)\>'
|
||||
|
||||
" Keywords
|
||||
syn keyword erlangKeyword after begin case catch cond end fun if let of query receive when try
|
||||
syn keyword erlangExtra true false
|
||||
|
||||
|
||||
if !exists("g:erlang_highlight_bifs") || g:erlang_highlight_bifs == 1
|
||||
|
||||
" build-in-functions (BIFs)
|
||||
syn keyword erlangBIF abs alive apply atom_to_binary atom_to_list binary_part binary_to_atom binary_to_existing_atom binary_to_float binary_to_integer bitstring_to_list binary_to_list binary_to_term bit_size byte_size check_old_code check_process_code concat_binary date delete_module demonitor disconnect_node element erase error exit float float_to_binary float_to_list garbage_collect get get_keys group_leader halt hd integer_to_binary integer_to_list iolist_to_binary iolist_size is_alive is_atom is_binary is_bitstring is_boolean is_float is_function is_integer is_list is_number is_pid is_port is_process_alive is_record is_reference is_tuple length link list_to_atom list_to_binary list_to_bitstring list_to_existing_atom list_to_float list_to_integer list_to_pid list_to_tuple load_module make_ref max min module_loaded monitor monitor_node node nodes now open_port pid_to_list port_close port_command port_connect pre_loaded process_flag process_flag process_info process purge_module put register registered round self setelement size spawn spawn_link spawn_monitor spawn_opt split_binary statistics term_to_binary throw time tl trunc tuple_size tuple_to_list unlink unregister whereis
|
||||
|
||||
endif
|
||||
|
||||
|
||||
if exists("g:erlang_highlight_special_atoms") && g:erlang_highlight_special_atoms == 1
|
||||
|
||||
" Processes
|
||||
syn keyword erlangProcess creation current_function dictionary
|
||||
syn keyword erlangProcess group_leader heap_size high initial_call
|
||||
syn keyword erlangProcess linked low memory_in_use message_queue
|
||||
syn keyword erlangProcess net_kernel node normal priority
|
||||
syn keyword erlangProcess reductions registered_name runnable
|
||||
syn keyword erlangProcess running stack_trace status timer
|
||||
syn keyword erlangProcess trap_exit waiting
|
||||
|
||||
" Ports
|
||||
syn keyword erlangPort command count_in count_out creation in
|
||||
syn keyword erlangPort in_format linked node out owner packeting
|
||||
|
||||
" Nodes
|
||||
syn keyword erlangNode atom_tables communicating creation
|
||||
syn keyword erlangNode current_gc current_reductions current_runtime
|
||||
syn keyword erlangNode current_wall_clock distribution_port
|
||||
syn keyword erlangNode entry_points error_handler friends
|
||||
syn keyword erlangNode garbage_collection magic_cookie magic_cookies
|
||||
syn keyword erlangNode module_table monitored_nodes name next_ref
|
||||
syn keyword erlangNode ports preloaded processes reductions
|
||||
syn keyword erlangNode ref_state registry runtime wall_clock
|
||||
|
||||
" Reserved
|
||||
syn keyword erlangReserved apply_lambda module_info module_lambdas
|
||||
syn keyword erlangReserved record record_index record_info
|
||||
|
||||
" Extras
|
||||
syn keyword erlangExtra badarg nocookie
|
||||
|
||||
" Signals
|
||||
syn keyword erlangSignal badsig kill killed exit normal
|
||||
endif
|
||||
|
||||
" Sync at the beginning of functions: if this is not used, multiline string
|
||||
" are not always recognized
|
||||
syn sync match erlangSync grouphere NONE "^[a-z]\s*("
|
||||
|
||||
" 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_erlang_inits")
|
||||
if version < 508
|
||||
let did_erlang_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
" erlang_characters
|
||||
HiLink erlangComment Comment
|
||||
HiLink erlangCommentAnnotation Special
|
||||
HiLink erlangTodo Todo
|
||||
HiLink erlangSeparator Normal
|
||||
HiLink erlangOperator Operator
|
||||
HiLink erlangRightArrow Operator
|
||||
|
||||
HiLink erlangStartString String
|
||||
HiLink erlangString String
|
||||
HiLink erlangStringModifier Special
|
||||
|
||||
HiLink erlangStartQuotedAtom Type
|
||||
HiLink erlangQuotedAtom Type
|
||||
HiLink erlangQuotedAtomModifier Special
|
||||
|
||||
HiLink erlangNumberInteger Number
|
||||
HiLink erlangNumberFloat Float
|
||||
HiLink erlangNumberHex Number
|
||||
|
||||
HiLink erlangModifier Special
|
||||
|
||||
" erlang_functions
|
||||
HiLink erlangFCall Function
|
||||
HiLink erlangBIF Function
|
||||
|
||||
" erlang_keywords
|
||||
HiLink erlangDirective Type
|
||||
HiLink erlangKeyword Keyword
|
||||
HiLink erlangProcess Special
|
||||
HiLink erlangPort Special
|
||||
HiLink erlangNode Special
|
||||
HiLink erlangReserved Statement
|
||||
HiLink erlangExtra Statement
|
||||
HiLink erlangSignal Statement
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
|
||||
let b:current_syntax = "erlang"
|
||||
|
||||
" vim: sw=2 et
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
" Language: Groovy
|
||||
" Original Author: Alessio Pace <billy.corgan@tiscali.it>
|
||||
" Maintainer: Tobias Rapp <yahuxo@gmx.de>
|
||||
" Version: 0.1.11
|
||||
" Version: 0.1.13
|
||||
" URL: http://www.vim.org/scripts/script.php?script_id=945
|
||||
" Last Change: 2012 Jan 08
|
||||
" Last Change: 2013 Apr 24
|
||||
|
||||
" THE ORIGINAL AUTHOR'S NOTES:
|
||||
"
|
||||
@@ -74,7 +74,7 @@ endif
|
||||
|
||||
" keyword definitions
|
||||
syn keyword groovyExternal native package
|
||||
syn match groovyExternal "\<import\(\s\+static\>\)\?"
|
||||
syn match groovyExternal "\<import\>\(\s\+static\>\)\?"
|
||||
syn keyword groovyError goto const
|
||||
syn keyword groovyConditional if else switch
|
||||
syn keyword groovyRepeat while for do
|
||||
@@ -250,13 +250,17 @@ syn match groovyComment "/\*\*/"
|
||||
" Strings and constants
|
||||
syn match groovySpecialError contained "\\."
|
||||
syn match groovySpecialCharError contained "[^']"
|
||||
syn match groovySpecialChar contained "\\\([4-9]\d\|[0-3]\d\d\|[\"\\'ntbrf]\|u\x\{4\}\)"
|
||||
syn match groovySpecialChar contained "\\\([4-9]\d\|[0-3]\d\d\|[\"\\'ntbrf]\|u\x\{4\}\|\$\)"
|
||||
syn match groovyRegexChar contained "\\."
|
||||
syn region groovyString start=+"+ end=+"+ end=+$+ contains=groovySpecialChar,groovySpecialError,@Spell,groovyELExpr
|
||||
syn region groovyString start=+'+ end=+'+ end=+$+ contains=groovySpecialChar,groovySpecialError,@Spell
|
||||
syn region groovyString start=+"""+ end=+"""+ contains=groovySpecialChar,groovySpecialError,@Spell,groovyELExpr
|
||||
syn region groovyString start=+'''+ end=+'''+ contains=groovySpecialChar,groovySpecialError,@Spell
|
||||
" regex string
|
||||
syn region groovyString start='/[^/]' end='/' contains=groovySpecialChar,groovyRegexChar,groovyELExpr
|
||||
" syn region groovyELExpr start=+${+ end=+}+ keepend contained
|
||||
syn match groovyELExpr /\${.\{-}}/ contained
|
||||
syn match groovyELExpr /\${.\{-}}/ contained
|
||||
syn match groovyELExpr /\$[a-zA-Z_][a-zA-Z0-9_.]*/ contained
|
||||
GroovyHiLink groovyELExpr Identifier
|
||||
|
||||
" TODO: better matching. I am waiting to understand how it really works in groovy
|
||||
@@ -415,6 +419,7 @@ if version >= 508 || !exists("did_groovy_syn_inits")
|
||||
GroovyHiLink groovySpecialError Error
|
||||
GroovyHiLink groovySpecialCharError Error
|
||||
GroovyHiLink groovyString String
|
||||
GroovyHiLink groovyRegexChar String
|
||||
GroovyHiLink groovyCharacter Character
|
||||
GroovyHiLink groovySpecialChar SpecialChar
|
||||
GroovyHiLink groovyNumber Number
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim help file
|
||||
" Maintainer: Bram Moolenaar (Bram@vim.org)
|
||||
" Last Change: 2012 Jul 16
|
||||
" Last Change: 2013 Apr 07
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -40,7 +40,7 @@ syn match helpVim "Vim version [0-9.a-z]\+"
|
||||
syn match helpVim "VIM REFERENCE.*"
|
||||
syn match helpOption "'[a-z]\{2,\}'"
|
||||
syn match helpOption "'t_..'"
|
||||
syn match helpCommand "`[^` ]*`"hs=s+1,he=e-1 contains=helpBacktick
|
||||
syn match helpCommand "`[^` ]\+`"hs=s+1,he=e-1 contains=helpBacktick
|
||||
syn match helpHeader "\s*\zs.\{-}\ze\s\=\~$" nextgroup=helpIgnore
|
||||
syn match helpGraphic ".* \ze`$" nextgroup=helpIgnore
|
||||
if has("conceal")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Language : Netrw Remote-Directory Listing Syntax
|
||||
" Maintainer : Charles E. Campbell, Jr.
|
||||
" Last change: Jan 14, 2009
|
||||
" Version : 16
|
||||
" Last change: Dec 18, 2012
|
||||
" Version : 17
|
||||
" ---------------------------------------------------------------------
|
||||
|
||||
" Syntax Clearing: {{{1
|
||||
@@ -56,13 +56,16 @@ if exists("g:netrw_special_syntax") && netrw_special_syntax
|
||||
if has("unix")
|
||||
syn match netrwCoreDump "\<core\%(\.\d\+\)\=\>" contains=netrwTreeBar,@NoSpell
|
||||
endif
|
||||
syn match netrwLex "\(\S\+ \)*\S\+\.\%(l\|lex\)\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwYacc "\(\S\+ \)*\S\+\.y\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwData "\(\S\+ \)*\S\+\.dat\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwHdr "\(\S\+ \)*\S\+\.h\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwDoc "\(\S\+ \)*\S\+\.\%(doc\|txt\|pdf\|ps\)" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwHdr "\(\S\+ \)*\S\+\.\%(h\|hpp\)\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwLib "\(\S\+ \)*\S*\.\%(a\|so\|lib\|dll\)\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwMakeFile "\<[mM]akefile\>\|\(\S\+ \)*\S\+\.mak\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwObj "\(\S\+ \)*\S*\.\%(o\|obj\)\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTags "\<tags\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTags "\<\(ANmenu\|ANtags\)\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTags "\<tags\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTilde "\(\S\+ \)*\S\+\~\*\=\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTmp "\<tmp\(\S\+ \)*\S\+\>\|\(\S\+ \)*\S*tmp\>" contains=netrwTreeBar,@NoSpell
|
||||
endif
|
||||
@@ -95,12 +98,15 @@ if !exists("did_drchip_netrwlist_syntax")
|
||||
hi default link netrwCompress Folded
|
||||
hi default link netrwCoreDump WarningMsg
|
||||
hi default link netrwData DiffChange
|
||||
hi default link netrwHdr netrwPlain
|
||||
hi default link netrwLex netrwPlain
|
||||
hi default link netrwLib DiffChange
|
||||
hi default link netrwMakefile DiffChange
|
||||
hi default link netrwObj Folded
|
||||
hi default link netrwTilde Folded
|
||||
hi default link netrwTmp Folded
|
||||
hi default link netrwTags Folded
|
||||
hi default link netrwYacc netrwPlain
|
||||
endif
|
||||
|
||||
" Current Syntax: {{{1
|
||||
|
||||
@@ -1,27 +1,34 @@
|
||||
" ninja build file syntax.
|
||||
" Language: ninja build file as described at
|
||||
" http://martine.github.com/ninja/manual.html
|
||||
" Version: 1.2
|
||||
" Last Change: 2012/06/01
|
||||
" Version: 1.3
|
||||
" Last Change: 2013/04/16
|
||||
" Maintainer: Nicolas Weber <nicolasweber@gmx.de>
|
||||
" Version 1.3 of this script is in the upstream vim repository and will be
|
||||
" included in the next vim release. If you change this, please send your change
|
||||
" upstream.
|
||||
|
||||
" ninja lexer and parser are at
|
||||
" https://github.com/martine/ninja/blob/master/src/lexer.in.cc
|
||||
" https://github.com/martine/ninja/blob/master/src/parsers.cc
|
||||
" https://github.com/martine/ninja/blob/master/src/manifest_parser.cc
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn case match
|
||||
|
||||
syn match ninjaComment /#.*/ contains=@Spell
|
||||
|
||||
" Toplevel statements are the ones listed here and
|
||||
" toplevel variable assignments (ident '=' value).
|
||||
" lexer.in.cc, ReadToken() and parsers.cc, Parse()
|
||||
" lexer.in.cc, ReadToken() and manifest_parser.cc, Parse()
|
||||
syn match ninjaKeyword "^build\>"
|
||||
syn match ninjaKeyword "^rule\>"
|
||||
syn match ninjaKeyword "^pool\>"
|
||||
syn match ninjaKeyword "^default\>"
|
||||
syn match ninjaKeyword "^include\>"
|
||||
syn match ninjaKeyword "^subninja\>"
|
||||
@@ -30,9 +37,13 @@ syn match ninjaKeyword "^subninja\>"
|
||||
" on the first line without indent. 'rule' allows only a
|
||||
" limited set of magic variables, 'build' allows general
|
||||
" let assignments.
|
||||
" parsers.cc, ParseRule()
|
||||
" manifest_parser.cc, ParseRule()
|
||||
syn region ninjaRule start="^rule" end="^\ze\S" contains=ALL transparent
|
||||
syn keyword ninjaRuleCommand contained command depfile description generator restat
|
||||
syn keyword ninjaRuleCommand contained command deps depfile description generator
|
||||
\ pool restat rspfile rspfile_content
|
||||
|
||||
syn region ninjaPool start="^pool" end="^\ze\S" contains=ALL transparent
|
||||
syn keyword ninjaPoolCommand contained depth
|
||||
|
||||
" Strings are parsed as follows:
|
||||
" lexer.in.cc, ReadEvalString()
|
||||
@@ -58,9 +69,13 @@ syn match ninjaOperator "\(=\|:\||\|||\)\ze\s"
|
||||
hi def link ninjaComment Comment
|
||||
hi def link ninjaKeyword Keyword
|
||||
hi def link ninjaRuleCommand Statement
|
||||
hi def link ninjaPoolCommand Statement
|
||||
hi def link ninjaWrapLineOperator ninjaOperator
|
||||
hi def link ninjaOperator Operator
|
||||
hi def link ninjaSimpleVar ninjaVar
|
||||
hi def link ninjaVar Identifier
|
||||
|
||||
let b:current_syntax = "ninja"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -3,7 +3,10 @@
|
||||
" Maintainer: Kazunobu Kuriyama <kazunobu.kuriyama@nifty.com>
|
||||
" Ex-maintainer: Anthony Hodsdon <ahodsdon@fastmail.fm>
|
||||
" First Author: Valentino Kyriakides <1kyriaki@informatik.uni-hamburg.de>
|
||||
" Last Change: 2012 Apr 30
|
||||
" Last Change: 2013 Feb 20
|
||||
"
|
||||
" 2013 Feb 19 Revised based on a patch sent to the maintainer by
|
||||
" Christos Kontas <xakon@yahoo.com> on 2012 Dec 12.
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -48,6 +51,11 @@ syn match objcDirective "@class\|@end\|@defs"
|
||||
syn match objcDirective "@encode\|@protocol\|@selector"
|
||||
syn match objcDirective "@try\|@catch\|@finally\|@throw\|@synchronized"
|
||||
|
||||
" New directives introduced with Objc-2.0
|
||||
syn match objcDirective "@property\|@synthesize\|@dynamic"
|
||||
syn match objcDirective "@optional\|@required"
|
||||
syn match objcDirective "@autoreleasepool"
|
||||
|
||||
" Match the ObjC method types
|
||||
"
|
||||
" NOTE: here I match only the indicators, this looks
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" pf syntax file
|
||||
" Language: OpenBSD packet filter configuration (pf.conf)
|
||||
" Maintainer: Camiel Dobbelaar <cd@sentia.nl>
|
||||
" Last Change: 2003 May 27
|
||||
" Language: OpenBSD packet filter configuration (pf.conf)
|
||||
" Original Author: Camiel Dobbelaar <cd@sentia.nl>
|
||||
" Maintainer: Lauri Tirkkonen <lotheac@iki.fi>
|
||||
" Last Change: 2013 Apr 02
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -14,7 +15,7 @@ endif
|
||||
setlocal foldmethod=syntax
|
||||
syn sync fromstart
|
||||
|
||||
syn cluster pfNotLS contains=pfComment,pfTodo,pfVarAssign
|
||||
syn cluster pfNotLS contains=pfTodo,pfVarAssign
|
||||
syn keyword pfCmd altq anchor antispoof binat nat pass
|
||||
syn keyword pfCmd queue rdr scrub table set
|
||||
syn keyword pfService auth bgp domain finger ftp http https ident
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Python
|
||||
" Maintainer: Neil Schemenauer <nas@python.ca>
|
||||
" Last Change: 2010 Sep 21
|
||||
" Last Change: 2013 Feb 26
|
||||
" Credits: Zvezdan Petkovic <zpetkovic@acm.org>
|
||||
" Neil Schemenauer <nas@python.ca>
|
||||
" Dmitry Vasiliev
|
||||
@@ -236,7 +236,7 @@ endif
|
||||
" Notice that the end of a string, either ''', or """, will end the contained
|
||||
" doctest too. Thus, we do *not* need to have it as an end pattern.
|
||||
if !exists("python_no_doctest_highlight")
|
||||
if !exists("python_no_doctest_code_higlight")
|
||||
if !exists("python_no_doctest_code_highlight")
|
||||
syn region pythonDoctest
|
||||
\ start="^\s*>>>\s" end="^\s*$"
|
||||
\ contained contains=ALLBUT,pythonDoctest,@Spell
|
||||
|
||||
972
runtime/syntax/redif.vim
Normal file
972
runtime/syntax/redif.vim
Normal file
@@ -0,0 +1,972 @@
|
||||
" Vim syntax file
|
||||
" Language: ReDIF
|
||||
" Maintainer: Axel Castellane <axel.castellane@polytechnique.edu>
|
||||
" Last Change: 2013 April 17
|
||||
" Original Author: Axel Castellane
|
||||
" Source: http://openlib.org/acmes/root/docu/redif_1.html
|
||||
" File Extension: rdf
|
||||
" Note: The ReDIF format is used by RePEc.
|
||||
|
||||
" To be compatible with Vim 5.8 use:
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" ReDIF is case-insensitive
|
||||
syntax case ignore
|
||||
|
||||
" Structure: Some fields determine what fields can come next. For example:
|
||||
" Template-Type
|
||||
" *-Name
|
||||
" File-URL
|
||||
" *-Institution
|
||||
" Those fields span a syntax region over several lines so that these regions
|
||||
" can only contain their respective items.
|
||||
|
||||
" Any line which is not a correct template or part of an argument is an error.
|
||||
" This comes at the very beginning, so it has the lowest priority and will
|
||||
" only match if nothing else did.
|
||||
syntax match redifWrongLine /^.\+/ display
|
||||
|
||||
highlight def link redifWrongLine redifError
|
||||
|
||||
" Comments must start with # and it must be the first character of the line,
|
||||
" otherwise I believe that they are considered as part of an argument.
|
||||
syntax match redifComment /^#.*/ containedin=ALL display
|
||||
|
||||
" Defines the 9 possible multi-lines regions of Template-Type and the fields
|
||||
" they can contain.
|
||||
syntax region redifRegionTemplatePaper start=/^Template-Type:\_s*ReDIF-Paper \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsPaper,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile fold
|
||||
syntax region redifRegionTemplateArticle start=/^Template-Type:\_s*ReDIF-Article \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsArticle,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile fold
|
||||
syntax region redifRegionTemplateChapter start=/^Template-Type:\_s*ReDIF-Chapter \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsChapter,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile,redifRegionClusterProvider,redifRegionClusterPublisher,redifRegionClusterEditor fold
|
||||
syntax region redifRegionTemplateBook start=/^Template-Type:\_s*ReDIF-Book \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsBook,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile,redifRegionClusterProvider,redifRegionClusterPublisher,redifRegionClusterEditor fold
|
||||
syntax region redifRegionTemplateSoftware start=/^Template-Type:\_s*ReDIF-Software \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsSoftware,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile fold
|
||||
syntax region redifRegionTemplateArchive start=/^Template-Type:\_s*ReDIF-Archive \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsArchive,redifWrongLine fold
|
||||
syntax region redifRegionTemplateSeries start=/^Template-Type:\_s*ReDIF-Series \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsSeries,redifWrongLine,redifRegionClusterProvider,redifRegionClusterPublisher,redifRegionClusterEditor fold
|
||||
syntax region redifRegionTemplateInstitution start=/^Template-Type:\_s*ReDIF-Institution \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsInstitution,redifWrongLine,redifRegionClusterPrimary,redifRegionClusterSecondary,redifRegionClusterTertiary,redifRegionClusterQuaternary fold
|
||||
syntax region redifRegionTemplatePerson start=/^Template-Type:\_s*ReDIF-Person \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsPerson,redifWrongLine,redifRegionClusterWorkplace fold
|
||||
|
||||
" All fields are foldable (These come before clusters, so they have lower
|
||||
" priority). So they are contained in a foldable syntax region.
|
||||
syntax region redifContainerFieldsPaper start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldTitle,redifFieldHandleOfWork,redifFieldLanguage,redifFieldContactEmail,redifFieldAbstract,redifFieldClassificationJEL,redifFieldKeywords,redifFieldNumber,redifFieldCreationDate,redifFieldRevisionDate,redifFieldPublicationStatus,redifFieldNote,redifFieldLength,redifFieldSeries,redifFieldAvailability,redifFieldOrderURL,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldRestriction,redifFieldPrice,redifFieldNotification,redifFieldPublicationType,redifFieldTemplateType,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsArticle start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldTitle,redifFieldHandleOfWork,redifFieldLanguage,redifFieldContactEmail,redifFieldAbstract,redifFieldClassificationJEL,redifFieldKeywords,redifFieldNumber,redifFieldCreationDate,redifFieldPublicationStatus,redifFieldOrderURL,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldRestriction,redifFieldPrice,redifFieldNotification,redifFieldPublicationType,redifFieldJournal,redifFieldVolume,redifFieldYear,redifFieldIssue,redifFieldMonth,redifFieldPages,redifFieldNumber,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldTemplateType,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsChapter start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfWork,redifFieldTitle,redifFieldContactEmail,redifFieldAbstract,redifFieldClassificationJEL,redifFieldKeywords,redifFieldBookTitle,redifFieldYear,redifFieldMonth,redifFieldPages,redifFieldChapter,redifFieldVolume,redifFieldEdition,redifFieldSeries,redifFieldISBN,redifFieldPublicationStatus,redifFieldNote,redifFieldInBook,redifFieldOrderURL,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldTemplateType,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsBook start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldTitle,redifFieldHandleOfWork,redifFieldContactEmail,redifFieldYear,redifFieldMonth,redifFieldVolume,redifFieldEdition,redifFieldSeries,redifFieldISBN,redifFieldPublicationStatus,redifFieldNote,redifFieldAbstract,redifFieldClassificationJEL,redifFieldKeywords,redifFieldHasChapter,redifFieldPrice,redifFieldOrderURL,redifFieldNumber,redifFieldCreationDate,redifFieldPublicationDate,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldTemplateType,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsSoftware start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfWork,redifFieldTitle,redifFieldProgrammingLanguage,redifFieldAbstract,redifFieldNumber,redifFieldVersion,redifFieldClassificationJEL,redifFieldKeywords,redifFieldSize,redifFieldSeries,redifFieldCreationDate,redifFieldRevisionDate,redifFieldNote,redifFieldRequires,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldTemplateType,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsArchive start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfArchive,redifFieldURL,redifFieldMaintainerEmail,redifFieldName,redifFieldMaintainerName,redifFieldMaintainerPhone,redifFieldMaintainerFax,redifFieldClassificationJEL,redifFieldHomepage,redifFieldDescription,redifFieldNotification,redifFieldRestriction,redifFieldTemplateType,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsSeries start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldName,redifFieldHandleOfSeries,redifFieldMaintainerEmail,redifFieldType,redifFieldOrderEmail,redifFieldOrderHomepage,redifFieldOrderPostal,redifFieldPrice,redifFieldRestriction,redifFieldMaintainerPhone,redifFieldMaintainerFax,redifFieldMaintainerName,redifFieldDescription,redifFieldClassificationJEL,redifFieldKeywords,redifFieldNotification,redifFieldISSN,redifFieldFollowup,redifFieldPredecessor,redifFieldTemplateType,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsInstitution start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfInstitution,redifFieldPrimaryDefunct,redifFieldSecondaryDefunct,redifFieldTertiaryDefunct,redifFieldTemplateType,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsPerson start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfPerson,redifFieldNameFull,redifFieldNameFirst,redifFieldNameLast,redifFieldNamePrefix,redifFieldNameMiddle,redifFieldNameSuffix,redifFieldNameASCII,redifFieldEmail,redifFieldHomepage,redifFieldFax,redifFieldPostal,redifFieldPhone,redifFieldWorkplaceOrganization,redifFieldAuthorPaper,redifFieldAuthorArticle,redifFieldAuthorSoftware,redifFieldAuthorBook,redifFieldAuthorChapter,redifFieldEditorBook,redifFieldEditorSeries,redifFieldClassificationJEL,redifFieldShortId,redifFieldLastLoginDate,redifFieldRegisteredDate,redifWrongLine contained transparent fold
|
||||
|
||||
" Defines the 10 possible clusters and what they can contain
|
||||
" A field not in the cluster ends the cluster.
|
||||
syntax region redifRegionClusterWorkplace start=/^Workplace-Name:/ skip=/^Workplace-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsWorkplace fold
|
||||
syntax region redifRegionClusterPrimary start=/^Primary-Name:/ skip=/^Primary-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsPrimary fold
|
||||
syntax region redifRegionClusterSecondary start=/^Secondary-Name:/ skip=/^Secondary-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsSecondary fold
|
||||
syntax region redifRegionClusterTertiary start=/^Tertiary-Name:/ skip=/^Tertiary-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsTertiary fold
|
||||
syntax region redifRegionClusterQuaternary start=/^Quaternary-Name:/ skip=/^Quaternary-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsQuaternary fold
|
||||
syntax region redifRegionClusterProvider start=/^Provider-Name:/ skip=/^Provider-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsProvider fold
|
||||
syntax region redifRegionClusterPublisher start=/^Publisher-Name:/ skip=/^Publisher-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsPublisher fold
|
||||
syntax region redifRegionClusterAuthor start=/^Author-Name:/ skip=/^Author-\%(Name\%(-First\|-Last\)\|Homepage\|Email\|Fax\|Postal\|Phone\|Person\|Workplace-Name\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifRegionClusterAuthorWorkplace,redifContainerFieldsAuthor fold
|
||||
syntax region redifRegionClusterEditor start=/^Editor-Name:/ skip=/^Editor-\%(Name\%(-First\|-Last\)\|Homepage\|Email\|Fax\|Postal\|Phone\|Person\|Workplace-Name\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifRegionClusterEditorWorkplace,redifContainerFieldsEditor fold
|
||||
syntax region redifRegionClusterFile start=/^File-URL:/ skip=/^File-\%(Format\|Function\|Size\|Restriction\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsFile fold
|
||||
|
||||
" The foldable containers of the clusters.
|
||||
syntax region redifContainerFieldsWorkplace start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldWorkplaceName,redifFieldWorkplaceHomepage,redifFieldWorkplaceNameEnglish,redifFieldWorkplacePostal,redifFieldWorkplaceLocation,redifFieldWorkplaceEmail,redifFieldWorkplacePhone,redifFieldWorkplaceFax,redifFieldWorkplaceInstitution,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsPrimary start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldPrimaryName,redifFieldPrimaryHomepage,redifFieldPrimaryNameEnglish,redifFieldPrimaryPostal,redifFieldPrimaryLocation,redifFieldPrimaryEmail,redifFieldPrimaryPhone,redifFieldPrimaryFax,redifFieldPrimaryInstitution,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsSecondary start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldSecondaryName,redifFieldSecondaryHomepage,redifFieldSecondaryNameEnglish,redifFieldSecondaryPostal,redifFieldSecondaryLocation,redifFieldSecondaryEmail,redifFieldSecondaryPhone,redifFieldSecondaryFax,redifFieldSecondaryInstitution,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsTertiary start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldTertiaryName,redifFieldTertiaryHomepage,redifFieldTertiaryNameEnglish,redifFieldTertiaryPostal,redifFieldTertiaryLocation,redifFieldTertiaryEmail,redifFieldTertiaryPhone,redifFieldTertiaryFax,redifFieldTertiaryInstitution,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsQuaternary start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldQuaternaryName,redifFieldQuaternaryHomepage,redifFieldQuaternaryNameEnglish,redifFieldQuaternaryPostal,redifFieldQuaternaryLocation,redifFieldQuaternaryEmail,redifFieldQuaternaryPhone,redifFieldQuaternaryFax,redifFieldQuaternaryInstitution,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsProvider start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldProviderName,redifFieldProviderHomepage,redifFieldProviderNameEnglish,redifFieldProviderPostal,redifFieldProviderLocation,redifFieldProviderEmail,redifFieldProviderPhone,redifFieldProviderFax,redifFieldProviderInstitution,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsPublisher start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldPublisherName,redifFieldPublisherHomepage,redifFieldPublisherNameEnglish,redifFieldPublisherPostal,redifFieldPublisherLocation,redifFieldPublisherEmail,redifFieldPublisherPhone,redifFieldPublisherFax,redifFieldPublisherInstitution,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsAuthor start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldAuthorName,redifFieldAuthorNameFirst,redifFieldAuthorNameLast,redifFieldAuthorHomepage,redifFieldAuthorEmail,redifFieldAuthorFax,redifFieldAuthorPostal,redifFieldAuthorPhone,redifFieldAuthorPerson,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsEditor start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldEditorName,redifFieldEditorNameFirst,redifFieldEditorNameLast,redifFieldEditorHomepage,redifFieldEditorEmail,redifFieldEditorFax,redifFieldEditorPostal,redifFieldEditorPhone,redifFieldEditorPerson,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsFile start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldFileURL,redifFieldFileFormat,redifFieldFileFunction,redifFieldFileSize,redifFieldFileRestriction,redifWrongLine contained transparent fold
|
||||
|
||||
" The two clusters in cluster (must be presented after to have priority over
|
||||
" fields containers)
|
||||
syntax region redifRegionClusterAuthorWorkplace start=/^Author-Workplace-Name:/ skip=/^Author-Workplace-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsAuthorWorkplace fold
|
||||
syntax region redifRegionClusterEditorWorkplace start=/^Editor-Workplace-Name:/ skip=/^Editor-Workplace-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsEditorWorkplace fold
|
||||
|
||||
" Their foldable fields containers
|
||||
syntax region redifContainerFieldsAuthorWorkplace start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldAuthorWorkplaceName,redifFieldAuthorWorkplaceHomepage,redifFieldAuthorWorkplaceNameEnglish,redifFieldAuthorWorkplacePostal,redifFieldAuthorWorkplaceLocation,redifFieldAuthorWorkplaceEmail,redifFieldAuthorWorkplacePhone,redifFieldAuthorWorkplaceFax,redifFieldAuthorWorkplaceInstitution,redifWrongLine contained transparent fold
|
||||
syntax region redifContainerFieldsEditorWorkplace start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldEditorWorkplaceName,redifFieldEditorWorkplaceHomepage,redifFieldEditorWorkplaceNameEnglish,redifFieldEditorWorkplacePostal,redifFieldEditorWorkplaceLocation,redifFieldEditorWorkplaceEmail,redifFieldEditorWorkplacePhone,redifFieldEditorWorkplaceFax,redifFieldEditorWorkplaceInstitution,redifWrongLine contained transparent fold
|
||||
|
||||
" All the possible fields
|
||||
" Note: The "Handle" field is handled a little bit differently, because it
|
||||
" does not have the same meaning depending on the Template-Type. See:
|
||||
" /redifFieldHandleOf....
|
||||
syntax match redifFieldAbstract /^Abstract:/ skipwhite skipempty nextgroup=redifArgumentAbstract contained
|
||||
syntax match redifFieldArticleHandle /^Article-Handle:/ skipwhite skipempty nextgroup=redifArgumentArticleHandle contained
|
||||
syntax match redifFieldAuthorArticle /^Author-Article:/ skipwhite skipempty nextgroup=redifArgumentAuthorArticle contained
|
||||
syntax match redifFieldAuthorBook /^Author-Book:/ skipwhite skipempty nextgroup=redifArgumentAuthorBook contained
|
||||
syntax match redifFieldAuthorChapter /^Author-Chapter:/ skipwhite skipempty nextgroup=redifArgumentAuthorChapter contained
|
||||
syntax match redifFieldAuthorEmail /^Author-Email:/ skipwhite skipempty nextgroup=redifArgumentAuthorEmail contained
|
||||
syntax match redifFieldAuthorFax /^Author-Fax:/ skipwhite skipempty nextgroup=redifArgumentAuthorFax contained
|
||||
syntax match redifFieldAuthorHomepage /^Author-Homepage:/ skipwhite skipempty nextgroup=redifArgumentAuthorHomepage contained
|
||||
syntax match redifFieldAuthorName /^Author-Name:/ skipwhite skipempty nextgroup=redifArgumentAuthorName contained
|
||||
syntax match redifFieldAuthorNameFirst /^Author-Name-First:/ skipwhite skipempty nextgroup=redifArgumentAuthorNameFirst contained
|
||||
syntax match redifFieldAuthorNameLast /^Author-Name-Last:/ skipwhite skipempty nextgroup=redifArgumentAuthorNameLast contained
|
||||
syntax match redifFieldAuthorPaper /^Author-Paper:/ skipwhite skipempty nextgroup=redifArgumentAuthorPaper contained
|
||||
syntax match redifFieldAuthorPerson /^Author-Person:/ skipwhite skipempty nextgroup=redifArgumentAuthorPerson contained
|
||||
syntax match redifFieldAuthorPhone /^Author-Phone:/ skipwhite skipempty nextgroup=redifArgumentAuthorPhone contained
|
||||
syntax match redifFieldAuthorPostal /^Author-Postal:/ skipwhite skipempty nextgroup=redifArgumentAuthorPostal contained
|
||||
syntax match redifFieldAuthorSoftware /^Author-Software:/ skipwhite skipempty nextgroup=redifArgumentAuthorSoftware contained
|
||||
syntax match redifFieldAuthorWorkplaceEmail /^Author-Workplace-Email:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceEmail contained
|
||||
syntax match redifFieldAuthorWorkplaceFax /^Author-Workplace-Fax:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceFax contained
|
||||
syntax match redifFieldAuthorWorkplaceHomepage /^Author-Workplace-Homepage:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceHomepage contained
|
||||
syntax match redifFieldAuthorWorkplaceInstitution /^Author-Workplace-Institution:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceInstitution contained
|
||||
syntax match redifFieldAuthorWorkplaceLocation /^Author-Workplace-Location:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceLocation contained
|
||||
syntax match redifFieldAuthorWorkplaceName /^Author-Workplace-Name:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceName contained
|
||||
syntax match redifFieldAuthorWorkplaceNameEnglish /^Author-Workplace-Name-English:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceNameEnglish contained
|
||||
syntax match redifFieldAuthorWorkplacePhone /^Author-Workplace-Phone:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplacePhone contained
|
||||
syntax match redifFieldAuthorWorkplacePostal /^Author-Workplace-Postal:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplacePostal contained
|
||||
syntax match redifFieldAvailability /^Availability:/ skipwhite skipempty nextgroup=redifArgumentAvailability contained
|
||||
syntax match redifFieldBookHandle /^Book-Handle:/ skipwhite skipempty nextgroup=redifArgumentBookHandle contained
|
||||
syntax match redifFieldBookTitle /^Book-Title:/ skipwhite skipempty nextgroup=redifArgumentBookTitle contained
|
||||
syntax match redifFieldChapterHandle /^Chapter-Handle:/ skipwhite skipempty nextgroup=redifArgumentChapterHandle contained
|
||||
syntax match redifFieldChapter /^Chapter:/ skipwhite skipempty nextgroup=redifArgumentChapter contained
|
||||
syntax match redifFieldClassificationJEL /^Classification-JEL:/ skipwhite skipempty nextgroup=redifArgumentClassificationJEL contained
|
||||
syntax match redifFieldContactEmail /^Contact-Email:/ skipwhite skipempty nextgroup=redifArgumentContactEmail contained
|
||||
syntax match redifFieldCreationDate /^Creation-Date:/ skipwhite skipempty nextgroup=redifArgumentCreationDate contained
|
||||
syntax match redifFieldDescription /^Description:/ skipwhite skipempty nextgroup=redifArgumentDescription contained
|
||||
syntax match redifFieldEdition /^Edition:/ skipwhite skipempty nextgroup=redifArgumentEdition contained
|
||||
syntax match redifFieldEditorBook /^Editor-Book:/ skipwhite skipempty nextgroup=redifArgumentEditorBook contained
|
||||
syntax match redifFieldEditorEmail /^Editor-Email:/ skipwhite skipempty nextgroup=redifArgumentEditorEmail contained
|
||||
syntax match redifFieldEditorFax /^Editor-Fax:/ skipwhite skipempty nextgroup=redifArgumentEditorFax contained
|
||||
syntax match redifFieldEditorHomepage /^Editor-Homepage:/ skipwhite skipempty nextgroup=redifArgumentEditorHomepage contained
|
||||
syntax match redifFieldEditorName /^Editor-Name:/ skipwhite skipempty nextgroup=redifArgumentEditorName contained
|
||||
syntax match redifFieldEditorNameFirst /^Editor-Name-First:/ skipwhite skipempty nextgroup=redifArgumentEditorNameFirst contained
|
||||
syntax match redifFieldEditorNameLast /^Editor-Name-Last:/ skipwhite skipempty nextgroup=redifArgumentEditorNameLast contained
|
||||
syntax match redifFieldEditorPerson /^Editor-Person:/ skipwhite skipempty nextgroup=redifArgumentEditorPerson contained
|
||||
syntax match redifFieldEditorPhone /^Editor-Phone:/ skipwhite skipempty nextgroup=redifArgumentEditorPhone contained
|
||||
syntax match redifFieldEditorPostal /^Editor-Postal:/ skipwhite skipempty nextgroup=redifArgumentEditorPostal contained
|
||||
syntax match redifFieldEditorSeries /^Editor-Series:/ skipwhite skipempty nextgroup=redifArgumentEditorSeries contained
|
||||
syntax match redifFieldEditorWorkplaceEmail /^Editor-Workplace-Email:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceEmail contained
|
||||
syntax match redifFieldEditorWorkplaceFax /^Editor-Workplace-Fax:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceFax contained
|
||||
syntax match redifFieldEditorWorkplaceHomepage /^Editor-Workplace-Homepage:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceHomepage contained
|
||||
syntax match redifFieldEditorWorkplaceInstitution /^Editor-Workplace-Institution:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceInstitution contained
|
||||
syntax match redifFieldEditorWorkplaceLocation /^Editor-Workplace-Location:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceLocation contained
|
||||
syntax match redifFieldEditorWorkplaceName /^Editor-Workplace-Name:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceName contained
|
||||
syntax match redifFieldEditorWorkplaceNameEnglish /^Editor-Workplace-Name-English:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceNameEnglish contained
|
||||
syntax match redifFieldEditorWorkplacePhone /^Editor-Workplace-Phone:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplacePhone contained
|
||||
syntax match redifFieldEditorWorkplacePostal /^Editor-Workplace-Postal:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplacePostal contained
|
||||
syntax match redifFieldEmail /^Email:/ skipwhite skipempty nextgroup=redifArgumentEmail contained
|
||||
syntax match redifFieldFax /^Fax:/ skipwhite skipempty nextgroup=redifArgumentFax contained
|
||||
syntax match redifFieldFileFormat /^File-Format:/ skipwhite skipempty nextgroup=redifArgumentFileFormat contained
|
||||
syntax match redifFieldFileFunction /^File-Function:/ skipwhite skipempty nextgroup=redifArgumentFileFunction contained
|
||||
syntax match redifFieldFileRestriction /^File-Restriction:/ skipwhite skipempty nextgroup=redifArgumentFileRestriction contained
|
||||
syntax match redifFieldFileSize /^File-Size:/ skipwhite skipempty nextgroup=redifArgumentFileSize contained
|
||||
syntax match redifFieldFileURL /^File-URL:/ skipwhite skipempty nextgroup=redifArgumentFileURL contained
|
||||
syntax match redifFieldFollowup /^Followup:/ skipwhite skipempty nextgroup=redifArgumentFollowup contained
|
||||
syntax match redifFieldHandleOfArchive /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfArchive contained
|
||||
syntax match redifFieldHandleOfInstitution /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfInstitution contained
|
||||
syntax match redifFieldHandleOfPerson /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfPerson contained
|
||||
syntax match redifFieldHandleOfSeries /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfSeries contained
|
||||
syntax match redifFieldHandleOfWork /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfWork contained
|
||||
syntax match redifFieldHasChapter /^HasChapter:/ skipwhite skipempty nextgroup=redifArgumentHasChapter contained
|
||||
syntax match redifFieldHomepage /^Homepage:/ skipwhite skipempty nextgroup=redifArgumentHomepage contained
|
||||
syntax match redifFieldInBook /^In-Book:/ skipwhite skipempty nextgroup=redifArgumentInBook contained
|
||||
syntax match redifFieldISBN /^ISBN:/ skipwhite skipempty nextgroup=redifArgumentISBN contained
|
||||
syntax match redifFieldISSN /^ISSN:/ skipwhite skipempty nextgroup=redifArgumentISSN contained
|
||||
syntax match redifFieldIssue /^Issue:/ skipwhite skipempty nextgroup=redifArgumentIssue contained
|
||||
syntax match redifFieldJournal /^Journal:/ skipwhite skipempty nextgroup=redifArgumentJournal contained
|
||||
syntax match redifFieldKeywords /^Keywords:/ skipwhite skipempty nextgroup=redifArgumentKeywords contained
|
||||
syntax match redifFieldKeywords /^Keywords:/ skipwhite skipempty nextgroup=redifArgumentKeywords contained
|
||||
syntax match redifFieldLanguage /^Language:/ skipwhite skipempty nextgroup=redifArgumentLanguage contained
|
||||
syntax match redifFieldLastLoginDate /^Last-Login-Date:/ skipwhite skipempty nextgroup=redifArgumentLastLoginDate contained
|
||||
syntax match redifFieldLength /^Length:/ skipwhite skipempty nextgroup=redifArgumentLength contained
|
||||
syntax match redifFieldMaintainerEmail /^Maintainer-Email:/ skipwhite skipempty nextgroup=redifArgumentMaintainerEmail contained
|
||||
syntax match redifFieldMaintainerFax /^Maintainer-Fax:/ skipwhite skipempty nextgroup=redifArgumentMaintainerFax contained
|
||||
syntax match redifFieldMaintainerName /^Maintainer-Name:/ skipwhite skipempty nextgroup=redifArgumentMaintainerName contained
|
||||
syntax match redifFieldMaintainerPhone /^Maintainer-Phone:/ skipwhite skipempty nextgroup=redifArgumentMaintainerPhone contained
|
||||
syntax match redifFieldMonth /^Month:/ skipwhite skipempty nextgroup=redifArgumentMonth contained
|
||||
syntax match redifFieldNameASCII /^Name-ASCII:/ skipwhite skipempty nextgroup=redifArgumentNameASCII contained
|
||||
syntax match redifFieldNameFirst /^Name-First:/ skipwhite skipempty nextgroup=redifArgumentNameFirst contained
|
||||
syntax match redifFieldNameFull /^Name-Full:/ skipwhite skipempty nextgroup=redifArgumentNameFull contained
|
||||
syntax match redifFieldNameLast /^Name-Last:/ skipwhite skipempty nextgroup=redifArgumentNameLast contained
|
||||
syntax match redifFieldNameMiddle /^Name-Middle:/ skipwhite skipempty nextgroup=redifArgumentNameMiddle contained
|
||||
syntax match redifFieldNamePrefix /^Name-Prefix:/ skipwhite skipempty nextgroup=redifArgumentNamePrefix contained
|
||||
syntax match redifFieldNameSuffix /^Name-Suffix:/ skipwhite skipempty nextgroup=redifArgumentNameSuffix contained
|
||||
syntax match redifFieldName /^Name:/ skipwhite skipempty nextgroup=redifArgumentName contained
|
||||
syntax match redifFieldNote /^Note:/ skipwhite skipempty nextgroup=redifArgumentNote contained
|
||||
syntax match redifFieldNotification /^Notification:/ skipwhite skipempty nextgroup=redifArgumentNotification contained
|
||||
syntax match redifFieldNumber /^Number:/ skipwhite skipempty nextgroup=redifArgumentNumber contained
|
||||
syntax match redifFieldOrderEmail /^Order-Email:/ skipwhite skipempty nextgroup=redifArgumentOrderEmail contained
|
||||
syntax match redifFieldOrderHomepage /^Order-Homepage:/ skipwhite skipempty nextgroup=redifArgumentOrderHomepage contained
|
||||
syntax match redifFieldOrderPostal /^Order-Postal:/ skipwhite skipempty nextgroup=redifArgumentOrderPostal contained
|
||||
syntax match redifFieldOrderURL /^Order-URL:/ skipwhite skipempty nextgroup=redifArgumentOrderURL contained
|
||||
syntax match redifFieldPages /^Pages:/ skipwhite skipempty nextgroup=redifArgumentPages contained
|
||||
syntax match redifFieldPaperHandle /^Paper-Handle:/ skipwhite skipempty nextgroup=redifArgumentPaperHandle contained
|
||||
syntax match redifFieldPhone /^Phone:/ skipwhite skipempty nextgroup=redifArgumentPhone contained
|
||||
syntax match redifFieldPostal /^Postal:/ skipwhite skipempty nextgroup=redifArgumentPostal contained
|
||||
syntax match redifFieldPredecessor /^Predecessor:/ skipwhite skipempty nextgroup=redifArgumentPredecessor contained
|
||||
syntax match redifFieldPrice /^Price:/ skipwhite skipempty nextgroup=redifArgumentPrice contained
|
||||
syntax match redifFieldPrimaryDefunct /^Primary-Defunct:/ skipwhite skipempty nextgroup=redifArgumentPrimaryDefunct contained
|
||||
syntax match redifFieldPrimaryEmail /^Primary-Email:/ skipwhite skipempty nextgroup=redifArgumentPrimaryEmail contained
|
||||
syntax match redifFieldPrimaryFax /^Primary-Fax:/ skipwhite skipempty nextgroup=redifArgumentPrimaryFax contained
|
||||
syntax match redifFieldPrimaryHomepage /^Primary-Homepage:/ skipwhite skipempty nextgroup=redifArgumentPrimaryHomepage contained
|
||||
syntax match redifFieldPrimaryInstitution /^Primary-Institution:/ skipwhite skipempty nextgroup=redifArgumentPrimaryInstitution contained
|
||||
syntax match redifFieldPrimaryLocation /^Primary-Location:/ skipwhite skipempty nextgroup=redifArgumentPrimaryLocation contained
|
||||
syntax match redifFieldPrimaryName /^Primary-Name:/ skipwhite skipempty nextgroup=redifArgumentPrimaryName contained
|
||||
syntax match redifFieldPrimaryNameEnglish /^Primary-Name-English:/ skipwhite skipempty nextgroup=redifArgumentPrimaryNameEnglish contained
|
||||
syntax match redifFieldPrimaryPhone /^Primary-Phone:/ skipwhite skipempty nextgroup=redifArgumentPrimaryPhone contained
|
||||
syntax match redifFieldPrimaryPostal /^Primary-Postal:/ skipwhite skipempty nextgroup=redifArgumentPrimaryPostal contained
|
||||
syntax match redifFieldProgrammingLanguage /^Programming-Language:/ skipwhite skipempty nextgroup=redifArgumentProgrammingLanguage contained
|
||||
syntax match redifFieldProviderEmail /^Provider-Email:/ skipwhite skipempty nextgroup=redifArgumentProviderEmail contained
|
||||
syntax match redifFieldProviderFax /^Provider-Fax:/ skipwhite skipempty nextgroup=redifArgumentProviderFax contained
|
||||
syntax match redifFieldProviderHomepage /^Provider-Homepage:/ skipwhite skipempty nextgroup=redifArgumentProviderHomepage contained
|
||||
syntax match redifFieldProviderInstitution /^Provider-Institution:/ skipwhite skipempty nextgroup=redifArgumentProviderInstitution contained
|
||||
syntax match redifFieldProviderLocation /^Provider-Location:/ skipwhite skipempty nextgroup=redifArgumentProviderLocation contained
|
||||
syntax match redifFieldProviderName /^Provider-Name:/ skipwhite skipempty nextgroup=redifArgumentProviderName contained
|
||||
syntax match redifFieldProviderNameEnglish /^Provider-Name-English:/ skipwhite skipempty nextgroup=redifArgumentProviderNameEnglish contained
|
||||
syntax match redifFieldProviderPhone /^Provider-Phone:/ skipwhite skipempty nextgroup=redifArgumentProviderPhone contained
|
||||
syntax match redifFieldProviderPostal /^Provider-Postal:/ skipwhite skipempty nextgroup=redifArgumentProviderPostal contained
|
||||
syntax match redifFieldPublicationDate /^Publication-Date:/ skipwhite skipempty nextgroup=redifArgumentPublicationDate contained
|
||||
syntax match redifFieldPublicationStatus /^Publication-Status:/ skipwhite skipempty nextgroup=redifArgumentPublicationStatus contained
|
||||
syntax match redifFieldPublicationType /^Publication-Type:/ skipwhite skipempty nextgroup=redifArgumentPublicationType contained
|
||||
syntax match redifFieldQuaternaryEmail /^Quaternary-Email:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryEmail contained
|
||||
syntax match redifFieldQuaternaryFax /^Quaternary-Fax:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryFax contained
|
||||
syntax match redifFieldQuaternaryHomepage /^Quaternary-Homepage:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryHomepage contained
|
||||
syntax match redifFieldQuaternaryInstitution /^Quaternary-Institution:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryInstitution contained
|
||||
syntax match redifFieldQuaternaryLocation /^Quaternary-Location:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryLocation contained
|
||||
syntax match redifFieldQuaternaryName /^Quaternary-Name:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryName contained
|
||||
syntax match redifFieldQuaternaryNameEnglish /^Quaternary-Name-English:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryNameEnglish contained
|
||||
syntax match redifFieldQuaternaryPhone /^Quaternary-Phone:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryPhone contained
|
||||
syntax match redifFieldQuaternaryPostal /^Quaternary-Postal:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryPostal contained
|
||||
syntax match redifFieldRegisteredDate /^Registered-Date:/ skipwhite skipempty nextgroup=redifArgumentRegisteredDate contained
|
||||
syntax match redifFieldRequires /^Requires:/ skipwhite skipempty nextgroup=redifArgumentRequires contained
|
||||
syntax match redifFieldRestriction /^Restriction:/ skipwhite skipempty nextgroup=redifArgumentRestriction contained
|
||||
syntax match redifFieldRevisionDate /^Revision-Date:/ skipwhite skipempty nextgroup=redifArgumentRevisionDate contained
|
||||
syntax match redifFieldSecondaryDefunct /^Secondary-Defunct:/ skipwhite skipempty nextgroup=redifArgumentSecondaryDefunct contained
|
||||
syntax match redifFieldSecondaryEmail /^Secondary-Email:/ skipwhite skipempty nextgroup=redifArgumentSecondaryEmail contained
|
||||
syntax match redifFieldSecondaryFax /^Secondary-Fax:/ skipwhite skipempty nextgroup=redifArgumentSecondaryFax contained
|
||||
syntax match redifFieldSecondaryHomepage /^Secondary-Homepage:/ skipwhite skipempty nextgroup=redifArgumentSecondaryHomepage contained
|
||||
syntax match redifFieldSecondaryInstitution /^Secondary-Institution:/ skipwhite skipempty nextgroup=redifArgumentSecondaryInstitution contained
|
||||
syntax match redifFieldSecondaryLocation /^Secondary-Location:/ skipwhite skipempty nextgroup=redifArgumentSecondaryLocation contained
|
||||
syntax match redifFieldSecondaryName /^Secondary-Name:/ skipwhite skipempty nextgroup=redifArgumentSecondaryName contained
|
||||
syntax match redifFieldSecondaryNameEnglish /^Secondary-Name-English:/ skipwhite skipempty nextgroup=redifArgumentSecondaryNameEnglish contained
|
||||
syntax match redifFieldSecondaryPhone /^Secondary-Phone:/ skipwhite skipempty nextgroup=redifArgumentSecondaryPhone contained
|
||||
syntax match redifFieldSecondaryPostal /^Secondary-Postal:/ skipwhite skipempty nextgroup=redifArgumentSecondaryPostal contained
|
||||
syntax match redifFieldSeries /^Series:/ skipwhite skipempty nextgroup=redifArgumentSeries contained
|
||||
syntax match redifFieldShortId /^Short-Id:/ skipwhite skipempty nextgroup=redifArgumentShortId contained
|
||||
syntax match redifFieldSize /^Size:/ skipwhite skipempty nextgroup=redifArgumentSize contained
|
||||
syntax match redifFieldSoftwareHandle /^Software-Handle:/ skipwhite skipempty nextgroup=redifArgumentSoftwareHandle contained
|
||||
syntax match redifFieldTemplateType /^Template-Type:/ skipwhite skipempty nextgroup=redifArgumentTemplateType contained
|
||||
syntax match redifFieldTertiaryDefunct /^Tertiary-Defunct:/ skipwhite skipempty nextgroup=redifArgumentTertiaryDefunct contained
|
||||
syntax match redifFieldTertiaryEmail /^Tertiary-Email:/ skipwhite skipempty nextgroup=redifArgumentTertiaryEmail contained
|
||||
syntax match redifFieldTertiaryFax /^Tertiary-Fax:/ skipwhite skipempty nextgroup=redifArgumentTertiaryFax contained
|
||||
syntax match redifFieldTertiaryHomepage /^Tertiary-Homepage:/ skipwhite skipempty nextgroup=redifArgumentTertiaryHomepage contained
|
||||
syntax match redifFieldTertiaryInstitution /^Tertiary-Institution:/ skipwhite skipempty nextgroup=redifArgumentTertiaryInstitution contained
|
||||
syntax match redifFieldTertiaryLocation /^Tertiary-Location:/ skipwhite skipempty nextgroup=redifArgumentTertiaryLocation contained
|
||||
syntax match redifFieldTertiaryName /^Tertiary-Name:/ skipwhite skipempty nextgroup=redifArgumentTertiaryName contained
|
||||
syntax match redifFieldTertiaryNameEnglish /^Tertiary-Name-English:/ skipwhite skipempty nextgroup=redifArgumentTertiaryNameEnglish contained
|
||||
syntax match redifFieldTertiaryPhone /^Tertiary-Phone:/ skipwhite skipempty nextgroup=redifArgumentTertiaryPhone contained
|
||||
syntax match redifFieldTertiaryPostal /^Tertiary-Postal:/ skipwhite skipempty nextgroup=redifArgumentTertiaryPostal contained
|
||||
syntax match redifFieldTitle /^Title:/ skipwhite skipempty nextgroup=redifArgumentTitle contained
|
||||
syntax match redifFieldType /^Type:/ skipwhite skipempty nextgroup=redifArgumentType contained
|
||||
syntax match redifFieldURL /^URL:/ skipwhite skipempty nextgroup=redifArgumentURL contained
|
||||
syntax match redifFieldVersion /^Version:/ skipwhite skipempty nextgroup=redifArgumentVersion contained
|
||||
syntax match redifFieldVolume /^Volume:/ skipwhite skipempty nextgroup=redifArgumentVolume contained
|
||||
syntax match redifFieldWorkplaceEmail /^Workplace-Email:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceEmail contained
|
||||
syntax match redifFieldWorkplaceFax /^Workplace-Fax:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceFax contained
|
||||
syntax match redifFieldWorkplaceHomepage /^Workplace-Homepage:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceHomepage contained
|
||||
syntax match redifFieldWorkplaceInstitution /^Workplace-Institution:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceInstitution contained
|
||||
syntax match redifFieldWorkplaceLocation /^Workplace-Location:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceLocation contained
|
||||
syntax match redifFieldWorkplaceName /^Workplace-Name:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceName contained
|
||||
syntax match redifFieldWorkplaceNameEnglish /^Workplace-Name-English:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceNameEnglish contained
|
||||
syntax match redifFieldWorkplaceOrganization /^Workplace-Organization:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceOrganization contained
|
||||
syntax match redifFieldWorkplacePhone /^Workplace-Phone:/ skipwhite skipempty nextgroup=redifArgumentWorkplacePhone contained
|
||||
syntax match redifFieldWorkplacePostal /^Workplace-Postal:/ skipwhite skipempty nextgroup=redifArgumentWorkplacePostal contained
|
||||
syntax match redifFieldYear /^Year:/ skipwhite skipempty nextgroup=redifArgumentYear contained
|
||||
|
||||
highlight def link redifFieldAbstract redifField
|
||||
highlight def link redifFieldArticleHandle redifField
|
||||
highlight def link redifFieldAuthorArticle redifField
|
||||
highlight def link redifFieldAuthorBook redifField
|
||||
highlight def link redifFieldAuthorChapter redifField
|
||||
highlight def link redifFieldAuthorEmail redifField
|
||||
highlight def link redifFieldAuthorFax redifField
|
||||
highlight def link redifFieldAuthorHomepage redifField
|
||||
highlight def link redifFieldAuthorName redifField
|
||||
highlight def link redifFieldAuthorNameFirst redifField
|
||||
highlight def link redifFieldAuthorNameLast redifField
|
||||
highlight def link redifFieldAuthorPaper redifField
|
||||
highlight def link redifFieldAuthorPerson redifField
|
||||
highlight def link redifFieldAuthorPhone redifField
|
||||
highlight def link redifFieldAuthorPostal redifField
|
||||
highlight def link redifFieldAuthorSoftware redifField
|
||||
highlight def link redifFieldAuthorWorkplaceEmail redifField
|
||||
highlight def link redifFieldAuthorWorkplaceFax redifField
|
||||
highlight def link redifFieldAuthorWorkplaceHomepage redifField
|
||||
highlight def link redifFieldAuthorWorkplaceInstitution redifField
|
||||
highlight def link redifFieldAuthorWorkplaceLocation redifField
|
||||
highlight def link redifFieldAuthorWorkplaceName redifField
|
||||
highlight def link redifFieldAuthorWorkplaceNameEnglish redifField
|
||||
highlight def link redifFieldAuthorWorkplacePhone redifField
|
||||
highlight def link redifFieldAuthorWorkplacePostal redifField
|
||||
highlight def link redifFieldAvailability redifField
|
||||
highlight def link redifFieldBookHandle redifField
|
||||
highlight def link redifFieldBookTitle redifField
|
||||
highlight def link redifFieldChapterHandle redifField
|
||||
highlight def link redifFieldChapter redifField
|
||||
highlight def link redifFieldClassificationJEL redifField
|
||||
highlight def link redifFieldContactEmail redifField
|
||||
highlight def link redifFieldCreationDate redifField
|
||||
highlight def link redifFieldDescription redifField
|
||||
highlight def link redifFieldEdition redifField
|
||||
highlight def link redifFieldEditorBook redifField
|
||||
highlight def link redifFieldEditorEmail redifField
|
||||
highlight def link redifFieldEditorFax redifField
|
||||
highlight def link redifFieldEditorHomepage redifField
|
||||
highlight def link redifFieldEditorName redifField
|
||||
highlight def link redifFieldEditorNameFirst redifField
|
||||
highlight def link redifFieldEditorNameLast redifField
|
||||
highlight def link redifFieldEditorPerson redifField
|
||||
highlight def link redifFieldEditorPhone redifField
|
||||
highlight def link redifFieldEditorPostal redifField
|
||||
highlight def link redifFieldEditorSeries redifField
|
||||
highlight def link redifFieldEditorWorkplaceEmail redifField
|
||||
highlight def link redifFieldEditorWorkplaceFax redifField
|
||||
highlight def link redifFieldEditorWorkplaceHomepage redifField
|
||||
highlight def link redifFieldEditorWorkplaceInstitution redifField
|
||||
highlight def link redifFieldEditorWorkplaceLocation redifField
|
||||
highlight def link redifFieldEditorWorkplaceName redifField
|
||||
highlight def link redifFieldEditorWorkplaceNameEnglish redifField
|
||||
highlight def link redifFieldEditorWorkplacePhone redifField
|
||||
highlight def link redifFieldEditorWorkplacePostal redifField
|
||||
highlight def link redifFieldEmail redifField
|
||||
highlight def link redifFieldFax redifField
|
||||
highlight def link redifFieldFileFormat redifField
|
||||
highlight def link redifFieldFileFunction redifField
|
||||
highlight def link redifFieldFileRestriction redifField
|
||||
highlight def link redifFieldFileSize redifField
|
||||
highlight def link redifFieldFileURL redifField
|
||||
highlight def link redifFieldFollowup redifField
|
||||
highlight def link redifFieldHandleOfArchive redifField
|
||||
highlight def link redifFieldHandleOfInstitution redifField
|
||||
highlight def link redifFieldHandleOfPerson redifField
|
||||
highlight def link redifFieldHandleOfSeries redifField
|
||||
highlight def link redifFieldHandleOfWork redifField
|
||||
highlight def link redifFieldHasChapter redifField
|
||||
highlight def link redifFieldHomepage redifField
|
||||
highlight def link redifFieldInBook redifField
|
||||
highlight def link redifFieldISBN redifField
|
||||
highlight def link redifFieldISSN redifField
|
||||
highlight def link redifFieldIssue redifField
|
||||
highlight def link redifFieldJournal redifField
|
||||
highlight def link redifFieldKeywords redifField
|
||||
highlight def link redifFieldKeywords redifField
|
||||
highlight def link redifFieldLanguage redifField
|
||||
highlight def link redifFieldLastLoginDate redifField
|
||||
highlight def link redifFieldLength redifField
|
||||
highlight def link redifFieldMaintainerEmail redifField
|
||||
highlight def link redifFieldMaintainerFax redifField
|
||||
highlight def link redifFieldMaintainerName redifField
|
||||
highlight def link redifFieldMaintainerPhone redifField
|
||||
highlight def link redifFieldMonth redifField
|
||||
highlight def link redifFieldNameASCII redifField
|
||||
highlight def link redifFieldNameFirst redifField
|
||||
highlight def link redifFieldNameFull redifField
|
||||
highlight def link redifFieldNameLast redifField
|
||||
highlight def link redifFieldNameMiddle redifField
|
||||
highlight def link redifFieldNamePrefix redifField
|
||||
highlight def link redifFieldNameSuffix redifField
|
||||
highlight def link redifFieldName redifField
|
||||
highlight def link redifFieldNote redifField
|
||||
highlight def link redifFieldNotification redifField
|
||||
highlight def link redifFieldNumber redifField
|
||||
highlight def link redifFieldOrderEmail redifField
|
||||
highlight def link redifFieldOrderHomepage redifField
|
||||
highlight def link redifFieldOrderPostal redifField
|
||||
highlight def link redifFieldOrderURL redifField
|
||||
highlight def link redifFieldPages redifField
|
||||
highlight def link redifFieldPaperHandle redifField
|
||||
highlight def link redifFieldPhone redifField
|
||||
highlight def link redifFieldPostal redifField
|
||||
highlight def link redifFieldPredecessor redifField
|
||||
highlight def link redifFieldPrice redifField
|
||||
highlight def link redifFieldPrimaryDefunct redifField
|
||||
highlight def link redifFieldPrimaryEmail redifField
|
||||
highlight def link redifFieldPrimaryFax redifField
|
||||
highlight def link redifFieldPrimaryHomepage redifField
|
||||
highlight def link redifFieldPrimaryInstitution redifField
|
||||
highlight def link redifFieldPrimaryLocation redifField
|
||||
highlight def link redifFieldPrimaryName redifField
|
||||
highlight def link redifFieldPrimaryNameEnglish redifField
|
||||
highlight def link redifFieldPrimaryPhone redifField
|
||||
highlight def link redifFieldPrimaryPostal redifField
|
||||
highlight def link redifFieldProgrammingLanguage redifField
|
||||
highlight def link redifFieldProviderEmail redifField
|
||||
highlight def link redifFieldProviderFax redifField
|
||||
highlight def link redifFieldProviderHomepage redifField
|
||||
highlight def link redifFieldProviderInstitution redifField
|
||||
highlight def link redifFieldProviderLocation redifField
|
||||
highlight def link redifFieldProviderName redifField
|
||||
highlight def link redifFieldProviderNameEnglish redifField
|
||||
highlight def link redifFieldProviderPhone redifField
|
||||
highlight def link redifFieldProviderPostal redifField
|
||||
highlight def link redifFieldPublicationDate redifField
|
||||
highlight def link redifFieldPublicationStatus redifField
|
||||
highlight def link redifFieldPublicationType redifField
|
||||
highlight def link redifFieldQuaternaryEmail redifField
|
||||
highlight def link redifFieldQuaternaryFax redifField
|
||||
highlight def link redifFieldQuaternaryHomepage redifField
|
||||
highlight def link redifFieldQuaternaryInstitution redifField
|
||||
highlight def link redifFieldQuaternaryLocation redifField
|
||||
highlight def link redifFieldQuaternaryName redifField
|
||||
highlight def link redifFieldQuaternaryNameEnglish redifField
|
||||
highlight def link redifFieldQuaternaryPhone redifField
|
||||
highlight def link redifFieldQuaternaryPostal redifField
|
||||
highlight def link redifFieldRegisteredDate redifField
|
||||
highlight def link redifFieldRequires redifField
|
||||
highlight def link redifFieldRestriction redifField
|
||||
highlight def link redifFieldRevisionDate redifField
|
||||
highlight def link redifFieldSecondaryDefunct redifField
|
||||
highlight def link redifFieldSecondaryEmail redifField
|
||||
highlight def link redifFieldSecondaryFax redifField
|
||||
highlight def link redifFieldSecondaryHomepage redifField
|
||||
highlight def link redifFieldSecondaryInstitution redifField
|
||||
highlight def link redifFieldSecondaryLocation redifField
|
||||
highlight def link redifFieldSecondaryName redifField
|
||||
highlight def link redifFieldSecondaryNameEnglish redifField
|
||||
highlight def link redifFieldSecondaryPhone redifField
|
||||
highlight def link redifFieldSecondaryPostal redifField
|
||||
highlight def link redifFieldSeries redifField
|
||||
highlight def link redifFieldShortId redifField
|
||||
highlight def link redifFieldSize redifField
|
||||
highlight def link redifFieldSoftwareHandle redifField
|
||||
highlight def link redifFieldTemplateType redifField
|
||||
highlight def link redifFieldTertiaryDefunct redifField
|
||||
highlight def link redifFieldTertiaryEmail redifField
|
||||
highlight def link redifFieldTertiaryFax redifField
|
||||
highlight def link redifFieldTertiaryHomepage redifField
|
||||
highlight def link redifFieldTertiaryInstitution redifField
|
||||
highlight def link redifFieldTertiaryLocation redifField
|
||||
highlight def link redifFieldTertiaryName redifField
|
||||
highlight def link redifFieldTertiaryNameEnglish redifField
|
||||
highlight def link redifFieldTertiaryPhone redifField
|
||||
highlight def link redifFieldTertiaryPostal redifField
|
||||
highlight def link redifFieldTitle redifField
|
||||
highlight def link redifFieldTitle redifField
|
||||
highlight def link redifFieldType redifField
|
||||
highlight def link redifFieldURL redifField
|
||||
highlight def link redifFieldVersion redifField
|
||||
highlight def link redifFieldVolume redifField
|
||||
highlight def link redifFieldWorkplaceEmail redifField
|
||||
highlight def link redifFieldWorkplaceFax redifField
|
||||
highlight def link redifFieldWorkplaceHomepage redifField
|
||||
highlight def link redifFieldWorkplaceInstitution redifField
|
||||
highlight def link redifFieldWorkplaceLocation redifField
|
||||
highlight def link redifFieldWorkplaceName redifField
|
||||
highlight def link redifFieldWorkplaceNameEnglish redifField
|
||||
highlight def link redifFieldWorkplaceOrganization redifField
|
||||
highlight def link redifFieldWorkplacePhone redifField
|
||||
highlight def link redifFieldWorkplacePostal redifField
|
||||
highlight def link redifFieldYear redifField
|
||||
|
||||
" Deprecated
|
||||
" same as Provider-*
|
||||
" nextgroup=redifArgumentProvider*
|
||||
syntax match redifFieldPublisherEmail /^Publisher-Email:/ skipwhite skipempty nextgroup=redifArgumentProviderEmail contained
|
||||
syntax match redifFieldPublisherFax /^Publisher-Fax:/ skipwhite skipempty nextgroup=redifArgumentProviderFax contained
|
||||
syntax match redifFieldPublisherHomepage /^Publisher-Homepage:/ skipwhite skipempty nextgroup=redifArgumentProviderHomepage contained
|
||||
syntax match redifFieldPublisherInstitution /^Publisher-Institution:/ skipwhite skipempty nextgroup=redifArgumentProviderInstitution contained
|
||||
syntax match redifFieldPublisherLocation /^Publisher-Location:/ skipwhite skipempty nextgroup=redifArgumentProviderLocation contained
|
||||
syntax match redifFieldPublisherName /^Publisher-Name:/ skipwhite skipempty nextgroup=redifArgumentProviderName contained
|
||||
syntax match redifFieldPublisherNameEnglish /^Publisher-Name-English:/ skipwhite skipempty nextgroup=redifArgumentProviderNameEnglish contained
|
||||
syntax match redifFieldPublisherPhone /^Publisher-Phone:/ skipwhite skipempty nextgroup=redifArgumentProviderPhone contained
|
||||
syntax match redifFieldPublisherPostal /^Publisher-Postal:/ skipwhite skipempty nextgroup=redifArgumentProviderPostal contained
|
||||
|
||||
highlight def link redifFieldPublisherEmail redifFieldDeprecated
|
||||
highlight def link redifFieldPublisherFax redifFieldDeprecated
|
||||
highlight def link redifFieldPublisherHomepage redifFieldDeprecated
|
||||
highlight def link redifFieldPublisherInstitution redifFieldDeprecated
|
||||
highlight def link redifFieldPublisherLocation redifFieldDeprecated
|
||||
highlight def link redifFieldPublisherName redifFieldDeprecated
|
||||
highlight def link redifFieldPublisherNameEnglish redifFieldDeprecated
|
||||
highlight def link redifFieldPublisherPhone redifFieldDeprecated
|
||||
highlight def link redifFieldPublisherPostal redifFieldDeprecated
|
||||
|
||||
" Standard arguments
|
||||
" By default, they contain all the argument until another field is started:
|
||||
" start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1
|
||||
" For arguments that must not span more than one line, use a match:
|
||||
" /\%(^\S\{-}:\)\@!\S.*/
|
||||
" AND ADD "display"
|
||||
" This is faster.
|
||||
"
|
||||
" Those arguments are not highlighted so far. They are here for future
|
||||
" extensions.
|
||||
" TODO Find more RegEx for these arguments
|
||||
" TODO Fax, Phone
|
||||
" TODO URL, Homepage
|
||||
" TODO Keywords
|
||||
" TODO Classification-JEL
|
||||
" TODO Short-Id, Author-Person, Editor-Person
|
||||
"
|
||||
" Arguments that may span several lines:
|
||||
syntax region redifArgumentAuthorWorkplaceLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorWorkplacePostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorWorkplacePostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentFileFunction start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentIssue start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentJournal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentOrderPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPrice start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPrimaryLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPrimaryPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentProviderLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentProviderPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentQuaternaryLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentQuaternaryPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentRequires start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSecondaryLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSecondaryPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSize start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentTertiaryLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentTertiaryPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentVersion start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentWorkplaceLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentWorkplacePhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentWorkplacePostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
|
||||
" Arguments that may not span several lines:
|
||||
" If you are sure that these arguments cannot span several lines, change
|
||||
" them to a match:
|
||||
" /\%(^\S\{-}:\)\@!\S.*/
|
||||
" AND ADD "display" after "contained"
|
||||
" You can use this command on each line that you want to change:
|
||||
" :s+\Vregion \(\w\+\) start=/\\%(^\\S\\{-}:\\)\\@!\\S/ end=/^\\S\\{-}:/me=s-1 contained+match \1 /\\%(^\\S\\{-}:\\)\\@!\\S.*/ contained display
|
||||
syntax region redifArgumentAuthorFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorNameFirst start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorNameLast start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorPerson start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorWorkplaceFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorWorkplaceHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorWorkplaceName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorWorkplaceNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentAuthorWorkplacePhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorNameFirst start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorNameLast start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorPerson start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorWorkplaceFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorWorkplaceHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorWorkplaceLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorWorkplaceName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorWorkplaceNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentEditorWorkplacePhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentFileURL start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentMaintainerFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentMaintainerName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentMaintainerPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentNameFirst start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentNameFull start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentNameLast start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentNameMiddle start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentNamePrefix start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentNameSuffix start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentNumber start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentOrderHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentOrderURL start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPrimaryFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPrimaryHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPrimaryName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPrimaryNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentPrimaryPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentProviderFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentProviderHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentProviderName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentProviderNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentProviderPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentQuaternaryFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentQuaternaryHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentQuaternaryName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentQuaternaryNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentQuaternaryPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSecondaryFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSecondaryHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSecondaryName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSecondaryNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSecondaryPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentSeries start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentShortId start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentTertiaryFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentTertiaryHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentTertiaryName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentTertiaryNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentTertiaryPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentURL start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentWorkplaceFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentWorkplaceHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentWorkplaceName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentWorkplaceNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
syntax region redifArgumentWorkplaceOrganization start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained
|
||||
|
||||
" Special arguments
|
||||
" Those arguments require special values
|
||||
" TODO Improve some RegEx
|
||||
" TODO Improve Emails
|
||||
" TODO Improve ISBN
|
||||
" TODO Improve ISSN
|
||||
" TODO Improve spell check (add words from economics.
|
||||
" expl=macroeconometrics, Schumpeterian, IS-LM, etc.)
|
||||
"
|
||||
" Template-Type
|
||||
syntax match redifArgumentTemplateType /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectTemplateType contained display
|
||||
syntax match redifCorrectTemplateType /ReDIF-\%(Paper\|Article\|Chapter\|Book\|Software\|Archive\|Series\|Institution\|Person\)/ nextgroup=redifTemplateVersionNumberContainer contained display
|
||||
syntax match redifTemplateVersionNumberContainer /.\+/ contains=redifTemplateVersionNumber contained display
|
||||
syntax match redifTemplateVersionNumber / \d\+\.\d\+/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentTemplateType redifError
|
||||
highlight def link redifCorrectTemplateType Constant
|
||||
highlight def link redifTemplateVersionNumber Number
|
||||
highlight def link redifTemplateVersionNumberContainer redifError
|
||||
|
||||
" Handles:
|
||||
"
|
||||
" Handles of Works:
|
||||
syntax match redifArgumentHandleOfWork /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentAuthorArticle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentAuthorBook /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentAuthorChapter /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentAuthorPaper /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentAuthorSoftware /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentEditorBook /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentEditorSeries /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentInBook /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentHasChapter /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentArticleHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentBookHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentChapterHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentPaperHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifArgumentSoftwareHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display
|
||||
syntax match redifCorrectHandleOfWork /RePEc:\a\a\a:\%(_\@!\w\)\{6}:\S\+/ contains=redifForbiddenCharactersInHandle,redifBestPracticeInHandle nextgroup=redifWrongLineEnding contained display
|
||||
" TODO Are those characters really forbidden???
|
||||
syntax match redifForbiddenCharactersInHandle /[\/*?"<>|]/ contained display
|
||||
syntax match redifBestPracticeInHandle /\<\%([vi]:[1-9]\d*\|y:[1-9]\d\{3}\|p:[1-9]\d*-[1-9]\d*\|i:\%(jan\|feb\|mar\|apr\|may\|jun\|jul\|aug\|sep\|oct\|nov\|dec\|spr\|sum\|aut\|win\|spe\|Q[1-4]\|\d\d-\d\d\)\|Q:[1-4]\)\>/ contained display
|
||||
|
||||
highlight def link redifArgumentHandleOfWork redifError
|
||||
highlight def link redifArgumentAuthorArticle redifError
|
||||
highlight def link redifArgumentAuthorBook redifError
|
||||
highlight def link redifArgumentAuthorChapter redifError
|
||||
highlight def link redifArgumentAuthorPaper redifError
|
||||
highlight def link redifArgumentAuthorSoftware redifError
|
||||
highlight def link redifArgumentEditorBook redifError
|
||||
highlight def link redifArgumentEditorSeries redifError
|
||||
highlight def link redifArgumentInBook redifError
|
||||
highlight def link redifArgumentHasChapter redifError
|
||||
highlight def link redifArgumentArticleHandle redifError
|
||||
highlight def link redifArgumentBookHandle redifError
|
||||
highlight def link redifArgumentChapterHandle redifError
|
||||
highlight def link redifArgumentPaperHandle redifError
|
||||
highlight def link redifArgumentSoftwareHandle redifError
|
||||
highlight def link redifForbiddenCharactersInHandle redifError
|
||||
highlight def link redifBestPracticeInHandle redifSpecial
|
||||
|
||||
" Handles of Series:
|
||||
syntax match redifArgumentHandleOfSeries /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfSeries contained display
|
||||
syntax match redifArgumentFollowup /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfSeries contained display
|
||||
syntax match redifArgumentPredecessor /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfSeries contained display
|
||||
syntax match redifCorrectHandleOfSeries /RePEc:\a\a\a:\%(_\@!\w\)\{6}/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentHandleOfSeries redifError
|
||||
highlight def link redifArgumentFollowup redifError
|
||||
highlight def link redifArgumentPredecessor redifError
|
||||
|
||||
" Handles of Archives:
|
||||
syntax match redifArgumentHandleOfArchive /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfArchive contained display
|
||||
syntax match redifCorrectHandleOfArchive /RePEc:\a\a\a/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentHandleOfArchive redifError
|
||||
|
||||
" Handles of Person:
|
||||
syntax match redifArgumentHandleOfPerson /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfPerson contained display
|
||||
syntax match redifCorrectHandleOfPerson /\%(\%(:\@!\S\)\{-}:\)\{2}[1-9]\d\{3}\%(-02\%(-[12]\d\|-0[1-9]\)\|-\%(0[469]\|11\)\%(-30\|-[12]\d\|-0[1-9]\)\|-\%(0[13578]\|1[02]\)\%(-3[01]\|-[12]\d\|-0[1-9]\)\):\S\+/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentHandleOfPerson redifError
|
||||
|
||||
" Handles of Institution:
|
||||
syntax match redifArgumentAuthorWorkplaceInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentEditorWorkplaceInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentPrimaryInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentProviderInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentPublisherInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentQuaternaryInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentSecondaryInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentTertiaryInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentWorkplaceInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentHandleOfInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentPrimaryDefunct /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentSecondaryDefunct /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
syntax match redifArgumentTertiaryDefunct /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display
|
||||
" TODO Are digits authorized? Apparently not.
|
||||
" Country codes:
|
||||
" http://www.iso.org/iso/country_codes/iso_3166_code_lists/country_names_and_code_elements.htm
|
||||
syntax match redifCorrectHandleOfInstitution /RePEc:\a\a\a:\a\{5}\(ea\|af\|ax\|al\|dz\|as\|ad\|ao\|ai\|aq\|ag\|ar\|am\|aw\|au\|at\|az\|bs\|bh\|bd\|bb\|by\|be\|bz\|bj\|bm\|bt\|bo\|bq\|ba\|bw\|bv\|br\|io\|bn\|bg\|bf\|bi\|kh\|cm\|ca\|cv\|ky\|cf\|td\|cl\|cn\|cx\|cc\|co\|km\|cg\|cd\|ck\|cr\|ci\|hr\|cu\|cw\|cy\|cz\|dk\|dj\|dm\|do\|ec\|eg\|sv\|gq\|er\|ee\|et\|fk\|fo\|fj\|fi\|fr\|gf\|pf\|tf\|ga\|gm\|ge\|de\|gh\|gi\|gr\|gl\|gd\|gp\|gu\|gt\|gg\|gn\|gw\|gy\|ht\|hm\|va\|hn\|hk\|hu\|is\|in\|id\|ir\|iq\|ie\|im\|il\|it\|jm\|jp\|je\|jo\|kz\|ke\|ki\|kp\|kr\|kw\|kg\|la\|lv\|lb\|ls\|lr\|ly\|li\|lt\|lu\|mo\|mk\|mg\|mw\|my\|mv\|ml\|mt\|mh\|mq\|mr\|mu\|yt\|mx\|fm\|md\|mc\|mn\|me\|ms\|ma\|mz\|mm\|na\|nr\|np\|nl\|nc\|nz\|ni\|ne\|ng\|nu\|nf\|mp\|no\|om\|pk\|pw\|ps\|pa\|pg\|py\|pe\|ph\|pn\|pl\|pt\|pr\|qa\|re\|ro\|ru\|rw\|bl\|sh\|kn\|lc\|mf\|pm\|vc\|ws\|sm\|st\|sa\|sn\|rs\|sc\|sl\|sg\|sx\|sk\|si\|sb\|so\|za\|gs\|ss\|es\|lk\|sd\|sr\|sj\|sz\|se\|ch\|sy\|tw\|tj\|tz\|th\|tl\|tg\|tk\|to\|tt\|tn\|tr\|tm\|tc\|tv\|ug\|ua\|ae\|gb\|us\|um\|uy\|uz\|vu\|ve\|vn\|vg\|vi\|wf\|eh\|ye\|zm\|zw\)/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentHandleOfInstitution redifError
|
||||
highlight def link redifArgumentPrimaryDefunct redifError
|
||||
highlight def link redifArgumentSecondaryDefunct redifError
|
||||
highlight def link redifArgumentTertiaryDefunct redifError
|
||||
|
||||
" Emails:
|
||||
syntax match redifArgumentAuthorEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentAuthorWorkplaceEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentContactEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentEditorEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentEditorWorkplaceEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentMaintainerEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentOrderEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentPrimaryEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentProviderEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentPublisherEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentQuaternaryEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentSecondaryEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentTertiaryEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifArgumentWorkplaceEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display
|
||||
syntax match redifCorrectEmail /\%(@\@!\S\)\+@\%(@\@!\S\)\+/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentAuthorEmail redifError
|
||||
highlight def link redifArgumentAuthorWorkplaceEmail redifError
|
||||
highlight def link redifArgumentContactEmail redifError
|
||||
highlight def link redifArgumentEditorEmail redifError
|
||||
highlight def link redifArgumentEditorWorkplaceEmail redifError
|
||||
highlight def link redifArgumentEmail redifError
|
||||
highlight def link redifArgumentMaintainerEmail redifError
|
||||
highlight def link redifArgumentOrderEmail redifError
|
||||
highlight def link redifArgumentPrimaryEmail redifError
|
||||
highlight def link redifArgumentProviderEmail redifError
|
||||
highlight def link redifArgumentPublisherEmail redifError
|
||||
highlight def link redifArgumentQuaternaryEmail redifError
|
||||
highlight def link redifArgumentSecondaryEmail redifError
|
||||
highlight def link redifArgumentTertiaryEmail redifError
|
||||
highlight def link redifArgumentWorkplaceEmail redifError
|
||||
|
||||
" Language
|
||||
" Source: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
|
||||
syntax match redifArgumentLanguage /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectLanguage contained display
|
||||
syntax match redifCorrectLanguage /\<\(aa\|ab\|af\|ak\|als\|am\|an\|ang\|ar\|arc\|as\|ast\|av\|ay\|az\|ba\|bar\|bat-smg\|bcl\|be\|be-x-old\|bg\|bh\|bi\|bm\|bn\|bo\|bpy\|br\|bs\|bug\|bxr\|ca\|ce\|ceb\|ch\|cho\|chr\|chy\|co\|cr\|cs\|csb\|cu\|cv\|cy\|da\|de\|diq\|dsb\|dv\|dz\|ee\|el\|en\|eo\|es\|et\|eu\|ext\|fa\|ff\|fi\|fiu-vro\|fj\|fo\|fr\|frp\|fur\|fy\|ga\|gd\|gil\|gl\|gn\|got\|gu\|gv\|ha\|haw\|he\|hi\|ho\|hr\|ht\|hu\|hy\|hz\|ia\|id\|ie\|ig\|ii\|ik\|ilo\|io\|is\|it\|iu\|ja\|jbo\|jv\|ka\|kg\|ki\|kj\|kk\|kl\|km\|kn\|khw\|ko\|kr\|ks\|ksh\|ku\|kv\|kw\|ky\|la\|lad\|lan\|lb\|lg\|li\|lij\|lmo\|ln\|lo\|lt\|lv\|map-bms\|mg\|mh\|mi\|mk\|ml\|mn\|mo\|mr\|ms\|mt\|mus\|my\|na\|nah\|nap\|nd\|nds\|nds-nl\|ne\|new\|ng\|nl\|nn\|no\|nr\|nso\|nrm\|nv\|ny\|oc\|oj\|om\|or\|os\|pa\|pag\|pam\|pap\|pdc\|pi\|pih\|pl\|pms\|ps\|pt\|qu\|rm\|rmy\|rn\|ro\|roa-rup\|ru\|rw\|sa\|sc\|scn\|sco\|sd\|se\|sg\|sh\|si\|simple\|sk\|sl\|sm\|sn\|so\|sq\|sr\|ss\|st\|su\|sv\|sw\|ta\|te\|tet\|tg\|th\|ti\|tk\|tl\|tlh\|tn\|to\|tpi\|tr\|ts\|tt\|tum\|tw\|ty\|udm\|ug\|uk\|ur\|uz\|ve\|vi\|vec\|vls\|vo\|wa\|war\|wo\|xal\|xh\|yi\|yo\|za\|zh\|zh-min-nan\|zh-yue\|zu\)\>/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentLanguage redifError
|
||||
highlight def link redifCorrectLanguage redifSpecial
|
||||
|
||||
" Length
|
||||
" Based on the example in the documentation. But apparently any field is
|
||||
" possible
|
||||
syntax region redifArgumentLength start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=redifGoodLength contained
|
||||
syntax match redifGoodLength /1 page\|[1-9]\d*\%( pages\)\=/ contained display
|
||||
|
||||
highlight def link redifGoodLength redifSpecial
|
||||
|
||||
" Publication-Type
|
||||
syntax match redifArgumentPublicationType /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectPublicationType contained display
|
||||
syntax match redifCorrectPublicationType /\<\(journal article\|book\|book chapter\|working paper\|conference paper\|report\|other\)\>/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentPublicationType redifError
|
||||
highlight def link redifCorrectPublicationType redifSpecial
|
||||
|
||||
" Publication-Status
|
||||
syntax region redifArgumentPublicationStatus start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=redifSpecialPublicationStatus contained
|
||||
syntax match redifSpecialPublicationStatus /published\|forthcoming/ nextgroup=redifCorrectPublicationStatus contained display
|
||||
syntax region redifCorrectPublicationStatus start=/./ end=/^\S\{-}:/me=s-1 contained
|
||||
|
||||
highlight def link redifArgumentPublicationStatus redifError
|
||||
highlight def link redifSpecialPublicationStatus redifSpecial
|
||||
|
||||
" Month
|
||||
" TODO Are numbers also allowed?
|
||||
syntax match redifArgumentMonth /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodMonth contained display
|
||||
syntax match redifGoodMonth /\<\(Jan\%(uary\)\=\|Feb\%(ruary\)\=\|Mar\%(ch\)\=\|Apr\%(il\)\=\|May\|June\=\|July\=\|Aug\%(ust\)\=\|Sep\%(tember\)\=\|Oct\%(ober\)\=\|Nov\%(ember\)\=\|Dec\%(ember\)\=\)\>/ contained display
|
||||
|
||||
highlight def link redifGoodMonth redifSpecial
|
||||
|
||||
" Integers: Volume, Chapter
|
||||
syntax match redifArgumentVolume /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectInteger contained display
|
||||
syntax match redifArgumentChapter /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectInteger contained display
|
||||
syntax match redifCorrectInteger /[1-9]\d*/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentVolume redifError
|
||||
highlight def link redifArgumentChapter redifError
|
||||
|
||||
" Year
|
||||
syntax match redifArgumentYear /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectYear contained display
|
||||
syntax match redifCorrectYear /[1-9]\d\{3}/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentYear redifError
|
||||
|
||||
" Edition
|
||||
" Based on the example in the documentation.
|
||||
syntax match redifArgumentEdition /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodEdition contained display
|
||||
syntax match redifGoodEdition /1st\|2nd\|3rd\|[4-9]th\|[1-9]\d*\%(1st\|2nd\|3rd\|[4-9]th\)\|[1-9]\d*/ contained display
|
||||
|
||||
highlight def link redifGoodEdition redifSpecial
|
||||
|
||||
" ISBN
|
||||
syntax match redifArgumentISBN /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodISBN contained display
|
||||
syntax match redifGoodISBN /\d[0-9-]\{8,15}\d/ contained display
|
||||
|
||||
highlight def link redifGoodISBN redifSpecial
|
||||
|
||||
" ISSN
|
||||
syntax match redifArgumentISSN /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodISSN contained display
|
||||
syntax match redifGoodISSN /\d\{4}-\d\{3}[0-9X]/ contained display
|
||||
|
||||
highlight def link redifGoodISSN redifSpecial
|
||||
|
||||
" File-Size
|
||||
" Based on the example in the documentation.
|
||||
syntax region redifArgumentFileSize start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=redifGoodSize contained
|
||||
syntax match redifGoodSize /kb\|bytes/ contained display
|
||||
|
||||
highlight def link redifGoodSize redifSpecial
|
||||
|
||||
" Type
|
||||
syntax match redifArgumentType /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectType contained display
|
||||
syntax match redifCorrectType /ReDIF-Paper\|ReDIF-Software\|ReDIF-Article\|ReDIF-Chapter\|ReDIF-Book/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentType redifError
|
||||
highlight def link redifCorrectType redifSpecial
|
||||
|
||||
" Dates: Publication-Date, Creation-Date, Revision-Date,
|
||||
" Last-Login-Date, Registration-Date
|
||||
syntax match redifArgumentCreationDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display
|
||||
syntax match redifArgumentLastLoginDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display
|
||||
syntax match redifArgumentPublicationDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display
|
||||
syntax match redifArgumentRegisteredDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display
|
||||
syntax match redifArgumentRevisionDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display
|
||||
syntax match redifCorrectDate /[1-9]\d\{3}\%(-02\%(-[12]\d\|-0[1-9]\)\=\|-\%(0[469]\|11\)\%(-30\|-[12]\d\|-0[1-9]\)\=\|-\%(0[13578]\|1[02]\)\%(-3[01]\|-[12]\d\|-0[1-9]\)\=\)\=/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentCreationDate redifError
|
||||
highlight def link redifArgumentLastLoginDate redifError
|
||||
highlight def link redifArgumentPublicationDate redifError
|
||||
highlight def link redifArgumentRegisteredDate redifError
|
||||
highlight def link redifArgumentRevisionDate redifError
|
||||
|
||||
" Classification-JEL
|
||||
syntax match redifArgumentClassificationJEL /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectJEL contained display
|
||||
syntax match redifCorrectJEL /\<\%(\u\d\{,2}[,; \t]\s*\)*\u\d\{,2}/ contains=redifSpecialJEL nextgroup=redifWrongLineEnding contained display
|
||||
syntax match redifSpecialJEL /\<\u\d\{,2}/ contained display
|
||||
|
||||
highlight def link redifArgumentClassificationJEL redifError
|
||||
highlight def link redifSpecialJEL redifSpecial
|
||||
|
||||
" Pages
|
||||
syntax match redifArgumentPages /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectPages contained display
|
||||
syntax match redifCorrectPages /[1-9]\d*-[1-9]\d*/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifArgumentPages redifError
|
||||
|
||||
" Name-ASCII
|
||||
syntax match redifArgumentNameASCII /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectNameASCII contained display
|
||||
syntax match redifCorrectNameASCII /[ -~]/ contained display
|
||||
|
||||
highlight def link redifArgumentNameASCII redifError
|
||||
|
||||
" Programming-Language
|
||||
syntax match redifArgumentProgrammingLanguage /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodProgrammingLanguage contained display
|
||||
syntax match redifGoodProgrammingLanguage /\<c++\|\<\%(c\|dos executable\|executable\|fortran\|gauss\|gretl\|java\|mathematica\|matlab\|octave\|ox\|perl\|python\|rats\|r\|shazam\|s-plus\|stata\|tsp international\)\>/ nextgroup=redifWrongLineEnding contained display
|
||||
|
||||
highlight def link redifGoodProgrammingLanguage redifSpecial
|
||||
|
||||
" File-Format
|
||||
" TODO The link in the documentation that gives the list of possible formats is broken.
|
||||
" ftp://ftp.isi.edu/in-notes/iana/assignments/media-types/media-types
|
||||
" These are based on the examples in the documentation.
|
||||
syntax match redifArgumentFileFormat /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodFormat contained display
|
||||
syntax match redifGoodFormat "\a\+/[[:alpha:]+-]\+" nextgroup=redifWrongLineEnding contains=redifSpecialFormat contained display
|
||||
syntax match redifSpecialFormat "application/atom+xml\|application/ecmascript\|application/EDI-X12\|application/EDIFACT\|application/json\|application/javascript\|application/octet-stream\|application/ogg\|application/pdf\|application/postscript\|application/rdf+xml\|application/rss+xml\|application/soap+xml\|application/font-woff\|application/xhtml+xml\|application/xml\|application/xml-dtd\|application/xop+xml\|application/zip\|application/gzip\|audio/basic\|audio/L24\|audio/mp4\|audio/mpeg\|audio/ogg\|audio/vorbis\|audio/vnd.rn-realaudio\|audio/vnd.wave\|audio/webm\|image/gif\|image/jpeg\|image/pjpeg\|image/png\|image/svg+xml\|image/tiff\|image/vnd.microsoft.icon\|message/http\|message/imdn+xml\|message/partial\|message/rfc822\|model/example\|model/iges\|model/mesh\|model/vrml\|model/x3d+binary\|model/x3d+vrml\|model/x3d+xml\|multipart/mixed\|multipart/alternative\|multipart/related\|multipart/form-data\|multipart/signed\|multipart/encrypted\|text/cmd\|text/css\|text/csv\|text/html\|text/javascript\|text/plain\|text/vcard\|text/xml\|video/mpeg\|video/mp4\|video/ogg\|video/quicktime\|video/webm\|video/x-matroska\|video/x-ms-wmv\|video/x-flv" contained display
|
||||
|
||||
highlight def link redifSpecialFormat redifSpecial
|
||||
highlight def link redifArgumentFileFormat redifError
|
||||
|
||||
" Keywords
|
||||
" Spell checked
|
||||
syntax match redifArgumentKeywords /\%(^\S\{-}:\)\@!\S.*/ contains=@Spell,redifKeywordsSemicolon contained
|
||||
syntax match redifKeywordsSemicolon /;/ contained
|
||||
|
||||
highlight def link redifKeywordsSemicolon redifSpecial
|
||||
|
||||
" Other spell-checked arguments
|
||||
" Very useful when copy-pasting abstracts that may contain hyphens or
|
||||
" ligatures.
|
||||
syntax region redifArgumentAbstract start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
syntax region redifArgumentAvailability start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
syntax region redifArgumentBookTitle start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
syntax region redifArgumentDescription start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
syntax region redifArgumentFileRestriction start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
syntax region redifArgumentNote start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
syntax region redifArgumentNotification start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
syntax region redifArgumentRestriction start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
syntax region redifArgumentTitle start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained
|
||||
|
||||
" Wrong line ending
|
||||
syntax match redifWrongLineEnding /.\+/ contained display
|
||||
|
||||
highlight def link redifWrongLineEnding redifError
|
||||
|
||||
" Final highlight
|
||||
highlight def link redifComment Comment
|
||||
highlight def link redifError Error
|
||||
highlight def link redifField Identifier
|
||||
highlight def link redifFieldDeprecated Identifier
|
||||
highlight def link redifSpecial Special
|
||||
" For deprecated fields:
|
||||
highlight redifFieldDeprecated term=undercurl cterm=undercurl gui=undercurl guisp=DarkGrey
|
||||
|
||||
" Sync: The template-type (ReDIF-Paper, ReDIF-Archive, etc.) influences which
|
||||
" fields can follow. Thus sync must search backwards for it.
|
||||
"
|
||||
" I would like to simply ask VIM to search backward for the first occurence of
|
||||
" /^Template-Type:/, but it does not seem to be possible, so I have to start
|
||||
" from the beginning of the file... This might slow down a lot for files that
|
||||
" contain a lot of Template-Type statements.
|
||||
syntax sync fromstart
|
||||
|
||||
" The problem with syntax sync match (tried below), it is that, for example,
|
||||
" it cannot realize when it is inside a Author-Name cluster, which is inside a
|
||||
" Template-Type template...
|
||||
"
|
||||
" TODO Is this linecont pattern really useful? It seems to work anyway...
|
||||
"syntax sync linecont /^\(Template-Type:\)\=\s*$/
|
||||
" TODO This sync is surprising... It seems to work on several lines even
|
||||
" though I replaced \_s* by \s*, even without the linecont pattern...
|
||||
"syntax sync match redifSyncForTemplatePaper groupthere redifRegionTemplatePaper /^Template-Type:\s*ReDIF-Paper \d\+\.\d\+/
|
||||
"syntax sync match redifSyncForTemplateArticle groupthere redifRegionTemplateArticle /^Template-Type:\s*ReDIF-Article \d\+\.\d\+/
|
||||
"syntax sync match redifSyncForTemplateChapter groupthere redifRegionTemplateChapter /^Template-Type:\s*ReDIF-Chapter \d\+\.\d\+/
|
||||
"syntax sync match redifSyncForTemplateBook groupthere redifRegionTemplateBook /^Template-Type:\s*ReDIF-Book \d\+\.\d\+/
|
||||
"syntax sync match redifSyncForTemplateSoftware groupthere redifRegionTemplateSoftware /^Template-Type:\s*ReDIF-Software \d\+\.\d\+/
|
||||
"syntax sync match redifSyncForTemplateArchive groupthere redifRegionTemplateArchive /^Template-Type:\s*ReDIF-Archive \d\+\.\d\+/
|
||||
"syntax sync match redifSyncForTemplateSeries groupthere redifRegionTemplateSeries /^Template-Type:\s*ReDIF-Series \d\+\.\d\+/
|
||||
"syntax sync match redifSyncForTemplateInstitution groupthere redifRegionTemplateInstitution /^Template-Type:\s*ReDIF-Institution \d\+\.\d\+/
|
||||
"syntax sync match redifSyncForTemplatePerson groupthere redifRegionTemplatePerson /^Template-Type:\s*ReDIF-Person \d\+\.\d\+/
|
||||
|
||||
" I do not really know how sync linebreaks works, but it helps when making
|
||||
" changes on the argument when this argument is not on the same line than its
|
||||
" field. I just assume that people won't leave more than one line of
|
||||
" whitespace between fields and arguments (which is already very unlikely)
|
||||
" hence the value of 2.
|
||||
syntax sync linebreaks=2
|
||||
|
||||
" Since folding is defined by the syntax, set foldmethod to syntax.
|
||||
set foldmethod=syntax
|
||||
|
||||
" Set "b:current_syntax" to the name of the syntax at the end:
|
||||
let b:current_syntax="redif"
|
||||
25
runtime/syntax/rng.vim
Normal file
25
runtime/syntax/rng.vim
Normal file
@@ -0,0 +1,25 @@
|
||||
" Vim syntax file
|
||||
" Language: RELAX NG
|
||||
" Maintainer: Jaromir Hradilek <jhradilek@gmail.com>
|
||||
" URL: https://github.com/jhradilek/vim-rng
|
||||
" Last Change: 25 March 2013
|
||||
" Description: A syntax file for RELAX NG, a schema language for XML
|
||||
|
||||
if exists('b:current_syntax')
|
||||
finish
|
||||
endif
|
||||
|
||||
do Syntax xml
|
||||
syn spell toplevel
|
||||
syn cluster xmlTagHook add=rngTagName
|
||||
syn case match
|
||||
|
||||
syn keyword rngTagName anyName attribute choice data define div contained
|
||||
syn keyword rngTagName element empty except externalRef grammar contained
|
||||
syn keyword rngTagName group include interleave list mixed name contained
|
||||
syn keyword rngTagName notAllowed nsName oneOrMore optional param contained
|
||||
syn keyword rngTagName parentRef ref start text value zeroOrMore contained
|
||||
|
||||
hi def link rngTagName Statement
|
||||
|
||||
let b:current_syntax = 'rng'
|
||||
@@ -1,8 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: SGML-linuxdoc (supported by old sgmltools-1.x)
|
||||
" (for more information, visit www.sgmltools.org)
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Last Change: 2008 Sep 17
|
||||
" Last Change: 2013 May 13
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -29,7 +28,7 @@ syn region sgmllnxSpecial oneline start="&" end=";"
|
||||
syn keyword sgmllnxTagName contained article author date toc title sect verb
|
||||
syn keyword sgmllnxTagName contained abstract tscreen p itemize item enum
|
||||
syn keyword sgmllnxTagName contained descrip quote htmlurl code ref
|
||||
syn keyword sgmllnxTagName contained tt tag bf
|
||||
syn keyword sgmllnxTagName contained tt tag bf it url
|
||||
syn match sgmllnxTagName contained "sect\d\+"
|
||||
|
||||
" Comments
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
" Language: shell (sh) Korn shell (ksh) bash (sh)
|
||||
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
|
||||
" Last Change: Nov 14, 2012
|
||||
" Version: 128
|
||||
" Last Change: Mar 04, 2013
|
||||
" Version: 129
|
||||
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
|
||||
" For options and settings, please use: :help ft-sh-syntax
|
||||
" This file includes many ideas from ?ric Brunet (eric.brunet@ens.fr)
|
||||
@@ -108,7 +108,7 @@ syn cluster shArithList contains=@shArithParenList,shParenError
|
||||
syn cluster shCaseEsacList contains=shCaseStart,shCase,shCaseBar,shCaseIn,shComment,shDeref,shDerefSimple,shCaseCommandSub,shCaseExSingleQuote,shCaseSingleQuote,shCaseDoubleQuote,shCtrlSeq,@shErrorList,shStringSpecial,shCaseRange
|
||||
syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq
|
||||
"syn cluster shColonList contains=@shCaseList
|
||||
syn cluster shCommandSubList contains=shArithmetic,shDeref,shDerefSimple,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shSingleQuote,shExDoubleQuote,shDoubleQuote,shStatement,shVariable,shSubSh,shAlias,shTest,shCtrlSeq,shSpecial,shCmdParenRegion
|
||||
syn cluster shCommandSubList contains=shArithmetic,shDeref,shDerefSimple,shEcho,shEscape,shNumber,shOption,shPosnParm,shExSingleQuote,shSingleQuote,shExDoubleQuote,shDoubleQuote,shStatement,shVariable,shSubSh,shAlias,shTest,shCtrlSeq,shSpecial,shCmdParenRegion
|
||||
syn cluster shCurlyList contains=shNumber,shComma,shDeref,shDerefSimple,shDerefSpecial
|
||||
syn cluster shDblQuoteList contains=shCommandSub,shDeref,shDerefSimple,shEscape,shPosnParm,shCtrlSeq,shSpecial
|
||||
syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPPS
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" SiSU Vim syntax file
|
||||
" SiSU Maintainer: Ralph Amissah <ralph@amissah.com>
|
||||
" SiSU Markup: SiSU (sisu-3.1.0)
|
||||
" Last Change: 2011-10-03
|
||||
" URL: <http://git.sisudoc.org/?p=code/sisu.git;a=blob;f=data/sisu/v3/conf/editor-syntax-etc/vim/syntax/sisu.vim;hb=HEAD>
|
||||
" 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>
|
||||
"(originally looked at Ruby Vim by Mirko Nasato)
|
||||
|
||||
if version < 600
|
||||
@@ -20,14 +20,9 @@ syn match sisu_error contains=sisu_link,sisu_error_wspace "<![^ei]\S\+!>"
|
||||
"% "Markers Identifiers:
|
||||
if !exists("sisu_no_identifiers")
|
||||
syn match sisu_mark_endnote "\~^"
|
||||
syn match sisu_break contains=@NoSpell " \\\\\( \|$\)"
|
||||
syn match sisu_break contains=@NoSpell "<br>\|<br />"
|
||||
syn match sisu_control contains=@NoSpell "^<:p[bn]>\s*$"
|
||||
"syn match sisu_control contains=@NoSpell "^<\(br\)\?:\(pg\|pgn\|pn\)>\s*$"
|
||||
"syn match sisu_control contains=@NoSpell "^\[\(br\)\?:\(pg\|pgn\|pn\)\]\s*$"
|
||||
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_control contains=@NoSpell "^<\(br\)\?:\(pr\|o\)>\s*$"
|
||||
"syn match sisu_control contains=@NoSpell "^\[\(br\)\?:\(pr\|o\)\]\s*$"
|
||||
syn match sisu_marktail "[~-]#"
|
||||
syn match sisu_control "\""
|
||||
syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)"
|
||||
@@ -43,11 +38,12 @@ if !exists("sisu_no_identifiers")
|
||||
syn match sisu_sub_header_title "^\s\+:\(subtitle\|short\|edition\|language\|lang_char\|note\):\s" "group=sisu_header_content
|
||||
syn match sisu_sub_header_creator "^\s\+:\(author\|editor\|contributor\|illustrator\|photographer\|translator\|digitized_by\|prepared_by\|audio\|video\):\s" " &hon &institution
|
||||
syn match sisu_sub_header_rights "^\s\+:\(copyright\|text\|translation\|illustrations\|photographs\|preparation\|digitization\|audio\|video\|license\|all\):\s" " access_rights license
|
||||
syn match sisu_sub_header_classify "^\s\+:\(topic_register\|coverage\|format\|identifier\|keywords\|relation\|subject\|type\|dewey\|loc\|oclc\|pg\|isbn\):\s"
|
||||
syn match sisu_sub_header_date "^\s\+:\(added_to_site\|available\|created\|issued\|modified\|published\|valid\|translated\|original_publication\):\s"
|
||||
syn match sisu_sub_header_classify "^\s\+:\(topic_register\|keywords\|subject\|dewey\|loc\):\s"
|
||||
syn match sisu_sub_header_identifier "^\s\+:\(oclc\|isbn\):\s"
|
||||
syn match sisu_sub_header_date "^\s\+:\(added_to_site\|available\|created\|issued\|modified\|published\|valid\|translated\|original_publication\):\s"
|
||||
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\|plaintext_wrap\|texpdf_font_mono\|texpdf_font\|skin\|stamp\|promo\|ad\|manpage\):\s"
|
||||
syn match sisu_sub_header_notes "^\s\+:\(abstract\|comment\|description\|history\|prefix\|prefix_[ab]\|suffix\):\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"
|
||||
|
||||
"% "semantic markers: (ignore)
|
||||
syn match sisu_sem_marker ";{\|};[a-z._]*[a-z]"
|
||||
@@ -85,6 +81,8 @@ 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_rights matchgroup=sisu_header start="^[@]rights:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$"
|
||||
" classify document
|
||||
syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_classify matchgroup=sisu_header start="^[@]classify:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$"
|
||||
" identifier document
|
||||
syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_identifier matchgroup=sisu_header start="^[@]identifier:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$"
|
||||
" original language (depreciated)
|
||||
syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_original matchgroup=sisu_header start="^[@]original:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$"
|
||||
" notes
|
||||
@@ -219,6 +217,7 @@ hi def link sisu_sub_header_date Statement
|
||||
hi def link sisu_sub_header_publisher Statement
|
||||
hi def link sisu_sub_header_rights Statement
|
||||
hi def link sisu_sub_header_classify Statement
|
||||
hi def link sisu_sub_header_identifier Statement
|
||||
hi def link sisu_sub_header_original Statement
|
||||
hi def link sisu_sub_header_links Statement
|
||||
hi def link sisu_sub_header_notes Statement
|
||||
|
||||
@@ -20,6 +20,7 @@ syn keyword sliceQualifier const extends idempotent implements local nonmutatin
|
||||
syn keyword sliceBoolean false true
|
||||
|
||||
" Include directives
|
||||
syn region sliceIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+
|
||||
syn match sliceIncluded display contained "<[^>]*>"
|
||||
syn match sliceInclude display "^\s*#\s*include\>\s*["<]" contains=sliceIncluded
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
|
||||
" Vim syntax file
|
||||
" Language: SQL, Adaptive Server Anywhere
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Last Change: 2012 Jan 23
|
||||
" Version: 12.0.1
|
||||
" Last Change: 2013 May 13
|
||||
" Version: 16.0.0
|
||||
|
||||
" Description: Updated to Adaptive Server Anywhere 12.0.1 (including spatial data)
|
||||
" Description: Updated to Adaptive Server Anywhere 16.0.0
|
||||
" Updated to Adaptive Server Anywhere 12.0.1 (including spatial data)
|
||||
" Updated to Adaptive Server Anywhere 11.0.1
|
||||
" Updated to Adaptive Server Anywhere 10.0.1
|
||||
" Updated to Adaptive Server Anywhere 9.0.2
|
||||
@@ -27,33 +27,34 @@ syn case ignore
|
||||
syn keyword sqlSpecial false null true
|
||||
|
||||
" common functions
|
||||
syn keyword sqlFunction count sum avg min max debug_eng isnull
|
||||
syn keyword sqlFunction greater lesser argn string ymd todate
|
||||
syn keyword sqlFunction totimestamp date today now utc_now
|
||||
syn keyword sqlFunction number identity years months weeks days
|
||||
syn keyword sqlFunction hours minutes seconds second minute hour
|
||||
syn keyword sqlFunction day month year dow date_format substr
|
||||
syn keyword sqlFunction substring byte_substr length byte_length
|
||||
syn keyword sqlFunction datalength ifnull evaluate list
|
||||
syn keyword sqlFunction soundex similar difference like_start
|
||||
syn keyword sqlFunction like_end regexp_compile
|
||||
syn keyword sqlFunction regexp_compile_patindex remainder abs
|
||||
syn keyword sqlFunction graphical_plan plan explanation ulplan
|
||||
syn keyword sqlFunction graphical_ulplan long_ulplan
|
||||
syn keyword sqlFunction short_ulplan rewrite watcomsql
|
||||
syn keyword sqlFunction transactsql dialect estimate
|
||||
syn keyword sqlFunction estimate_source index_estimate
|
||||
syn keyword sqlFunction experience_estimate traceback wsql_state
|
||||
syn keyword sqlFunction lang_message dateadd datediff datepart
|
||||
syn keyword sqlFunction datename dayname monthname quarter
|
||||
syn keyword sqlFunction tsequal hextoint inttohex rand textptr
|
||||
syn keyword sqlFunction rowid grouping stddev variance rank
|
||||
syn keyword sqlFunction dense_rank density percent_rank user_name
|
||||
syn keyword sqlFunction user_id str stuff char_length nullif
|
||||
syn keyword sqlFunction sortkey compare ts_index_statistics
|
||||
syn keyword sqlFunction ts_table_statistics isdate isnumeric
|
||||
syn keyword sqlFunction get_identity lookup newid uuidtostr
|
||||
syn keyword sqlFunction strtouuid varexists
|
||||
syn keyword sqlFunction abs argn avg bintohex bintostr
|
||||
syn keyword sqlFunction byte_length byte_substr char_length
|
||||
syn keyword sqlFunction compare count count_big datalength date
|
||||
syn keyword sqlFunction date_format dateadd datediff datename
|
||||
syn keyword sqlFunction datepart day dayname days debug_eng
|
||||
syn keyword sqlFunction dense_rank density dialect difference
|
||||
syn keyword sqlFunction dow estimate estimate_source evaluate
|
||||
syn keyword sqlFunction experience_estimate explanation
|
||||
syn keyword sqlFunction get_identity graphical_plan
|
||||
syn keyword sqlFunction graphical_ulplan greater grouping
|
||||
syn keyword sqlFunction hextobin hextoint hour hours identity
|
||||
syn keyword sqlFunction ifnull index_estimate inttohex isdate
|
||||
syn keyword sqlFunction isencrypted isnull isnumeric
|
||||
syn keyword sqlFunction lang_message length lesser like_end
|
||||
syn keyword sqlFunction like_start list long_ulplan lookup max
|
||||
syn keyword sqlFunction min minute minutes month monthname
|
||||
syn keyword sqlFunction months newid now nullif number
|
||||
syn keyword sqlFunction percent_rank plan quarter rand rank
|
||||
syn keyword sqlFunction regexp_compile regexp_compile_patindex
|
||||
syn keyword sqlFunction remainder rewrite rowid second seconds
|
||||
syn keyword sqlFunction short_ulplan similar sortkey soundex
|
||||
syn keyword sqlFunction stddev stack_trace str string strtobin strtouuid stuff
|
||||
syn keyword sqlFunction subpartition substr substring sum switchoffset sysdatetimeoffset
|
||||
syn keyword sqlFunction textptr todate todatetimeoffset today totimestamp traceback transactsql
|
||||
syn keyword sqlFunction ts_index_statistics ts_table_statistics
|
||||
syn keyword sqlFunction tsequal ulplan user_id user_name utc_now
|
||||
syn keyword sqlFunction uuidtostr varexists variance watcomsql
|
||||
syn keyword sqlFunction weeks wsql_state year years ymd
|
||||
|
||||
" 9.0.1 functions
|
||||
syn keyword sqlFunction acos asin atan atn2 cast ceiling convert cos cot
|
||||
@@ -473,31 +474,36 @@ syn keyword sqlFunction ST_ToPoint
|
||||
syn keyword sqlFunction ST_ToPolygon
|
||||
syn keyword sqlFunction ST_ToSurface
|
||||
|
||||
" Array functions 16.x
|
||||
syn keyword sqlFunction array array_agg array_max_cardinality trim_array
|
||||
syn keyword sqlFunction error_line error_message error_procedure
|
||||
syn keyword sqlFunction error_sqlcode error_sqlstate error_stack_trace
|
||||
|
||||
|
||||
" keywords
|
||||
syn keyword sqlKeyword absolute accent action active add address admin aes_decrypt
|
||||
syn keyword sqlKeyword after aggregate algorithm allow_dup_row allow allowed alter
|
||||
syn keyword sqlKeyword and angular ansi_substring any as append apply
|
||||
syn keyword sqlKeyword arbiter asc ascii ase
|
||||
syn keyword sqlKeyword assign at atan2 atomic attended
|
||||
syn keyword sqlKeyword audit auditing authorization axis
|
||||
syn keyword sqlKeyword absolute accent access account action active activate add address admin
|
||||
syn keyword sqlKeyword aes_decrypt after aggregate algorithm allow_dup_row allow allowed alter
|
||||
syn keyword sqlKeyword always and angular ansi_substring any as append apply
|
||||
syn keyword sqlKeyword arbiter array asc ascii ase
|
||||
syn keyword sqlKeyword assign at atan2 atomic attended
|
||||
syn keyword sqlKeyword audit auditing authentication authorization axis
|
||||
syn keyword sqlKeyword autoincrement autostop batch bcp before
|
||||
syn keyword sqlKeyword between bit_and bit_length bit_or bit_substr bit_xor
|
||||
syn keyword sqlKeyword blank blanks block
|
||||
syn keyword sqlKeyword both bottom unbounded breaker bufferpool
|
||||
syn keyword sqlKeyword build bulk by byte bytes cache calibrate calibration
|
||||
syn keyword sqlKeyword cancel capability cascade cast
|
||||
syn keyword sqlKeyword catalog ceil change changes char char_convert check checksum
|
||||
syn keyword sqlKeyword class classes client cmp
|
||||
syn keyword sqlKeyword cancel capability cardinality cascade cast
|
||||
syn keyword sqlKeyword catalog catch ceil change changes char char_convert
|
||||
syn keyword sqlKeyword check checkpointlog checksum class classes client cmp
|
||||
syn keyword sqlKeyword cluster clustered collation
|
||||
syn keyword sqlKeyword column columns
|
||||
syn keyword sqlKeyword command comments committed comparisons
|
||||
syn keyword sqlKeyword command comments committed commitid comparisons
|
||||
syn keyword sqlKeyword compatible component compressed compute computes
|
||||
syn keyword sqlKeyword concat configuration confirm conflict connection
|
||||
syn keyword sqlKeyword console consolidate consolidated
|
||||
syn keyword sqlKeyword constraint constraints content
|
||||
syn keyword sqlKeyword constraint constraints content
|
||||
syn keyword sqlKeyword convert coordinate coordinator copy count count_set_bits
|
||||
syn keyword sqlKeyword crc createtime cross cube cume_dist
|
||||
syn keyword sqlKeyword crc createtime critical cross cube cume_dist
|
||||
syn keyword sqlKeyword current cursor data data database
|
||||
syn keyword sqlKeyword current_timestamp current_user cycle
|
||||
syn keyword sqlKeyword databases datatype dba dbfile
|
||||
@@ -506,83 +512,86 @@ syn keyword sqlKeyword decrypted default defaults default_dbspace deferred
|
||||
syn keyword sqlKeyword definer definition
|
||||
syn keyword sqlKeyword delay deleting delimited dependencies desc
|
||||
syn keyword sqlKeyword description deterministic directory
|
||||
syn keyword sqlKeyword disable disabled disallow distinct do domain download duplicate
|
||||
syn keyword sqlKeyword dsetpass dttm dynamic each earth editproc ejb
|
||||
syn keyword sqlKeyword elimination ellipsoid
|
||||
syn keyword sqlKeyword else elseif empty enable encapsulated encrypted end
|
||||
syn keyword sqlKeyword encoding endif engine environment erase error escape escapes event
|
||||
syn keyword sqlKeyword disable disabled disallow distinct disksandbox disk_sandbox
|
||||
syn keyword sqlKeyword dn do domain download duplicate
|
||||
syn keyword sqlKeyword dsetpass dttm dynamic each earth editproc effective ejb
|
||||
syn keyword sqlKeyword elimination ellipsoid else elseif
|
||||
syn keyword sqlKeyword email empty enable encapsulated encrypted encryption end
|
||||
syn keyword sqlKeyword encoding endif engine environment erase error errors escape escapes event
|
||||
syn keyword sqlKeyword event_parameter every exception exclude excluded exclusive exec
|
||||
syn keyword sqlKeyword existing exists expanded expiry express exprtype extended_property
|
||||
syn keyword sqlKeyword external externlogin factor failover false
|
||||
syn keyword sqlKeyword fastfirstrow feature fieldproc file files filler
|
||||
syn keyword sqlKeyword fillfactor final finish first first_keyword first_value
|
||||
syn keyword sqlKeyword flattening
|
||||
syn keyword sqlKeyword following force foreign format forxml forxml_sep fp frame
|
||||
syn keyword sqlKeyword free freepage french fresh full function
|
||||
syn keyword sqlKeyword following force foreign format forjson forxml forxml_sep fp frame
|
||||
syn keyword sqlKeyword free freepage french fresh full function
|
||||
syn keyword sqlKeyword gb generic get_bit go global grid
|
||||
syn keyword sqlKeyword group handler hash having header hexadecimal
|
||||
syn keyword sqlKeyword hidden high history hg hng hold holdlock host
|
||||
syn keyword sqlKeyword hours http_body http_session_timeout id identified identity ignore
|
||||
syn keyword sqlKeyword ignore_dup_key ignore_dup_row immediate
|
||||
syn keyword sqlKeyword in inactiv inactive inactivity included increment incremental
|
||||
syn keyword sqlKeyword index index_enabled index_lparen indexonly info
|
||||
syn keyword sqlKeyword inline inner inout insensitive inserting
|
||||
syn keyword sqlKeyword instead integrated
|
||||
syn keyword sqlKeyword internal intersection into introduced inverse invoker
|
||||
syn keyword sqlKeyword index index_enabled index_lparen indexonly info information
|
||||
syn keyword sqlKeyword inheritance inline inner inout insensitive inserting
|
||||
syn keyword sqlKeyword instead
|
||||
syn keyword sqlKeyword internal intersection into introduced inverse invoker
|
||||
syn keyword sqlKeyword iq is isolation
|
||||
syn keyword sqlKeyword jar java java_location java_main_userid java_vm_options
|
||||
syn keyword sqlKeyword jconnect jdk join kb key keep kerberos language last
|
||||
syn keyword sqlKeyword jconnect jdk join json kb key keys keep language last
|
||||
syn keyword sqlKeyword last_keyword last_value lateral latitude
|
||||
syn keyword sqlKeyword ld left len linear lf ln level like
|
||||
syn keyword sqlKeyword limit local location log
|
||||
syn keyword sqlKeyword ld ldap left len linear lf ln level like
|
||||
syn keyword sqlKeyword limit local location log
|
||||
syn keyword sqlKeyword logging logical login logscan long longitude low lru ls
|
||||
syn keyword sqlKeyword main major manual mark
|
||||
syn keyword sqlKeyword match matched materialized max maxvalue maximum mb measure membership
|
||||
syn keyword sqlKeyword merge metadata methods minimum minor minutes minvalue mirror
|
||||
syn keyword sqlKeyword mode modify monitor move mru multiplex
|
||||
syn keyword sqlKeyword name named namespaces national native natural new next nextval
|
||||
syn keyword sqlKeyword main major manage manual mark master
|
||||
syn keyword sqlKeyword match matched materialized max maxvalue maximum mb measure median membership
|
||||
syn keyword sqlKeyword merge metadata methods migrate minimum minor minutes minvalue mirror
|
||||
syn keyword sqlKeyword mode modify monitor move mru multiplex
|
||||
syn keyword sqlKeyword name named namespaces national native natural new next nextval
|
||||
syn keyword sqlKeyword ngram no noholdlock nolock nonclustered none normal not
|
||||
syn keyword sqlKeyword notify null nullable_constant nulls
|
||||
syn keyword sqlKeyword object oem_string of off offline offset olap
|
||||
syn keyword sqlKeyword notify null nullable_constant nulls
|
||||
syn keyword sqlKeyword object objects oem_string of off offline offset olap
|
||||
syn keyword sqlKeyword old on online only openstring operator
|
||||
syn keyword sqlKeyword optimization optimizer option
|
||||
syn keyword sqlKeyword or order organization others out outer over
|
||||
syn keyword sqlKeyword or order ordinality organization others out outer over owner
|
||||
syn keyword sqlKeyword package packetsize padding page pages
|
||||
syn keyword sqlKeyword paglock parallel parameter parent part
|
||||
syn keyword sqlKeyword partition partitions partner password path pctfree
|
||||
syn keyword sqlKeyword perms plan planar policy polygon populate port postfilter preceding
|
||||
syn keyword sqlKeyword paglock parallel parameter parent part partial
|
||||
syn keyword sqlKeyword partition partitions partner password path pctfree
|
||||
syn keyword sqlKeyword permissions perms plan planar policy polygon populate port postfilter preceding
|
||||
syn keyword sqlKeyword precisionprefetch prefilter prefix preserve preview previous
|
||||
syn keyword sqlKeyword primary prior priority priqty private privileges procedure profile
|
||||
syn keyword sqlKeyword primary prior priority priqty private privilege privileges procedure profile profiling
|
||||
syn keyword sqlKeyword property_is_cumulative property_is_numeric public publication publish publisher
|
||||
syn keyword sqlKeyword quiesce quote quotes range readclientfile readcommitted reader readfile readonly
|
||||
syn keyword sqlKeyword readpast readuncommitted readwrite rebuild
|
||||
syn keyword sqlKeyword received recompile recover recursive references
|
||||
syn keyword sqlKeyword referencing regex regexp regexp_substr relative relocate
|
||||
syn keyword sqlKeyword rename repeatable repeatableread replicate
|
||||
syn keyword sqlKeyword rename repeatable repeatableread replicate replication
|
||||
syn keyword sqlKeyword requests request_timeout required rereceive resend reserve reset
|
||||
syn keyword sqlKeyword resizing resolve resource respect restart
|
||||
syn keyword sqlKeyword restrict result retain
|
||||
syn keyword sqlKeyword returns reverse right role
|
||||
syn keyword sqlKeyword rollup root row row_number rowlock rows
|
||||
syn keyword sqlKeyword restrict result retain retries
|
||||
syn keyword sqlKeyword returns reverse right role roles
|
||||
syn keyword sqlKeyword rollup root row row_number rowlock rows rowtype
|
||||
syn keyword sqlKeyword sa_index_hash sa_internal_fk_verify sa_internal_termbreak
|
||||
syn keyword sqlKeyword sa_order_preserving_hash sa_order_preserving_hash_big sa_order_preserving_hash_prefix
|
||||
syn keyword sqlKeyword scale schedule schema scope scripted scroll seconds secqty security
|
||||
syn keyword sqlKeyword sa_file_free_pages sa_internal_type_from_catalog sa_internal_valid_hash
|
||||
syn keyword sqlKeyword sa_internal_validate_value sa_json_element
|
||||
syn keyword sqlKeyword scale schedule schema scope script scripted scroll search seconds secqty security
|
||||
syn keyword sqlKeyword semi send sensitive sent sequence serializable
|
||||
syn keyword sqlKeyword server server session set_bit set_bits sets
|
||||
syn keyword sqlKeyword server severity session set_bit set_bits sets
|
||||
syn keyword sqlKeyword shapefile share side simple since site size skip
|
||||
syn keyword sqlKeyword snap snapshot soapheader soap_header
|
||||
syn keyword sqlKeyword snap snapshot soapheader soap_header
|
||||
syn keyword sqlKeyword spatial split some sorted_data
|
||||
syn keyword sqlKeyword sql sqlcode sqlid sqlflagger sqlstate sqrt square
|
||||
syn keyword sqlKeyword stacker stale statement statistics status stddev_pop stddev_samp
|
||||
syn keyword sqlKeyword stacker stale state statement statistics status stddev_pop stddev_samp
|
||||
syn keyword sqlKeyword stemmer stogroup stoplist storage store
|
||||
syn keyword sqlKeyword strip stripesizekb striping subpages subscribe subscription
|
||||
syn keyword sqlKeyword subtransaction suser_id suser_name synchronization
|
||||
syn keyword sqlKeyword subtransaction suser_id suser_name suspend synchronization
|
||||
syn keyword sqlKeyword syntax_error table tables tablock
|
||||
syn keyword sqlKeyword tablockx tb temp template temporary term then ties
|
||||
syn keyword sqlKeyword timezone timeout to to_char to_nchar tolerance top
|
||||
syn keyword sqlKeyword traced_plan tracing
|
||||
syn keyword sqlKeyword transfer transform transaction transactional treat tries
|
||||
syn keyword sqlKeyword true tsequal type tune uncommitted unconditionally
|
||||
syn keyword sqlKeyword tablockx target tb temp template temporary term then ties
|
||||
syn keyword sqlKeyword timezone timeout tls to to_char to_nchar tolerance top
|
||||
syn keyword sqlKeyword trace traced_plan tracing
|
||||
syn keyword sqlKeyword transfer transform transaction transactional treat tries
|
||||
syn keyword sqlKeyword true try tsequal type tune uncommitted unconditionally
|
||||
syn keyword sqlKeyword unenforced unicode unique unistr unit unknown unlimited unload
|
||||
syn keyword sqlKeyword unpartition unquiesce updatetime updating updlock upgrade upload
|
||||
syn keyword sqlKeyword upper usage use user
|
||||
@@ -593,14 +602,14 @@ syn keyword sqlKeyword verify versions view virtual wait
|
||||
syn keyword sqlKeyword warning wd web when where with with_auto
|
||||
syn keyword sqlKeyword with_auto with_cube with_rollup without
|
||||
syn keyword sqlKeyword with_lparen within word work workload write writefile
|
||||
syn keyword sqlKeyword writeclientfile writer writers writeserver xlock
|
||||
syn keyword sqlKeyword zeros zone
|
||||
" XML
|
||||
syn keyword sqlKeyword writeclientfile writer writers writeserver xlock
|
||||
syn keyword sqlKeyword war xml zeros zone
|
||||
" XML
|
||||
syn keyword sqlKeyword raw auto elements explicit
|
||||
" HTTP support
|
||||
syn keyword sqlKeyword authorization secure url service next_soap_header
|
||||
" HTTP 9.0.2 new procedure keywords
|
||||
syn keyword sqlKeyword namespace certificate clientport proxy
|
||||
syn keyword sqlKeyword namespace certificate certificates clientport proxy trusted_certificates_file
|
||||
" OLAP support 9.0.0
|
||||
syn keyword sqlKeyword covar_pop covar_samp corr regr_slope regr_intercept
|
||||
syn keyword sqlKeyword regr_count regr_r2 regr_avgx regr_avgy
|
||||
@@ -610,6 +619,10 @@ syn keyword sqlKeyword regr_sxx regr_syy regr_sxy
|
||||
syn keyword sqlKeyword character dec options proc reference
|
||||
syn keyword sqlKeyword subtrans tran syn keyword
|
||||
|
||||
" Login Mode Options
|
||||
syn keyword sqlKeywordLogin standard integrated kerberos LDAPUA
|
||||
syn keyword sqlKeywordLogin cloudadmin mixed
|
||||
|
||||
" Spatial Predicates
|
||||
syn keyword sqlKeyword ST_Contains
|
||||
syn keyword sqlKeyword ST_ContainsFilter
|
||||
@@ -692,9 +705,9 @@ syn keyword sqlKeyword ST_LinearUnHash
|
||||
syn keyword sqlOperator in any some all between exists
|
||||
syn keyword sqlOperator like escape not is and or
|
||||
syn keyword sqlOperator minus
|
||||
syn keyword sqlOperator prior distinct
|
||||
syn keyword sqlOperator prior distinct unnest
|
||||
|
||||
syn keyword sqlStatement allocate alter attach backup begin break call case
|
||||
syn keyword sqlStatement allocate alter attach backup begin break call case catch
|
||||
syn keyword sqlStatement checkpoint clear close comment commit configure connect
|
||||
syn keyword sqlStatement continue create deallocate declare delete describe
|
||||
syn keyword sqlStatement detach disconnect drop except execute exit explain fetch
|
||||
@@ -705,7 +718,7 @@ syn keyword sqlStatement prepare print put raiserror read readtext refresh relea
|
||||
syn keyword sqlStatement remote remove reorganize resignal restore resume
|
||||
syn keyword sqlStatement return revoke rollback save savepoint select
|
||||
syn keyword sqlStatement set setuser signal start stop synchronize
|
||||
syn keyword sqlStatement system trigger truncate union unload update
|
||||
syn keyword sqlStatement system trigger truncate try union unload update
|
||||
syn keyword sqlStatement validate waitfor whenever while window writetext
|
||||
|
||||
|
||||
@@ -715,7 +728,7 @@ syn keyword sqlType float int integer numeric
|
||||
syn keyword sqlType smallint tinyint real
|
||||
syn keyword sqlType money smallmoney
|
||||
syn keyword sqlType date datetime datetimeoffset smalldatetime time timestamp
|
||||
syn keyword sqlType binary image varbinary uniqueidentifier
|
||||
syn keyword sqlType binary image varray varbinary uniqueidentifier
|
||||
syn keyword sqlType unsigned
|
||||
" Spatial types
|
||||
syn keyword sqlType st_geometry st_point st_curve st_surface st_geomcollection
|
||||
@@ -736,8 +749,10 @@ syn keyword sqlOption Ansi_update_constraints
|
||||
syn keyword sqlOption Ansinull
|
||||
syn keyword sqlOption Auditing
|
||||
syn keyword sqlOption Auditing_options
|
||||
syn keyword sqlOption Auto_commit_on_create_local_temp_index
|
||||
syn keyword sqlOption Background_priority
|
||||
syn keyword sqlOption Blocking
|
||||
syn keyword sqlOption Blocking_others_timeout
|
||||
syn keyword sqlOption Blocking_timeout
|
||||
syn keyword sqlOption Chained
|
||||
syn keyword sqlOption Checkpoint_time
|
||||
@@ -754,6 +769,7 @@ syn keyword sqlOption Cooperative_commits
|
||||
syn keyword sqlOption Database_authentication
|
||||
syn keyword sqlOption Date_format
|
||||
syn keyword sqlOption Date_order
|
||||
syn keyword sqlOption db_publisher
|
||||
syn keyword sqlOption Debug_messages
|
||||
syn keyword sqlOption Dedicated_task
|
||||
syn keyword sqlOption Default_dbspace
|
||||
@@ -764,14 +780,18 @@ syn keyword sqlOption Divide_by_zero_error
|
||||
syn keyword sqlOption Escape_character
|
||||
syn keyword sqlOption Exclude_operators
|
||||
syn keyword sqlOption Extended_join_syntax
|
||||
syn keyword sqlOption Extern_login_credentials
|
||||
syn keyword sqlOption Fire_triggers
|
||||
syn keyword sqlOption First_day_of_week
|
||||
syn keyword sqlOption For_xml_null_treatment
|
||||
syn keyword sqlOption Force_view_creation
|
||||
syn keyword sqlOption Global_database_id
|
||||
syn keyword sqlOption Http_session_timeout
|
||||
syn keyword sqlOption Http_connection_pool_basesize
|
||||
syn keyword sqlOption Http_connection_pool_timeout
|
||||
syn keyword sqlOption Integrated_server_name
|
||||
syn keyword sqlOption Isolation_level
|
||||
syn keyword sqlOption Java_class_path
|
||||
syn keyword sqlOption Java_location
|
||||
syn keyword sqlOption Java_main_userid
|
||||
syn keyword sqlOption Java_vm_options
|
||||
@@ -790,6 +810,7 @@ syn keyword sqlOption Max_recursive_iterations
|
||||
syn keyword sqlOption Max_statement_count
|
||||
syn keyword sqlOption Max_temp_space
|
||||
syn keyword sqlOption Min_password_length
|
||||
syn keyword sqlOption Min_role_admins
|
||||
syn keyword sqlOption Nearest_century
|
||||
syn keyword sqlOption Non_keywords
|
||||
syn keyword sqlOption Odbc_describe_binary_as_varbinary
|
||||
@@ -807,6 +828,7 @@ syn keyword sqlOption Prefetch
|
||||
syn keyword sqlOption Preserve_source_format
|
||||
syn keyword sqlOption Prevent_article_pkey_update
|
||||
syn keyword sqlOption Priority
|
||||
syn keyword sqlOption Progress_messages
|
||||
syn keyword sqlOption Query_mem_timeout
|
||||
syn keyword sqlOption Quoted_identifier
|
||||
syn keyword sqlOption Read_past_deleted
|
||||
@@ -814,6 +836,7 @@ syn keyword sqlOption Recovery_time
|
||||
syn keyword sqlOption Remote_idle_timeout
|
||||
syn keyword sqlOption Replicate_all
|
||||
syn keyword sqlOption Request_timeout
|
||||
syn keyword sqlOption Reserved_keywords
|
||||
syn keyword sqlOption Return_date_time_as_string
|
||||
syn keyword sqlOption Rollback_on_deadlock
|
||||
syn keyword sqlOption Row_counts
|
||||
@@ -823,6 +846,12 @@ syn keyword sqlOption Sort_collation
|
||||
syn keyword sqlOption Sql_flagger_error_level
|
||||
syn keyword sqlOption Sql_flagger_warning_level
|
||||
syn keyword sqlOption String_rtruncation
|
||||
syn keyword sqlOption st_geometry_asbinary_format
|
||||
syn keyword sqlOption st_geometry_astext_format
|
||||
syn keyword sqlOption st_geometry_asxml_format
|
||||
syn keyword sqlOption st_geometry_describe_type
|
||||
syn keyword sqlOption st_geometry_interpolation
|
||||
syn keyword sqlOption st_geometry_on_invalid
|
||||
syn keyword sqlOption Subsume_row_locks
|
||||
syn keyword sqlOption Suppress_tds_debugging
|
||||
syn keyword sqlOption Synchronize_mirror_on_commit
|
||||
@@ -831,6 +860,7 @@ syn keyword sqlOption Temp_space_limit_check
|
||||
syn keyword sqlOption Time_format
|
||||
syn keyword sqlOption Time_zone_adjustment
|
||||
syn keyword sqlOption Timestamp_format
|
||||
syn keyword sqlOption Timestamp_with_time_zone_format
|
||||
syn keyword sqlOption Truncate_timestamp_values
|
||||
syn keyword sqlOption Tsql_outer_joins
|
||||
syn keyword sqlOption Tsql_variables
|
||||
@@ -842,6 +872,7 @@ syn keyword sqlOption Uuid_has_hyphens
|
||||
syn keyword sqlOption Verify_password_function
|
||||
syn keyword sqlOption Wait_for_commit
|
||||
syn keyword sqlOption Webservice_namespace_host
|
||||
syn keyword sqlOption Webservice_sessionid_name
|
||||
|
||||
" Strings and characters:
|
||||
syn region sqlString start=+"+ end=+"+ contains=@Spell
|
||||
@@ -859,32 +890,18 @@ syn sync ccomment sqlComment
|
||||
syn sync ccomment sqlDashComment
|
||||
syn sync ccomment sqlSlashComment
|
||||
|
||||
" 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_sql_syn_inits")
|
||||
if version < 508
|
||||
let did_sql_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
endif
|
||||
|
||||
HiLink sqlDashComment Comment
|
||||
HiLink sqlSlashComment Comment
|
||||
HiLink sqlMultiComment Comment
|
||||
HiLink sqlNumber Number
|
||||
HiLink sqlOperator Operator
|
||||
HiLink sqlSpecial Special
|
||||
HiLink sqlKeyword Keyword
|
||||
HiLink sqlStatement Statement
|
||||
HiLink sqlString String
|
||||
HiLink sqlType Type
|
||||
HiLink sqlFunction Function
|
||||
HiLink sqlOption PreProc
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
hi def link sqlDashComment Comment
|
||||
hi def link sqlSlashComment Comment
|
||||
hi def link sqlMultiComment Comment
|
||||
hi def link sqlNumber Number
|
||||
hi def link sqlOperator Operator
|
||||
hi def link sqlSpecial Special
|
||||
hi def link sqlKeyword Keyword
|
||||
hi def link sqlStatement Statement
|
||||
hi def link sqlString String
|
||||
hi def link sqlType Type
|
||||
hi def link sqlFunction Function
|
||||
hi def link sqlOption PreProc
|
||||
|
||||
let b:current_syntax = "sqlanywhere"
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
" Vim syntax file
|
||||
" Language: TeX
|
||||
" Maintainer: Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM>
|
||||
" Last Change: Nov 14, 2012
|
||||
" Version: 75
|
||||
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
|
||||
" Last Change: Mar 11, 2013
|
||||
" Version: 77
|
||||
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TEX
|
||||
"
|
||||
" Notes: {{{1
|
||||
"
|
||||
@@ -52,8 +52,14 @@ if version >= 508 || !exists("did_tex_syntax_inits")
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
endif
|
||||
if exists("g:tex_no_error") && g:tex_no_error
|
||||
let s:tex_no_error= 1
|
||||
endif
|
||||
if exists("g:tex_fast") && g:tex_fast
|
||||
let s:tex_no_error= 1
|
||||
endif
|
||||
if exists("g:tex_tex") && !exists("g:tex_no_error")
|
||||
let g:tex_no_error= 1
|
||||
let s:tex_no_error= 1
|
||||
endif
|
||||
|
||||
" let user determine which classes of concealment will be supported
|
||||
@@ -110,7 +116,7 @@ endif
|
||||
" Clusters: {{{1
|
||||
" --------
|
||||
syn cluster texCmdGroup contains=texCmdBody,texComment,texDefParm,texDelimiter,texDocType,texInput,texLength,texLigature,texMathDelim,texMathOper,texNewCmd,texNewEnv,texRefZone,texSection,texBeginEnd,texBeginEndName,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle
|
||||
if !exists("g:tex_no_error")
|
||||
if !exists("s:tex_no_error")
|
||||
syn cluster texCmdGroup add=texMathError
|
||||
endif
|
||||
syn cluster texEnvGroup contains=texMatcher,texMathDelim,texSpecialChar,texStatement
|
||||
@@ -132,7 +138,7 @@ if !exists("tex_no_math")
|
||||
syn cluster texMathDelimGroup contains=texMathDelimBad,texMathDelimKey,texMathDelimSet1,texMathDelimSet2
|
||||
syn cluster texMathMatchGroup contains=@texMathZones,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMathDelim,texMathMatcher,texMathOper,texNewCmd,texNewEnv,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone
|
||||
syn cluster texMathZoneGroup contains=texComment,texDelimiter,texLength,texMathDelim,texMathMatcher,texMathOper,texMathSymbol,texMathText,texRefZone,texSpecialChar,texStatement,texTypeSize,texTypeStyle
|
||||
if !exists("g:tex_no_error")
|
||||
if !exists("s:tex_no_error")
|
||||
syn cluster texMathMatchGroup add=texMathError
|
||||
syn cluster texMathZoneGroup add=texMathError
|
||||
endif
|
||||
@@ -153,26 +159,30 @@ if !exists("tex_no_math")
|
||||
endif
|
||||
|
||||
" Try to flag {} and () mismatches: {{{1
|
||||
if !exists("g:tex_no_error")
|
||||
syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup,texError
|
||||
syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup,texError,@NoSpell
|
||||
else
|
||||
syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup
|
||||
syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'm'
|
||||
if !exists("s:tex_no_error")
|
||||
syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup,texError
|
||||
syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup,texError,@NoSpell
|
||||
else
|
||||
syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup
|
||||
syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup
|
||||
endif
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
syn region texParen start="(" end=")" contains=@texMatchGroup,@Spell
|
||||
else
|
||||
syn region texParen start="(" end=")" contains=@texMatchGroup
|
||||
endif
|
||||
endif
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
syn region texParen start="(" end=")" contains=@texMatchGroup,@Spell
|
||||
else
|
||||
syn region texParen start="(" end=")" contains=@texMatchGroup
|
||||
endif
|
||||
if !exists("g:tex_no_error")
|
||||
if !exists("s:tex_no_error")
|
||||
syn match texError "[}\])]"
|
||||
endif
|
||||
if !exists("tex_no_math")
|
||||
if !exists("g:tex_no_error")
|
||||
syn match texMathError "}" contained
|
||||
endif
|
||||
syn region texMathMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\}" end="}" end="%stopzone\>" contained contains=@texMathMatchGroup
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'M'
|
||||
if !exists("tex_no_math")
|
||||
if !exists("s:tex_no_error")
|
||||
syn match texMathError "}" contained
|
||||
endif
|
||||
syn region texMathMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\}" end="}" end="%stopzone\>" contained contains=@texMathMatchGroup
|
||||
endif
|
||||
endif
|
||||
|
||||
" TeX/LaTeX keywords: {{{1
|
||||
@@ -182,7 +192,7 @@ if exists("g:tex_tex") || b:tex_stylish
|
||||
syn match texStatement "\\[a-zA-Z@]\+"
|
||||
else
|
||||
syn match texStatement "\\\a\+"
|
||||
if !exists("g:tex_no_error")
|
||||
if !exists("s:tex_no_error")
|
||||
syn match texError "\\\a*@[a-zA-Z@]*"
|
||||
endif
|
||||
endif
|
||||
@@ -210,12 +220,16 @@ syn match texLigature "\\\([ijolL]\|ae\|oe\|ss\|AA\|AE\|OE\)$"
|
||||
|
||||
" \begin{}/\end{} section markers: {{{1
|
||||
syn match texBeginEnd "\\begin\>\|\\end\>" nextgroup=texBeginEndName
|
||||
syn region texBeginEndName matchgroup=Delimiter start="{" end="}" contained nextgroup=texBeginEndModifier contains=texComment
|
||||
syn region texBeginEndModifier matchgroup=Delimiter start="\[" end="]" contained contains=texComment,@NoSpell
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'm'
|
||||
syn region texBeginEndName matchgroup=Delimiter start="{" end="}" contained nextgroup=texBeginEndModifier contains=texComment
|
||||
syn region texBeginEndModifier matchgroup=Delimiter start="\[" end="]" contained contains=texComment,@NoSpell
|
||||
endif
|
||||
|
||||
" \documentclass, \documentstyle, \usepackage: {{{1
|
||||
syn match texDocType "\\documentclass\>\|\\documentstyle\>\|\\usepackage\>" nextgroup=texBeginEndName,texDocTypeArgs
|
||||
syn region texDocTypeArgs matchgroup=Delimiter start="\[" end="]" contained nextgroup=texBeginEndName contains=texComment,@NoSpell
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'm'
|
||||
syn region texDocTypeArgs matchgroup=Delimiter start="\[" end="]" contained nextgroup=texBeginEndName contains=texComment,@NoSpell
|
||||
endif
|
||||
|
||||
" Preamble syntax-based folding support: {{{1
|
||||
if g:tex_fold_enabled && has("folding")
|
||||
@@ -227,7 +241,9 @@ syn match texInput "\\input\s\+[a-zA-Z/.0-9_^]\+"hs=s+7 contains=texStatemen
|
||||
syn match texInputFile "\\include\(graphics\|list\)\=\(\[.\{-}\]\)\=\s*{.\{-}}" contains=texStatement,texInputCurlies,texInputFileOpt
|
||||
syn match texInputFile "\\\(epsfig\|input\|usepackage\)\s*\(\[.*\]\)\={.\{-}}" contains=texStatement,texInputCurlies,texInputFileOpt
|
||||
syn match texInputCurlies "[{}]" contained
|
||||
syn region texInputFileOpt matchgroup=Delimiter start="\[" end="\]" contained contains=texComment
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'm'
|
||||
syn region texInputFileOpt matchgroup=Delimiter start="\[" end="\]" contained contains=texComment
|
||||
endif
|
||||
|
||||
" Type Styles (LaTeX 2.09): {{{1
|
||||
syn match texTypeStyle "\\rm\>"
|
||||
@@ -293,62 +309,66 @@ syn match texSpaceCode "\\\(math\|cat\|del\|lc\|sf\|uc\)code`"me=e-1 nextgroup=
|
||||
syn match texSpaceCodeChar "`\\\=.\(\^.\)\==\(\d\|\"\x\{1,6}\|`.\)" contained
|
||||
|
||||
" Sections, subsections, etc: {{{1
|
||||
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 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 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 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 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
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup,@Spell
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup,@Spell
|
||||
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 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 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 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 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
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup
|
||||
endif
|
||||
if !exists("g:tex_fast") || g: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 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 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 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 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
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup,@Spell
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup,@Spell
|
||||
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 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 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 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 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
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
" particular support for bold and italic {{{1
|
||||
if s:tex_conceal =~ 'b'
|
||||
syn region texBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" end="}" concealends contains=@texBoldGroup
|
||||
syn region texBoldItalStyle matchgroup=texTypeStyle start="\\textit\s*{" end="}" concealends contains=@texItalGroup
|
||||
syn region texItalStyle matchgroup=texTypeStyle start="\\textit\s*{" end="}" concealends contains=@texItalGroup
|
||||
syn region texItalBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" end="}" concealends contains=@texBoldGroup
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'b'
|
||||
if s:tex_conceal =~ 'b'
|
||||
syn region texBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" end="}" concealends contains=@texBoldGroup
|
||||
syn region texBoldItalStyle matchgroup=texTypeStyle start="\\textit\s*{" end="}" concealends contains=@texItalGroup
|
||||
syn region texItalStyle matchgroup=texTypeStyle start="\\textit\s*{" end="}" concealends contains=@texItalGroup
|
||||
syn region texItalBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" end="}" concealends contains=@texBoldGroup
|
||||
endif
|
||||
endif
|
||||
|
||||
" Bad Math (mismatched): {{{1
|
||||
@@ -373,17 +393,21 @@ if !exists("tex_no_math")
|
||||
let foldcmd= ""
|
||||
endif
|
||||
exe "syn cluster texMathZones add=".grpname
|
||||
exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\s*}'."'".' keepend contains=@texMathZoneGroup'.foldcmd
|
||||
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
|
||||
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'M'
|
||||
exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\s*}'."'".' keepend contains=@texMathZoneGroup'.foldcmd
|
||||
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
|
||||
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
|
||||
endif
|
||||
exe 'hi def link '.grpname.' texMath'
|
||||
if a:starform
|
||||
let grpname = "texMathZone".a:sfx.'S'
|
||||
let syncname = "texSyncMathZone".a:sfx.'S'
|
||||
exe "syn cluster texMathZones add=".grpname
|
||||
exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\*\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\*\s*}'."'".' keepend contains=@texMathZoneGroup'.foldcmd
|
||||
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
|
||||
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'M'
|
||||
exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\*\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\*\s*}'."'".' keepend contains=@texMathZoneGroup'.foldcmd
|
||||
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
|
||||
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
|
||||
endif
|
||||
exe 'hi def link '.grpname.' texMath'
|
||||
endif
|
||||
endfun
|
||||
@@ -403,26 +427,30 @@ if !exists("tex_no_math")
|
||||
call TexNewMathZone("L","xxalignat",0)
|
||||
|
||||
" Inline Math Zones: {{{2
|
||||
if has("conceal") && &enc == 'utf-8' && s:tex_conceal =~ 'd'
|
||||
syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend concealends contains=@texMathZoneGroup
|
||||
syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend concealends contains=@texMathZoneGroup
|
||||
syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" concealends contains=@texMathZoneGroup
|
||||
syn region texMathZoneY matchgroup=Delimiter start="\$\$" matchgroup=Delimiter end="\$\$" end="%stopzone\>" concealends keepend contains=@texMathZoneGroup
|
||||
else
|
||||
syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup
|
||||
syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend contains=@texMathZoneGroup
|
||||
syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" contains=@texMathZoneGroup
|
||||
syn region texMathZoneY matchgroup=Delimiter start="\$\$" matchgroup=Delimiter end="\$\$" end="%stopzone\>" keepend contains=@texMathZoneGroup
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'M'
|
||||
if has("conceal") && &enc == 'utf-8' && s:tex_conceal =~ 'd'
|
||||
syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend concealends contains=@texMathZoneGroup
|
||||
syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend concealends contains=@texMathZoneGroup
|
||||
syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" concealends contains=@texMathZoneGroup
|
||||
syn region texMathZoneY matchgroup=Delimiter start="\$\$" matchgroup=Delimiter end="\$\$" end="%stopzone\>" concealends keepend contains=@texMathZoneGroup
|
||||
else
|
||||
syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup
|
||||
syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend contains=@texMathZoneGroup
|
||||
syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" contains=@texMathZoneGroup
|
||||
syn region texMathZoneY matchgroup=Delimiter start="\$\$" matchgroup=Delimiter end="\$\$" end="%stopzone\>" keepend contains=@texMathZoneGroup
|
||||
endif
|
||||
syn region texMathZoneZ matchgroup=texStatement start="\\ensuremath\s*{" matchgroup=texStatement end="}" end="%stopzone\>" contains=@texMathZoneGroup
|
||||
endif
|
||||
syn region texMathZoneZ matchgroup=texStatement start="\\ensuremath\s*{" matchgroup=texStatement end="}" end="%stopzone\>" contains=@texMathZoneGroup
|
||||
|
||||
syn match texMathOper "[_^=]" contained
|
||||
|
||||
" Text Inside Math Zones: {{{2
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup,@Spell
|
||||
else
|
||||
syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'M'
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup,@Spell
|
||||
else
|
||||
syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup
|
||||
endif
|
||||
endif
|
||||
|
||||
" \left..something.. and \right..something.. support: {{{2
|
||||
@@ -512,65 +540,77 @@ else
|
||||
" allows syntax-folding of 2 or more contiguous comment lines
|
||||
" single-line comments are not folded
|
||||
syn match texComment "%.*$" contains=@texCommentGroup
|
||||
syn region texComment start="^\zs\s*%.*\_s*%" skip="^\s*%" end='^\ze\s*[^%]' fold
|
||||
syn region texNoSpell contained fold matchgroup=texComment start="%\s*nospell\s*{" end="%\s*nospell\s*}" contains=@texFoldGroup,@NoSpell
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'c'
|
||||
syn region texComment start="^\zs\s*%.*\_s*%" skip="^\s*%" end='^\ze\s*[^%]' fold
|
||||
syn region texNoSpell contained fold matchgroup=texComment start="%\s*nospell\s*{" end="%\s*nospell\s*}" contains=@texFoldGroup,@NoSpell
|
||||
endif
|
||||
else
|
||||
syn match texComment "%.*$" contains=@texCommentGroup
|
||||
syn region texNoSpell contained matchgroup=texComment start="%\s*nospell\s*{" end="%\s*nospell\s*}" contains=@texFoldGroup,@NoSpell
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'c'
|
||||
syn region texNoSpell contained matchgroup=texComment start="%\s*nospell\s*{" end="%\s*nospell\s*}" contains=@texFoldGroup,@NoSpell
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
" Separate lines used for verb` and verb# so that the end conditions {{{1
|
||||
" will appropriately terminate.
|
||||
" If g:tex_verbspell exists, then verbatim texZones will permit spellchecking there.
|
||||
if exists("g:tex_verbspell") && g:tex_verbspell
|
||||
syn region texZone start="\\begin{[vV]erbatim}" end="\\end{[vV]erbatim}\|%stopzone\>" contains=@Spell
|
||||
" listings package:
|
||||
syn region texZone start="\\begin{lstlisting}" end="\\end{lstlisting}\|%stopzone\>" contains=@Spell
|
||||
if version < 600
|
||||
syn region texZone start="\\verb\*\=`" end="`\|%stopzone\>" contains=@Spell
|
||||
syn region texZone start="\\verb\*\=#" end="#\|%stopzone\>" contains=@Spell
|
||||
else
|
||||
if b:tex_stylish
|
||||
syn region texZone start="\\verb\*\=\z([^\ta-zA-Z@]\)" end="\z1\|%stopzone\>" contains=@Spell
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'v'
|
||||
if exists("g:tex_verbspell") && g:tex_verbspell
|
||||
syn region texZone start="\\begin{[vV]erbatim}" end="\\end{[vV]erbatim}\|%stopzone\>" contains=@Spell
|
||||
" listings package:
|
||||
syn region texZone start="\\begin{lstlisting}" end="\\end{lstlisting}\|%stopzone\>" contains=@Spell
|
||||
if version < 600
|
||||
syn region texZone start="\\verb\*\=`" end="`\|%stopzone\>" contains=@Spell
|
||||
syn region texZone start="\\verb\*\=#" end="#\|%stopzone\>" contains=@Spell
|
||||
else
|
||||
syn region texZone start="\\verb\*\=\z([^\ta-zA-Z]\)" end="\z1\|%stopzone\>" contains=@Spell
|
||||
if b:tex_stylish
|
||||
syn region texZone start="\\verb\*\=\z([^\ta-zA-Z@]\)" end="\z1\|%stopzone\>" contains=@Spell
|
||||
else
|
||||
syn region texZone start="\\verb\*\=\z([^\ta-zA-Z]\)" end="\z1\|%stopzone\>" contains=@Spell
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
else
|
||||
syn region texZone start="\\begin{[vV]erbatim}" end="\\end{[vV]erbatim}\|%stopzone\>"
|
||||
if version < 600
|
||||
syn region texZone start="\\verb\*\=`" end="`\|%stopzone\>"
|
||||
syn region texZone start="\\verb\*\=#" end="#\|%stopzone\>"
|
||||
else
|
||||
if b:tex_stylish
|
||||
syn region texZone start="\\verb\*\=\z([^\ta-zA-Z@]\)" end="\z1\|%stopzone\>"
|
||||
else
|
||||
syn region texZone start="\\begin{[vV]erbatim}" end="\\end{[vV]erbatim}\|%stopzone\>"
|
||||
if version < 600
|
||||
syn region texZone start="\\verb\*\=`" end="`\|%stopzone\>"
|
||||
syn region texZone start="\\verb\*\=#" end="#\|%stopzone\>"
|
||||
else
|
||||
syn region texZone start="\\verb\*\=\z([^\ta-zA-Z]\)" end="\z1\|%stopzone\>"
|
||||
if b:tex_stylish
|
||||
syn region texZone start="\\verb\*\=\z([^\ta-zA-Z@]\)" end="\z1\|%stopzone\>"
|
||||
else
|
||||
syn region texZone start="\\verb\*\=\z([^\ta-zA-Z]\)" end="\z1\|%stopzone\>"
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
" Tex Reference Zones: {{{1
|
||||
syn region texZone matchgroup=texStatement start="@samp{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\nocite{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\bibliography{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\label{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
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
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'r'
|
||||
syn region texZone matchgroup=texStatement start="@samp{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\nocite{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\bibliography{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\label{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
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
|
||||
endif
|
||||
syn match texRefZone '\\cite\%([tp]\*\=\)\=' nextgroup=texRefOption,texCite
|
||||
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
|
||||
|
||||
" Handle newcommand, newenvironment : {{{1
|
||||
syn match texNewCmd "\\newcommand\>" nextgroup=texCmdName skipwhite skipnl
|
||||
syn region texCmdName contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texCmdArgs,texCmdBody skipwhite skipnl
|
||||
syn region texCmdArgs contained matchgroup=Delimiter start="\["rs=s+1 end="]" nextgroup=texCmdBody skipwhite skipnl
|
||||
syn region texCmdBody contained matchgroup=Delimiter start="{"rs=s+1 skip="\\\\\|\\[{}]" matchgroup=Delimiter end="}" contains=@texCmdGroup
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'V'
|
||||
syn region texCmdName contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texCmdArgs,texCmdBody skipwhite skipnl
|
||||
syn region texCmdArgs contained matchgroup=Delimiter start="\["rs=s+1 end="]" nextgroup=texCmdBody skipwhite skipnl
|
||||
syn region texCmdBody contained matchgroup=Delimiter start="{"rs=s+1 skip="\\\\\|\\[{}]" matchgroup=Delimiter end="}" contains=@texCmdGroup
|
||||
endif
|
||||
syn match texNewEnv "\\newenvironment\>" nextgroup=texEnvName skipwhite skipnl
|
||||
syn region texEnvName contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texEnvBgn skipwhite skipnl
|
||||
syn region texEnvBgn contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texEnvEnd skipwhite skipnl contains=@texEnvGroup
|
||||
syn region texEnvEnd contained matchgroup=Delimiter start="{"rs=s+1 end="}" skipwhite skipnl contains=@texEnvGroup
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'V'
|
||||
syn region texEnvName contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texEnvBgn skipwhite skipnl
|
||||
syn region texEnvBgn contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texEnvEnd skipwhite skipnl contains=@texEnvGroup
|
||||
syn region texEnvEnd contained matchgroup=Delimiter start="{"rs=s+1 end="}" skipwhite skipnl contains=@texEnvGroup
|
||||
endif
|
||||
|
||||
" Definitions/Commands: {{{1
|
||||
syn match texDefCmd "\\def\>" nextgroup=texDefName skipwhite skipnl
|
||||
@@ -591,11 +631,15 @@ syn match texLength "\<\d\+\([.,]\d\+\)\=\s*\(true\)\=\s*\(bp\|cc\|cm\|dd\|em\
|
||||
syn match texString "\(``\|''\|,,\)"
|
||||
|
||||
" makeatletter -- makeatother sections
|
||||
if !exists("g:tex_no_error")
|
||||
syn region texStyle matchgroup=texStatement start='\\makeatletter' end='\\makeatother' contains=@texStyleGroup contained
|
||||
if !exists("s:tex_no_error")
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'S'
|
||||
syn region texStyle matchgroup=texStatement start='\\makeatletter' end='\\makeatother' contains=@texStyleGroup contained
|
||||
endif
|
||||
syn match texStyleStatement "\\[a-zA-Z@]\+" contained
|
||||
syn region texStyleMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texStyleGroup,texError contained
|
||||
syn region texStyleMatcher matchgroup=Delimiter start="\[" end="]" contains=@texStyleGroup,texError contained
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 'S'
|
||||
syn region texStyleMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texStyleGroup,texError contained
|
||||
syn region texStyleMatcher matchgroup=Delimiter start="\[" end="]" contains=@texStyleGroup,texError contained
|
||||
endif
|
||||
endif
|
||||
|
||||
" Conceal mode support (supports set cole=2) {{{1
|
||||
@@ -970,8 +1014,10 @@ if has("conceal") && &enc == 'utf-8'
|
||||
|
||||
" Superscripts/Subscripts {{{2
|
||||
if s:tex_conceal =~ 's'
|
||||
syn region texSuperscript matchgroup=Delimiter start='\^{' skip="\\\\\|\\[{}]" end='}' contained concealends contains=texSpecialChar,texSuperscripts,texStatement,texSubscript,texSuperscript,texMathMatcher
|
||||
syn region texSubscript matchgroup=Delimiter start='_{' skip="\\\\\|\\[{}]" end='}' contained concealends contains=texSpecialChar,texSubscripts,texStatement,texSubscript,texSuperscript,texMathMatcher
|
||||
if !exists("g:tex_fast") || g:tex_fast =~ 's'
|
||||
syn region texSuperscript matchgroup=Delimiter start='\^{' skip="\\\\\|\\[{}]" end='}' contained concealends contains=texSpecialChar,texSuperscripts,texStatement,texSubscript,texSuperscript,texMathMatcher
|
||||
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'
|
||||
@@ -1180,7 +1226,7 @@ endif
|
||||
if did_tex_syntax_inits == 1
|
||||
let did_tex_syntax_inits= 2
|
||||
" TeX highlighting groups which should share similar highlighting
|
||||
if !exists("g:tex_no_error")
|
||||
if !exists("s:tex_no_error")
|
||||
if !exists("tex_no_math")
|
||||
HiLink texBadMath texError
|
||||
HiLink texMathDelimBad texError
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim 7.3 script
|
||||
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Nov 14, 2012
|
||||
" Version: 7.3-20
|
||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: February 15, 2013
|
||||
" Version: 7.3-24
|
||||
" Automatically generated keyword lists: {{{1
|
||||
|
||||
" Quit when a syntax file was already loaded {{{2
|
||||
@@ -18,37 +18,36 @@ syn keyword vimTodo contained COMBAK FIXME TODO XXX
|
||||
syn cluster vimCommentGroup contains=vimTodo,@Spell
|
||||
|
||||
" regular vim commands {{{2
|
||||
syn keyword vimCommand contained a arga[dd] argu[ment] bd[elete] bN[ext] breakd[el] buf c cal[l] ce[nter] cg[etfile] cl cn cNf comc[lear] cope[n] cr[ewind] d d[elete] diffo diffsplit di[splay] ds[earch] ec e:e:e en endt[ry] exu[sage] filetype fix[del] for go[to] h hi if intro k la lan[guage] lch[dir] let@ lg[etfile] lla[st] lnew[er] lNf[ile] loc[kmarks] lr[ewind] lv[imgrep] ma[rk] messages mkv mv n new noautocmd on[ly] p:~ perld[o] popu[p] p[rint] promptr[epl] ptl[ast] ptr[ewind] py3file q[uit] r[ead] redraws[tatus] ret[ab] r:r:r ru[ntime] sba[ll] sbp[revious] scs sf[ind] sil[ent] sm[ap] sno[magic] so[urce] spellr[epall] st startr[eplace] sunme sw[apname] t tabf[ind] tabn[ext] ta[g] tf[irst] tn tp[revious] tu undoj[oin] up[date] vi vmapc[lear] win wN[ext] wundo xmapc[lear] xnoremenu
|
||||
syn keyword vimCommand contained ab argd[elete] as[cii] bel[owright] bo[tright] breakl[ist] bufdo cabc[lear] cat[ch] cex[pr] c[hange] cla[st] cN cnf[ile] comment co[py] cs de delf diffoff difft dj[ump] dsp[lit] echoe[rr] e:e:r endf endw[hile] f fin fo[ld] fu gr[ep] ha[rdcopy] hid[e] ij[ump] is[earch] keepa lad la[st] lcl[ose] lex[pr] lgr[ep] lli[st] lne[xt] lo lockv[ar] ls lvimgrepa[dd] marks mk mkvie[w] Mycmd N n[ext] noh[lsearch] o[pen] P p:gs? pp[op] P[rint] ps[earch] ptn pts[elect] pyf[ile] quita[ll] rec[over] reg[isters] retu[rn] ru rv[iminfo] sbf[irst] sbr[ewind] scscope sfir[st] sim[alt] sme snoreme s?pat?sub? spellu[ndo] sta[g] stj[ump] sunmenu sy ta tabfir[st] tabN[ext] tags th[row] tN tr tu[nmenu] undol[ist] v vie[w] vne[w] winc[md] wp[revious] wv[iminfo] xme xterm
|
||||
syn keyword vimCommand contained abc[lear] argdo au bf[irst] bp[revious] br[ewind] b[uffer] cad cb[uffer] cf[ile] changes cl[ist] cnew[er] cNf[ile] comp[iler] count cscope debug delf[unction] DiffOrig diffthis dl[ist] dwim echom[sg] el[se] endfo[r] ene[w] f[ile] fina[lly] foldc[lose] fun grepa[dd] h[elp] his[tory] il[ist] isp[lit] keepalt laddb[uffer] lat lcs lf[ile] lgrepa[dd] lmak[e] lN[ext] loadk lol[der] lt[ag] lw[indow] mat[ch] mkdir mkv[imrc] MyCommand nbc[lose] N[ext] nu[mber] opt[ions] pc[lose] p:h pr pro p:t ptN pu[t] py[thon] quote red Ren rew[ind] rub[y] sal[l] sbl[ast] sb[uffer] se[t] sh[ell] sl smenu snoremenu spe spellw[rong] star st[op] sus[pend] syn tab tabl[ast] tabo[nly] tc[l] tj[ump] tn[ext] t:r u unh[ide] ve vim[grep] vs[plit] windo wq x xmenu xunme
|
||||
syn keyword vimCommand contained abo[veleft] arge[dit] bad[d] bl[ast] br bro[wse] buffers caddb[uffer] cc cfir[st] chd[ir] clo[se] cn[ext] col[der] con cpf[ile] cstag debugg[reedy] delm[arks] diffp diffu[pdate] do e echon elsei[f] endfun Error filename fin[d] folddoc[losed] fu[nction] gs?pat?sub? helpf[ind] i imapc[lear] iuna[bbrev] keepj[umps] lad[dexpr] later lcscope lfir[st] lh[elpgrep] lmapc[lear] lnf loadkeymap lop[en] lua ma menut mk[exrc] mo mz nb[key] nkf o ownsyntax pe p:h:h p:r profd[el] pta[g] ptn[ext] pw[d] python3 r redi[r] Rena ri[ght] rubyd[o] san[dbox] sbm[odified] scrip setf[iletype] si sla[st] sn[ext] s@\n@\=\r" spelld[ump] sp[lit] start stopi[nsert] s?version?main? sync tabc[lose] tabm[ove] tabp[revious] tcld[o] tl[ast] tN[ext] tr[ewind] un unl verb[ose] vimgrepa[dd] w winp[os] wqa[ll] X XMLent xunmenu
|
||||
syn keyword vimCommand contained al[l] argg[lobal] ba[ll] bm[odified] brea[k] browseset bun[load] cad[dexpr] ccl[ose] cgetb[uffer] che[ckpath] cmapc[lear] cN[ext] colo[rscheme] conf[irm] cp[revious] cuna[bbrev] del di diffpatch dig doau ea e[dit] em[enu] endf[unction] ex files fini[sh] foldd[oopen] g gui helpg[rep] ia in j[oin] kee[pmarks] laddf[ile] lb[uffer] le[ft] lgetb[uffer] l[ist] lN lNf lo[adview] lpf[ile] luado mak[e] menut[ranslate] mks[ession] mod[e] mzf[ile] nbs[tart] nmapc[lear] ol[dfiles] p ped[it] po[p] pre[serve] prof[ile] ptf[irst] ptN[ext] py q re red[o] Renu rightb[elow] rubyf[ile] sa[rgument] sbn[ext] scripte[ncoding] setg[lobal] sig sl[eep] sN[ext] so spe[llgood] spr[evious] startg[replace] sts[elect] s?version?main?:p syncbind tabd[o] tabN tabr[ewind] tclf[ile] tm TOhtml try una[bbreviate] unlo[ckvar] ve[rsion] vi[sual] wa[ll] win[size] w[rite] xa[ll] XMLns xwininfo
|
||||
syn keyword vimCommand contained Allargs argl[ocal] bar bn[ext] breaka[dd] bu bw[ipeout] caddf[ile] cd cgete[xpr] checkt[ime] cmdname cnf com con[tinue] cq[uit] cw[indow] delc[ommand] diffg[et] diffpu[t] dig[raphs] dr[op] earlier e:e emenu* en[dif] exi[t] filet fir[st] foldo[pen] get gvim helpt[ags] iabc[lear] index ju[mps] l lan lc[d] lefta[bove] lgete[xpr] ll lne lnf[ile] locale lp[revious] luafile Man mes mksp[ell] m[ove] mz[scheme] ne noa omapc[lear] p: pe[rl] popu prev[ious] promptf[ind] ptj[ump] ptp[revious] py3 qa[ll] r:e redr[aw] res[ize] r:r rundo sav[eas] sbN[ext] scrip[tnames] setl[ocal] sign sm[agic] sni[ff] sor[t] spelli[nfo] sre[wind] star[tinsert] sun[hide] sv[iew] synlist tabe[dit] tabnew tabs te[aroff] tm[enu] to[pleft] ts[elect] u[ndo] uns[ilent] vert[ical] viu[sage] wh[ile] wn[ext] ws[verb] x[it] xnoreme y[ank]
|
||||
syn keyword vimCommand contained ar ar[gs]
|
||||
syn keyword vimCommand contained a arga[dd] ar[gs] bar bn[ext] breaka[dd] bu bw[ipeout] caddf[ile] cd cgete[xpr] checkt[ime] cmdname cnf com con[tinue] cq[uit] cw[indow] delc[ommand] diffg[et] diffpu[t] dig[raphs] dr[op] earlier el[se] endfo[r] ene[w] filename fin[d] folddoc[losed] fu[nction] gui helpg[rep] ia in j[oin] kee[pmarks] laddf[ile] lb[uffer] le[ft] lgetb[uffer] l[ist] lN lNf lo[adview] lpf[ile] luado mak[e] menut[ranslate] mks[ession] mod[e] n new noautocmd on[ly] pc[lose] popu p[rint] promptr[epl] ptn pts[elect] py[thon] quote redi[r] res[ize] ru rv[iminfo] sbf[irst] sbr[ewind] scscope sfir[st] sim[alt] sme snoreme spe spellw[rong] star stj[ump] sunme sy t tabe[dit] tabN tabp[revious] tc[l] th[row] tn to[pleft] ts[elect] una[bbreviate] unl ve vie[w] vmapc[lear] wh[ile] win[size] wqa[ll] x xmenu xterm
|
||||
syn keyword vimCommand contained ab argd[elete] argu[ment] bd[elete] bN[ext] breakd[el] buf c cal[l] ce[nter] cg[etfile] cl cn cNf comc[lear] cope[n] cr[ewind] d d[elete] diffo diffsplit di[splay] ds[earch] ec elsei[f] endfun ex files fini[sh] foldd[oopen] g gvim helpt[ags] iabc[lear] index ju[mps] l lan lc[d] lefta[bove] lgete[xpr] ll lne lnf[ile] locale lp[revious] luafile Man mes mksp[ell] m[ove] N n[ext] noh[lsearch] o[pen] pe popu[p] P[rint] ps[earch] ptN pu[t] python3 r red[o] ret[ab] rub[y] sal[l] sbl[ast] sb[uffer] se[t] sh[ell] sl smenu snoremenu spelld[ump] sp[lit] start st[op] sunmenu syn ta tabf[ind] tabnew tabr[ewind] tcld[o] tj[ump] tN tp[revious] tu u[ndo] unlo[ckvar] verb[ose] vim[grep] vne[w] win wn[ext] w[rite] xa[ll] XMLent xunme
|
||||
syn keyword vimCommand contained abc[lear] argdo as[cii] bel[owright] bo[tright] breakl[ist] bufdo cabc[lear] cat[ch] cex[pr] c[hange] cla[st] cN cnf[ile] comment co[py] cs de delf diffoff difft dj[ump] dsp[lit] echoe[rr] em[enu] endf[unction] exi[t] filet fir[st] foldo[pen] get h hi if intro k la lan[guage] lch[dir] let@ lg[etfile] lla[st] lnew[er] lNf[ile] loc[kmarks] lr[ewind] lv[imgrep] ma[rk] messages mkv mv nbc[lose] N[ext] nu[mber] opt[ions] ped[it] pp[op] pro pta[g] ptn[ext] pw[d] q re redr[aw] retu[rn] rubyd[o] san[dbox] sbm[odified] scrip setf[iletype] si sla[st] sn[ext] s@\n@\=\r" spe[llgood] spr[evious] startg[replace] stopi[nsert] sus[pend] sync tab tabfir[st] tabn[ext] tabs tclf[ile] tl[ast] tn[ext] tr tu[nmenu] undoj[oin] uns[ilent] ve[rsion] vimgrepa[dd] vs[plit] winc[md] wN[ext] ws[verb] x[it] XMLns xunmenu
|
||||
syn keyword vimCommand contained abo[veleft] arge[dit] au bf[irst] bp[revious] br[ewind] b[uffer] cad cb[uffer] cf[ile] changes cl[ist] cnew[er] cNf[ile] comp[iler] count cscope debug delf[unction] DiffOrig diffthis dl[ist] dwim echom[sg] emenu* en[dif] exu[sage] filetype fix[del] for go[to] ha[rdcopy] hid[e] ij[ump] is[earch] keepa lad la[st] lcl[ose] lex[pr] lgr[ep] lli[st] lne[xt] lo lockv[ar] ls lvimgrepa[dd] marks mk mkvie[w] mz nb[key] nkf o ownsyntax pe[rl] pr profd[el] ptf[irst] ptN[ext] py qa[ll] r[ead] redraws[tatus] rew[ind] rubyf[ile] sa[rgument] sbn[ext] scripte[ncoding] setg[lobal] sig sl[eep] sN[ext] so spelli[nfo] sre[wind] star[tinsert] sts[elect] sv[iew] syncbind tabc[lose] tabl[ast] tabN[ext] ta[g] te[aroff] tm tN[ext] tr[ewind] u undol[ist] up[date] vert[ical] vi[sual] w windo wp[revious] wundo xmapc[lear] xnoreme xwininfo
|
||||
syn keyword vimCommand contained al[l] argg[lobal] bad[d] bl[ast] br bro[wse] buffers caddb[uffer] cc cfir[st] chd[ir] clo[se] cn[ext] col[der] con cpf[ile] cstag debugg[reedy] delm[arks] diffp diffu[pdate] do e echon en endt[ry] f fin fo[ld] fu gr[ep] h[elp] his[tory] il[ist] isp[lit] keepalt laddb[uffer] lat lcs lf[ile] lgrepa[dd] lmak[e] lN[ext] loadk lol[der] lt[ag] lw[indow] mat[ch] mkdir mkv[imrc] mzf[ile] nbs[tart] nmapc[lear] ol[dfiles] p perld[o] pre[serve] prof[ile] ptj[ump] ptp[revious] py3 q[uit] rec[over] reg[isters] ri[ght] rundo sav[eas] sbN[ext] scrip[tnames] setl[ocal] sign sm[agic] sni[ff] sor[t] spellr[epall] st startr[eplace] sun[hide] sw[apname] synlist tabd[o] tabm[ove] tabo[nly] tags tf[irst] tm[enu] TOhtml try un unh[ide] v vi viu[sage] wa[ll] winp[os] wq wv[iminfo] xme xnoremenu y[ank]
|
||||
syn keyword vimCommand contained ar argl[ocal] ba[ll] bm[odified] brea[k] browseset bun[load] cad[dexpr] ccl[ose] cgetb[uffer] che[ckpath] cmapc[lear] cN[ext] colo[rscheme] conf[irm] cp[revious] cuna[bbrev] del di diffpatch dig doau ea e[dit] endf endw[hile] f[ile] fina[lly] foldc[lose] fun grepa[dd] helpf[ind] i imapc[lear] iuna[bbrev] keepj[umps] lad[dexpr] later lcscope lfir[st] lh[elpgrep] lmapc[lear] lnf loadkeymap lop[en] lua ma menut mk[exrc] mo mz[scheme] ne noa omapc[lear] P po[p] prev[ious] promptf[ind] ptl[ast] ptr[ewind] pyf[ile] quita[ll] red Ren rightb[elow] ru[ntime] sba[ll] sbp[revious] scs sf[ind] sil[ent] sm[ap] sno[magic] so[urce] spellu[ndo] sta[g]
|
||||
syn match vimCommand contained "\<z[-+^.=]\="
|
||||
|
||||
" vimOptions are caught only when contained in a vimSet {{{2
|
||||
syn keyword vimOption contained acd ambiwidth arabicshape autowriteall backupdir bdlay binary breakat bufhidden cd ci cinw co commentstring confirm cpoptions cscoperelative csre cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imd include inex isi js kp linebreak lm lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path pheader previewheight printmbcharset pvw remap rl ruf sc scrollopt selectmode shellpipe shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf tabline tags tbs textmode timeout tl tpm ttimeoutlen ttymouse udf undoreload vbs vi vop wcm whichwrap wildignore winaltkeys winminwidth wmnu write
|
||||
syn keyword vimOption contained ai ambw ari aw backupext beval biosk brk buflisted cdpath cin cinwords cocu compatible consk cpt cscopetag cst cursorline dex digraph ead ei equalalways eventignore fde fdt fileencoding fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imdisable includeexpr inf isident key langmap lines lmap ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pi previewwindow printmbfont qe report rlc ruler scb scs sessionoptions shellquote shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws tabpagemax tagstack tenc textwidth timeoutlen tm tr ttm ttyscroll udir updatecount vdir viewdir wa wd wi wildignorecase window winwidth wmw writeany
|
||||
syn keyword vimOption contained akm anti arshape awa backupskip bex bioskey browsedir buftype cedit cindent clipboard cole complete conskey crb cscopetagorder csto cwh dg dip eadirection ek equalprg ex fdi fen fileencodings flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imi incsearch infercase isk keymap langmenu linespace loadplugins macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pm printdevice printoptions quoteescape restorescreen rnu rulerformat scr sect sft shellredir shm showmode sj smd spell splitbelow ssl stl sw sxq tabstop tal term tf title to ts tty ttytype ul updatetime ve viewoptions wak weirdinvert wic wildmenu winfixheight wiv wop writebackup
|
||||
syn keyword vimOption contained al antialias autochdir background balloondelay bexpr bk bs casemap cf cink cmdheight colorcolumn completefunc copyindent cryptmethod cscopeverbose csverb debug dict dir eb enc errorbells expandtab fdl fenc fileformat fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatekey iminsert inde insertmode iskeyword keymodel laststatus lisp lpl magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste pex pmbcs printencoding prompt rdt revins ro runtimepath scroll sections sh shellslash shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile syn tag tb termbidi tgst titlelen toolbar tsl ttybuiltin tw undodir ur verbose viminfo warn wfh wig wildmode winfixwidth wiw wrap writedelay
|
||||
syn keyword vimOption contained aleph ar autoindent backspace ballooneval bg bkc bsdir cb cfu cinkeys cmdwinheight columns completeopt cot cscopepathcomp cspc cuc deco dictionary directory ed encoding errorfile exrc fdls fencs fileformats fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imak ims indentexpr is isp keywordprg lazyredraw lispwords ls makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pexpr pmbfn printexpr pt readonly ri rs sb scrollbind secure shcf shelltemp shortname shq sm so spellfile spr st sts swapsync synmaxcol tagbsearch tbi termencoding thesaurus titleold toolbariconsize tsr ttyfast tx undofile ut verbosefile virtualedit wb wfw wildchar wildoptions winheight wm wrapmargin ws
|
||||
syn keyword vimOption contained allowrevins arab autoread backup balloonexpr bh bl bsk cc ch cino cmp com concealcursor cp cscopeprg csprg cul def diff display edcompatible endofline errorformat fcl fdm fex filetype fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imc imsearch indentkeys isf isprint km lbr list lsp makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pfn popt printfont pumheight redrawtime rightleft rtp sbo scrolljump sel shell shelltype showbreak si smartcase softtabstop spelllang sps sta su swb syntax taglength tbidi terse tildeop titlestring top ttimeout ttym uc undolevels vb vfile visualbell wc wh wildcharm wim winminheight wmh wrapscan ww
|
||||
syn keyword vimOption contained altkeymap arabic autowrite backupcopy bdir bin bomb bt ccv charconvert cinoptions cms comments conceallevel cpo cscopequickfix csqf cursorbind define diffexpr dy ef eol esckeys fcs fdn ff fillchars foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imcmdline inc indk isfname joinspaces kmp lcs listchars lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode ph preserveindent printheader pvh relativenumber rightleftcmd ru sbr scrolloff selection shellcmdflag shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf ta tagrelative tbis textauto
|
||||
syn keyword vimOption contained acd ambiwidth arabicshape autowriteall backupdir bdlay binary breakat bufhidden cd ci cinw co commentstring confirm cpoptions cscoperelative csre cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imd include inex isi js kp linebreak lm lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path pheader previewheight printmbcharset pvw remap rl ruf sc scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf syntax taglength tbidi terse tildeop tl tpm ttimeoutlen ttymouse udf undoreload vbs vi vop wcm whichwrap wildignore winaltkeys winminwidth wmnu write
|
||||
syn keyword vimOption contained ai ambw ari aw backupext beval biosk brk buflisted cdpath cin cinwords cocu compatible consk cpt cscopetag cst cursorline dex digraph ead ei equalalways eventignore fde fdt fileencoding fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imdisable includeexpr inf isident key langmap lines lmap ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pi previewwindow printmbfont qe report rlc ruler scb scs sessionoptions shellquote shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf ta tagrelative tbis textauto timeout tm tr ttm ttyscroll udir updatecount vdir viewdir wa wd wi wildignorecase window winwidth wmw writeany
|
||||
syn keyword vimOption contained akm anti arshape awa backupskip bex bioskey browsedir buftype cedit cindent clipboard cole complete conskey crb cscopetagorder csto cwh dg dip eadirection ek equalprg ex fdi fen fileencodings flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imi incsearch infercase isk keymap langmenu linespace loadplugins macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pm printdevice printoptions quoteescape restorescreen rnu rulerformat scr sect sft shellredir shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws tabline tags tbs textmode timeoutlen to ts tty ttytype ul updatetime ve viewoptions wak weirdinvert wic wildmenu winfixheight wiv wop writebackup
|
||||
syn keyword vimOption contained al antialias autochdir background balloondelay bexpr bk bs casemap cf cink cmdheight colorcolumn completefunc copyindent cryptmethod cscopeverbose csverb debug dict dir eb enc errorbells expandtab fdl fenc fileformat fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatekey iminsert inde insertmode iskeyword keymodel laststatus lisp lpl magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste pex pmbcs printencoding prompt rdt revins ro runtimepath scroll sections sh shellslash shm showmode sj smd spell splitbelow ssl stl sw sxe tabpagemax tagstack tenc textwidth title toolbar tsl ttybuiltin tw undodir ur verbose viminfo warn wfh wig wildmode winfixwidth wiw wrap writedelay
|
||||
syn keyword vimOption contained aleph ar autoindent backspace ballooneval bg bkc bsdir cb cfu cinkeys cmdwinheight columns completeopt cot cscopepathcomp cspc cuc deco dictionary directory ed encoding errorfile exrc fdls fencs fileformats fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imak ims indentexpr is isp keywordprg lazyredraw lispwords ls makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pexpr pmbfn printexpr pt readonly ri rs sb scrollbind secure shcf shelltemp shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tal term tf titlelen toolbariconsize tsr ttyfast tx undofile ut verbosefile virtualedit wb wfw wildchar wildoptions winheight wm wrapmargin ws
|
||||
syn keyword vimOption contained allowrevins arab autoread backup balloonexpr bh bl bsk cc ch cino cmp com concealcursor cp cscopeprg csprg cul def diff display edcompatible endofline errorformat fcl fdm fex filetype fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imc imsearch indentkeys isf isprint km lbr list lsp makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pfn popt printfont pumheight redrawtime rightleft rtp sbo scrolljump sel shell shelltype shortname shq sm so spellfile spr st sts swapsync syn tag tb termbidi tgst titleold top ttimeout ttym uc undolevels vb vfile visualbell wc wh wildcharm wim winminheight wmh wrapscan ww
|
||||
syn keyword vimOption contained altkeymap arabic autowrite backupcopy bdir bin bomb bt ccv charconvert cinoptions cms comments conceallevel cpo cscopequickfix csqf cursorbind define diffexpr dy ef eol esckeys fcs fdn ff fillchars foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imcmdline inc indk isfname joinspaces kmp lcs listchars lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode ph preserveindent printheader pvh relativenumber rightleftcmd ru sbr scrolloff selection shellcmdflag shellxescape showbreak si smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tbi termencoding thesaurus titlestring
|
||||
|
||||
" vimOptions: These are the turn-off setting variants {{{2
|
||||
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobk nobuflisted nocin noconfirm nocopyindent nocscopetag nocsverb nocursorbind nodeco nodiff noeb noek noequalalways noesckeys noex noexrc nofk nofoldenable nogdefault nohid nohk nohkmapp nohls noic noignorecase noimc noimd noincsearch noinfercase nois nojs nolbr nolisp noloadplugins nolz nomacatsui nomh nomod nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast novb nowa nowb nowfh nowildignorecase* * nowinfixheight nowiv nowrap nowrite nowritebackup
|
||||
syn keyword vimOption contained noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa nobeval nobiosk nobl nocf nocindent noconsk nocp nocscopeverbose nocuc nocursorcolumn nodelcombine nodigraph noed noendofline noerrorbells noet noexpandtab nofen nofkmap nogd noguipty nohidden nohkmap nohkp nohlsearch noicon noim noimcmdline noimdisable noinf noinsertmode nojoinspaces nolazyredraw nolinebreak nolist nolpl noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx novisualbell nowarn noweirdinvert nowfw nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
|
||||
syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobioskey nobomb noci nocompatible noconskey nocrb nocst nocul nocursorline nodg noea noedcompatible noeol
|
||||
syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobioskey nobomb noci nocompatible noconskey nocrb nocst nocul nocursorline nodg noea noedcompatible noeol
|
||||
|
||||
" vimOptions: These are the invertible variants {{{2
|
||||
syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbinary invbk invbuflisted invcin invconfirm invcopyindent invcscopetag invcsverb invcursorbind invdeco invdiff inveb invek invequalalways invesckeys invex invexrc invfk invfoldenable invgdefault invhid invhk invhkmapp invhls invic invignorecase invimc invimd invincsearch invinfercase invis invjs invlbr invlisp invloadplugins invlz invmacatsui invmh invmod invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invremap invrevins invrightleft invrnu invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invvb invwa invwb invwfh invwildignorecase* * invwinfixheight invwiv invwrap invwrite invwritebackup
|
||||
syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invbeval invbiosk invbl invcf invcindent invconsk invcp invcscopeverbose invcuc invcursorcolumn invdelcombine invdigraph inved invendofline inverrorbells invet invexpandtab invfen invfkmap invgd invguipty invhidden invhkmap invhkp invhlsearch invicon invim invimcmdline invimdisable invinf invinsertmode invjoinspaces invlazyredraw invlinebreak invlist invlpl invma invmagic invml invmodeline invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invrelativenumber invrestorescreen invri invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invvisualbell invwarn invweirdinvert invwfw invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
|
||||
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbioskey invbomb invci invcompatible invconskey invcrb invcst invcul invcursorline invdg invea invedcompatible inveol
|
||||
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbioskey invbomb invci invcompatible invconskey invcrb invcst invcul invcursorline invdg invea invedcompatible inveol
|
||||
|
||||
" termcap codes (which can also be set) {{{2
|
||||
syn keyword vimOption contained t_AB t_al t_bc t_ce t_cl t_Co t_cs t_Cs t_CS t_CV t_da t_db t_dl t_DL t_EI t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_te t_ti t_ts t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xs t_ZH t_ZR
|
||||
syn keyword vimOption contained t_AF t_AL t_cd t_Ce t_cm
|
||||
syn keyword vimOption contained t_AF t_AL t_cd t_Ce t_cm
|
||||
syn match vimOption contained "t_%1"
|
||||
syn match vimOption contained "t_#2"
|
||||
syn match vimOption contained "t_#4"
|
||||
@@ -59,26 +58,26 @@ syn match vimOption contained "t_%i"
|
||||
syn match vimOption contained "t_k;"
|
||||
|
||||
" unsupported settings: these are supported by vi but don't do anything in vim {{{2
|
||||
syn keyword vimErrSetting contained hardtabs ht w1200 w300 w9600
|
||||
syn keyword vimErrSetting contained hardtabs ht w1200 w300 w9600
|
||||
|
||||
" AutoCmd Events {{{2
|
||||
syn case ignore
|
||||
syn keyword vimAutoEvent contained BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre Cmd-event CmdwinEnter CmdwinLeave ColorScheme CursorHold CursorHoldI CursorMoved CursorMovedI EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup QuickFixCmdPost QuickFixCmdPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabEnter TabLeave TermChanged TermResponse User UserGettingBored VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave
|
||||
syn keyword vimAutoEvent contained BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre Cmd-event CmdwinEnter CmdwinLeave ColorScheme CursorHold CursorHoldI CursorMoved CursorMovedI EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup QuickFixCmdPost QuickFixCmdPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabEnter TabLeave TermChanged TermResponse User UserGettingBored VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave
|
||||
|
||||
" Highlight commonly used Groupnames {{{2
|
||||
syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
|
||||
syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
|
||||
|
||||
" Default highlighting groups {{{2
|
||||
syn keyword vimHLGroup contained ColorColumn Cursor CursorColumn CursorIM CursorLine DiffAdd DiffChange DiffDelete DiffText Directory ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu
|
||||
syn keyword vimHLGroup contained ColorColumn Cursor CursorColumn CursorIM CursorLine DiffAdd DiffChange DiffDelete DiffText Directory ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu
|
||||
syn match vimHLGroup contained "Conceal"
|
||||
syn case match
|
||||
|
||||
" Function Names {{{2
|
||||
syn keyword vimFuncName contained abs append argv atan2 bufexists bufname byte2line ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdtype getfperm getftype getmatches getqflist gettabvar getwinposy globpath haslocaldir histdel hlexists iconv input inputrestore insert items len line localtime map match matchdelete matchstr min mode nextnonblank pathshorten prevnonblank pumvisible readfile reltimestr remote_foreground remote_read remove repeat reverse search searchpair searchpos serverlist setcmdpos setloclist setpos setreg settabwinvar shellescape sin sort spellbadword split str2float strchars strftime string strpart strtrans submatch synconcealed synIDattr synstack tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree virtcol winbufnr winheight winnr winrestview winwidth
|
||||
syn keyword vimFuncName contained acos argc asin browse buflisted bufnr byteidx changenr clearmatches complete_add copy count deepcopy diff_filler escape executable expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcmdline getcwd getfsize getline getpid getreg gettabwinvar getwinvar has hasmapto histget hlID indent inputdialog inputsave isdirectory join libcall line2byte log maparg matchadd matchend max mkdir mzeval nr2char pow printf range reltime remote_expr remote_peek remote_send rename resolve round searchdecl searchpairpos server2client setbufvar setline setmatches setqflist settabvar setwinvar simplify sinh soundfold spellsuggest sqrt str2nr strdisplaywidth stridx strlen strridx strwidth substitute synID synIDtrans system tabpagenr tagfiles tan tempname toupper trunc undofile values visualmode wincol winline winrestcmd winsaveview writefile
|
||||
syn keyword vimFuncName contained add argidx atan browsedir bufloaded bufwinnr call char2nr col complete_check cos cscope_connection delete diff_hlID eval exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdpos getfontname getftime getloclist getpos getregtype getwinposx glob has_key histadd histnr hostname index inputlist inputsecret islocked keys libcallnr lispindent log10 mapcheck matcharg matchlist
|
||||
syn keyword vimFuncName contained abs and argidx atan browsedir bufloaded bufwinnr call char2nr col complete_check cos cscope_connection delete diff_hlID eval exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdpos getfontname getftime getloclist getpos getregtype getwinposx glob has_key histadd histnr hostname index inputlist inputsecret isdirectory join libcall line2byte log map match matchdelete matchstr mkdir nextnonblank pathshorten printf pyeval reltime remote_foreground remote_read remove repeat reverse search searchpair searchpos serverlist setcmdpos setloclist setpos setreg settabwinvar shellescape simplify sinh soundfold spellsuggest sqrt str2nr strdisplaywidth stridx strlen strridx strwidth substitute synID synIDtrans system tabpagenr tagfiles tan tempname toupper trunc undofile values visualmode wincol winline winrestcmd winsaveview writefile
|
||||
syn keyword vimFuncName contained acos append argv atan2 bufexists bufname byte2line ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdtype getfperm getftype getmatches getqflist gettabvar getwinposy globpath haslocaldir histdel hlexists iconv input inputrestore insert islocked keys libcallnr lispindent log10 maparg matchadd matchend max mode nr2char pow pumvisible range reltimestr remote_peek remote_send rename resolve round searchdecl searchpairpos server2client setbufvar setline setmatches setqflist settabvar setwinvar shiftwidth sin sort spellbadword split str2float strchars strftime string strpart strtrans submatch synconcealed synIDattr synstack tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree virtcol winbufnr winheight winnr winrestview winwidth xor
|
||||
syn keyword vimFuncName contained add argc asin browse buflisted bufnr byteidx changenr clearmatches complete_add copy count deepcopy diff_filler escape executable expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcmdline getcwd getfsize getline getpid getreg gettabwinvar getwinvar has hasmapto histget hlID indent inputdialog inputsave invert items len line localtime luaeval mapcheck matcharg matchlist min mzeval or prevnonblank py3eval readfile remote_expr
|
||||
|
||||
"--- syntax above generated by mkvimvim ---
|
||||
"--- syntax here and above generated by mkvimvim ---
|
||||
" Special Vim Highlighting (not automatic) {{{1
|
||||
|
||||
" commands not picked up by the generator (due to non-standard format)
|
||||
@@ -97,17 +96,17 @@ endif
|
||||
|
||||
" Numbers {{{2
|
||||
" =======
|
||||
syn match vimNumber "\<\d\+\([lL]\|\.\d\+\)\="
|
||||
syn match vimNumber "-\d\+\([lL]\|\.\d\+\)\="
|
||||
syn match vimNumber "\<\d\+\([lL]\|\.\d\+\)\=" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand
|
||||
syn match vimNumber "-\d\+\([lL]\|\.\d\+\)\=" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand
|
||||
syn match vimNumber "\<0[xX]\x\+"
|
||||
syn match vimNumber "#\x\{6}"
|
||||
|
||||
" All vimCommands are contained by vimIsCommands. {{{2
|
||||
syn match vimCmdSep "[:|]\+" skipwhite nextgroup=vimAddress,vimAutoCmd,vimCommand,vimExtCmd,vimFilter,vimLet,vimMap,vimMark,vimSet,vimSyntax,vimUserCmd
|
||||
syn match vimIsCommand "\<\h\w*\>" contains=vimCommand
|
||||
syn match vimVar "\<[bwglsav]:\K\k*\>"
|
||||
syn match vimVar contained "\<\K\k*\>"
|
||||
syn match vimFBVar contained "\<[bwglsav]:\K\k*\>"
|
||||
syn match vimVar contained "\<\h\w*\>"
|
||||
syn match vimVar "\<[bwglsav]:\h\w*\>"
|
||||
syn match vimFBVar contained "\<[bwglsav]:\h\w*\>"
|
||||
syn keyword vimCommand contained in
|
||||
|
||||
" Insertions And Appends: insert append {{{2
|
||||
@@ -137,9 +136,9 @@ syn keyword vimFTOption contained detect indent off on plugin
|
||||
" ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking.
|
||||
syn cluster vimAugroupList contains=vimIsCommand,vimCommand,vimUserCmd,vimExecute,vimNotFunc,vimFuncName,vimFunction,vimFunctionError,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,vimComment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue
|
||||
if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'a'
|
||||
syn region vimAugroup fold start="\<aug\%[roup]\>\s\+\K\k*" end="\<aug\%[roup]\>\s\+[eE][nN][dD]\>" contains=vimAugroupKey,vimAutoCmd,@vimAugroupList keepend
|
||||
syn region vimAugroup fold start="\<aug\%[roup]\>\s\+\h\w*" end="\<aug\%[roup]\>\s\+[eE][nN][dD]\>" contains=vimAugroupKey,vimAutoCmd,@vimAugroupList keepend
|
||||
else
|
||||
syn region vimAugroup start="\<aug\%[roup]\>\s\+\K\k*" end="\<aug\%[roup]\>\s\+[eE][nN][dD]\>" contains=vimAugroupKey,vimAutoCmd,@vimAugroupList keepend
|
||||
syn region vimAugroup start="\<aug\%[roup]\>\s\+\h\w*" end="\<aug\%[roup]\>\s\+[eE][nN][dD]\>" contains=vimAugroupKey,vimAutoCmd,@vimAugroupList keepend
|
||||
endif
|
||||
syn match vimAugroup "aug\%[roup]!" contains=vimAugroupKey
|
||||
if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_noaugrouperror")
|
||||
@@ -150,7 +149,7 @@ syn keyword vimAugroupKey contained aug[roup]
|
||||
" Operators: {{{2
|
||||
" =========
|
||||
" COMBAK: vimOperParen used to have "oneline"
|
||||
syn cluster vimOperGroup contains=vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimRegister,vimContinue
|
||||
syn cluster vimOperGroup contains=vimEnvvar,vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimRegister,vimContinue
|
||||
syn match vimOper "\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\)[?#]\{0,2}" skipwhite nextgroup=vimString,vimSpecFile
|
||||
syn match vimOper "||\|&&\|[-+.]" skipwhite nextgroup=vimString,vimSpecFile
|
||||
syn region vimOperParen matchgroup=vimParenSep start="(" end=")" contains=@vimOperGroup
|
||||
@@ -162,7 +161,7 @@ endif
|
||||
" Functions : Tag is provided for those who wish to highlight tagged functions {{{2
|
||||
" =========
|
||||
syn cluster vimFuncList contains=vimCommand,vimFunctionError,vimFuncKey,Tag,vimFuncSID
|
||||
syn cluster vimFuncBodyList contains=vimAbb,vimAddress,vimAugroupKey,vimAutoCmd,vimCmplxRepeat,vimComment,vimComment,vimContinue,vimCtrlChar,vimEcho,vimEchoHL,vimExecute,vimIf,vimIsCommand,vimFBVar,vimFunc,vimFunction,vimFuncVar,vimHighlight,vimIsCommand,vimLet,vimLineComment,vimMap,vimMark,vimNorm,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegion,vimRegister,vimSet,vimSpecFile,vimString,vimSubst,vimSynLine,vimUserCommand
|
||||
syn cluster vimFuncBodyList contains=vimAbb,vimAddress,vimAugroupKey,vimAutoCmd,vimCmplxRepeat,vimComment,vimComment,vimContinue,vimCtrlChar,vimEcho,vimEchoHL,vimExecute,vimIf,vimIsCommand,vimFBVar,vimFunc,vimFunction,vimFuncVar,vimHighlight,vimIsCommand,vimLet,vimLineComment,vimMap,vimMark,vimNorm,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegion,vimRegister,vimSet,vimSpecFile,vimString,vimSubst,vimSynLine,vimUnmap,vimUserCommand
|
||||
syn match vimFunction "\<fu\%[nction]!\=\s\+\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)\=\%(\i\|[#.]\|{.\{-1,}}\)*\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
|
||||
|
||||
if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'f'
|
||||
@@ -170,7 +169,7 @@ if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'f'
|
||||
else
|
||||
syn region vimFuncBody contained start="\ze(" matchgroup=vimCommand end="\<\(endf\>\|endfu\%[nction]\>\)" contains=@vimFuncBodyList
|
||||
endif
|
||||
syn match vimFuncVar contained "a:\(\K\k*\|\d\+\)"
|
||||
syn match vimFuncVar contained "a:\(\h\w*\|\d\+\)"
|
||||
syn match vimFuncSID contained "\c<sid>\|\<s:"
|
||||
syn keyword vimFuncKey contained fu[nction]
|
||||
syn match vimFuncBlank contained "\s\+"
|
||||
@@ -246,7 +245,7 @@ syn match vimStringCont contained +\(\\\\\|.\)\{-}[^\\]"+
|
||||
syn cluster vimSubstList contains=vimPatSep,vimPatRegion,vimPatSepErr,vimSubstTwoBS,vimSubstRange,vimNotation
|
||||
syn cluster vimSubstRepList contains=vimSubstSubstr,vimSubstTwoBS,vimNotation
|
||||
syn cluster vimSubstList add=vimCollection
|
||||
syn match vimSubst "\(:\+\s*\|^\s*\||\s*\)\<s\%[ubstitute][:[:alpha:]]\@!" nextgroup=vimSubstPat
|
||||
syn match vimSubst "\(:\+\s*\|^\s*\||\s*\)\<\%(s\%[ubstitute]\|sm\%[agic]\|sno\%[magic]\)[:[:alpha:]]\@!" nextgroup=vimSubstPat
|
||||
syn match vimSubst "s\%[ubstitute][:#[:alpha:]]\@!" nextgroup=vimSubstPat contained
|
||||
syn match vimSubst "/\zss\%[ubstitute]\ze/" nextgroup=vimSubstPat
|
||||
syn match vimSubst1 contained "s\%[ubstitute]\>" nextgroup=vimSubstPat
|
||||
@@ -290,7 +289,7 @@ syn match vimCmplxRepeat '@[0-9a-z".=@:]\ze\($\|[^a-zA-Z]\>\)'
|
||||
|
||||
" Set command and associated set-options (vimOptions) with comment {{{2
|
||||
syn region vimSet matchgroup=vimCommand start="\<\%(setl\%[ocal]\|setg\%[lobal]\|se\%[t]\)\>" skip="\%(\\\\\)*\\." end="$" matchgroup=vimNotation end="<[cC][rR]>" keepend oneline contains=vimSetEqual,vimOption,vimErrSetting,vimComment,vimSetString,vimSetMod
|
||||
syn region vimSetEqual contained start="[=:]\|[-+^]=" skip="\\\\\|\\\s" end="[| \t]\|$"me=e-1 contains=vimCtrlChar,vimSetSep,vimNotation oneline
|
||||
syn region vimSetEqual contained start="[=:]\|[-+^]=" skip="\\\\\|\\\s" end="[| \t]\|$"me=e-1 contains=vimCtrlChar,vimSetSep,vimNotation,vimEnvvar oneline
|
||||
syn region vimSetString contained start=+="+hs=s+1 skip=+\\\\\|\\"+ end=+"+ contains=vimCtrlChar
|
||||
syn match vimSetSep contained "[,:]"
|
||||
syn match vimSetMod contained "&vim\=\|[!&?<]\|all&"
|
||||
@@ -349,7 +348,7 @@ syn match vimMenuBang "!" contained skipwhite nextgroup=@vimMenuList
|
||||
" Angle-Bracket Notation (tnx to Michael Geddes) {{{2
|
||||
" ======================
|
||||
syn case ignore
|
||||
syn match vimNotation "\(\\\|<lt>\)\=<\([scamd]-\)\{0,4}x\=\(f\d\{1,2}\|[^ \t:]\|cr\|lf\|linefeed\|return\|k\=del\%[ete]\|bs\|backspace\|tab\|esc\|right\|left\|help\|undo\|insert\|ins\|k\=home\|k\=end\|kplus\|kminus\|kdivide\|kmultiply\|kenter\|space\|k\=\(page\)\=\(\|down\|up\)\)>" contains=vimBracket
|
||||
syn match vimNotation "\(\\\|<lt>\)\=<\([scamd]-\)\{0,4}x\=\(f\d\{1,2}\|[^ \t:]\|cr\|lf\|linefeed\|return\|k\=del\%[ete]\|bs\|backspace\|tab\|esc\|right\|left\|help\|undo\|insert\|ins\|k\=home\|k\=end\|kplus\|kminus\|kdivide\|kmultiply\|kenter\|kpoint\|space\|k\=\(page\)\=\(\|down\|up\|k\d\>\)\)>" contains=vimBracket
|
||||
syn match vimNotation "\(\\\|<lt>\)\=<\([scam2-4]-\)\{0,4}\(right\|left\|middle\)\(mouse\)\=\(drag\|release\)\=>" contains=vimBracket
|
||||
syn match vimNotation "\(\\\|<lt>\)\=<\(bslash\|plug\|sid\|space\|bar\|nop\|nul\|lt\)>" contains=vimBracket
|
||||
syn match vimNotation '\(\\\|<lt>\)\=<C-R>[0-9a-z"%#:.\-=]'he=e-1 contains=vimBracket
|
||||
@@ -408,7 +407,7 @@ syn keyword vimSynType contained clear skipwhite nextgroup=vimGroupList
|
||||
|
||||
" Syntax: cluster {{{2
|
||||
syn keyword vimSynType contained cluster skipwhite nextgroup=vimClusterName
|
||||
syn region vimClusterName contained matchgroup=vimGroupName start="\k\+" skip="\\\\\|\\|" matchgroup=vimSep end="$\||" contains=vimGroupAdd,vimGroupRem,vimSynContains,vimSynError
|
||||
syn region vimClusterName contained matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" matchgroup=vimSep end="$\||" contains=vimGroupAdd,vimGroupRem,vimSynContains,vimSynError
|
||||
syn match vimGroupAdd contained "add=" nextgroup=vimGroupList
|
||||
syn match vimGroupRem contained "remove=" nextgroup=vimGroupList
|
||||
syn cluster vimFuncBodyList add=vimSynType,vimGroupAdd,vimGroupRem
|
||||
@@ -420,14 +419,14 @@ syn cluster vimFuncBodyList add=vimSynType
|
||||
" Syntax: keyword {{{2
|
||||
syn cluster vimSynKeyGroup contains=vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin
|
||||
syn keyword vimSynType contained keyword skipwhite nextgroup=vimSynKeyRegion
|
||||
syn region vimSynKeyRegion contained oneline keepend matchgroup=vimGroupName start="\k\+" skip="\\\\\|\\|" matchgroup=vimSep end="|\|$" contains=@vimSynKeyGroup
|
||||
syn region vimSynKeyRegion contained oneline keepend matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" matchgroup=vimSep end="|\|$" contains=@vimSynKeyGroup
|
||||
syn match vimSynKeyOpt contained "\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
|
||||
syn cluster vimFuncBodyList add=vimSynType
|
||||
|
||||
" Syntax: match {{{2
|
||||
syn cluster vimSynMtchGroup contains=vimMtchComment,vimSynContains,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation
|
||||
syn keyword vimSynType contained match skipwhite nextgroup=vimSynMatchRegion
|
||||
syn region vimSynMatchRegion contained keepend matchgroup=vimGroupName start="\k\+" matchgroup=vimSep end="|\|$" contains=@vimSynMtchGroup
|
||||
syn region vimSynMatchRegion contained keepend matchgroup=vimGroupName start="\h\w*" matchgroup=vimSep end="|\|$" contains=@vimSynMtchGroup
|
||||
syn match vimSynMtchOpt contained "\<\(conceal\|transparent\|contained\|excludenl\|skipempty\|skipwhite\|display\|extend\|skipnl\|fold\)\>"
|
||||
if has("conceal")
|
||||
syn match vimSynMtchOpt contained "\<cchar=" nextgroup=vimSynMtchCchar
|
||||
@@ -442,7 +441,7 @@ syn keyword vimSynType contained enable list manual off on reset
|
||||
syn cluster vimSynRegPatGroup contains=vimPatSep,vimNotPatSep,vimSynPatRange,vimSynNotPatRange,vimSubstSubstr,vimPatRegion,vimPatSepErr,vimNotation
|
||||
syn cluster vimSynRegGroup contains=vimSynContains,vimSynNextgroup,vimSynRegOpt,vimSynReg,vimSynMtchGrp
|
||||
syn keyword vimSynType contained region skipwhite nextgroup=vimSynRegion
|
||||
syn region vimSynRegion contained keepend matchgroup=vimGroupName start="\k\+" skip="\\\\\|\\|" end="|\|$" contains=@vimSynRegGroup
|
||||
syn region vimSynRegion contained keepend matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" end="|\|$" contains=@vimSynRegGroup
|
||||
syn match vimSynRegOpt contained "\<\(conceal\(ends\)\=\|transparent\|contained\|excludenl\|skipempty\|skipwhite\|display\|keepend\|oneline\|extend\|skipnl\|fold\)\>"
|
||||
syn match vimSynReg contained "\(start\|skip\|end\)="he=e-1 nextgroup=vimSynRegPat
|
||||
syn match vimSynMtchGrp contained "matchgroup=" nextgroup=vimGroup,vimHLGroup
|
||||
@@ -468,9 +467,9 @@ syn keyword vimSyncRegion contained region skipwhite nextgroup=vimSynReg
|
||||
syn match vimSyncLinebreak contained "\<linebreaks=" skipwhite nextgroup=vimNumber
|
||||
syn keyword vimSyncLinecont contained linecont skipwhite nextgroup=vimSynRegPat
|
||||
syn match vimSyncLines contained "\(min\|max\)\=lines=" nextgroup=vimNumber
|
||||
syn match vimSyncGroupName contained "\k\+" skipwhite nextgroup=vimSyncKey
|
||||
syn match vimSyncGroupName contained "\h\w*" skipwhite nextgroup=vimSyncKey
|
||||
syn match vimSyncKey contained "\<groupthere\|grouphere\>" skipwhite nextgroup=vimSyncGroup
|
||||
syn match vimSyncGroup contained "\k\+" skipwhite nextgroup=vimSynRegPat,vimSyncNone
|
||||
syn match vimSyncGroup contained "\h\w*" skipwhite nextgroup=vimSynRegPat,vimSyncNone
|
||||
syn keyword vimSyncNone contained NONE
|
||||
|
||||
" Additional IsCommand, here by reasons of precedence {{{2
|
||||
@@ -541,8 +540,8 @@ syn match vimCommentTitleLeader '"\s\+'ms=s+1 contained
|
||||
" ====================
|
||||
syn match vimSearch '^\s*[/?].*' contains=vimSearchDelim
|
||||
syn match vimSearchDelim '^\s*\zs[/?]\|[/?]$' contained
|
||||
syn region vimGlobal matchgroup=Statement start='\<g\%[lobal]!\=/' skip='\\.' end='/'
|
||||
syn region vimGlobal matchgroup=Statement start='\<v\%[global]!\=/' skip='\\.' end='/'
|
||||
syn region vimGlobal matchgroup=Statement start='\<g\%[lobal]!\=/' skip='\\.' end='/' skipwhite nextgroup=vimSubst
|
||||
syn region vimGlobal matchgroup=Statement start='\<v\%[global]!\=/' skip='\\.' end='/' skipwhite nextgroup=vimSubst
|
||||
|
||||
" Scripts : perl,ruby : Benoit Cerrina {{{2
|
||||
" ======= python,tcl: Johannes Zellner
|
||||
@@ -753,9 +752,6 @@ syn sync match vimAugroupSyncA groupthere NONE "\<aug\%[roup]\>\s\+[eE][nN][dD]"
|
||||
" Highlighting Settings {{{2
|
||||
" ====================
|
||||
|
||||
hi def link vimAuHighlight vimHighlight
|
||||
hi def link vimSubst1 vimSubst
|
||||
hi def link vimBehaveModel vimBehave
|
||||
|
||||
if !exists("g:vimsyn_noerror")
|
||||
hi def link vimBehaveError vimError
|
||||
@@ -778,22 +774,43 @@ endif
|
||||
hi def link vimAbb vimCommand
|
||||
hi def link vimAddress vimMark
|
||||
hi def link vimAugroupKey vimCommand
|
||||
hi def link vimAuHighlight vimHighlight
|
||||
hi def link vimAutoCmdOpt vimOption
|
||||
hi def link vimAutoCmd vimCommand
|
||||
hi def link vimAutoEvent Type
|
||||
hi def link vimAutoSet vimCommand
|
||||
hi def link vimBehaveModel vimBehave
|
||||
hi def link vimBehave vimCommand
|
||||
hi def link vimBracket Delimiter
|
||||
hi def link vimCmplxRepeat SpecialChar
|
||||
hi def link vimCommand Statement
|
||||
hi def link vimComment Comment
|
||||
hi def link vimCommentString vimString
|
||||
hi def link vimCommentTitle PreProc
|
||||
hi def link vimCondHL vimCommand
|
||||
hi def link vimContinue Special
|
||||
hi def link vimCtrlChar SpecialChar
|
||||
hi def link vimEchoHLNone vimGroup
|
||||
hi def link vimEchoHL vimCommand
|
||||
hi def link vimElseIfErr Error
|
||||
hi def link vimElseif vimCondHL
|
||||
hi def link vimEnvvar PreProc
|
||||
hi def link vimError Error
|
||||
hi def link vimFBVar vimVar
|
||||
hi def link vimFgBgAttrib vimHiAttrib
|
||||
hi def link vimFold Folded
|
||||
hi def link vimFTCmd vimCommand
|
||||
hi def link vimFTOption vimSynType
|
||||
hi def link vimFuncKey vimCommand
|
||||
hi def link vimFuncName Function
|
||||
hi def link vimFuncSID Special
|
||||
hi def link vimFuncVar Identifier
|
||||
hi def link vimGroupAdd vimSynOption
|
||||
hi def link vimGroupName vimGroup
|
||||
hi def link vimGroupRem vimSynOption
|
||||
hi def link vimGroupSpecial Special
|
||||
hi def link vimGroup Type
|
||||
hi def link vimHiAttrib PreProc
|
||||
hi def link vimHiClear vimHighlight
|
||||
hi def link vimHiCtermFgBg vimHiTerm
|
||||
hi def link vimHiCTerm vimHiTerm
|
||||
@@ -803,115 +820,97 @@ hi def link vimHiGuiFgBg vimHiTerm
|
||||
hi def link vimHiGuiFont vimHiTerm
|
||||
hi def link vimHiGuiRgb vimNumber
|
||||
hi def link vimHiGui vimHiTerm
|
||||
hi def link vimHiNmbr Number
|
||||
hi def link vimHiStartStop vimHiTerm
|
||||
hi def link vimHiTerm Type
|
||||
hi def link vimHLGroup vimGroup
|
||||
hi def link vimHLMod PreProc
|
||||
hi def link vimInsert vimString
|
||||
hi def link vimKeyCode vimSpecFile
|
||||
hi def link vimKeyword Statement
|
||||
hi def link vimLet vimCommand
|
||||
hi def link vimLineComment vimComment
|
||||
hi def link vimMapBang vimCommand
|
||||
hi def link vimMapModKey vimFuncSID
|
||||
hi def link vimMapMod vimBracket
|
||||
hi def link vimMap vimCommand
|
||||
hi def link vimMark Number
|
||||
hi def link vimMarkNumber vimNumber
|
||||
hi def link vimMenuMod vimMapMod
|
||||
hi def link vimMenuNameMore vimMenuName
|
||||
hi def link vimMenuName PreProc
|
||||
hi def link vimMtchComment vimComment
|
||||
hi def link vimNorm vimCommand
|
||||
hi def link vimNotation Special
|
||||
hi def link vimNotFunc vimCommand
|
||||
hi def link vimNotPatSep vimString
|
||||
hi def link vimNumber Number
|
||||
hi def link vimOperError Error
|
||||
hi def link vimOper Operator
|
||||
hi def link vimOption PreProc
|
||||
hi def link vimParenSep Delimiter
|
||||
hi def link vimPatSepErr vimPatSep
|
||||
hi def link vimPatSepR vimPatSep
|
||||
hi def link vimPatSep SpecialChar
|
||||
hi def link vimPatSepZone vimString
|
||||
hi def link vimPatSepZ vimPatSep
|
||||
hi def link vimPattern Type
|
||||
hi def link vimPlainMark vimMark
|
||||
hi def link vimPlainRegister vimRegister
|
||||
hi def link vimRegister SpecialChar
|
||||
hi def link vimScriptDelim Comment
|
||||
hi def link vimSearchDelim Statement
|
||||
hi def link vimSearch vimString
|
||||
hi def link vimSep Delimiter
|
||||
hi def link vimSetMod vimOption
|
||||
hi def link vimSetSep Statement
|
||||
hi def link vimSetString vimString
|
||||
hi def link vimSpecFile Identifier
|
||||
hi def link vimSpecFileMod vimSpecFile
|
||||
hi def link vimSpecial Type
|
||||
hi def link vimStatement Statement
|
||||
hi def link vimStringCont vimString
|
||||
hi def link vimString String
|
||||
hi def link vimSubst1 vimSubst
|
||||
hi def link vimSubstDelim Delimiter
|
||||
hi def link vimSubstFlags Special
|
||||
hi def link vimSubstSubstr SpecialChar
|
||||
hi def link vimSubstTwoBS vimString
|
||||
hi def link vimSubst vimCommand
|
||||
hi def link vimSynCaseError Error
|
||||
hi def link vimSynCase Type
|
||||
hi def link vimSyncC Type
|
||||
hi def link vimSyncError Error
|
||||
hi def link vimSyncGroupName vimGroupName
|
||||
hi def link vimSyncGroup vimGroupName
|
||||
hi def link vimSyncKey Type
|
||||
hi def link vimSyncNone Type
|
||||
hi def link vimSynContains vimSynOption
|
||||
hi def link vimSynError Error
|
||||
hi def link vimSynKeyContainedin vimSynContains
|
||||
hi def link vimSynKeyOpt vimSynOption
|
||||
hi def link vimSynMtchGrp vimSynOption
|
||||
hi def link vimSynMtchOpt vimSynOption
|
||||
hi def link vimSynNextgroup vimSynOption
|
||||
hi def link vimSynNotPatRange vimSynRegPat
|
||||
hi def link vimSynOption Special
|
||||
hi def link vimSynPatRange vimString
|
||||
hi def link vimSynRegOpt vimSynOption
|
||||
hi def link vimSynRegPat vimString
|
||||
hi def link vimSynReg Type
|
||||
hi def link vimSyntax vimCommand
|
||||
hi def link vimSynType vimSpecial
|
||||
hi def link vimTodo Todo
|
||||
hi def link vimUnmap vimMap
|
||||
hi def link vimUserAttrbCmpltFunc Special
|
||||
hi def link vimUserAttrbCmplt vimSpecial
|
||||
hi def link vimUserAttrbKey vimOption
|
||||
hi def link vimUserAttrb vimSpecial
|
||||
hi def link vimUserCommand vimCommand
|
||||
|
||||
hi def link vimAutoEvent Type
|
||||
hi def link vimBracket Delimiter
|
||||
hi def link vimCmplxRepeat SpecialChar
|
||||
hi def link vimCommand Statement
|
||||
hi def link vimComment Comment
|
||||
hi def link vimCommentTitle PreProc
|
||||
hi def link vimContinue Special
|
||||
hi def link vimCtrlChar SpecialChar
|
||||
hi def link vimElseIfErr Error
|
||||
hi def link vimEnvvar PreProc
|
||||
hi def link vimError Error
|
||||
hi def link vimFold Folded
|
||||
hi def link vimFuncName Function
|
||||
hi def link vimFuncSID Special
|
||||
hi def link vimFuncVar Identifier
|
||||
hi def link vimGroupSpecial Special
|
||||
hi def link vimGroup Type
|
||||
hi def link vimHiAttrib PreProc
|
||||
hi def link vimHiTerm Type
|
||||
hi def link vimHLMod PreProc
|
||||
hi def link vimKeyword Statement
|
||||
hi def link vimMark Number
|
||||
hi def link vimMenuName PreProc
|
||||
hi def link vimNotation Special
|
||||
hi def link vimNumber Number
|
||||
hi def link vimOperError Error
|
||||
hi def link vimOper Operator
|
||||
hi def link vimOption PreProc
|
||||
hi def link vimParenSep Delimiter
|
||||
hi def link vimPatSep SpecialChar
|
||||
hi def link vimPattern Type
|
||||
hi def link vimRegister SpecialChar
|
||||
hi def link vimScriptDelim Comment
|
||||
hi def link vimSearchDelim Statement
|
||||
hi def link vimSep Delimiter
|
||||
hi def link vimSetSep Statement
|
||||
hi def link vimSpecFile Identifier
|
||||
hi def link vimSpecial Type
|
||||
hi def link vimStatement Statement
|
||||
hi def link vimString String
|
||||
hi def link vimSubstDelim Delimiter
|
||||
hi def link vimSubstFlags Special
|
||||
hi def link vimSubstSubstr SpecialChar
|
||||
hi def link vimSynCaseError Error
|
||||
hi def link vimSynCase Type
|
||||
hi def link vimSyncC Type
|
||||
hi def link vimSyncError Error
|
||||
hi def link vimSyncKey Type
|
||||
hi def link vimSyncNone Type
|
||||
hi def link vimSynError Error
|
||||
hi def link vimSynOption Special
|
||||
hi def link vimSynReg Type
|
||||
hi def link vimTodo Todo
|
||||
hi def link vimUserAttrbCmpltFunc Special
|
||||
hi def link vimUserCmdError Error
|
||||
hi def link vimUserCommand vimCommand
|
||||
hi def link vimUserFunc Normal
|
||||
hi def link vimVar Identifier
|
||||
hi def link vimWarn WarningMsg
|
||||
hi def link vimHiNmbr Number
|
||||
|
||||
" Current Syntax Variable: {{{2
|
||||
let b:current_syntax = "vim"
|
||||
|
||||
@@ -11,7 +11,7 @@ so you would normally compile it with one of the following:
|
||||
cc -D_IRIX ccfilter.c -o ccfilter
|
||||
cc -D_SOLARIS ccfilter.c -o ccfilter
|
||||
cc -D_HPUX ccfilter.c -o ccfilter
|
||||
You can then copy ccfilter to it's target destination (i.e: /usr/local/bin).
|
||||
You can then copy ccfilter to its target destination (i.e: /usr/local/bin).
|
||||
The man page ccfilter.1 has to be copied to somewhere in your MANPATH,
|
||||
under a man1 directory (i.e: /usr/local/man/man1).
|
||||
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
@rem Arguments - +$(CurLine) $(ItemPath)
|
||||
@rem Init Dir - Empty
|
||||
@rem
|
||||
@rem Coutesy of Brian Sturk
|
||||
@rem Courtesy of Brian Sturk
|
||||
@rem
|
||||
@rem --remote-silent +%1 is a command +954, move ahead 954 lines
|
||||
@rem --remote-silent %2 full path to file
|
||||
@rem In Vim
|
||||
@rem :h --remote-silent for mor details
|
||||
@rem :h --remote-silent for more details
|
||||
@rem
|
||||
@rem --servername VS_NET
|
||||
@rem This will create a new instance of vim called VS_NET. So if you
|
||||
|
||||
@@ -18,6 +18,7 @@ all: tutor.utf-8 \
|
||||
tutor.it.utf-8 \
|
||||
tutor.ja.sjis tutor.ja.euc \
|
||||
tutor.ko.euc \
|
||||
tutor.nl \
|
||||
tutor.no.utf-8 \
|
||||
tutor.nb \
|
||||
tutor.nb.utf-8 \
|
||||
@@ -73,6 +74,9 @@ tutor.ja.euc: tutor.ja.utf-8
|
||||
tutor.ko.euc: tutor.ko.utf-8
|
||||
iconv -f UTF-8 -t EUC-KR tutor.ko.utf-8 > tutor.ko.euc
|
||||
|
||||
tutor.nl: tutor.nl.utf-8
|
||||
iconv -f UTF-8 -t ISO-8859-1 tutor.nl.utf-8 > tutor.nl
|
||||
|
||||
tutor.no.utf-8: tutor.no
|
||||
iconv -f ISO-8859-1 -t UTF-8 tutor.no > tutor.no.utf-8
|
||||
|
||||
|
||||
@@ -645,7 +645,7 @@ RIMARKO:
|
||||
3. Nun tajpu: :w TESTO (kie TESTO estas la elektita dosiernomo)
|
||||
|
||||
4. Tio konservas la tutan dosieron (instruilon de Vim) kun la nomo TESTO.
|
||||
Por kontroli tion, tajpu :!dir a<> !ls denove por vidigi vian
|
||||
Por kontroli tion, tajpu :!dir a<> :!ls denove por vidigi vian
|
||||
dosierujon.
|
||||
|
||||
RIMARKO: Se vi volus eliri el Vim kaj restartigi <20>in denove per vim TESTO,
|
||||
|
||||
@@ -38,10 +38,10 @@
|
||||
|
||||
3. <20><><EFBFBD>ؤΥ<D8A4><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥäơ<C3A4><C6A1><EFBFBD><EFBFBD>å<EFBFBD><C3A5><EFBFBD>1.2 <20>˰<EFBFBD>ư<EFBFBD><C6B0><EFBFBD>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
Note: <20><><EFBFBD><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>Ƥ<EFBFBD><C6A4>뤫Ƚ<EBA4AB><C8BD><EFBFBD>ʤ<EFBFBD><CAA4>ʤä<CAA4><C3A4>顢<ESC><3E><EFBFBD><F2B2A1A4>ƥΡ<C6A5><CEA1>ޥ<EFBFBD><DEA5>⡼<EFBFBD>ɤˤ<C9A4>
|
||||
NOTE: <20><><EFBFBD><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>Ƥ<EFBFBD><C6A4>뤫Ƚ<EBA4AB><C8BD><EFBFBD>ʤ<EFBFBD><CAA4>ʤä<CAA4><C3A4>顢<ESC><3E><EFBFBD><F2B2A1A4>ƥΡ<C6A5><CEA1>ޥ<EFBFBD><DEA5>⡼<EFBFBD>ɤˤ<C9A4>
|
||||
<20>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>줫<EFBFBD><ECA4AB><EFBFBD><EFBFBD><EFBFBD>Ϥ<EFBFBD><CFA4>褦<EFBFBD>Ȥ<EFBFBD><C8A4>Ƥ<EFBFBD><C6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޥ<EFBFBD><DEA5>ɤ<EFBFBD><C9A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϥ<EFBFBD><CFA4>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
Note: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>륭<EFBFBD><EBA5AD><EFBFBD>Ǥ<EFBFBD><C7A4><EFBFBD>ư<EFBFBD>Ǥ<EFBFBD><C7A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> hjkl <20>˰<EFBFBD><CBB0>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4>ޤ<EFBFBD><DEA4>С<EFBFBD><D0A1>Ϥ뤫
|
||||
NOTE: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>륭<EFBFBD><EBA5AD><EFBFBD>Ǥ<EFBFBD><C7A4><EFBFBD>ư<EFBFBD>Ǥ<EFBFBD><C7A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> hjkl <20>˰<EFBFBD><CBB0>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4>ޤ<EFBFBD><DEA4>С<EFBFBD><D0A1>Ϥ뤫
|
||||
<20><>®<EFBFBD><C2AE><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD>뤳<EFBFBD>Ȥ<EFBFBD><C8A4>Ǥ<EFBFBD><C7A4><EFBFBD><EFBFBD>Ǥ<EFBFBD><C7A4>礦<EFBFBD><E7A4A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޥ<EFBFBD><DEA5><EFBFBD>!
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -109,7 +109,7 @@ NOTE:
|
||||
---> <20><><EFBFBD><EFBFBD> <20>ˤ<EFBFBD> <><C2AD><EFBFBD>ʤ<EFBFBD> <20>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>롣
|
||||
---> <20><><EFBFBD><EFBFBD> <20><> <20>ˤ<EFBFBD> <20><><EFBFBD>Ĥ<EFBFBD> <><C2AD><EFBFBD>ʤ<EFBFBD> <20>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD>롣
|
||||
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD>狼<EFBFBD>ä<EFBFBD><C3A4>鲼<EFBFBD>Υ<EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD>礦<EFBFBD><EFBFBD>
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD>狼<EFBFBD>ä<EFBFBD><C3A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD> 1.5 <20>ؿʤߤޤ<EFBFBD><EFBFBD>礦<EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
|
||||
@@ -145,7 +145,8 @@ NOTE:
|
||||
!! NOTE: <20>ʲ<EFBFBD><CAB2>Υ<EFBFBD><CEA5>ƥåפ<C3A5><D7A4>¹Ԥ<C2B9><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Τ<EFBFBD><CEA4>ɤ<EFBFBD><C9A4>Ǥ<EFBFBD><C7A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!!
|
||||
|
||||
1. <20><><EFBFBD>å<EFBFBD><C3A5><EFBFBD> 1.2 <20>Ǥ<EFBFBD><C7A4>ä<EFBFBD><C3A4>褦<EFBFBD><E8A4A6> :q! <20><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>ơ<EFBFBD><C6A1><EFBFBD><EFBFBD>Υ<EFBFBD><CEA5>塼<EFBFBD>ȥꥢ<C8A5><EAA5A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
|
||||
<20><><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
<20><><EFBFBD>ޤ<EFBFBD><DEA4><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><DEA4><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
2. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD>ץȤǤ<C8A4><C7A4>Υ<EFBFBD><CEA5>ޥ<EFBFBD><DEA5>ɤ<C9A4><F2A5BFA5>פ<EFBFBD><D7A4>ޤ<EFBFBD>: vim tutor <ENTER>
|
||||
'vim'<27><> Vim <20><><EFBFBD>ǥ<EFBFBD><C7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD>륳<EFBFBD>ޥ<EFBFBD><DEA5>ɡ<EFBFBD>'tutor' <20><><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
@@ -155,7 +156,8 @@ NOTE:
|
||||
|
||||
4. <20>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD><C2B8><EFBFBD>ޤ<EFBFBD>: :wq <ENTER>
|
||||
|
||||
5. vimtutor <20><><EFBFBD><EFBFBD><EFBFBD>ٵ<EFBFBD>ư<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؿʤߤޤ<EFBFBD><EFBFBD>礦<EFBFBD><EFBFBD>
|
||||
5. <20><><EFBFBD>ƥå<C6A5> 1 <20><> vimtutuor <20><><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> vimtutor <20><><EFBFBD><EFBFBD><EFBFBD>ٵ<EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>ؿʤߤޤ<DFA4><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
6. <20>ʾ<EFBFBD><CABE>Υ<EFBFBD><CEA5>ƥåפ<C3A5><D7A4>ɤ<EFBFBD><C9A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F2A4B7A4><EFBFBD><EFBFBD>Ǥ<EFBFBD><C7A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¹Ԥ<C2B9><D4A4>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
@@ -259,7 +261,7 @@ NOTE:
|
||||
|
||||
1. <20>ʲ<EFBFBD><CAB2><EFBFBD> ---> <20>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>줿<EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD>Ƭ<EFBFBD>˥<EFBFBD><CBA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
2. 2dw <20><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4><EFBFBD>ñ<EFBFBD><C3B1>2<EFBFBD><32>ʬ<EFBFBD><CAAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||||
2. 2w <20><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4><EFBFBD>ñ<EFBFBD><C3B1>2<EFBFBD><32>ʬ<EFBFBD><CAAC><EFBFBD>˰<EFBFBD>ư<EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
3. 3e <20><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4><EFBFBD>3<EFBFBD><33><EFBFBD>ܤ<EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>ν<EFBFBD>ü<EFBFBD>˰<EFBFBD>ư<EFBFBD><C6B0><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
@@ -286,7 +288,7 @@ NOTE:
|
||||
|
||||
1. ---> <20>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>줿<EFBFBD>Ԥι<D4A4>Ƭ<EFBFBD><C6AC>ʬ<EFBFBD>˥<EFBFBD><CBA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
2. UPPER CASE <20><>ñ<EFBFBD><C3B1>2<EFBFBD>Ĥ<EFBFBD> 2dw <20>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>פ<EFBFBD><D7A4>ƺ<EFBFBD><C6BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
2. UPPER CASE <20><>ñ<EFBFBD><C3B1>2<EFBFBD>Ĥ<EFBFBD> d2w <20>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>פ<EFBFBD><D7A4>ƺ<EFBFBD><C6BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
3. UPPER CASE <20>Ȥ<EFBFBD><C8A4><EFBFBD>Ϣ³<CFA2><C2B3><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD>ĤΥ<C4A4><CEA5>ޥ<EFBFBD><DEA5>ɤȰۤʤ륫<CAA4><EBA5AB><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD>ꤷ<EFBFBD><EAA4B7>
|
||||
<20><><EFBFBD>ƥå<C6A5> 1 <20><> 2 <20><EFBFBD><F2B7ABA4>֤<EFBFBD><D6A4>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
@@ -406,7 +408,7 @@ NOTE:
|
||||
---> <20><><EFBFBD>ι<EFBFBD><CEB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϥ<EFBFBD><CFA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD><CDA1><EFBFBD><EFBFBD>οͤϴ<CDA4><CFB4>Ĥ<EFBFBD><C4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ä<EFBFBD><C3A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F2B2A1A4>⤷<EFBFBD><E2A4B7>!
|
||||
---> <20><><EFBFBD>ιԤ<CEB9><D4A4><EFBFBD><EFBFBD>Ϥ<EFBFBD><CFA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD>οͤϴ<CDA4><CFB4>Ĥ<EFBFBD><C4A4>ְ<EFBFBD><D6B0>ä<EFBFBD><C3A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F2B2A1A4>ޤ<EFBFBD><DEA4><EFBFBD>!
|
||||
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>å<EFBFBD><C3A5><EFBFBD> 3.2 <20>ؿʤߤޤ<DFA4><DEA4>礦<EFBFBD><E7A4A6>
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>å<EFBFBD><C3A5><EFBFBD> 3.3 <20>ؿʤߤޤ<DFA4><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
NOTE: <20>ºݤ˻<CBBB>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6><EFBFBD>褷<EFBFBD>ƳФ<C6B3><D0A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤϤ<CBA4><CFA4>ʤ<EFBFBD><CAA4><EFBFBD><EFBFBD>ȡ<EFBFBD>
|
||||
|
||||
@@ -428,8 +430,8 @@ NOTE:
|
||||
|
||||
5. <20>ǽ<EFBFBD><C7BD>ιԤ<CEB9><D4A4><EFBFBD><EFBFBD>ιԤ<CEB9><D4A4>ͤˤʤ<CBA4><CAA4>ޤǥ<DEA4><C7A5>ƥå<C6A5> 3 <20><> 4 <20><EFBFBD><F2B7ABA4>֤<EFBFBD><D6A4>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change command.
|
||||
---> This line has a few words that need changing using the change command.
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change operator.
|
||||
---> This line has a few words that need changing using the change operator.
|
||||
|
||||
cw <20><>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥʤ<C7A4><CAA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>뤳<EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD>դ<EFBFBD><D5A4>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
@@ -494,7 +496,7 @@ NOTE:
|
||||
<20>˹<EFBFBD><CBB9>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>Ф<EFBFBD><D0A4>Ƥ<EFBFBD><C6A4><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
NOTE: <20><><EFBFBD>̤α<CCA4><CEB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˥<EFBFBD><CBA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΰ<EFBFBD><CEB0>֤<EFBFBD>ɽ<EFBFBD><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4>뤫<EFBFBD>⤷<EFBFBD><E2A4B7><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><F3A1A3A4><EFBFBD><EFBFBD><EFBFBD>
|
||||
'ruler' <20><><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD>ꤹ<EFBFBD>뤳<EFBFBD>Ȥ<EFBFBD>ɽ<EFBFBD><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
'ruler' <20><><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD>(:help 'ruler' <20><EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD>ꤹ<EFBFBD>뤳<EFBFBD>Ȥ<EFBFBD>ɽ<EFBFBD><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
2. <20>Dz<EFBFBD><C7B2>Ԥ˰<D4A4>ư<EFBFBD><C6B0><EFBFBD>뤿<EFBFBD><EBA4BF><EFBFBD><EFBFBD> G <20><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
<20>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD>˰<EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD> gg <20>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
@@ -523,8 +525,8 @@ NOTE:
|
||||
5. <20><><EFBFBD>ξ<EFBFBD><CEBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD> CTRL-O (Ctrl <20><EFBFBD>³<EFBFBD><C2B3><EFBFBD>ʤ<EFBFBD><CAA4><EFBFBD> o ʸ<><CAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><EFBFBD><F2A5BFA5>פ<EFBFBD>
|
||||
<20>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤϤ<CBA4><CFA4><EFBFBD><EFBFBD><EFBFBD><F2B7ABA4>֤<EFBFBD><D6A4>ޤ<EFBFBD><DEA4><EFBFBD>CTRL-I <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥ<EFBFBD><C7A4><EFBFBD>
|
||||
|
||||
Note: "errroor" <20><> error <20>ȥ<EFBFBD><C8A5>ڥ뤬<DAA5>㤤<EFBFBD>ޤ<EFBFBD>; errroor <20>Ϥ<EFBFBD><CFA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> error <20>Ǥ<EFBFBD><C7A4><EFBFBD>
|
||||
Note: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ν<EFBFBD><CEBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD> 'wrapscan' <20><><EFBFBD><EFBFBD><EFBFBD>ꤵ<EFBFBD><EAA4B5><EFBFBD>Ƥ<EFBFBD><C6A4><EFBFBD>
|
||||
---> "errroor" <20><> error <20>ȥ<EFBFBD><C8A5>ڥ뤬<DAA5>㤤<EFBFBD>ޤ<EFBFBD>; errroor <20>Ϥ<EFBFBD><CFA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> error <20>Ǥ<EFBFBD><C7A4><EFBFBD>
|
||||
NOTE: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ν<EFBFBD><CEBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD> 'wrapscan' <20><><EFBFBD><EFBFBD><EFBFBD>ꤵ<EFBFBD><EAA4B5><EFBFBD>Ƥ<EFBFBD><C6A4><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>ϡ<EFBFBD><CFA1>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD>鸡<EFBFBD><E9B8A1><EFBFBD><EFBFBD>³<EFBFBD>Ԥ<EFBFBD><D4A4>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -612,10 +614,10 @@ NOTE:
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD>ץȤΤ褦<CEA4>˥ǥ<CBA5><C7A5>쥯<EFBFBD>ȥ<EFBFBD><C8A5>ΰ<EFBFBD><CEB0><EFBFBD><EFBFBD><EFBFBD>ɽ<EFBFBD><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϥ<EFBFBD><CFA4>Ǥ<EFBFBD><C7A4><EFBFBD>
|
||||
<20>⤷<EFBFBD><E2A4B7><EFBFBD><EFBFBD> ls <20><>ư<EFBFBD><C6B0><EFBFBD>ʤ<EFBFBD><CAA4>ʤ<EFBFBD><CAA4><EFBFBD> :!dir <20><><EFBFBD><EFBFBD><EFBFBD>Ѥ<EFBFBD><D1A4>ޤ<EFBFBD><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
Note: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD>ˤ<EFBFBD><CBA4>äƤ<C3A4><C6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>륳<EFBFBD>ޥ<EFBFBD><DEA5>ɤ<EFBFBD><C9A4>¹Ԥ<C2B9><D4A4>뤳<EFBFBD>Ȥ<EFBFBD><C8A4>Ǥ<EFBFBD><C7A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
NOTE: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD>ˤ<EFBFBD><CBA4>äƤ<C3A4><C6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>륳<EFBFBD>ޥ<EFBFBD><DEA5>ɤ<EFBFBD><C9A4>¹Ԥ<C2B9><D4A4>뤳<EFBFBD>Ȥ<EFBFBD><C8A4>Ǥ<EFBFBD><C7A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><>Ϳ<EFBFBD><CDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
Note: <20><><EFBFBD>Ƥ<EFBFBD> : <20><><EFBFBD>ޥ<EFBFBD><DEA5>ɤ<EFBFBD> <ENTER> <20><EFBFBD><F2B2A1A4>ƽ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD>ʤ<EFBFBD><CAA4><EFBFBD><EFBFBD>Фʤ<D0A4><CAA4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>
|
||||
NOTE: <20><><EFBFBD>Ƥ<EFBFBD> : <20><><EFBFBD>ޥ<EFBFBD><DEA5>ɤ<EFBFBD> <ENTER> <20><EFBFBD><F2B2A1A4>ƽ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD>ʤ<EFBFBD><CAA4><EFBFBD><EFBFBD>Фʤ<D0A4><CAA4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20>ʹߤǤϤ<C7A4><CFA4>Τ<EFBFBD><CEA4>Ȥ˸<C8A4><CBB8>ڤ<EFBFBD><DAA4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
@@ -635,7 +637,7 @@ Note:
|
||||
4. <20><><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD><CBA4><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Τ<EFBFBD> TEST <20>Ȥ<EFBFBD><C8A4><EFBFBD>̾<EFBFBD><CCBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD><C2B8><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
<20>⤦<EFBFBD><E2A4A6><EFBFBD><EFBFBD> :!dir <20>⤷<EFBFBD><E2A4B7><EFBFBD><EFBFBD> :!ls <20>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>פ<EFBFBD><D7A4>Ƴ<EFBFBD>ǧ<EFBFBD><C7A7><EFBFBD>Ƥߤޤ<DFA4><DEA4>礦<EFBFBD><E7A4A6>
|
||||
|
||||
Note: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim <20><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD>̾ TEST <20>ȶ<EFBFBD><C8B6>˵<EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>¸<EFBFBD><C2B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
NOTE: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim <20><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD>̾ TEST <20>ȶ<EFBFBD><C8B6>˵<EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>¸<EFBFBD><C2B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD>塼<EFBFBD>ȥꥢ<C8A5><EAA5A2><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD><EFBFBD>Ǥ<EFBFBD><C7A4>夬<EFBFBD><E5A4AC><EFBFBD>Ϥ<EFBFBD><CFA4>Ǥ<EFBFBD><C7A4><EFBFBD>
|
||||
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD>Τ褦<CEA4>˥<EFBFBD><CBA5><EFBFBD><EFBFBD>פ<EFBFBD><D7A4>ƥե<C6A5><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ä<EFBFBD><C3A4>ޤ<EFBFBD><DEA4>礦(MS-DOS): :!del TEST
|
||||
@@ -656,7 +658,7 @@ Note:
|
||||
3. ʸ<><CAB8> : <20><EFBFBD><F2B2A1A4>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>̤κDz<CEBA><C7B2><EFBFBD><EFBFBD><EFBFBD> :'<,'> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
4. w TEST (TEST <20><>¸<EFBFBD>ߤ<EFBFBD><DFA4>ʤ<EFBFBD><CAA4>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD>̾)<29><EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
Enter <20><EFBFBD><F2B2A1A4><EFBFBD><EFBFBD><EFBFBD> :'<,'>w TEST <20>ȤʤäƤ<C3A4><C6A4>뤳<EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD>ǧ<EFBFBD><C7A7><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<ENTER> <20><EFBFBD><F2B2A1A4><EFBFBD><EFBFBD><EFBFBD> :'<,'>w TEST <20>ȤʤäƤ<C3A4><C6A4>뤳<EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD>ǧ<EFBFBD><C7A7><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
5. Vim <20><> TEST <20>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>줿<F2A4B5A4>Ԥ<EFBFBD><D4A4><EFBFBD><F1A4ADB9><EFBFBD><EFBFBD>Ǥ<EFBFBD><C7A4>礦<EFBFBD><E7A4A6>
|
||||
!dir <20>⤷<EFBFBD><E2A4B7><EFBFBD><EFBFBD> !ls <20>Ǥ<EFBFBD><C7A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǧ<EFBFBD><C7A7><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
@@ -755,7 +757,7 @@ NOTE:
|
||||
---> This li will allow you to pract appendi text to a line.
|
||||
---> This line will allow you to practice appending text to a line.
|
||||
|
||||
Note: a, i <20><> A <20><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⡼<EFBFBD>ɤذܤ<D8B0><DCA4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۤʤ<DBA4>
|
||||
NOTE: a, i <20><> A <20><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⡼<EFBFBD>ɤذܤ<D8B0><DCA4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۤʤ<DBA4>
|
||||
<20>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -803,7 +805,7 @@ NOTE:
|
||||
---> a) this is the first item.
|
||||
b)
|
||||
|
||||
Note: ñ<><C3B1><EFBFBD><EFBFBD>1<EFBFBD><31> yank <20><><EFBFBD><EFBFBD><EFBFBD>Τ<EFBFBD> y <20>ڥ졼<DAA5><ECA1BC><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD> yw <20>Ȥ<EFBFBD><C8A4>뤳<EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
NOTE: ñ<><C3B1><EFBFBD><EFBFBD>1<EFBFBD><31> yank <20><><EFBFBD><EFBFBD><EFBFBD>Τ<EFBFBD> y <20>ڥ졼<DAA5><ECA1BC><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD> yw <20>Ȥ<EFBFBD><C8A4>뤳<EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
<20><><EFBFBD>å<EFBFBD><C3A5><EFBFBD> 6.5: <20><><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
@@ -824,8 +826,8 @@ NOTE:
|
||||
|
||||
6. <20><>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD>ζ<EFBFBD><CEB6>̤<EFBFBD>̵<EFBFBD><CCB5><EFBFBD>ˤ<EFBFBD><CBA4><EFBFBD><EFBFBD>ˤϼ<CBA4><CFBC><EFBFBD><EFBFBD>ͤ<EFBFBD><CDA4><EFBFBD><EFBFBD>Ϥ<EFBFBD><CFA4>ޤ<EFBFBD>: :set noic
|
||||
|
||||
Note: <20>ޥå<DEA5><C3A5>ζ<EFBFBD>Ĵɽ<C4B4><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤϼ<CBA4><CFBC><EFBFBD><EFBFBD>ͤ<EFBFBD><CDA4><EFBFBD><EFBFBD>Ϥ<EFBFBD><CFA4>ޤ<EFBFBD>: :nohlsearch
|
||||
Note: 1<>Ĥθ<C4A4><CEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޥ<EFBFBD><DEA5>ɤ<EFBFBD><C9A4><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD>ζ<EFBFBD><CEB6>̤<EFBFBD><CCA4><EFBFBD><EFBFBD><EFBFBD><E1A4BF><EFBFBD>ʤ<EFBFBD><CAA4>С<EFBFBD><D0A1>ե졼<D5A5><ECA1BC><EFBFBD><EFBFBD> \c
|
||||
NOTE: <20>ޥå<DEA5><C3A5>ζ<EFBFBD>Ĵɽ<C4B4><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤϼ<CBA4><CFBC><EFBFBD><EFBFBD>ͤ<EFBFBD><CDA4><EFBFBD><EFBFBD>Ϥ<EFBFBD><CFA4>ޤ<EFBFBD>: :nohlsearch
|
||||
NOTE: 1<>Ĥθ<C4A4><CEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޥ<EFBFBD><DEA5>ɤ<EFBFBD><C9A4><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD>ζ<EFBFBD><CEB6>̤<EFBFBD><CCA4><EFBFBD><EFBFBD><EFBFBD><E1A4BF><EFBFBD>ʤ<EFBFBD><CAA4>С<EFBFBD><D0A1>ե졼<D5A5><ECA1BC><EFBFBD><EFBFBD> \c
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD>Ѥ<EFBFBD><D1A4>ޤ<EFBFBD>: /ignore\c <ENTER>
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
<09><><EFBFBD>å<EFBFBD><C3A5><EFBFBD> 6 <20><><EFBFBD><EFBFBD>
|
||||
|
||||
@@ -38,10 +38,10 @@
|
||||
|
||||
3. <20><><EFBFBD>ւ̃L<CC83>[<5B><><EFBFBD>g<EFBFBD><67><EFBFBD>āA<C481><41><EFBFBD>b<EFBFBD>X<EFBFBD><58>1.2 <20>Ɉړ<C988><DA93><EFBFBD><EFBFBD>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
|
||||
Note: <20><><EFBFBD><EFBFBD><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>Ă<EFBFBD><C482>邩<EFBFBD><E982A9><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<ESC><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ăm<C483>[<5B>}<7D><><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>ɂ<EFBFBD>
|
||||
NOTE: <20><><EFBFBD><EFBFBD><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>Ă<EFBFBD><C482>邩<EFBFBD><E982A9><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<ESC><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ăm<C483>[<5B>}<7D><><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>ɂ<EFBFBD>
|
||||
<20>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD>ꂩ<EFBFBD><EA82A9><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82>悤<EFBFBD>Ƃ<EFBFBD><C682>Ă<EFBFBD><C482><EFBFBD><EFBFBD>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD>ē<EFBFBD><C493>͂<EFBFBD><CD82>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
|
||||
Note: <20>J<EFBFBD>[<5B>\<5C><><EFBFBD>L<EFBFBD>[<5B>ł<EFBFBD><C582>ړ<EFBFBD><DA93>ł<EFBFBD><C582>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD> hjkl <20>Ɉ<EFBFBD><C988>x<EFBFBD><78><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82>A<CE81>͂邩
|
||||
NOTE: <20>J<EFBFBD>[<5B>\<5C><><EFBFBD>L<EFBFBD>[<5B>ł<EFBFBD><C582>ړ<EFBFBD><DA93>ł<EFBFBD><C582>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD> hjkl <20>Ɉ<EFBFBD><C988>x<EFBFBD><78><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82>A<CE81>͂邩
|
||||
<20>ɑ<EFBFBD><C991><EFBFBD><EFBFBD>ړ<EFBFBD><DA93><EFBFBD><EFBFBD>邱<EFBFBD>Ƃ<EFBFBD><C682>ł<EFBFBD><C582><EFBFBD><EFBFBD>ł<EFBFBD><C582>傤<EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD>}<7D>W<EFBFBD><57>!
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -109,7 +109,7 @@ NOTE:
|
||||
---> <20><><EFBFBD><EFBFBD> <20>ɂ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD> <20>e<EFBFBD>L<EFBFBD>X<EFBFBD>g <20><><EFBFBD><EFBFBD><EFBFBD>B
|
||||
---> <20><><EFBFBD><EFBFBD> <20>s <20>ɂ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD> <20>e<EFBFBD>L<EFBFBD>X<EFBFBD>g <20><> <20><><EFBFBD><EFBFBD><EFBFBD>B
|
||||
|
||||
5. <20>}<7D><><EFBFBD>̕<EFBFBD><CC95>@<40><><EFBFBD>킩<EFBFBD><ED82A9><EFBFBD><EFBFBD><EFBFBD>牺<EFBFBD>̃<EFBFBD><EFBFBD>b<EFBFBD>X<EFBFBD><EFBFBD>1<EFBFBD>̗v<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD>傤<EFBFBD>B
|
||||
5. <20>}<7D><><EFBFBD>̕<EFBFBD><CC95>@<40><><EFBFBD>킩<EFBFBD><ED82A9><EFBFBD><EFBFBD><EFBFBD>烌<EFBFBD>b<EFBFBD>X<EFBFBD><EFBFBD> 1.5 <20>i<D690>݂܂<EFBFBD><EFBFBD>傤<EFBFBD>B
|
||||
|
||||
|
||||
|
||||
@@ -145,7 +145,8 @@ NOTE:
|
||||
!! NOTE: <20>ȉ<EFBFBD><C889>̃X<CC83>e<EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD>ɁA<C981>܂<EFBFBD><DC82>S<EFBFBD>̂<EFBFBD><CC82>ǂ<EFBFBD><C782>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!!
|
||||
|
||||
1. <20><><EFBFBD>b<EFBFBD>X<EFBFBD><58> 1.2 <20>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD>悤<EFBFBD><E682A4> :q! <20><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>āA<C481><41><EFBFBD>̃`<60><><EFBFBD>[<5B>g<EFBFBD><67><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49>
|
||||
<20><><EFBFBD>܂<EFBFBD><DC82>B
|
||||
<20><><EFBFBD>܂<EFBFBD><DC82>B<EFBFBD><EFBFBD><EFBFBD>邢<EFBFBD>́A<EFBFBD>ʂ̒[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꍇ<EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>ňȉ<C588><C889>̓<EFBFBD><CC93>e<EFBFBD><65><EFBFBD>s<EFBFBD><73><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>܂<EFBFBD>
|
||||
<20>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
|
||||
|
||||
2. <20>V<EFBFBD>F<EFBFBD><46><EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>g<EFBFBD>ł<EFBFBD><C582>̃R<CC83>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD>: vim tutor <ENTER>
|
||||
'vim'<27><> Vim <20>G<EFBFBD>f<EFBFBD>B<EFBFBD>^<5E><><EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD>A'tutor' <20>͕ҏW<D28F><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>
|
||||
@@ -155,7 +156,8 @@ NOTE:
|
||||
|
||||
4. <20>ύX<CF8D><58><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>ɕۑ<C995><DB91><EFBFBD><EFBFBD>܂<EFBFBD>: :wq <ENTER>
|
||||
|
||||
5. vimtutor <20><><EFBFBD>ēx<EFBFBD>N<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>ȉ<EFBFBD><EFBFBD>̗v<EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>݂܂<EFBFBD><EFBFBD>傤<EFBFBD>B
|
||||
5. <20>X<EFBFBD>e<EFBFBD>b<EFBFBD>v 1 <20><> vimtutuor <20><><EFBFBD>I<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꍇ<EFBFBD><EFBFBD> vimtutor <20><><EFBFBD>ēx<C493>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>ȉ<EFBFBD><C889><EFBFBD>
|
||||
<20>v<EFBFBD><76><EFBFBD>i<D690>݂܂<DD82><DC82>傤<EFBFBD>B
|
||||
|
||||
6. <20>ȏ<EFBFBD><C88F>̃X<CC83>e<EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>ǂ<EFBFBD><C782>ŗ<EFBFBD><C597><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
|
||||
@@ -259,7 +261,7 @@ NOTE:
|
||||
|
||||
1. <20>ȉ<EFBFBD><C889><EFBFBD> ---> <20>Ǝ<EFBFBD><C68E><EFBFBD><EFBFBD>ꂽ<EFBFBD>s<EFBFBD>̐擪<CC90>ɃJ<C983>[<5B>\<5C><><EFBFBD><EFBFBD><EFBFBD>ړ<EFBFBD><DA93><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
2. 2dw <20><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>ĒP<C492><50>2<EFBFBD><EFBFBD><C295>폜<EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD>B
|
||||
2. 2w <20><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>ĒP<C492><50>2<EFBFBD><EFBFBD><C295>O<EFBFBD>Ɉړ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD>B
|
||||
|
||||
3. 3e <20><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD>3<EFBFBD>ڂ̒P<CC92><50><EFBFBD>̏I<CC8F>[<5B>Ɉړ<C988><DA93><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
@@ -286,7 +288,7 @@ NOTE:
|
||||
|
||||
1. ---> <20>Ǝ<EFBFBD><C68E><EFBFBD><EFBFBD>ꂽ<EFBFBD>s<EFBFBD>̍s<CC8D><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɃJ<C983>[<5B>\<5C><><EFBFBD><EFBFBD><EFBFBD>ړ<EFBFBD><DA93><EFBFBD><EFBFBD>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
|
||||
2. UPPER CASE <20>̒P<CC92><50>2<EFBFBD><EFBFBD> 2dw <20>ƃ^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>č폜<C48D><ED8F9C><EFBFBD>܂<EFBFBD><DC82>B
|
||||
2. UPPER CASE <20>̒P<CC92><50>2<EFBFBD><EFBFBD> d2w <20>ƃ^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>č폜<C48D><ED8F9C><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
3. UPPER CASE <20>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD><50><EFBFBD><EFBFBD><EFBFBD>A1<41>̃R<CC83>}<7D><><EFBFBD>h<EFBFBD>ƈقȂ<D982><C882>J<EFBFBD>E<EFBFBD><45><EFBFBD>g<EFBFBD><67><EFBFBD>w<EFBFBD>肵<EFBFBD>A
|
||||
<20>X<EFBFBD>e<EFBFBD>b<EFBFBD>v 1 <20><> 2 <20><><EFBFBD>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>܂<EFBFBD><DC82>B
|
||||
@@ -406,7 +408,7 @@ NOTE:
|
||||
---> <20><><EFBFBD>̍<EFBFBD><CC8D><EFBFBD><EFBFBD>l<EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˁA<CB81><41><EFBFBD>̐l<CC90>͊<EFBFBD><CD8A><EFBFBD><C282><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!
|
||||
---> <20><><EFBFBD>̍s<CC8D><73><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɁA<C981><41><EFBFBD>̐l<CC90>͊<EFBFBD><CD8A><EFBFBD><C282>Ԉ<EFBFBD><D488><EFBFBD><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD>!
|
||||
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>b<EFBFBD>X<EFBFBD><58> 3.2 <20>i<D690>݂܂<DD82><DC82>傤<EFBFBD>B
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>b<EFBFBD>X<EFBFBD><58> 3.3 <20>i<D690>݂܂<DD82><DC82>傤<EFBFBD>B
|
||||
|
||||
NOTE: <20><><EFBFBD>ۂɎ<DB82><C98E><EFBFBD><EFBFBD>܂<EFBFBD><DC82>傤<EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD>Ċo<C48A><6F><EFBFBD>邾<EFBFBD><E982BE><EFBFBD>ɂ͂<C982><CD82>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>ƁB
|
||||
|
||||
@@ -428,8 +430,8 @@ NOTE:
|
||||
|
||||
5. <20>ŏ<EFBFBD><C58F>̍s<CC8D><73><EFBFBD><EFBFBD><EFBFBD>̍s<CC8D>̗l<CC97>ɂȂ<C982><C882>܂ŃX<C583>e<EFBFBD>b<EFBFBD>v 3 <20><> 4 <20><><EFBFBD>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>܂<EFBFBD><DC82>B
|
||||
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change command.
|
||||
---> This line has a few words that need changing using the change command.
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change operator.
|
||||
---> This line has a few words that need changing using the change operator.
|
||||
|
||||
cw <20>͒P<CD92><50><EFBFBD><EFBFBD><EFBFBD>ύX<CF8D><58><EFBFBD>邾<EFBFBD><E982BE><EFBFBD>łȂ<C582><C882>A<EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>邱<EFBFBD>Ƃɒ<C682><C992>ӂ<EFBFBD><D382>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
|
||||
@@ -494,7 +496,7 @@ NOTE:
|
||||
<20>ɍs<C98D>ԍ<EFBFBD><D48D><EFBFBD><EFBFBD>o<EFBFBD><6F><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
|
||||
NOTE: <20><><EFBFBD>ʂ̉E<CC89><45><EFBFBD><EFBFBD><EFBFBD>ɃJ<C983>[<5B>\<5C><><EFBFBD>̈ʒu<CA92><75><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>邩<EFBFBD><E982A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
'ruler' <20>I<EFBFBD>v<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD>b<EFBFBD>X<EFBFBD><EFBFBD>6<EFBFBD>Ő<EFBFBD><EFBFBD><EFBFBD>)<29><><EFBFBD>ݒ肷<DD92>邱<EFBFBD>Ƃŕ\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
|
||||
'ruler' <20>I<EFBFBD>v<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>(:help 'ruler' <20><><EFBFBD>Q<EFBFBD><EFBFBD>)<29><><EFBFBD>ݒ肷<DD92>邱<EFBFBD>Ƃŕ\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
2. <20>ʼn<EFBFBD><C589>s<EFBFBD>Ɉړ<C988><DA93><EFBFBD><EFBFBD>邽<EFBFBD>߂<EFBFBD> G <20><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
<20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̐擪<CC90>Ɉړ<C988><DA93><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD> gg <20>ƃ^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
@@ -523,8 +525,8 @@ NOTE:
|
||||
5. <20><><EFBFBD>̏ꏊ<CC8F>ɖ߂<C996><DF82>ɂ<EFBFBD> CTRL-O (Ctrl <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD> o <20><><EFBFBD><EFBFBD><EFBFBD>^<5E>C<EFBFBD>v)<29><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76>
|
||||
<20>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD>ɖ߂<C996><DF82>ɂ͂<C982><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>܂<EFBFBD><DC82>BCTRL-I <20>͑O<CD91><4F><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>B
|
||||
|
||||
Note: "errroor" <20><> error <20>ƃX<C683>y<EFBFBD><79><EFBFBD><EFBFBD><EFBFBD>Ⴂ<EFBFBD>܂<EFBFBD>; errroor <20>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> error <20>ł<EFBFBD><C582>B
|
||||
Note: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̏I<CC8F><49><EFBFBD><EFBFBD><EFBFBD>ɒB<C992><42><EFBFBD><EFBFBD><EFBFBD>ƁA<C681>I<EFBFBD>v<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD> 'wrapscan' <20><><EFBFBD>ݒ肳<DD92><E882B3><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
|
||||
---> "errroor" <20><> error <20>ƃX<C683>y<EFBFBD><79><EFBFBD><EFBFBD><EFBFBD>Ⴂ<EFBFBD>܂<EFBFBD>; errroor <20>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> error <20>ł<EFBFBD><C582>B
|
||||
NOTE: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̏I<CC8F><49><EFBFBD><EFBFBD><EFBFBD>ɒB<C992><42><EFBFBD><EFBFBD><EFBFBD>ƁA<C681>I<EFBFBD>v<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD> 'wrapscan' <20><><EFBFBD>ݒ肳<DD92><E882B3><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
|
||||
<20>ꍇ<EFBFBD>́A<CD81>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̐擪<CC90><E693AA><EFBFBD>猟<EFBFBD><E78C9F><EFBFBD>s<F091B18D><73><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -612,10 +614,10 @@ NOTE:
|
||||
<20>V<EFBFBD>F<EFBFBD><46><EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>g<EFBFBD>̂悤<CC82>Ƀf<C983>B<EFBFBD><42><EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD>̈ꗗ<CC88><EA9797><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82>ł<EFBFBD><C582>B
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ls <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882><EFBFBD> :!dir <20><><EFBFBD>g<EFBFBD>p<EFBFBD><70><EFBFBD>܂<EFBFBD><DC82>傤<EFBFBD>B
|
||||
|
||||
Note: <20><><EFBFBD>̕<EFBFBD><CC95>@<40>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>邱<EFBFBD>Ƃ<EFBFBD><C682>ł<EFBFBD><C582>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
NOTE: <20><><EFBFBD>̕<EFBFBD><CC95>@<40>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>邱<EFBFBD>Ƃ<EFBFBD><C682>ł<EFBFBD><C582>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
Note: <20>S<EFBFBD>Ă<EFBFBD> : <20>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68> <ENTER> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ďI<C48F><49><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>Ȃ<CE82><C882>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
|
||||
NOTE: <20>S<EFBFBD>Ă<EFBFBD> : <20>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68> <ENTER> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ďI<C48F><49><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>Ȃ<CE82><C882>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
|
||||
<20>ȍ~<7E>ł͂<C582><CD82>̂<EFBFBD><CC82>ƂɌ<C682><C98C>y<EFBFBD><79><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
|
||||
|
||||
|
||||
@@ -635,7 +637,7 @@ Note:
|
||||
4. <20><><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>S<EFBFBD>̂<EFBFBD> TEST <20>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD>ŕۑ<C595><DB91><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x :!dir <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> :!ls <20>ƃ^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>Ċm<C48A>F<EFBFBD><46><EFBFBD>Ă݂܂<DD82><DC82>傤<EFBFBD>B
|
||||
|
||||
Note: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim <20><><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD> TEST <20>Ƌ<EFBFBD><C68B>ɋN<C98B><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƁA<C681>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
NOTE: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim <20><><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD> TEST <20>Ƌ<EFBFBD><C68B>ɋN<C98B><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƁA<C681>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20>`<60><><EFBFBD>[<5B>g<EFBFBD><67><EFBFBD>A<EFBFBD><41><EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>オ<EFBFBD><E382AA><EFBFBD>͂<EFBFBD><CD82>ł<EFBFBD><C582>B
|
||||
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD>ɁA<C981><41><EFBFBD>̂悤<CC82>Ƀ^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>ăt<C483>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>傤(MS-DOS): :!del TEST
|
||||
@@ -656,7 +658,7 @@ Note:
|
||||
3. <20><><EFBFBD><EFBFBD> : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƁA<C681><41><EFBFBD>ʂ̍ʼn<CC8D><C589><EFBFBD><EFBFBD><EFBFBD> :'<,'> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
|
||||
|
||||
4. w TEST (TEST <20>͑<EFBFBD><CD91>݂<EFBFBD><DD82>Ȃ<EFBFBD><C882>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>)<29><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82>B
|
||||
Enter <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F> :'<,'>w TEST <20>ƂȂ<C682><C882>Ă<EFBFBD><C482>邱<EFBFBD>Ƃ<EFBFBD><C682>m<EFBFBD>F<EFBFBD><46><EFBFBD>ĉ<EFBFBD><C489><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
|
||||
<ENTER> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F> :'<,'>w TEST <20>ƂȂ<C682><C882>Ă<EFBFBD><C482>邱<EFBFBD>Ƃ<EFBFBD><C682>m<EFBFBD>F<EFBFBD><46><EFBFBD>ĉ<EFBFBD><C489><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
|
||||
|
||||
5. Vim <20><> TEST <20>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>ɑI<C991><49><EFBFBD><EFBFBD><EFBFBD>ꂽ<EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ނł<DE82><C582>傤<EFBFBD>B
|
||||
!dir <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> !ls <20>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD>m<EFBFBD>F<EFBFBD><46><EFBFBD>܂<EFBFBD><DC82>B
|
||||
@@ -755,7 +757,7 @@ NOTE:
|
||||
---> This li will allow you to pract appendi text to a line.
|
||||
---> This line will allow you to practice appending text to a line.
|
||||
|
||||
Note: a, i <20><> A <20>͓<EFBFBD><CD93><EFBFBD><EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>ֈڂ<D688><DA82>܂<EFBFBD><DC82><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʒu<CA92><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>قȂ<D982>
|
||||
NOTE: a, i <20><> A <20>͓<EFBFBD><CD93><EFBFBD><EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>ֈڂ<D688><DA82>܂<EFBFBD><DC82><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʒu<CA92><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>قȂ<D982>
|
||||
<20>܂<EFBFBD><DC82>B
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -803,7 +805,7 @@ NOTE:
|
||||
---> a) this is the first item.
|
||||
b)
|
||||
|
||||
Note: <20>P<EFBFBD><50><EFBFBD><EFBFBD>1<EFBFBD><31> yank <20><><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD> y <20><><EFBFBD>I<EFBFBD>y<EFBFBD><79><EFBFBD>[<5B>^<5E>Ƃ<EFBFBD><C682><EFBFBD> yw <20>Ƃ<EFBFBD><C682>邱<EFBFBD>Ƃ<EFBFBD><C682>o<EFBFBD><6F><EFBFBD>܂<EFBFBD><DC82>B
|
||||
NOTE: <20>P<EFBFBD><50><EFBFBD><EFBFBD>1<EFBFBD><31> yank <20><><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD> y <20><><EFBFBD>I<EFBFBD>y<EFBFBD><79><EFBFBD>[<5B>^<5E>Ƃ<EFBFBD><C682><EFBFBD> yw <20>Ƃ<EFBFBD><C682>邱<EFBFBD>Ƃ<EFBFBD><C682>o<EFBFBD><6F><EFBFBD>܂<EFBFBD><DC82>B
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
<20><><EFBFBD>b<EFBFBD>X<EFBFBD><58> 6.5: <20>I<EFBFBD>v<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̐ݒ<CC90>
|
||||
|
||||
@@ -824,8 +826,8 @@ NOTE:
|
||||
|
||||
6. <20>啶<EFBFBD><E595B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̋<EFBFBD><CC8B>ʂ<CA82><F096B38C>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>ɂ͎<C982><CD8E>̗l<CC97>ɓ<EFBFBD><C993>͂<EFBFBD><CD82>܂<EFBFBD>: :set noic
|
||||
|
||||
Note: <20>}<7D>b<EFBFBD>`<60>̋<EFBFBD><CC8B><EFBFBD><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂<EFBFBD><DF82>ɂ͎<C982><CD8E>̗l<CC97>ɓ<EFBFBD><C993>͂<EFBFBD><CD82>܂<EFBFBD>: :nohlsearch
|
||||
Note: 1<>̌<C282><CC8C><EFBFBD><EFBFBD>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>啶<EFBFBD><E595B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̋<EFBFBD><CC8B>ʂ<EFBFBD><CA82><EFBFBD><EFBFBD>߂<EFBFBD><DF82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>A<CE81>t<EFBFBD><74><EFBFBD>[<5B>Y<EFBFBD><59> \c
|
||||
NOTE: <20>}<7D>b<EFBFBD>`<60>̋<EFBFBD><CC8B><EFBFBD><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂<EFBFBD><DF82>ɂ͎<C982><CD8E>̗l<CC97>ɓ<EFBFBD><C993>͂<EFBFBD><CD82>܂<EFBFBD>: :nohlsearch
|
||||
NOTE: 1<>̌<C282><CC8C><EFBFBD><EFBFBD>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>啶<EFBFBD><E595B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̋<EFBFBD><CC8B>ʂ<EFBFBD><CA82><EFBFBD><EFBFBD>߂<EFBFBD><DF82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>A<CE81>t<EFBFBD><74><EFBFBD>[<5B>Y<EFBFBD><59> \c
|
||||
<20><><EFBFBD>g<EFBFBD>p<EFBFBD><70><EFBFBD>܂<EFBFBD>: /ignore\c <ENTER>
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
<09><><EFBFBD>b<EFBFBD>X<EFBFBD><58> 6 <20>v<EFBFBD><76>
|
||||
|
||||
@@ -38,10 +38,10 @@
|
||||
|
||||
3. 下へのキーを使って、レッスン1.2 に移動しましょう。
|
||||
|
||||
Note: 何をタイプしているか判らなくなったら、<ESC>を押してノーマルモードにし
|
||||
NOTE: 何をタイプしているか判らなくなったら、<ESC>を押してノーマルモードにし
|
||||
ます。それから入力しようとしていたコマンドを再入力しましょう。
|
||||
|
||||
Note: カーソルキーでも移動できます。しかし hjkl に一度慣れてしまえば、はるか
|
||||
NOTE: カーソルキーでも移動できます。しかし hjkl に一度慣れてしまえば、はるか
|
||||
に速く移動することができるでしょう。いやマジで!
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -109,7 +109,7 @@ NOTE: 全てのレッスンを通じて、覚えようとするのではなく
|
||||
---> この には 足りない テキスト ある。
|
||||
---> この 行 には 幾つか 足りない テキスト が ある。
|
||||
|
||||
5. 挿入の方法がわかったら下のレッスン1の要約を見ましょう。
|
||||
5. 挿入の方法がわかったらレッスン 1.5 へ進みましょう。
|
||||
|
||||
|
||||
|
||||
@@ -145,7 +145,8 @@ NOTE: 全てのレッスンを通じて、覚えようとするのではなく
|
||||
!! NOTE: 以下のステップを実行する前に、まず全体を読んでください!!
|
||||
|
||||
1. レッスン 1.2 でやったように :q! をタイプして、このチュートリアルを終了
|
||||
します。
|
||||
します。あるいは、別の端末がある場合はそこで以下の内容を行ってもかまい
|
||||
ません。
|
||||
|
||||
2. シェルプロンプトでこのコマンドをタイプします: vim tutor <ENTER>
|
||||
'vim'が Vim エディタを起動するコマンド、'tutor' は編集したいファイルの
|
||||
@@ -155,7 +156,8 @@ NOTE: 全てのレッスンを通じて、覚えようとするのではなく
|
||||
|
||||
4. 変更をファイルに保存します: :wq <ENTER>
|
||||
|
||||
5. vimtutor を再度起動し、以下の要約へ進みましょう。
|
||||
5. ステップ 1 で vimtutuor を終了した場合は vimtutor を再度起動し、以下の
|
||||
要約へ進みましょう。
|
||||
|
||||
6. 以上のステップを読んで理解した上でこれを実行しましょう。
|
||||
|
||||
@@ -259,7 +261,7 @@ NOTE: 冒険したい人は、ノーマルモードにてコマンドなしに
|
||||
|
||||
1. 以下の ---> と示された行の先頭にカーソルを移動します。
|
||||
|
||||
2. 2dw をタイプして単語2つ分削除します。
|
||||
2. 2w をタイプして単語2つ分前に移動します。
|
||||
|
||||
3. 3e をタイプして3つ目の単語の終端に移動します。
|
||||
|
||||
@@ -286,7 +288,7 @@ NOTE: 冒険したい人は、ノーマルモードにてコマンドなしに
|
||||
|
||||
1. ---> と示された行の行頭部分にカーソルを移動しましょう。
|
||||
|
||||
2. UPPER CASE の単語2つを 2dw とタイプして削除します。
|
||||
2. UPPER CASE の単語2つを d2w とタイプして削除します。
|
||||
|
||||
3. UPPER CASE という連続した単語を、1つのコマンドと異なるカウントを指定し、
|
||||
ステップ 1 と 2 を繰り返します。
|
||||
@@ -406,7 +408,7 @@ NOTE: オペレータ d とモーションの間にカウントを使った場
|
||||
---> この合を人力した時ね、その人は幾つか問違ったキーを押しもした!
|
||||
---> この行を入力した時に、その人は幾つか間違ったキーを押しました!
|
||||
|
||||
5. さぁ、レッスン 3.2 へ進みましょう。
|
||||
5. さぁ、レッスン 3.3 へ進みましょう。
|
||||
|
||||
NOTE: 実際に試しましょう。決して覚えるだけにはしないこと。
|
||||
|
||||
@@ -428,8 +430,8 @@ NOTE: 実際に試しましょう。決して覚えるだけにはしないこ
|
||||
|
||||
5. 最初の行が次の行の様になるまでステップ 3 と 4 を繰り返します。
|
||||
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change command.
|
||||
---> This line has a few words that need changing using the change command.
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change operator.
|
||||
---> This line has a few words that need changing using the change operator.
|
||||
|
||||
cw は単語を変更するだけでなく、挿入も行えることに注意しましょう。
|
||||
|
||||
@@ -494,7 +496,7 @@ NOTE: タイプ中の間違いはバックスペースキーを使って直す
|
||||
に行番号を覚えておきましょう。
|
||||
|
||||
NOTE: 画面の右下隅にカーソルの位置が表示されているかもしれません。これは
|
||||
'ruler' オプション(レッスン6で説明)を設定することで表示されます。
|
||||
'ruler' オプション(:help 'ruler' を参照)を設定することで表示されます。
|
||||
|
||||
2. 最下行に移動するために G をタイプしましょう。
|
||||
ファイルの先頭に移動するには gg とタイプしましょう。
|
||||
@@ -523,8 +525,8 @@ NOTE: 画面の右下隅にカーソルの位置が表示されているかも
|
||||
5. 元の場所に戻るには CTRL-O (Ctrl を押し続けながら o 文字タイプ)をタイプし
|
||||
ます。さらに戻るにはこれを繰り返します。CTRL-I は前方向です。
|
||||
|
||||
Note: "errroor" は error とスペルが違います; errroor はいわゆる error です。
|
||||
Note: 検索がファイルの終わりに達すると、オプション 'wrapscan' が設定されている
|
||||
---> "errroor" は error とスペルが違います; errroor はいわゆる error です。
|
||||
NOTE: 検索がファイルの終わりに達すると、オプション 'wrapscan' が設定されている
|
||||
場合は、ファイルの先頭から検索を続行します。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -612,10 +614,10 @@ NOTE: この機能は括弧が一致していないプログラムをデバッ
|
||||
シェルプロンプトのようにディレクトリの一覧が表示されるはずです。
|
||||
もしくは ls が動かないならば :!dir を使用しましょう。
|
||||
|
||||
Note: この方法によってあらゆるコマンドが実行することができます。もちろん引数
|
||||
NOTE: この方法によってあらゆるコマンドが実行することができます。もちろん引数
|
||||
も与えられます。
|
||||
|
||||
Note: 全ての : コマンドは <ENTER> を押して終了しなければなりません。
|
||||
NOTE: 全ての : コマンドは <ENTER> を押して終了しなければなりません。
|
||||
以降ではこのことに言及しません。
|
||||
|
||||
|
||||
@@ -635,7 +637,7 @@ Note: 全ての : コマンドは <ENTER> を押して終了しなければな
|
||||
4. これによりファイル全体が TEST という名前で保存されます。
|
||||
もう一度 :!dir もしくは :!ls とタイプして確認してみましょう。
|
||||
|
||||
Note: ここで Vim を終了し、ファイル名 TEST と共に起動すると、保存した時の
|
||||
NOTE: ここで Vim を終了し、ファイル名 TEST と共に起動すると、保存した時の
|
||||
チュートリアルの複製ができ上がるはずです。
|
||||
|
||||
5. さらに、次のようにタイプしてファイルを消しましょう(MS-DOS): :!del TEST
|
||||
@@ -656,7 +658,7 @@ Note: ここで Vim を終了し、ファイル名 TEST と共に起動すると
|
||||
3. 文字 : を押すと、画面の最下部に :'<,'> が現れます。
|
||||
|
||||
4. w TEST (TEST は存在しないファイル名)をタイプします。
|
||||
Enter を押す前に :'<,'>w TEST となっていることを確認して下さい。
|
||||
<ENTER> を押す前に :'<,'>w TEST となっていることを確認して下さい。
|
||||
|
||||
5. Vim は TEST というファイルに選択された行を書き込むでしょう。
|
||||
!dir もしくは !ls でそれを確認します。
|
||||
@@ -755,7 +757,7 @@ NOTE: 外部コマンドの出力を読み込むことも出来ます。例え
|
||||
---> This li will allow you to pract appendi text to a line.
|
||||
---> This line will allow you to practice appending text to a line.
|
||||
|
||||
Note: a, i と A は同じ挿入モードへ移りますが、文字が挿入される位置だけが異なり
|
||||
NOTE: a, i と A は同じ挿入モードへ移りますが、文字が挿入される位置だけが異なり
|
||||
ます。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -803,7 +805,7 @@ NOTE: 置換モードは挿入モードに似ていますが、全てのタイ
|
||||
---> a) this is the first item.
|
||||
b)
|
||||
|
||||
Note: 単語を1つ yank するのに y をオペレータとして yw とすることも出来ます。
|
||||
NOTE: 単語を1つ yank するのに y をオペレータとして yw とすることも出来ます。
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
レッスン 6.5: オプションの設定
|
||||
|
||||
@@ -824,8 +826,8 @@ NOTE: 置換モードは挿入モードに似ていますが、全てのタイ
|
||||
|
||||
6. 大文字小文字の区別を無効にするには次の様に入力します: :set noic
|
||||
|
||||
Note: マッチの強調表示をやめるには次の様に入力します: :nohlsearch
|
||||
Note: 1つの検索コマンドだけ大文字小文字の区別をやめたいならば、フレーズに \c
|
||||
NOTE: マッチの強調表示をやめるには次の様に入力します: :nohlsearch
|
||||
NOTE: 1つの検索コマンドだけ大文字小文字の区別をやめたいならば、フレーズに \c
|
||||
を使用します: /ignore\c <ENTER>
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
レッスン 6 要約
|
||||
|
||||
950
runtime/tutor/tutor.nl
Normal file
950
runtime/tutor/tutor.nl
Normal file
@@ -0,0 +1,950 @@
|
||||
==========================================================================
|
||||
= W e l k o m b i j d e V I M l e s s e n - Versie 1.7 =
|
||||
==========================================================================
|
||||
|
||||
Vim is een krachtige editor met veel commando's, te veel om uit te leggen
|
||||
in lessen zoals deze. Deze lessen zijn bedoeld om voldoende commando's te
|
||||
behandelen om je in staat te stellen met Vim te werken als een editor voor
|
||||
algemeen gebruik.
|
||||
|
||||
Deze lessen zullen 25 tot 30 minuten in beslag nemen, afhankelijk van de
|
||||
tijd die wordt besteed aan het uitproberen van de commando's.
|
||||
|
||||
LET OP:
|
||||
Door de commando's in deze lessen verandert de tekst. Maak een kopie van
|
||||
dit bestand om mee te oefenen (als je "vimtutor" uitvoerde, is dit al een
|
||||
kopie).
|
||||
|
||||
Deze lessen zijn bedoeld om al doende te leren. Dat betekent dat je de
|
||||
commando's moet uitvoeren om ze goed te leren kennen. Als je de tekst
|
||||
alleen maar doorleest, zal je de commando's niet leren!
|
||||
|
||||
Zorg ervoor dat de <Caps Lock> toets NIET is ingedrukt en druk vaak genoeg
|
||||
op de j-toets om de cursor zo te bewegen dat les 1.1 volledig op het
|
||||
scherm staat.
|
||||
|
||||
LET OP: In deze lessen worden omwille van de duidelijkheid vaak spaties
|
||||
gebruikt binnen een commando (bv. "40 G" of "operator [getal] beweging").
|
||||
Tik deze spaties echter NIET. Ze verstoren de werking.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.1: VERPLAATS DE CURSOR
|
||||
|
||||
** De cursor wordt verplaatst met de toetsen h, j, k, l zoals aangegeven. **
|
||||
^
|
||||
k Hint: De h is de meest linkse en beweegt naar links.
|
||||
< h l > De l is de meest rechtse en beweegt naar rechts.
|
||||
j De j lijkt op een pijl naar beneden.
|
||||
v
|
||||
|
||||
1. Beweeg de cursor over het scherm om er vertrouwd mee te raken.
|
||||
|
||||
2. Druk de omlaag-toets (j) tot hij repeteert.
|
||||
Nu weet je hoe je de volgende les bereikt.
|
||||
|
||||
3. Gebruik de omlaag-toets om naar les 1.2 te gaan.
|
||||
|
||||
OPMERKING: Als je twijfelt aan wat je tikte, druk <ESC> om in de opdracht-
|
||||
modus te komen. Tik daarna het commando dat bedoeld wordt.
|
||||
|
||||
OPMERKING: Pijltjes-toetsen werken ook. Met de hjkl-toetsen kan je sneller
|
||||
rondbewegen, als je er eenmaal aan gewend bent. Echt waar!
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.2: VIM AFSLUITEN
|
||||
|
||||
!! LET OP: Lees deze les goed door voordat je iets uitvoert!!
|
||||
|
||||
1. Druk de <ESC> toets (om zeker in de opdrachtmodus te zitten).
|
||||
|
||||
2. Tik :q! <ENTER>
|
||||
Hiermee wordt de editor afgesloten. Alle veranderingen gaan VERLOREN.
|
||||
|
||||
3. Nu zie je de shell-prompt. Tik het commando waarmee je deze lessen
|
||||
hebt opgeroepen. Dat is normaal gesproken: vimtutor <ENTER>
|
||||
|
||||
4. Als je deze stappen goed hebt doorgelezen, voer dan de stappen 1 tot 3
|
||||
uit om de editor te verlaten en weer op te starten.
|
||||
|
||||
LET OP: :q! <ENTER> verwerpt alle veranderingen die je aanbracht. Een paar
|
||||
lessen verder zal je leren hoe veranderingen worden opgeslagen in
|
||||
een bestand.
|
||||
|
||||
5. Beweeg de cursor omlaag naar les 1.3.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.3: TEKST BEWERKEN - WISSEN
|
||||
|
||||
** Tik x om het teken onder de cursor te wissen. **
|
||||
|
||||
1. Ga met de cursor naar de regel verderop met --->.
|
||||
|
||||
2. Zet de cursor op een teken dat moet worden gewist om een fout te
|
||||
herstellen.
|
||||
|
||||
3. Tik x om het ongewenste teken te wissen.
|
||||
|
||||
4. Herhaal deze stappen tot de regel goed is.
|
||||
|
||||
---> Vi kkent eenn opdracccchtmodus en een invooegmmmmodus.
|
||||
|
||||
5. Nu de regel gecorrigeerd is kan je naar les 1.4 gaan.
|
||||
|
||||
LET OP: Probeer de lessen niet uit je hoofd te leren. Leer al doende.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.4: TEKST BEWERKEN - INVOEGEN
|
||||
|
||||
** Tik i ('insert') om tekst in te voegen. **
|
||||
|
||||
1. Ga met de cursor naar de eerste regel verderop met --->.
|
||||
|
||||
2. Maak de eerste regel gelijk aan de tweede. Zet daarvoor de cursor op
|
||||
de plaats waar tekst moet worden ingevoegd.
|
||||
|
||||
3. Tik i en daarna de nodige aanvullingen.
|
||||
|
||||
4. Tik <ESC> na elke herstelde fout om terug te keren in de opdrachtmodus.
|
||||
Herhaal de stappen 2 tot 4 om de zin te verbeteren.
|
||||
|
||||
---> Aan regel ontekt wat .
|
||||
---> Aan deze regel ontbreekt wat tekst.
|
||||
|
||||
5. Ga naar les 1.5 als je gewend bent aan het invoegen van tekst.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.5: TEKST BEWERKEN - TOEVOEGEN
|
||||
|
||||
** Tik A ('append') om tekst toe te voegen. **
|
||||
|
||||
1. Ga met de cursor naar de eerste regel verderop met --->.
|
||||
Het maakt niet uit waar de cursor in deze regel staat.
|
||||
|
||||
2. Tik hoofdletter A en tik de nodige aanvullingen.
|
||||
|
||||
3. Tik <ESC> nadat de tekst is aangevuld. Zo keer je terug in de
|
||||
opdrachtmodus.
|
||||
|
||||
4. Ga naar de tweede regel verderop met ---> en herhaal stap 2 en 3
|
||||
om deze zin te corrigeren.
|
||||
|
||||
---> Er ontbreekt wat tekst aan de
|
||||
Er ontbreekt wat tekst aan deze regel.
|
||||
---> Hier ontbreekt ook w
|
||||
Hier ontbreekt ook wat tekst.
|
||||
|
||||
5. Ga naar les 1.6 als je vertrouwd bent geraakt aan het toevoegen
|
||||
van tekst.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.6: EEN BESTAND EDITTEN
|
||||
|
||||
** Gebruik :wq om een bestand op te slaan en de editor te verlaten. **
|
||||
|
||||
!! LET OP: Lees deze les helemaal door voordat je een van de volgende
|
||||
stappen uitvoert!!
|
||||
|
||||
1. Verlaat deze les zoals je in les 1.2 deed: :q!
|
||||
Of gebruik een andere terminal als je daar de beschikking over hebt. Doe
|
||||
daar het volgende.
|
||||
|
||||
2. Tik het volgende commando na de shell-prompt: vim les <ENTER>
|
||||
'vim' (vaak ook 'vi') is het commando om de Vim-editor te starten,
|
||||
'les' is de naam van het bestand, dat je gaat bewerken. Kies een andere
|
||||
naam als er al een bestand 'les' bestaat, dat niet veranderd mag worden.
|
||||
|
||||
3. Voeg naar eigen keus tekst toe, zoals je geleerd hebt in eerdere lessen.
|
||||
|
||||
4. Sla het bestand met de wijzigingen op en verlaat Vim met :wq <ENTER>
|
||||
|
||||
5. Herstart vimtutor als je deze bij stap 1 hebt verlaten en ga verder met
|
||||
de volgende samenvatting.
|
||||
|
||||
6. Voer deze stappen uit nadat je ze hebt gelezen en begrepen.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 1
|
||||
|
||||
1. De cursor wordt bewogen met de pijltjestoetsen of de hjkl-toetsen.
|
||||
h (links) j (omlaag) k (omhoog) l (rechts)
|
||||
|
||||
2. Start Vim van de shell-prompt. Tik: vim BESTANDSNAAM <ENTER>
|
||||
|
||||
3. Sluit Vim af met <ESC> :q! <ENTER> om de veranderingen weg te gooien.
|
||||
OF tik <ESC> :wq <ENTER> om de veranderingen te bewaren.
|
||||
|
||||
4. Wis het teken onder de cursor met: x
|
||||
|
||||
5. Invoegen of toevoegen van tekst, tik:
|
||||
i en daarna de in te voegen tekst <ESC> voeg in vanaf de cursor
|
||||
A en daarna de toe te voegen tekst <ESC> voeg toe achter de regel
|
||||
|
||||
OPMERKING: Met <ESC> kom je terug in opdrachtmodus en wordt een ongewenst
|
||||
of gedeeltelijk uitgevoerd commando afgebroken.
|
||||
|
||||
Ga nu verder met les 2.1.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.1: WIS-COMMANDO'S
|
||||
|
||||
** Tik dw ('delete word') om een woord te wissen. **
|
||||
|
||||
1. Druk op <ESC> om zeker in de opdrachtmodus te zijn.
|
||||
|
||||
2. Ga naar de regel hieronder, die met ---> begint.
|
||||
|
||||
3. Ga met de cursor naar het begin van een woord dat moet worden gewist.
|
||||
|
||||
4. Met het tikken van dw verdwijnt het woord.
|
||||
|
||||
OPMERKING: De letter d verschijnt op de laatste regel van het scherm
|
||||
zodra je hem tikt. Vim is aan het wachten tot je de w tikt.
|
||||
Als je een ander teken dan d ziet, heb je iets verkeerds
|
||||
getikt. Druk op <ESC> en begin opnieuw.
|
||||
|
||||
NOG EEN OPMERKING: Dit werkt alleen als de optie 'showcmd' is ingeschakeld.
|
||||
Dat gebeurt met :set showcmd <ENTER>
|
||||
|
||||
---> Er zijn een het paar ggg woorden, die niet in deze len zin thuishoren.
|
||||
|
||||
5. Herhaal de stappen 3 en 4 tot de zin goed is en ga naar les 2.2.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.2: MEER WIS-COMMANDO'S
|
||||
|
||||
** Tik d$ om te wissen tot het einde van de regel. **
|
||||
|
||||
1. Druk op <ESC> om zeker in de opdrachtmodus te zijn.
|
||||
|
||||
2. Ga naar de regel hieronder, die met ---> begint.
|
||||
|
||||
3. Ga met de cursor naar het einde van de correcte regel (NA de eerste . ).
|
||||
|
||||
4. Tik d$ om te wissen tot het einde van de regel.
|
||||
|
||||
---> Iemand heeft het einde van deze regel dubbel getikt. dubbel getikt.
|
||||
|
||||
5. Ga naar les 2.3 voor uitleg.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.3: OVER OPERATOREN EN BEWEGINGEN
|
||||
|
||||
Veel commando's die de tekst veranderen, bestaan uit een operator en een
|
||||
beweging. De samenstelling van een wis-commando met de operator d is:
|
||||
d beweging
|
||||
|
||||
Daarbij is:
|
||||
d - de wis-operator
|
||||
beweging - het bereik waarop de operator werkt (zie het lijstje hieronder)
|
||||
|
||||
Een korte lijst van bewegingen vanaf de cursor:
|
||||
w - tot het begin van het volgende woord, ZONDER het eerste teken daarvan.
|
||||
e - tot het einde van het huidige woord, INCLUSIEF het laatste teken.
|
||||
$ - tot het einde van de regel, INCLUSIEF het laatste teken.
|
||||
|
||||
Het tikken van de wist tekst vanaf de cursor tot het eind van het woord.
|
||||
|
||||
OPMERKING: Het intikken van alleen maar de beweging, zonder een operator,
|
||||
in de opdrachtmodus beweegt de cursor (respectievelijk naar het
|
||||
volgende woord, naar het eind van het huidige woord en naar het
|
||||
eind van de regel).
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.4: GEBRUIK VAN EEN TELLER BIJ EEN BEWEGING
|
||||
|
||||
** Een getal voor een beweging herhaalt het zoveel keer. **
|
||||
|
||||
1. Ga naar de regel hieronder, die met ---> begint.
|
||||
|
||||
2. Tik 2w zodat de cursor twee woorden vooruit gaat.
|
||||
|
||||
3. Tik 3e zodat de cursor naar het einde van het derde woord gaat.
|
||||
|
||||
4. Tik 0 (nul) om naar het begin van de regel te gaan.
|
||||
|
||||
5. Herhaal de stappen 2 en 3 met andere getallen.
|
||||
|
||||
---> Dit is een regel met woorden waarin je heen en weer kan bewegen.
|
||||
|
||||
6. Ga verder met les 2.5.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.5: GEBRUIK EEN TELLER OM MEER TE WISSEN
|
||||
|
||||
** Een getal met een operator zorgt dat deze zoveel keer wordt herhaald. **
|
||||
|
||||
Bij de combinatie van wis-operator en beweging kan je voor de beweging een
|
||||
teller zetten om meer te wissen:
|
||||
d [teller] beweging
|
||||
|
||||
1. Ga naar het eerste woord in HOOFDLETTERS in de regel na --->.
|
||||
|
||||
2. Met d2w worden twee woorden (in dit voorbeeld in hoofdletters) gewist.
|
||||
|
||||
3. Herhaal de stappen 1 en 2 met verschillende tellers om de verschillende
|
||||
woorden in hoofdletters met <20><>n commando te wissen.
|
||||
|
||||
---> deze ABC DE regel FGHI JK LMN OP is QZ RS ontdaan van rommel.
|
||||
|
||||
OPMERKING: De teller kan ook aan het begin staan: d2w en 2dw werken allebei.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.6: BEWERKING VAN HELE REGELS
|
||||
|
||||
** Tik dd om een hele regel te wissen. **
|
||||
|
||||
Omdat het wissen van een hele regel vaak voorkomt, besloten de ontwerpers
|
||||
van Vi dat met het tikken van dd simpelweg een hele regel gewist wordt.
|
||||
|
||||
1. Ga met de cursor naar de tweede regel van de zinnetjes hieronder.
|
||||
|
||||
2. Tik dd om de regel te wissen.
|
||||
|
||||
3. Ga nu naar de vierde regel.
|
||||
|
||||
4. Tik 2dd om twee regels te wissen.
|
||||
|
||||
---> 1) Rozen zijn rood.
|
||||
---> 2) Modder is leuk.
|
||||
---> 3) Viooltjes zijn blauw.
|
||||
---> 4) Ik heb een auto.
|
||||
---> 5) De klok slaat de tijd.
|
||||
---> 6) Suiker is zoet.
|
||||
---> 7) En dat ben jij ook.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.7: HET COMMANDO HERSTEL
|
||||
|
||||
** u maakt het laatste commando ongedaan, U herstelt een hele regel. **
|
||||
|
||||
1. Ga met de cursor naar de regel hieronder met ---> en zet hem
|
||||
op de eerste fout.
|
||||
|
||||
2. Tik x om het eerste ongewenste teken te wissen.
|
||||
|
||||
3. Tik nu u en maak daarmee het vorige commando ongedaan.
|
||||
|
||||
4. Herstel nu alle fouten in de regel met het x commando.
|
||||
|
||||
5. Tik een hoofdletter U om de regel in z'n oorspronkelijke staat terug
|
||||
te brengen.
|
||||
|
||||
6. Tik nu een paar keer u en herstel daarmee de U en eerdere commando's.
|
||||
|
||||
7. Tik nu een paar keer CTRL-R (Ctrl-toets ingedrukt houden en R tikken) en
|
||||
voer daarmee de commando's opnieuw uit: 'redo' oftewel 'undo de undo's'.
|
||||
|
||||
---> Heerstel de fouten inn deeze regel en brenng ze weer terugg met undo.
|
||||
|
||||
8. Dit zijn heel nuttige commando's. Ga verder met samenvatting van les 2.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 2
|
||||
|
||||
1. Wis van de cursor tot het volgende woord met dw
|
||||
|
||||
2. Wis van de cursor tot het eind van de regel met d$
|
||||
|
||||
3. Wis de hele regel met dd
|
||||
|
||||
4. Herhaal een beweging door er een getal voor te zetten: 2w
|
||||
|
||||
5. De opbouw van een wijzigingscommando is:
|
||||
operator [getal] beweging
|
||||
daarbij is:
|
||||
operator - wat er moet gebeuren, bijvoorbeeld d om te wissen
|
||||
[getal] - een (niet-verplichte) teller om 'beweging' te herhalen
|
||||
beweging - een beweging door de te wijzigen tekst zoals w (woord)
|
||||
of $ (tot het einde van de regel) enz.
|
||||
|
||||
6. Ga naar het begin van de regel met nul: 0
|
||||
|
||||
7. Undo de voorgaande actie met u (kleine letter)
|
||||
Undo alle veranderingen in een regel met U (hoofdletter)
|
||||
Undo de undo's met CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 3.1: HET COMMANDO PLAK
|
||||
|
||||
** Tik p ('put') en plak daarmee zojuist gewiste tekst na te cursor. **
|
||||
|
||||
1. Ga met de cursor naar de eerste regel met ---> hierna.
|
||||
|
||||
2. Wis de regel met dd en bewaar hem zodoende in een Vim-register.
|
||||
|
||||
3. Ga naar de c-regel, waar de gewiste regel ONDER moet komen.
|
||||
|
||||
4. Tik p om de regel terug te zetten onder de regel met de cursor.
|
||||
|
||||
5. Herhaal de stappen 2 tot 4 om de regels in de goede volgorde te zetten.
|
||||
|
||||
---> d) Krijg je het ook onder de knie?
|
||||
---> b) Viooltjes zijn blauw,
|
||||
---> c) Begrip is te leren,
|
||||
---> a) Rozen zijn rood,
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 3.2: HET COMMANDO VERVANG
|
||||
|
||||
** Tik rx ('replace') om het teken onder de cursor te vervangen door x. **
|
||||
|
||||
1. Ga naar de eerste regel hieronder met --->.
|
||||
|
||||
2. Zet de cursor op de eerste fout.
|
||||
|
||||
3. Tik r en dan het teken dat er hoort te staan.
|
||||
|
||||
4. Herhaal de stappen 2 en 3 tot de eerste regel gelijk is aan de tweede.
|
||||
|
||||
---> Bij het tokken van dezf hegel heeft iemamd verklerde letters getikt.
|
||||
---> Bij het tikken van deze regel heeft iemand verkeerde letters getikt.
|
||||
|
||||
5. Ga nu naar les 3.3.
|
||||
|
||||
LET OP: Door het te doen, leer je beter dan door het uit je hoofd te leren.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 3.3: HET COMMANDO VERANDER
|
||||
|
||||
** Tik ce om te veranderen tot het einde van een woord. **
|
||||
|
||||
1. Ga met de cursor naar de eerste regel hieronder met --->.
|
||||
|
||||
2. Zet de cursor op de u van ruch.
|
||||
|
||||
3. Tik ce en de juiste letters (in dit geval "egel").
|
||||
|
||||
4. Druk <ESC> en ga naar het volgende teken dat moet worden veranderd.
|
||||
|
||||
5. Herhaal de stappen 3 en 4 tot de eerste regel gelijk is aan de tweede.
|
||||
|
||||
---> In deze ruch staan een paar weedrim die veranderd moud worden.
|
||||
---> In deze regel staan een paar woorden die veranderd moeten worden.
|
||||
|
||||
LET OP: Met ce wordt (het laatste deel van) een woord gewist en kom je
|
||||
in de invoegmodus.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 3.4: MEER VERANDERINGEN MET c
|
||||
|
||||
1. Het commando verander ('change') werkt op dezelfde manier als wis. De
|
||||
opbouw is:
|
||||
c [teller] beweging
|
||||
|
||||
2. De bewegingen zijn hetzelfde, zoals w (woord) en $ (einde regel).
|
||||
|
||||
3. Ga naar de eerste regel hieronder met --->.
|
||||
|
||||
4. Zet de cursor op de eerste fout.
|
||||
|
||||
5. Tik c$ en tik de rest van de regel zodat hij gelijk wordt aan de
|
||||
tweede en sluit af met <ESC>.
|
||||
|
||||
---> Het einde van deze regel moet precies zo worden als de tweede regel.
|
||||
---> Het einde van deze regel moet gecorrigeerd worden met het commando c$.
|
||||
|
||||
OPMERKING: Je kan de toets <BACKSPACE> gebruiken om tikfouten te herstellen.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 3
|
||||
|
||||
1. Tik p om tekst terug te plakken, die zojuist is gewist. Dit zet de
|
||||
gewiste tekst ACHTER de cursor (als een hele regel is gewist komt deze
|
||||
op de regel ONDER de cursor.
|
||||
|
||||
2. Het teken waarop de cursor staat wordt vervangen met r gevolgd door
|
||||
het teken dat je daar wilt hebben.
|
||||
|
||||
3. Het commando 'verander' stelt je in staat om tekst te veranderen vanaf
|
||||
de cursor tot waar de 'beweging' je brengt. Dat wil zeggen: tik ce om
|
||||
te veranderen vanaf de cursor tot het einde van het woord, c$ om te
|
||||
veranderen tot het einde van de regel.
|
||||
|
||||
4. De opbouw van het commando verander is:
|
||||
c [teller] beweging
|
||||
|
||||
Ga nu naar de volgende les.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 4.1: PLAATS VAN DE CURSOR EN STATUS VAN HET BESTAND
|
||||
|
||||
** CTRL-G laat zien waar (regelnummer) je je bevindt en wat de status van
|
||||
het bestand is. Met [nummer] G ga je naar een bepaalde regel. **
|
||||
|
||||
LET OP: Lees de hele les voordat je een stap uitvoert!!
|
||||
|
||||
1. Hou de Ctrl-toets ingedrukt en tik g . Dit noemen we CTRL-G.
|
||||
Onderaan de pagina verschijnt een boodschap met de bestandsnaam en de
|
||||
positie in het bestand. Onthou het regelnummer voor stap 3.
|
||||
|
||||
OPMERKING: Als de optie 'ruler' aan staat, wordt de positie van de cursor
|
||||
(regelnummer, kolom) steeds in de rechter-onderhoek van het
|
||||
scherm vermeld. In dit geval vermeldt CTRL-G geen regelnummer.
|
||||
CTRL-G geeft ook de status aan, namelijk of de tekst veranderd
|
||||
is ('modified') sinds het de laatste keer is opgeslagen.
|
||||
|
||||
2. Tik hoofdletter G om naar het einde van het bestand te gaan.
|
||||
Tik gg om naar het begin van het bestand te gaan.
|
||||
|
||||
3. Tik het regelnummer waar je bij stap 1 was en daarna G . Dit brengt je
|
||||
terug naar de regel waar je was toen je de eerste keer CTRL-G tikte.
|
||||
|
||||
4. Voer de stappen 1 tot 3 uit als je dit goed hebt gelezen.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 4.2: HET COMMANDO ZOEKEN
|
||||
|
||||
** Met /ZOEK wordt naar de zoekterm (<28><>n of meer woorden) gezocht. **
|
||||
|
||||
1. Tik in de opdrachtmodus het teken / . Je ziet dat het met de cursor
|
||||
aan de onderkant van het scherm verschijnt, zoals bij het :-commando.
|
||||
|
||||
2. Tik nu 'ffouut' <ENTER>. Dit is het woord waarnaar gezocht wordt.
|
||||
|
||||
3. Tik n om verder te zoeken met dezelfde zoekterm.
|
||||
Zoek met N met dezelfde zoekterm in de tegenovergestelde richting.
|
||||
|
||||
4. Zoek in achterwaartse richting met ?zoekterm in plaats van / .
|
||||
|
||||
5. Keer terug naar de vorige hit met CTRL-O (hou Ctrl-toets ingedrukt en
|
||||
tik letter o). Herhaal om verder terug te gaan. CTRL-I gaat vooruit.
|
||||
|
||||
---> "ffouut" is niet de juiste spelling van fout, ffouut is een fout.
|
||||
|
||||
OPMERKING: Als zoeken het einde van het bestand bereikt, wordt vanaf het
|
||||
begin doorgezocht, tenzij de optie 'wrapscan' is uitgeschakeld.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 4.3: GA NAAR CORRESPONDERENDE HAAKJES
|
||||
|
||||
** Tik % om naar corresponderende ), ] of } te gaan. **
|
||||
|
||||
1. Zet de cursor op een (, [ of { in de regel hieronder met --->.
|
||||
|
||||
2. Tik dan het teken % .
|
||||
|
||||
3. De cursor gaan naar het overeenkomstige haakje.
|
||||
|
||||
4. Met opnieuw % gaat de cursor terug naar het eerste haakje.
|
||||
|
||||
5. Plaats de cursor op een ander haakje en bekijk wat % doet.
|
||||
|
||||
---> Dit ( is een testregel met ('s, ['s ] en {'s } erin. ))
|
||||
|
||||
OPMERKING: Dit is nuttig bij het debuggen van een programma waarin haakjes
|
||||
niet corresponderen. Met de optie 'showmatch' wordt ook
|
||||
aangegeven of haakjes corresponderen, maar de cursor wordt niet
|
||||
(blijvend) verplaatst.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 4.4: HET VERVANG COMMANDO
|
||||
|
||||
** Tik :s/oud/nieuw/g om 'oud' door 'nieuw' te vervangen. **
|
||||
|
||||
1. Ga met de cursor naar de regel hieronder met --->.
|
||||
|
||||
2. Tik :s/dee/de <ENTER>. Zoals je ziet, vervangt ('substitute') dit
|
||||
commando alleen de eerste "dee" in de regel.
|
||||
|
||||
3. Tik nu :s/dee/de/g . Met de g-vlag ('global') wordt elke "dee" in de
|
||||
regel vervangen.
|
||||
|
||||
---> dee beste tijd om dee bloemen te zien is in dee lente.
|
||||
|
||||
4. Om in (een deel van) een tekst elk 'oud' te vervangen door 'nieuw':
|
||||
tik :#,#s/oud/nieuw/g waar #,# de regelnummers zijn die het gebied
|
||||
begrenzen waarin wordt vervangen.
|
||||
tik :%s/oud/nieuw/g om alles te vervangen in het hele bestand.
|
||||
tik :%s/oud/nieuw/gc om elke 'oud' in het hele bestand te vinden
|
||||
en te vragen of er vervangen moet worden.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 4
|
||||
|
||||
1. CTRL-G laat positie in het bestand zien en de status van het bestand.
|
||||
G verplaatst je naar het einde van het bestand.
|
||||
nummer G verplaatst je naar regelnummer.
|
||||
gg verplaatst je naar de eerste regel.
|
||||
|
||||
2. Met / en een zoekterm wordt VOORWAARTS gezocht naar de term.
|
||||
Met ? en een zoekterm wordt ACHTERWAARTS gezocht naar de term.
|
||||
Tik n na een zoekopdracht om de volgende hit te vinden,
|
||||
of tik N om in de andere richting te zoeken.
|
||||
CTRL-O brengt je naar eerdere hit, CTRL-I naar nieuwere.
|
||||
|
||||
3. Tik % terwijl de cursor op een haakje ([{}]) staat, om naar het
|
||||
corresponderende haakje te gaan.
|
||||
|
||||
4. :s/oud/nieuw vervangt het eerste 'oud' in een regel door 'nieuw'.
|
||||
:s/oud/nieuw/g vervangt elk 'oud' in een regel door 'nieuw'.
|
||||
:#,#s/oud/nieuw/g vervangt elk 'oud' door 'nieuw' tussen de regelnummers.
|
||||
:%s/oud/nieuw/g vervangt elk 'oud' door 'nieuw' in het hele bestand.
|
||||
Voeg c toe (:%s/oud/nieuw/gc) om elke keer om bevestiging
|
||||
('confirmation') te vragen.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 5.1: HOE EEN EXTERN COMMANDO WORDT UITGEVOERD
|
||||
|
||||
** Tik :! gevolgd door een extern commando om dat uit te voeren. **
|
||||
|
||||
1. Tik het commando : waarmee de cursor op de onderste regel van het
|
||||
scherm komt te staan. Nu kan je een opdracht geven via de commando-regel.
|
||||
|
||||
2. Tik een ! (uitroepteken). Dit stelt je in staat om elk shell-commando
|
||||
uit te voeren.
|
||||
|
||||
3. Tik bijvoorbeeld ls na het uitroepteken en daarna <ENTER>. Hiermee
|
||||
krijg je de inhoud van je map te zien, net alsof je de opdracht gaf
|
||||
vanaf de shell-prompt. Probeer :!dir als het niet werkt.
|
||||
|
||||
OPMERKING: Elk extern commando kan op deze manier uitgevoerd worden, ook
|
||||
met argumenten.
|
||||
|
||||
OPMERKING: Alle commando's na : moeten worden afgesloten met <ENTER>.
|
||||
Vanaf nu zullen we dat niet meer altijd vermelden.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 5.2: MEER OVER HET OPSLAAN VAN BESTANDEN
|
||||
|
||||
** Tik :w BESTANDSNAAM om de tekst m<>t veranderingen op te slaan. **
|
||||
|
||||
1. Tik :!dir of :!ls om de inhoud van je map te tonen. Je weet
|
||||
inmiddels dat je daarna een <ENTER> moet tikken.
|
||||
|
||||
2. Kies een bestandsnaam die nog niet bestaat, bijvoorbeeld TEST.
|
||||
|
||||
3. Tik nu: :w TEST (als je de naam TEST hebt gekozen).
|
||||
|
||||
4. Hierdoor wordt het hele bestand (de VIM lessen) opgeslagen onder de
|
||||
naam TEST. Tik weer :!dir of :!ls om dit te controleren.
|
||||
|
||||
OPMERKING: Als je Vim zou verlaten en opnieuw zou starten met vim TEST is
|
||||
het bestand een exacte kopie van de lessen, zoals je ze opsloeg.
|
||||
|
||||
5. Wis het bestand nu met de opdracht (MS-DOS) :!del TEST
|
||||
of (Unix) :!rm TEST
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 5.3: EEN DEEL VAN DE TEKST OPSLAAN
|
||||
|
||||
** Sla een deel van het bestand op met v beweging :w BESTANDSNAAM **
|
||||
|
||||
1. Ga naar deze regel.
|
||||
|
||||
2. Tik v en ga met de cursor naar stap 5 hieronder. Je ziet dat de
|
||||
tekst oplicht.
|
||||
|
||||
3. Tik : . Onderaan het scherm zal :'<,'> verschijnen.
|
||||
|
||||
4. Tik w TEST , waar TEST een bestandsnaam is, die nog niet bestaat.
|
||||
Controleer dat je :'<,'>w TEST ziet staan voordat je <ENTER> tikt.
|
||||
|
||||
5. Vim slaat nu de geselecteerde regels op in het bestand TEST. Met
|
||||
:!dir of !ls kan je dat zien. Wis het nog niet! We zullen het in
|
||||
de volgende les gebruiken.
|
||||
|
||||
OPMERKING: Het tikken van v zet zichtbare modus ('visual selection') aan.
|
||||
Je kan de cursor rondbewegen om de selectie groter of kleiner
|
||||
te maken. Vervolgens kan je een commando gebruiken om iets met
|
||||
de tekst te doen. Met d bijvoorbeeld wis je de tekst.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 5.4: OPHALEN EN SAMENVOEGEN VAN BESTANDEN
|
||||
|
||||
** Tik :r BESTANDSNAAM om de inhoud van een bestand in te voegen. **
|
||||
|
||||
1. Zet de cursor precies boven deze regel.
|
||||
|
||||
OPMERKING: Na het uitvoeren van stap 2 zie je tekst van les 5.3. Scrol
|
||||
daarna naar beneden om deze les weer te zien.
|
||||
|
||||
2. Haal nu het bestand TEST op met het commando :r TEST .
|
||||
Het bestand dat je ophaalt komt onder de regel waarin de cursor staat.
|
||||
|
||||
3. Controleer dat er een bestand is opgehaald. Ga met de cursor omhoog.
|
||||
Dan zie je de tekst van les 5.3 dubbel, het origineel en de versie uit
|
||||
het bestand.
|
||||
|
||||
OPMERKING: Je kan ook de uitvoer van een extern commando inlezen. Om een
|
||||
voorbeeld te geven: :r !ls leest de uitvoer van het commando
|
||||
ls en zet dat onder de regel waarin de cursor staat.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 5
|
||||
|
||||
1. :!COMMANDO voert een extern commando uit.
|
||||
Enkele bruikbare voorbeelden zijn:
|
||||
(MS-DOS) (Unix)
|
||||
:!dir :!ls - laat de inhoud van een map zien
|
||||
:!del BESTAND :!rm BESTAND - wist bestand BESTAND
|
||||
|
||||
2. :w BESTANDSNAAM schrijft het huidige Vim-bestand naar disk met de
|
||||
naam BESTANDSNAAM.
|
||||
|
||||
3. v beweging :w BESTANDSNAAM laat je in zichtbare modus een fragment
|
||||
selecteren, dat wordt opgeslagen in het bestand BESTANDSNAAM.
|
||||
|
||||
4. :r BESTANDSNAAM haalt het bestand BESTANDSNAAM op en voegt het onder
|
||||
de cursor-positie in de tekst in.
|
||||
|
||||
5. :r !dir leest de uitvoer van het externe commando dir en zet het onder
|
||||
de cursor-positie.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.1: HET COMMANDO OPEN
|
||||
|
||||
** Tik o om een regel onder de cursor te openen in invoegmodus. **
|
||||
|
||||
1. Ga naar de eerste regel beneden met --->.
|
||||
|
||||
2. Tik de kleine letter o en open daarmee een regel ONDER de cursor en
|
||||
ga naar de invoegmodus.
|
||||
|
||||
3. Tik wat tekst in en sluit af met <ESC> om de invoegmodus te verlaten.
|
||||
|
||||
---> Als je o tikt, komt de cursor in een nieuwe regel in invoegmodus.
|
||||
|
||||
4. Om een regel BOVEN de cursor te openen, moet je gewoon een hoofdletter
|
||||
O tikken in plaats van een kleine letter. Probeer dat vanaf de volgende
|
||||
regel.
|
||||
|
||||
---> Open een regel hierboven. Tik een O terwijl de cursor hier staat.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.2: HET COMMANDO TOEVOEGEN
|
||||
|
||||
** Tik a om tekst toe te voegen ACHTER de cursor. **
|
||||
|
||||
1. Ga naar het begin van de regel beneden met --->.
|
||||
|
||||
2. Tik e tot de cursor op het einde van "ste" staat.
|
||||
|
||||
3. Tik een (kleine letter) a ('append') om toe te voegen ACHTER de cursor.
|
||||
|
||||
4. Vul het woord aan zoals in de volgende regel. Druk <ESC> om de
|
||||
invoegmodus te verlaten.
|
||||
|
||||
5. Ga met e naar het einde van het volgende onvolledige woord en herhaal
|
||||
de stappen 3 en 4.
|
||||
|
||||
---> Deze regel ste je in staat om te oef in het toevo van tekst.
|
||||
Deze regel stelt je in staat om te oefenen in het toevoegen van tekst.
|
||||
|
||||
OPMERKING: a, i en A openen allemaal dezelfde invoegmodus, het enige
|
||||
verschil is waar tekens worden ingevoegd.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.3: VERVANGEN OP EEN ANDERE MANIER
|
||||
|
||||
** Tik een hoofdletter R om meer dan <20><>n teken te vervangen. **
|
||||
|
||||
1. Ga naar de eerste regel beneden met --->. Ga met de cursor naar het
|
||||
begin van de eerste "xxx" .
|
||||
|
||||
2. Tik nu R en daarna het getal eronder in de tweede regel, zodat xxx
|
||||
wordt vervangen.
|
||||
|
||||
3. Druk <ESC> om de vervangmodus te verlaten. Je ziet dat de rest van de
|
||||
regel ongewijzigd blijft.
|
||||
|
||||
4. Herhaal de stappen om de overgebleven xxx te vervangen.
|
||||
|
||||
---> Optellen van 123 en xxx geeft je xxx.
|
||||
---> Optellen van 123 en 456 geeft je 579.
|
||||
|
||||
OPMERKING: Vervangmodus lijkt op invoegmodus, maar elk teken dat je tikt,
|
||||
vervangt een bestaand teken.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.4: TEKST KOPI<50>REN EN PLAKKEN
|
||||
|
||||
** Gebruik y om tekst te kopi<70>ren en p om te plakken. **
|
||||
|
||||
1. Ga naar de regel beneden met ---> en zet de cursor achter "a)".
|
||||
|
||||
2. Zet zichtbare modus aan met v en zet de cursor juist voor "eerste".
|
||||
|
||||
3. Tik y ('yank') om de opgelichte tekst ("dit is het") te kopi<70>ren.
|
||||
|
||||
4. Ga met j$ met de cursor naar het einde van de volgende regel.
|
||||
|
||||
5. Plak de gekopieerde tekst met p en tik a tweede <ESC>.
|
||||
|
||||
6. Selecteer in zichtbare modus "onderdeel", kopieer het met y en
|
||||
ga met j$ naar het einde van de tweede regel. Plak de tekst daar
|
||||
met p .
|
||||
|
||||
---> a) dit is het eerste onderdeel
|
||||
b)
|
||||
|
||||
OPMERKING: Je kan y ook als operator gebruiken; yw kopieert een woord,
|
||||
yy een hele regel.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.5: OPTIES GEBRUIKEN
|
||||
|
||||
** Gebruik een optie voor al dan niet hoofdlettergevoelig zoeken. **
|
||||
|
||||
1. Zoek naar 'hoofdlettergevoelig' met /hoofdlettergevoelig <ENTER>
|
||||
Herhaal het zoeken enkele keren door n te tikken.
|
||||
|
||||
2. Schakel de optie 'ic' ('ignore case', niet-hoofdlettergevoelig) in
|
||||
met :set ic
|
||||
|
||||
3. Zoek met n opnieuw naar 'hoofdlettergevoelig'. Je ziet dat
|
||||
Hoofdlettergevoelig en HOOFDLETTERGEVOELIG nu ook gevonden worden.
|
||||
|
||||
4. Schakel de opties 'hlsearch' (treffers oplichten) en 'incsearch' (toon
|
||||
gedeeltelijke treffers bij intikken) in met :set hls is
|
||||
|
||||
5. Tik weer /hoofdlettergevoelig <ENTER> en kijk wat er gebeurt.
|
||||
|
||||
6. Schakel 'hoofdlettergevoelig' weer in met :set noic
|
||||
|
||||
OPMERKING: Schakel het oplichten van treffers uit met :nohlsearch
|
||||
|
||||
OPMERKING: Om bij een enkel zoek-commando de hoofdlettergevoeligheid om
|
||||
te draaien kan \c worden gebruikt na de zoekterm:
|
||||
/hoofdlettergevoelig\c <ENTER>.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 6
|
||||
|
||||
1. Tik o om een regel te openen ONDER de cursor en invoegmodus te starten.
|
||||
Tik O om een regel te openen BOVEN de cursor.
|
||||
|
||||
2. Tik a om tekst toe te voegen NA de cursor.
|
||||
Tik A om tekst toe te voegen aan het einde van de regel.
|
||||
|
||||
3. Het commando e beweegt de cursor naar het einde van een woord.
|
||||
|
||||
4. De operator y yankt (kopieert) tekst, p zet het terug (plakt).
|
||||
|
||||
5. Met hoofdletter R wordt de vervangmodus geopend, met <ESC> afgesloten.
|
||||
|
||||
6. Met :set xxx wordt optie 'xxx' ingeschakeld. Opties zijn bijvoorbeeld:
|
||||
ic ignorecase geen verschil hoofdletters/kleine letters bij zoeken
|
||||
is incsearch toon gedeeltelijke treffers tijdens intikken zoekterm
|
||||
hls hlsearch laat alle treffers oplichten
|
||||
Je kan zowel de lange als de korte naam van een optie gebruiken.
|
||||
|
||||
7. Zet 'no' voor de naam om een optie uit te schakelen: :set noic
|
||||
schakelt 'ic' uit.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 7.1: HULP INROEPEN
|
||||
|
||||
** Het gebruik van ingebouwde hulp. **
|
||||
|
||||
Vim heeft een uitgebreid ingebouwd hulpsysteem. Probeer, om te beginnen,
|
||||
<20><>n van deze drie:
|
||||
- druk de <HELP> toets (als je die hebt)
|
||||
- druk de <F1> toets (als je die hebt)
|
||||
- tik :help <ENTER>
|
||||
|
||||
Lees de tekst in het help-venster om te leren hoe 'help' werkt.
|
||||
Tik CTRL-W CTRL-W om van het ene venster naar het andere te gaan.
|
||||
Met :q <ENTER> wordt het help-venster gesloten.
|
||||
|
||||
Je kan hulp vinden over nagenoeg elk onderwerp door een argument aan het
|
||||
commando :help toe te voegen. Probeer deze (en vergeet <ENTER> niet):
|
||||
:help w
|
||||
:help c_CTRL-D
|
||||
:help insert-index
|
||||
:help user-manual
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 7.2: SCHRIJF EEN CONFIGURATIEBESTAND
|
||||
|
||||
** Mogelijkheden van Vim uitbreiden. **
|
||||
|
||||
Vim kent veel meer mogelijkheden dan Vi, maar de meeste zijn standaard
|
||||
uitgeschakeld. Om meer functies te gebruiken moet je een 'vimrc'-bestand
|
||||
schrijven.
|
||||
|
||||
1. Bewerk het bestand 'vimrc'. Hoe dat moet hangt af van je systeem:
|
||||
:e ~/.vimrc voor Unix
|
||||
:e $VIM/_vimrc voor MS-Windows
|
||||
|
||||
2. Lees de inhoud van het voorbeeld-bestand:
|
||||
:r $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. Sla het bestand op met :w
|
||||
|
||||
De volgende keer dat je Vim start wordt 'syntaxiskleuring' gebruiken.
|
||||
Je kan al je voorkeursinstellingen toevoegen aan dit 'vimrc'-bestand.
|
||||
Tik :help vimrc-intro voor meer informatie.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 7.3: AANVULLEN
|
||||
|
||||
** Aanvullen van de 'command line' met CTRL-D en <TAB>. **
|
||||
|
||||
1. Zorg dat Vim niet in 'compatible mode' is met :set nocp
|
||||
|
||||
2. Kijk welke bestanden zich in de map bevinden met :!ls of :!dir
|
||||
|
||||
3. Tik het begin van een commando: :e
|
||||
|
||||
4. Met CTRL-D toont Vim een lijst commando's, die met "e" beginnen.
|
||||
|
||||
5. Druk enkele keren <TAB>. Vim laat aanvullingen zien, zoals ":edit",
|
||||
dat we hier gebruiken.
|
||||
|
||||
6. Voeg een spatie toe en de eerste letter(s) van een bestaande
|
||||
bestandsnaam: :edit BESTAND
|
||||
|
||||
7. Druk <TAB>. Vim vult de naam aan (als hij uniek is).
|
||||
|
||||
OPMERKING: Aanvullen werkt bij tal van commando's. Probeer gewoon CTRL-D
|
||||
en <TAB>. Het is bijzonder nuttig bij :help .
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 7
|
||||
|
||||
1. Tik :help of druk <F1> of <Help> om een help-venster te openen.
|
||||
|
||||
2. Tik :help CMD voor hulp over CMD .
|
||||
|
||||
3. Tik CTRL-W CTRL-W om naar een ander venster te gaan.
|
||||
|
||||
4. Tik :q om het help-venster te sluiten.
|
||||
|
||||
5. Maak een bestand met de naam 'vimrc' voor je voorkeursinstellingen.
|
||||
|
||||
6. Druk CTRL-D tijdens het intikken van een :-commando om mogelijke
|
||||
aanvullingen te zien. Druk <TAB> om aanvullen te gebruiken.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Hiermee komen de Vim-lessen tot een einde. Ze waren bedoeld om een kort
|
||||
overzicht te geven van de Vim-editor, juist voldoende om de editor
|
||||
redelijk makkelijk te gebruiken. Deze lessen zijn verre van volledig. Vim
|
||||
kent veel meer commando's. Lees hierna de handleiding voor gebruikers:
|
||||
":help user-manual".
|
||||
|
||||
Voor verdere studie wordt aanbevolen:
|
||||
Vim - Vi Improved - door Steve Oualline
|
||||
Uitgever: New Riders
|
||||
Dit is het eerste boek dat geheel aan Vim is gewijd. Speciaal geschikt
|
||||
voor beginners. Met veel voorbeelden en afbeeldingen.
|
||||
Zie http://iccf-holland.org/click5.html
|
||||
|
||||
Het volgende boek is ouder en gaat meer over Vi dan Vim, maar het wordt
|
||||
toch aanbevolen:
|
||||
Learning the Vi Editor - door Linda Lamb
|
||||
Uitgever: O'Reilly & Associates Inc.
|
||||
Het is een goed boek om nagenoeg alles te weten te komen dat je met Vi
|
||||
zou willen doen. De zesde en vooral de nieuwe zevende druk (onder de
|
||||
titel Learning the Vi and Vim Editors door Arnold Robbins, Elbert Hannah
|
||||
& Linda Lamb) bevat ook informatie over Vim.
|
||||
|
||||
Deze lessen zijn geschreven door Michael C. Pierce en Robert K. Ware,
|
||||
Colorado School of Mines met gebruikmaking van idee<65>n van Charles Smith
|
||||
van de Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Aangepast voor Vim door Bram Moolenaar.
|
||||
|
||||
Nederlandse vertaling door Rob Bishoff, april 2012
|
||||
e-mail: rob.bishoff@hccnet.nl)
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
950
runtime/tutor/tutor.nl.utf-8
Normal file
950
runtime/tutor/tutor.nl.utf-8
Normal file
@@ -0,0 +1,950 @@
|
||||
==========================================================================
|
||||
= W e l k o m b i j d e V I M l e s s e n - Versie 1.7 =
|
||||
==========================================================================
|
||||
|
||||
Vim is een krachtige editor met veel commando's, te veel om uit te leggen
|
||||
in lessen zoals deze. Deze lessen zijn bedoeld om voldoende commando's te
|
||||
behandelen om je in staat te stellen met Vim te werken als een editor voor
|
||||
algemeen gebruik.
|
||||
|
||||
Deze lessen zullen 25 tot 30 minuten in beslag nemen, afhankelijk van de
|
||||
tijd die wordt besteed aan het uitproberen van de commando's.
|
||||
|
||||
LET OP:
|
||||
Door de commando's in deze lessen verandert de tekst. Maak een kopie van
|
||||
dit bestand om mee te oefenen (als je "vimtutor" uitvoerde, is dit al een
|
||||
kopie).
|
||||
|
||||
Deze lessen zijn bedoeld om al doende te leren. Dat betekent dat je de
|
||||
commando's moet uitvoeren om ze goed te leren kennen. Als je de tekst
|
||||
alleen maar doorleest, zal je de commando's niet leren!
|
||||
|
||||
Zorg ervoor dat de <Caps Lock> toets NIET is ingedrukt en druk vaak genoeg
|
||||
op de j-toets om de cursor zo te bewegen dat les 1.1 volledig op het
|
||||
scherm staat.
|
||||
|
||||
LET OP: In deze lessen worden omwille van de duidelijkheid vaak spaties
|
||||
gebruikt binnen een commando (bv. "40 G" of "operator [getal] beweging").
|
||||
Tik deze spaties echter NIET. Ze verstoren de werking.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.1: VERPLAATS DE CURSOR
|
||||
|
||||
** De cursor wordt verplaatst met de toetsen h, j, k, l zoals aangegeven. **
|
||||
^
|
||||
k Hint: De h is de meest linkse en beweegt naar links.
|
||||
< h l > De l is de meest rechtse en beweegt naar rechts.
|
||||
j De j lijkt op een pijl naar beneden.
|
||||
v
|
||||
|
||||
1. Beweeg de cursor over het scherm om er vertrouwd mee te raken.
|
||||
|
||||
2. Druk de omlaag-toets (j) tot hij repeteert.
|
||||
Nu weet je hoe je de volgende les bereikt.
|
||||
|
||||
3. Gebruik de omlaag-toets om naar les 1.2 te gaan.
|
||||
|
||||
OPMERKING: Als je twijfelt aan wat je tikte, druk <ESC> om in de opdracht-
|
||||
modus te komen. Tik daarna het commando dat bedoeld wordt.
|
||||
|
||||
OPMERKING: Pijltjes-toetsen werken ook. Met de hjkl-toetsen kan je sneller
|
||||
rondbewegen, als je er eenmaal aan gewend bent. Echt waar!
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.2: VIM AFSLUITEN
|
||||
|
||||
!! LET OP: Lees deze les goed door voordat je iets uitvoert!!
|
||||
|
||||
1. Druk de <ESC> toets (om zeker in de opdrachtmodus te zitten).
|
||||
|
||||
2. Tik :q! <ENTER>
|
||||
Hiermee wordt de editor afgesloten. Alle veranderingen gaan VERLOREN.
|
||||
|
||||
3. Nu zie je de shell-prompt. Tik het commando waarmee je deze lessen
|
||||
hebt opgeroepen. Dat is normaal gesproken: vimtutor <ENTER>
|
||||
|
||||
4. Als je deze stappen goed hebt doorgelezen, voer dan de stappen 1 tot 3
|
||||
uit om de editor te verlaten en weer op te starten.
|
||||
|
||||
LET OP: :q! <ENTER> verwerpt alle veranderingen die je aanbracht. Een paar
|
||||
lessen verder zal je leren hoe veranderingen worden opgeslagen in
|
||||
een bestand.
|
||||
|
||||
5. Beweeg de cursor omlaag naar les 1.3.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.3: TEKST BEWERKEN - WISSEN
|
||||
|
||||
** Tik x om het teken onder de cursor te wissen. **
|
||||
|
||||
1. Ga met de cursor naar de regel verderop met --->.
|
||||
|
||||
2. Zet de cursor op een teken dat moet worden gewist om een fout te
|
||||
herstellen.
|
||||
|
||||
3. Tik x om het ongewenste teken te wissen.
|
||||
|
||||
4. Herhaal deze stappen tot de regel goed is.
|
||||
|
||||
---> Vi kkent eenn opdracccchtmodus en een invooegmmmmodus.
|
||||
|
||||
5. Nu de regel gecorrigeerd is kan je naar les 1.4 gaan.
|
||||
|
||||
LET OP: Probeer de lessen niet uit je hoofd te leren. Leer al doende.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.4: TEKST BEWERKEN - INVOEGEN
|
||||
|
||||
** Tik i ('insert') om tekst in te voegen. **
|
||||
|
||||
1. Ga met de cursor naar de eerste regel verderop met --->.
|
||||
|
||||
2. Maak de eerste regel gelijk aan de tweede. Zet daarvoor de cursor op
|
||||
de plaats waar tekst moet worden ingevoegd.
|
||||
|
||||
3. Tik i en daarna de nodige aanvullingen.
|
||||
|
||||
4. Tik <ESC> na elke herstelde fout om terug te keren in de opdrachtmodus.
|
||||
Herhaal de stappen 2 tot 4 om de zin te verbeteren.
|
||||
|
||||
---> Aan regel ontekt wat .
|
||||
---> Aan deze regel ontbreekt wat tekst.
|
||||
|
||||
5. Ga naar les 1.5 als je gewend bent aan het invoegen van tekst.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.5: TEKST BEWERKEN - TOEVOEGEN
|
||||
|
||||
** Tik A ('append') om tekst toe te voegen. **
|
||||
|
||||
1. Ga met de cursor naar de eerste regel verderop met --->.
|
||||
Het maakt niet uit waar de cursor in deze regel staat.
|
||||
|
||||
2. Tik hoofdletter A en tik de nodige aanvullingen.
|
||||
|
||||
3. Tik <ESC> nadat de tekst is aangevuld. Zo keer je terug in de
|
||||
opdrachtmodus.
|
||||
|
||||
4. Ga naar de tweede regel verderop met ---> en herhaal stap 2 en 3
|
||||
om deze zin te corrigeren.
|
||||
|
||||
---> Er ontbreekt wat tekst aan de
|
||||
Er ontbreekt wat tekst aan deze regel.
|
||||
---> Hier ontbreekt ook w
|
||||
Hier ontbreekt ook wat tekst.
|
||||
|
||||
5. Ga naar les 1.6 als je vertrouwd bent geraakt aan het toevoegen
|
||||
van tekst.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 1.6: EEN BESTAND EDITTEN
|
||||
|
||||
** Gebruik :wq om een bestand op te slaan en de editor te verlaten. **
|
||||
|
||||
!! LET OP: Lees deze les helemaal door voordat je een van de volgende
|
||||
stappen uitvoert!!
|
||||
|
||||
1. Verlaat deze les zoals je in les 1.2 deed: :q!
|
||||
Of gebruik een andere terminal als je daar de beschikking over hebt. Doe
|
||||
daar het volgende.
|
||||
|
||||
2. Tik het volgende commando na de shell-prompt: vim les <ENTER>
|
||||
'vim' (vaak ook 'vi') is het commando om de Vim-editor te starten,
|
||||
'les' is de naam van het bestand, dat je gaat bewerken. Kies een andere
|
||||
naam als er al een bestand 'les' bestaat, dat niet veranderd mag worden.
|
||||
|
||||
3. Voeg naar eigen keus tekst toe, zoals je geleerd hebt in eerdere lessen.
|
||||
|
||||
4. Sla het bestand met de wijzigingen op en verlaat Vim met :wq <ENTER>
|
||||
|
||||
5. Herstart vimtutor als je deze bij stap 1 hebt verlaten en ga verder met
|
||||
de volgende samenvatting.
|
||||
|
||||
6. Voer deze stappen uit nadat je ze hebt gelezen en begrepen.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 1
|
||||
|
||||
1. De cursor wordt bewogen met de pijltjestoetsen of de hjkl-toetsen.
|
||||
h (links) j (omlaag) k (omhoog) l (rechts)
|
||||
|
||||
2. Start Vim van de shell-prompt. Tik: vim BESTANDSNAAM <ENTER>
|
||||
|
||||
3. Sluit Vim af met <ESC> :q! <ENTER> om de veranderingen weg te gooien.
|
||||
OF tik <ESC> :wq <ENTER> om de veranderingen te bewaren.
|
||||
|
||||
4. Wis het teken onder de cursor met: x
|
||||
|
||||
5. Invoegen of toevoegen van tekst, tik:
|
||||
i en daarna de in te voegen tekst <ESC> voeg in vanaf de cursor
|
||||
A en daarna de toe te voegen tekst <ESC> voeg toe achter de regel
|
||||
|
||||
OPMERKING: Met <ESC> kom je terug in opdrachtmodus en wordt een ongewenst
|
||||
of gedeeltelijk uitgevoerd commando afgebroken.
|
||||
|
||||
Ga nu verder met les 2.1.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.1: WIS-COMMANDO'S
|
||||
|
||||
** Tik dw ('delete word') om een woord te wissen. **
|
||||
|
||||
1. Druk op <ESC> om zeker in de opdrachtmodus te zijn.
|
||||
|
||||
2. Ga naar de regel hieronder, die met ---> begint.
|
||||
|
||||
3. Ga met de cursor naar het begin van een woord dat moet worden gewist.
|
||||
|
||||
4. Met het tikken van dw verdwijnt het woord.
|
||||
|
||||
OPMERKING: De letter d verschijnt op de laatste regel van het scherm
|
||||
zodra je hem tikt. Vim is aan het wachten tot je de w tikt.
|
||||
Als je een ander teken dan d ziet, heb je iets verkeerds
|
||||
getikt. Druk op <ESC> en begin opnieuw.
|
||||
|
||||
NOG EEN OPMERKING: Dit werkt alleen als de optie 'showcmd' is ingeschakeld.
|
||||
Dat gebeurt met :set showcmd <ENTER>
|
||||
|
||||
---> Er zijn een het paar ggg woorden, die niet in deze len zin thuishoren.
|
||||
|
||||
5. Herhaal de stappen 3 en 4 tot de zin goed is en ga naar les 2.2.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.2: MEER WIS-COMMANDO'S
|
||||
|
||||
** Tik d$ om te wissen tot het einde van de regel. **
|
||||
|
||||
1. Druk op <ESC> om zeker in de opdrachtmodus te zijn.
|
||||
|
||||
2. Ga naar de regel hieronder, die met ---> begint.
|
||||
|
||||
3. Ga met de cursor naar het einde van de correcte regel (NA de eerste . ).
|
||||
|
||||
4. Tik d$ om te wissen tot het einde van de regel.
|
||||
|
||||
---> Iemand heeft het einde van deze regel dubbel getikt. dubbel getikt.
|
||||
|
||||
5. Ga naar les 2.3 voor uitleg.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.3: OVER OPERATOREN EN BEWEGINGEN
|
||||
|
||||
Veel commando's die de tekst veranderen, bestaan uit een operator en een
|
||||
beweging. De samenstelling van een wis-commando met de operator d is:
|
||||
d beweging
|
||||
|
||||
Daarbij is:
|
||||
d - de wis-operator
|
||||
beweging - het bereik waarop de operator werkt (zie het lijstje hieronder)
|
||||
|
||||
Een korte lijst van bewegingen vanaf de cursor:
|
||||
w - tot het begin van het volgende woord, ZONDER het eerste teken daarvan.
|
||||
e - tot het einde van het huidige woord, INCLUSIEF het laatste teken.
|
||||
$ - tot het einde van de regel, INCLUSIEF het laatste teken.
|
||||
|
||||
Het tikken van de wist tekst vanaf de cursor tot het eind van het woord.
|
||||
|
||||
OPMERKING: Het intikken van alleen maar de beweging, zonder een operator,
|
||||
in de opdrachtmodus beweegt de cursor (respectievelijk naar het
|
||||
volgende woord, naar het eind van het huidige woord en naar het
|
||||
eind van de regel).
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.4: GEBRUIK VAN EEN TELLER BIJ EEN BEWEGING
|
||||
|
||||
** Een getal voor een beweging herhaalt het zoveel keer. **
|
||||
|
||||
1. Ga naar de regel hieronder, die met ---> begint.
|
||||
|
||||
2. Tik 2w zodat de cursor twee woorden vooruit gaat.
|
||||
|
||||
3. Tik 3e zodat de cursor naar het einde van het derde woord gaat.
|
||||
|
||||
4. Tik 0 (nul) om naar het begin van de regel te gaan.
|
||||
|
||||
5. Herhaal de stappen 2 en 3 met andere getallen.
|
||||
|
||||
---> Dit is een regel met woorden waarin je heen en weer kan bewegen.
|
||||
|
||||
6. Ga verder met les 2.5.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.5: GEBRUIK EEN TELLER OM MEER TE WISSEN
|
||||
|
||||
** Een getal met een operator zorgt dat deze zoveel keer wordt herhaald. **
|
||||
|
||||
Bij de combinatie van wis-operator en beweging kan je voor de beweging een
|
||||
teller zetten om meer te wissen:
|
||||
d [teller] beweging
|
||||
|
||||
1. Ga naar het eerste woord in HOOFDLETTERS in de regel na --->.
|
||||
|
||||
2. Met d2w worden twee woorden (in dit voorbeeld in hoofdletters) gewist.
|
||||
|
||||
3. Herhaal de stappen 1 en 2 met verschillende tellers om de verschillende
|
||||
woorden in hoofdletters met één commando te wissen.
|
||||
|
||||
---> deze ABC DE regel FGHI JK LMN OP is QZ RS ontdaan van rommel.
|
||||
|
||||
OPMERKING: De teller kan ook aan het begin staan: d2w en 2dw werken allebei.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.6: BEWERKING VAN HELE REGELS
|
||||
|
||||
** Tik dd om een hele regel te wissen. **
|
||||
|
||||
Omdat het wissen van een hele regel vaak voorkomt, besloten de ontwerpers
|
||||
van Vi dat met het tikken van dd simpelweg een hele regel gewist wordt.
|
||||
|
||||
1. Ga met de cursor naar de tweede regel van de zinnetjes hieronder.
|
||||
|
||||
2. Tik dd om de regel te wissen.
|
||||
|
||||
3. Ga nu naar de vierde regel.
|
||||
|
||||
4. Tik 2dd om twee regels te wissen.
|
||||
|
||||
---> 1) Rozen zijn rood.
|
||||
---> 2) Modder is leuk.
|
||||
---> 3) Viooltjes zijn blauw.
|
||||
---> 4) Ik heb een auto.
|
||||
---> 5) De klok slaat de tijd.
|
||||
---> 6) Suiker is zoet.
|
||||
---> 7) En dat ben jij ook.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 2.7: HET COMMANDO HERSTEL
|
||||
|
||||
** u maakt het laatste commando ongedaan, U herstelt een hele regel. **
|
||||
|
||||
1. Ga met de cursor naar de regel hieronder met ---> en zet hem
|
||||
op de eerste fout.
|
||||
|
||||
2. Tik x om het eerste ongewenste teken te wissen.
|
||||
|
||||
3. Tik nu u en maak daarmee het vorige commando ongedaan.
|
||||
|
||||
4. Herstel nu alle fouten in de regel met het x commando.
|
||||
|
||||
5. Tik een hoofdletter U om de regel in z'n oorspronkelijke staat terug
|
||||
te brengen.
|
||||
|
||||
6. Tik nu een paar keer u en herstel daarmee de U en eerdere commando's.
|
||||
|
||||
7. Tik nu een paar keer CTRL-R (Ctrl-toets ingedrukt houden en R tikken) en
|
||||
voer daarmee de commando's opnieuw uit: 'redo' oftewel 'undo de undo's'.
|
||||
|
||||
---> Heerstel de fouten inn deeze regel en brenng ze weer terugg met undo.
|
||||
|
||||
8. Dit zijn heel nuttige commando's. Ga verder met samenvatting van les 2.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 2
|
||||
|
||||
1. Wis van de cursor tot het volgende woord met dw
|
||||
|
||||
2. Wis van de cursor tot het eind van de regel met d$
|
||||
|
||||
3. Wis de hele regel met dd
|
||||
|
||||
4. Herhaal een beweging door er een getal voor te zetten: 2w
|
||||
|
||||
5. De opbouw van een wijzigingscommando is:
|
||||
operator [getal] beweging
|
||||
daarbij is:
|
||||
operator - wat er moet gebeuren, bijvoorbeeld d om te wissen
|
||||
[getal] - een (niet-verplichte) teller om 'beweging' te herhalen
|
||||
beweging - een beweging door de te wijzigen tekst zoals w (woord)
|
||||
of $ (tot het einde van de regel) enz.
|
||||
|
||||
6. Ga naar het begin van de regel met nul: 0
|
||||
|
||||
7. Undo de voorgaande actie met u (kleine letter)
|
||||
Undo alle veranderingen in een regel met U (hoofdletter)
|
||||
Undo de undo's met CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 3.1: HET COMMANDO PLAK
|
||||
|
||||
** Tik p ('put') en plak daarmee zojuist gewiste tekst na te cursor. **
|
||||
|
||||
1. Ga met de cursor naar de eerste regel met ---> hierna.
|
||||
|
||||
2. Wis de regel met dd en bewaar hem zodoende in een Vim-register.
|
||||
|
||||
3. Ga naar de c-regel, waar de gewiste regel ONDER moet komen.
|
||||
|
||||
4. Tik p om de regel terug te zetten onder de regel met de cursor.
|
||||
|
||||
5. Herhaal de stappen 2 tot 4 om de regels in de goede volgorde te zetten.
|
||||
|
||||
---> d) Krijg je het ook onder de knie?
|
||||
---> b) Viooltjes zijn blauw,
|
||||
---> c) Begrip is te leren,
|
||||
---> a) Rozen zijn rood,
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 3.2: HET COMMANDO VERVANG
|
||||
|
||||
** Tik rx ('replace') om het teken onder de cursor te vervangen door x. **
|
||||
|
||||
1. Ga naar de eerste regel hieronder met --->.
|
||||
|
||||
2. Zet de cursor op de eerste fout.
|
||||
|
||||
3. Tik r en dan het teken dat er hoort te staan.
|
||||
|
||||
4. Herhaal de stappen 2 en 3 tot de eerste regel gelijk is aan de tweede.
|
||||
|
||||
---> Bij het tokken van dezf hegel heeft iemamd verklerde letters getikt.
|
||||
---> Bij het tikken van deze regel heeft iemand verkeerde letters getikt.
|
||||
|
||||
5. Ga nu naar les 3.3.
|
||||
|
||||
LET OP: Door het te doen, leer je beter dan door het uit je hoofd te leren.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 3.3: HET COMMANDO VERANDER
|
||||
|
||||
** Tik ce om te veranderen tot het einde van een woord. **
|
||||
|
||||
1. Ga met de cursor naar de eerste regel hieronder met --->.
|
||||
|
||||
2. Zet de cursor op de u van ruch.
|
||||
|
||||
3. Tik ce en de juiste letters (in dit geval "egel").
|
||||
|
||||
4. Druk <ESC> en ga naar het volgende teken dat moet worden veranderd.
|
||||
|
||||
5. Herhaal de stappen 3 en 4 tot de eerste regel gelijk is aan de tweede.
|
||||
|
||||
---> In deze ruch staan een paar weedrim die veranderd moud worden.
|
||||
---> In deze regel staan een paar woorden die veranderd moeten worden.
|
||||
|
||||
LET OP: Met ce wordt (het laatste deel van) een woord gewist en kom je
|
||||
in de invoegmodus.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 3.4: MEER VERANDERINGEN MET c
|
||||
|
||||
1. Het commando verander ('change') werkt op dezelfde manier als wis. De
|
||||
opbouw is:
|
||||
c [teller] beweging
|
||||
|
||||
2. De bewegingen zijn hetzelfde, zoals w (woord) en $ (einde regel).
|
||||
|
||||
3. Ga naar de eerste regel hieronder met --->.
|
||||
|
||||
4. Zet de cursor op de eerste fout.
|
||||
|
||||
5. Tik c$ en tik de rest van de regel zodat hij gelijk wordt aan de
|
||||
tweede en sluit af met <ESC>.
|
||||
|
||||
---> Het einde van deze regel moet precies zo worden als de tweede regel.
|
||||
---> Het einde van deze regel moet gecorrigeerd worden met het commando c$.
|
||||
|
||||
OPMERKING: Je kan de toets <BACKSPACE> gebruiken om tikfouten te herstellen.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 3
|
||||
|
||||
1. Tik p om tekst terug te plakken, die zojuist is gewist. Dit zet de
|
||||
gewiste tekst ACHTER de cursor (als een hele regel is gewist komt deze
|
||||
op de regel ONDER de cursor.
|
||||
|
||||
2. Het teken waarop de cursor staat wordt vervangen met r gevolgd door
|
||||
het teken dat je daar wilt hebben.
|
||||
|
||||
3. Het commando 'verander' stelt je in staat om tekst te veranderen vanaf
|
||||
de cursor tot waar de 'beweging' je brengt. Dat wil zeggen: tik ce om
|
||||
te veranderen vanaf de cursor tot het einde van het woord, c$ om te
|
||||
veranderen tot het einde van de regel.
|
||||
|
||||
4. De opbouw van het commando verander is:
|
||||
c [teller] beweging
|
||||
|
||||
Ga nu naar de volgende les.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 4.1: PLAATS VAN DE CURSOR EN STATUS VAN HET BESTAND
|
||||
|
||||
** CTRL-G laat zien waar (regelnummer) je je bevindt en wat de status van
|
||||
het bestand is. Met [nummer] G ga je naar een bepaalde regel. **
|
||||
|
||||
LET OP: Lees de hele les voordat je een stap uitvoert!!
|
||||
|
||||
1. Hou de Ctrl-toets ingedrukt en tik g . Dit noemen we CTRL-G.
|
||||
Onderaan de pagina verschijnt een boodschap met de bestandsnaam en de
|
||||
positie in het bestand. Onthou het regelnummer voor stap 3.
|
||||
|
||||
OPMERKING: Als de optie 'ruler' aan staat, wordt de positie van de cursor
|
||||
(regelnummer, kolom) steeds in de rechter-onderhoek van het
|
||||
scherm vermeld. In dit geval vermeldt CTRL-G geen regelnummer.
|
||||
CTRL-G geeft ook de status aan, namelijk of de tekst veranderd
|
||||
is ('modified') sinds het de laatste keer is opgeslagen.
|
||||
|
||||
2. Tik hoofdletter G om naar het einde van het bestand te gaan.
|
||||
Tik gg om naar het begin van het bestand te gaan.
|
||||
|
||||
3. Tik het regelnummer waar je bij stap 1 was en daarna G . Dit brengt je
|
||||
terug naar de regel waar je was toen je de eerste keer CTRL-G tikte.
|
||||
|
||||
4. Voer de stappen 1 tot 3 uit als je dit goed hebt gelezen.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 4.2: HET COMMANDO ZOEKEN
|
||||
|
||||
** Met /ZOEK wordt naar de zoekterm (één of meer woorden) gezocht. **
|
||||
|
||||
1. Tik in de opdrachtmodus het teken / . Je ziet dat het met de cursor
|
||||
aan de onderkant van het scherm verschijnt, zoals bij het :-commando.
|
||||
|
||||
2. Tik nu 'ffouut' <ENTER>. Dit is het woord waarnaar gezocht wordt.
|
||||
|
||||
3. Tik n om verder te zoeken met dezelfde zoekterm.
|
||||
Zoek met N met dezelfde zoekterm in de tegenovergestelde richting.
|
||||
|
||||
4. Zoek in achterwaartse richting met ?zoekterm in plaats van / .
|
||||
|
||||
5. Keer terug naar de vorige hit met CTRL-O (hou Ctrl-toets ingedrukt en
|
||||
tik letter o). Herhaal om verder terug te gaan. CTRL-I gaat vooruit.
|
||||
|
||||
---> "ffouut" is niet de juiste spelling van fout, ffouut is een fout.
|
||||
|
||||
OPMERKING: Als zoeken het einde van het bestand bereikt, wordt vanaf het
|
||||
begin doorgezocht, tenzij de optie 'wrapscan' is uitgeschakeld.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 4.3: GA NAAR CORRESPONDERENDE HAAKJES
|
||||
|
||||
** Tik % om naar corresponderende ), ] of } te gaan. **
|
||||
|
||||
1. Zet de cursor op een (, [ of { in de regel hieronder met --->.
|
||||
|
||||
2. Tik dan het teken % .
|
||||
|
||||
3. De cursor gaan naar het overeenkomstige haakje.
|
||||
|
||||
4. Met opnieuw % gaat de cursor terug naar het eerste haakje.
|
||||
|
||||
5. Plaats de cursor op een ander haakje en bekijk wat % doet.
|
||||
|
||||
---> Dit ( is een testregel met ('s, ['s ] en {'s } erin. ))
|
||||
|
||||
OPMERKING: Dit is nuttig bij het debuggen van een programma waarin haakjes
|
||||
niet corresponderen. Met de optie 'showmatch' wordt ook
|
||||
aangegeven of haakjes corresponderen, maar de cursor wordt niet
|
||||
(blijvend) verplaatst.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 4.4: HET VERVANG COMMANDO
|
||||
|
||||
** Tik :s/oud/nieuw/g om 'oud' door 'nieuw' te vervangen. **
|
||||
|
||||
1. Ga met de cursor naar de regel hieronder met --->.
|
||||
|
||||
2. Tik :s/dee/de <ENTER>. Zoals je ziet, vervangt ('substitute') dit
|
||||
commando alleen de eerste "dee" in de regel.
|
||||
|
||||
3. Tik nu :s/dee/de/g . Met de g-vlag ('global') wordt elke "dee" in de
|
||||
regel vervangen.
|
||||
|
||||
---> dee beste tijd om dee bloemen te zien is in dee lente.
|
||||
|
||||
4. Om in (een deel van) een tekst elk 'oud' te vervangen door 'nieuw':
|
||||
tik :#,#s/oud/nieuw/g waar #,# de regelnummers zijn die het gebied
|
||||
begrenzen waarin wordt vervangen.
|
||||
tik :%s/oud/nieuw/g om alles te vervangen in het hele bestand.
|
||||
tik :%s/oud/nieuw/gc om elke 'oud' in het hele bestand te vinden
|
||||
en te vragen of er vervangen moet worden.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 4
|
||||
|
||||
1. CTRL-G laat positie in het bestand zien en de status van het bestand.
|
||||
G verplaatst je naar het einde van het bestand.
|
||||
nummer G verplaatst je naar regelnummer.
|
||||
gg verplaatst je naar de eerste regel.
|
||||
|
||||
2. Met / en een zoekterm wordt VOORWAARTS gezocht naar de term.
|
||||
Met ? en een zoekterm wordt ACHTERWAARTS gezocht naar de term.
|
||||
Tik n na een zoekopdracht om de volgende hit te vinden,
|
||||
of tik N om in de andere richting te zoeken.
|
||||
CTRL-O brengt je naar eerdere hit, CTRL-I naar nieuwere.
|
||||
|
||||
3. Tik % terwijl de cursor op een haakje ([{}]) staat, om naar het
|
||||
corresponderende haakje te gaan.
|
||||
|
||||
4. :s/oud/nieuw vervangt het eerste 'oud' in een regel door 'nieuw'.
|
||||
:s/oud/nieuw/g vervangt elk 'oud' in een regel door 'nieuw'.
|
||||
:#,#s/oud/nieuw/g vervangt elk 'oud' door 'nieuw' tussen de regelnummers.
|
||||
:%s/oud/nieuw/g vervangt elk 'oud' door 'nieuw' in het hele bestand.
|
||||
Voeg c toe (:%s/oud/nieuw/gc) om elke keer om bevestiging
|
||||
('confirmation') te vragen.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 5.1: HOE EEN EXTERN COMMANDO WORDT UITGEVOERD
|
||||
|
||||
** Tik :! gevolgd door een extern commando om dat uit te voeren. **
|
||||
|
||||
1. Tik het commando : waarmee de cursor op de onderste regel van het
|
||||
scherm komt te staan. Nu kan je een opdracht geven via de commando-regel.
|
||||
|
||||
2. Tik een ! (uitroepteken). Dit stelt je in staat om elk shell-commando
|
||||
uit te voeren.
|
||||
|
||||
3. Tik bijvoorbeeld ls na het uitroepteken en daarna <ENTER>. Hiermee
|
||||
krijg je de inhoud van je map te zien, net alsof je de opdracht gaf
|
||||
vanaf de shell-prompt. Probeer :!dir als het niet werkt.
|
||||
|
||||
OPMERKING: Elk extern commando kan op deze manier uitgevoerd worden, ook
|
||||
met argumenten.
|
||||
|
||||
OPMERKING: Alle commando's na : moeten worden afgesloten met <ENTER>.
|
||||
Vanaf nu zullen we dat niet meer altijd vermelden.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 5.2: MEER OVER HET OPSLAAN VAN BESTANDEN
|
||||
|
||||
** Tik :w BESTANDSNAAM om de tekst mèt veranderingen op te slaan. **
|
||||
|
||||
1. Tik :!dir of :!ls om de inhoud van je map te tonen. Je weet
|
||||
inmiddels dat je daarna een <ENTER> moet tikken.
|
||||
|
||||
2. Kies een bestandsnaam die nog niet bestaat, bijvoorbeeld TEST.
|
||||
|
||||
3. Tik nu: :w TEST (als je de naam TEST hebt gekozen).
|
||||
|
||||
4. Hierdoor wordt het hele bestand (de VIM lessen) opgeslagen onder de
|
||||
naam TEST. Tik weer :!dir of :!ls om dit te controleren.
|
||||
|
||||
OPMERKING: Als je Vim zou verlaten en opnieuw zou starten met vim TEST is
|
||||
het bestand een exacte kopie van de lessen, zoals je ze opsloeg.
|
||||
|
||||
5. Wis het bestand nu met de opdracht (MS-DOS) :!del TEST
|
||||
of (Unix) :!rm TEST
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 5.3: EEN DEEL VAN DE TEKST OPSLAAN
|
||||
|
||||
** Sla een deel van het bestand op met v beweging :w BESTANDSNAAM **
|
||||
|
||||
1. Ga naar deze regel.
|
||||
|
||||
2. Tik v en ga met de cursor naar stap 5 hieronder. Je ziet dat de
|
||||
tekst oplicht.
|
||||
|
||||
3. Tik : . Onderaan het scherm zal :'<,'> verschijnen.
|
||||
|
||||
4. Tik w TEST , waar TEST een bestandsnaam is, die nog niet bestaat.
|
||||
Controleer dat je :'<,'>w TEST ziet staan voordat je <ENTER> tikt.
|
||||
|
||||
5. Vim slaat nu de geselecteerde regels op in het bestand TEST. Met
|
||||
:!dir of !ls kan je dat zien. Wis het nog niet! We zullen het in
|
||||
de volgende les gebruiken.
|
||||
|
||||
OPMERKING: Het tikken van v zet zichtbare modus ('visual selection') aan.
|
||||
Je kan de cursor rondbewegen om de selectie groter of kleiner
|
||||
te maken. Vervolgens kan je een commando gebruiken om iets met
|
||||
de tekst te doen. Met d bijvoorbeeld wis je de tekst.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 5.4: OPHALEN EN SAMENVOEGEN VAN BESTANDEN
|
||||
|
||||
** Tik :r BESTANDSNAAM om de inhoud van een bestand in te voegen. **
|
||||
|
||||
1. Zet de cursor precies boven deze regel.
|
||||
|
||||
OPMERKING: Na het uitvoeren van stap 2 zie je tekst van les 5.3. Scrol
|
||||
daarna naar beneden om deze les weer te zien.
|
||||
|
||||
2. Haal nu het bestand TEST op met het commando :r TEST .
|
||||
Het bestand dat je ophaalt komt onder de regel waarin de cursor staat.
|
||||
|
||||
3. Controleer dat er een bestand is opgehaald. Ga met de cursor omhoog.
|
||||
Dan zie je de tekst van les 5.3 dubbel, het origineel en de versie uit
|
||||
het bestand.
|
||||
|
||||
OPMERKING: Je kan ook de uitvoer van een extern commando inlezen. Om een
|
||||
voorbeeld te geven: :r !ls leest de uitvoer van het commando
|
||||
ls en zet dat onder de regel waarin de cursor staat.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 5
|
||||
|
||||
1. :!COMMANDO voert een extern commando uit.
|
||||
Enkele bruikbare voorbeelden zijn:
|
||||
(MS-DOS) (Unix)
|
||||
:!dir :!ls - laat de inhoud van een map zien
|
||||
:!del BESTAND :!rm BESTAND - wist bestand BESTAND
|
||||
|
||||
2. :w BESTANDSNAAM schrijft het huidige Vim-bestand naar disk met de
|
||||
naam BESTANDSNAAM.
|
||||
|
||||
3. v beweging :w BESTANDSNAAM laat je in zichtbare modus een fragment
|
||||
selecteren, dat wordt opgeslagen in het bestand BESTANDSNAAM.
|
||||
|
||||
4. :r BESTANDSNAAM haalt het bestand BESTANDSNAAM op en voegt het onder
|
||||
de cursor-positie in de tekst in.
|
||||
|
||||
5. :r !dir leest de uitvoer van het externe commando dir en zet het onder
|
||||
de cursor-positie.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.1: HET COMMANDO OPEN
|
||||
|
||||
** Tik o om een regel onder de cursor te openen in invoegmodus. **
|
||||
|
||||
1. Ga naar de eerste regel beneden met --->.
|
||||
|
||||
2. Tik de kleine letter o en open daarmee een regel ONDER de cursor en
|
||||
ga naar de invoegmodus.
|
||||
|
||||
3. Tik wat tekst in en sluit af met <ESC> om de invoegmodus te verlaten.
|
||||
|
||||
---> Als je o tikt, komt de cursor in een nieuwe regel in invoegmodus.
|
||||
|
||||
4. Om een regel BOVEN de cursor te openen, moet je gewoon een hoofdletter
|
||||
O tikken in plaats van een kleine letter. Probeer dat vanaf de volgende
|
||||
regel.
|
||||
|
||||
---> Open een regel hierboven. Tik een O terwijl de cursor hier staat.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.2: HET COMMANDO TOEVOEGEN
|
||||
|
||||
** Tik a om tekst toe te voegen ACHTER de cursor. **
|
||||
|
||||
1. Ga naar het begin van de regel beneden met --->.
|
||||
|
||||
2. Tik e tot de cursor op het einde van "ste" staat.
|
||||
|
||||
3. Tik een (kleine letter) a ('append') om toe te voegen ACHTER de cursor.
|
||||
|
||||
4. Vul het woord aan zoals in de volgende regel. Druk <ESC> om de
|
||||
invoegmodus te verlaten.
|
||||
|
||||
5. Ga met e naar het einde van het volgende onvolledige woord en herhaal
|
||||
de stappen 3 en 4.
|
||||
|
||||
---> Deze regel ste je in staat om te oef in het toevo van tekst.
|
||||
Deze regel stelt je in staat om te oefenen in het toevoegen van tekst.
|
||||
|
||||
OPMERKING: a, i en A openen allemaal dezelfde invoegmodus, het enige
|
||||
verschil is waar tekens worden ingevoegd.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.3: VERVANGEN OP EEN ANDERE MANIER
|
||||
|
||||
** Tik een hoofdletter R om meer dan één teken te vervangen. **
|
||||
|
||||
1. Ga naar de eerste regel beneden met --->. Ga met de cursor naar het
|
||||
begin van de eerste "xxx" .
|
||||
|
||||
2. Tik nu R en daarna het getal eronder in de tweede regel, zodat xxx
|
||||
wordt vervangen.
|
||||
|
||||
3. Druk <ESC> om de vervangmodus te verlaten. Je ziet dat de rest van de
|
||||
regel ongewijzigd blijft.
|
||||
|
||||
4. Herhaal de stappen om de overgebleven xxx te vervangen.
|
||||
|
||||
---> Optellen van 123 en xxx geeft je xxx.
|
||||
---> Optellen van 123 en 456 geeft je 579.
|
||||
|
||||
OPMERKING: Vervangmodus lijkt op invoegmodus, maar elk teken dat je tikt,
|
||||
vervangt een bestaand teken.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.4: TEKST KOPIËREN EN PLAKKEN
|
||||
|
||||
** Gebruik y om tekst te kopiëren en p om te plakken. **
|
||||
|
||||
1. Ga naar de regel beneden met ---> en zet de cursor achter "a)".
|
||||
|
||||
2. Zet zichtbare modus aan met v en zet de cursor juist voor "eerste".
|
||||
|
||||
3. Tik y ('yank') om de opgelichte tekst ("dit is het") te kopiëren.
|
||||
|
||||
4. Ga met j$ met de cursor naar het einde van de volgende regel.
|
||||
|
||||
5. Plak de gekopieerde tekst met p en tik a tweede <ESC>.
|
||||
|
||||
6. Selecteer in zichtbare modus "onderdeel", kopieer het met y en
|
||||
ga met j$ naar het einde van de tweede regel. Plak de tekst daar
|
||||
met p .
|
||||
|
||||
---> a) dit is het eerste onderdeel
|
||||
b)
|
||||
|
||||
OPMERKING: Je kan y ook als operator gebruiken; yw kopieert een woord,
|
||||
yy een hele regel.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 6.5: OPTIES GEBRUIKEN
|
||||
|
||||
** Gebruik een optie voor al dan niet hoofdlettergevoelig zoeken. **
|
||||
|
||||
1. Zoek naar 'hoofdlettergevoelig' met /hoofdlettergevoelig <ENTER>
|
||||
Herhaal het zoeken enkele keren door n te tikken.
|
||||
|
||||
2. Schakel de optie 'ic' ('ignore case', niet-hoofdlettergevoelig) in
|
||||
met :set ic
|
||||
|
||||
3. Zoek met n opnieuw naar 'hoofdlettergevoelig'. Je ziet dat
|
||||
Hoofdlettergevoelig en HOOFDLETTERGEVOELIG nu ook gevonden worden.
|
||||
|
||||
4. Schakel de opties 'hlsearch' (treffers oplichten) en 'incsearch' (toon
|
||||
gedeeltelijke treffers bij intikken) in met :set hls is
|
||||
|
||||
5. Tik weer /hoofdlettergevoelig <ENTER> en kijk wat er gebeurt.
|
||||
|
||||
6. Schakel 'hoofdlettergevoelig' weer in met :set noic
|
||||
|
||||
OPMERKING: Schakel het oplichten van treffers uit met :nohlsearch
|
||||
|
||||
OPMERKING: Om bij een enkel zoek-commando de hoofdlettergevoeligheid om
|
||||
te draaien kan \c worden gebruikt na de zoekterm:
|
||||
/hoofdlettergevoelig\c <ENTER>.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 6
|
||||
|
||||
1. Tik o om een regel te openen ONDER de cursor en invoegmodus te starten.
|
||||
Tik O om een regel te openen BOVEN de cursor.
|
||||
|
||||
2. Tik a om tekst toe te voegen NA de cursor.
|
||||
Tik A om tekst toe te voegen aan het einde van de regel.
|
||||
|
||||
3. Het commando e beweegt de cursor naar het einde van een woord.
|
||||
|
||||
4. De operator y yankt (kopieert) tekst, p zet het terug (plakt).
|
||||
|
||||
5. Met hoofdletter R wordt de vervangmodus geopend, met <ESC> afgesloten.
|
||||
|
||||
6. Met :set xxx wordt optie 'xxx' ingeschakeld. Opties zijn bijvoorbeeld:
|
||||
ic ignorecase geen verschil hoofdletters/kleine letters bij zoeken
|
||||
is incsearch toon gedeeltelijke treffers tijdens intikken zoekterm
|
||||
hls hlsearch laat alle treffers oplichten
|
||||
Je kan zowel de lange als de korte naam van een optie gebruiken.
|
||||
|
||||
7. Zet 'no' voor de naam om een optie uit te schakelen: :set noic
|
||||
schakelt 'ic' uit.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 7.1: HULP INROEPEN
|
||||
|
||||
** Het gebruik van ingebouwde hulp. **
|
||||
|
||||
Vim heeft een uitgebreid ingebouwd hulpsysteem. Probeer, om te beginnen,
|
||||
één van deze drie:
|
||||
- druk de <HELP> toets (als je die hebt)
|
||||
- druk de <F1> toets (als je die hebt)
|
||||
- tik :help <ENTER>
|
||||
|
||||
Lees de tekst in het help-venster om te leren hoe 'help' werkt.
|
||||
Tik CTRL-W CTRL-W om van het ene venster naar het andere te gaan.
|
||||
Met :q <ENTER> wordt het help-venster gesloten.
|
||||
|
||||
Je kan hulp vinden over nagenoeg elk onderwerp door een argument aan het
|
||||
commando :help toe te voegen. Probeer deze (en vergeet <ENTER> niet):
|
||||
:help w
|
||||
:help c_CTRL-D
|
||||
:help insert-index
|
||||
:help user-manual
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 7.2: SCHRIJF EEN CONFIGURATIEBESTAND
|
||||
|
||||
** Mogelijkheden van Vim uitbreiden. **
|
||||
|
||||
Vim kent veel meer mogelijkheden dan Vi, maar de meeste zijn standaard
|
||||
uitgeschakeld. Om meer functies te gebruiken moet je een 'vimrc'-bestand
|
||||
schrijven.
|
||||
|
||||
1. Bewerk het bestand 'vimrc'. Hoe dat moet hangt af van je systeem:
|
||||
:e ~/.vimrc voor Unix
|
||||
:e $VIM/_vimrc voor MS-Windows
|
||||
|
||||
2. Lees de inhoud van het voorbeeld-bestand:
|
||||
:r $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. Sla het bestand op met :w
|
||||
|
||||
De volgende keer dat je Vim start wordt 'syntaxiskleuring' gebruiken.
|
||||
Je kan al je voorkeursinstellingen toevoegen aan dit 'vimrc'-bestand.
|
||||
Tik :help vimrc-intro voor meer informatie.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Les 7.3: AANVULLEN
|
||||
|
||||
** Aanvullen van de 'command line' met CTRL-D en <TAB>. **
|
||||
|
||||
1. Zorg dat Vim niet in 'compatible mode' is met :set nocp
|
||||
|
||||
2. Kijk welke bestanden zich in de map bevinden met :!ls of :!dir
|
||||
|
||||
3. Tik het begin van een commando: :e
|
||||
|
||||
4. Met CTRL-D toont Vim een lijst commando's, die met "e" beginnen.
|
||||
|
||||
5. Druk enkele keren <TAB>. Vim laat aanvullingen zien, zoals ":edit",
|
||||
dat we hier gebruiken.
|
||||
|
||||
6. Voeg een spatie toe en de eerste letter(s) van een bestaande
|
||||
bestandsnaam: :edit BESTAND
|
||||
|
||||
7. Druk <TAB>. Vim vult de naam aan (als hij uniek is).
|
||||
|
||||
OPMERKING: Aanvullen werkt bij tal van commando's. Probeer gewoon CTRL-D
|
||||
en <TAB>. Het is bijzonder nuttig bij :help .
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SAMENVATTING Les 7
|
||||
|
||||
1. Tik :help of druk <F1> of <Help> om een help-venster te openen.
|
||||
|
||||
2. Tik :help CMD voor hulp over CMD .
|
||||
|
||||
3. Tik CTRL-W CTRL-W om naar een ander venster te gaan.
|
||||
|
||||
4. Tik :q om het help-venster te sluiten.
|
||||
|
||||
5. Maak een bestand met de naam 'vimrc' voor je voorkeursinstellingen.
|
||||
|
||||
6. Druk CTRL-D tijdens het intikken van een :-commando om mogelijke
|
||||
aanvullingen te zien. Druk <TAB> om aanvullen te gebruiken.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Hiermee komen de Vim-lessen tot een einde. Ze waren bedoeld om een kort
|
||||
overzicht te geven van de Vim-editor, juist voldoende om de editor
|
||||
redelijk makkelijk te gebruiken. Deze lessen zijn verre van volledig. Vim
|
||||
kent veel meer commando's. Lees hierna de handleiding voor gebruikers:
|
||||
":help user-manual".
|
||||
|
||||
Voor verdere studie wordt aanbevolen:
|
||||
Vim - Vi Improved - door Steve Oualline
|
||||
Uitgever: New Riders
|
||||
Dit is het eerste boek dat geheel aan Vim is gewijd. Speciaal geschikt
|
||||
voor beginners. Met veel voorbeelden en afbeeldingen.
|
||||
Zie http://iccf-holland.org/click5.html
|
||||
|
||||
Het volgende boek is ouder en gaat meer over Vi dan Vim, maar het wordt
|
||||
toch aanbevolen:
|
||||
Learning the Vi Editor - door Linda Lamb
|
||||
Uitgever: O'Reilly & Associates Inc.
|
||||
Het is een goed boek om nagenoeg alles te weten te komen dat je met Vi
|
||||
zou willen doen. De zesde en vooral de nieuwe zevende druk (onder de
|
||||
titel Learning the Vi and Vim Editors door Arnold Robbins, Elbert Hannah
|
||||
& Linda Lamb) bevat ook informatie over Vim.
|
||||
|
||||
Deze lessen zijn geschreven door Michael C. Pierce en Robert K. Ware,
|
||||
Colorado School of Mines met gebruikmaking van ideeën van Charles Smith
|
||||
van de Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Aangepast voor Vim door Bram Moolenaar.
|
||||
|
||||
Nederlandse vertaling door Rob Bishoff, april 2012
|
||||
e-mail: rob.bishoff@hccnet.nl)
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
852
runtime/tutor/tutor.zh.utf-8
Normal file
852
runtime/tutor/tutor.zh.utf-8
Normal file
@@ -0,0 +1,852 @@
|
||||
===============================================================================
|
||||
= 歡 迎 閱 讀 《 V I M 教 程 》 ── 版本 1.5 =
|
||||
===============================================================================
|
||||
vim 是一個具有很多命令的功能非常強大的編輯器。限于篇幅,在本教程當中
|
||||
不就詳細介紹了。本教程的設計目標是講述一些必要的基本命令,而掌握好這
|
||||
些命令,您就能夠很容易將vim當作一個通用的萬能編輯器來使用了。
|
||||
|
||||
完成本教程的內容大約需要25-30分鐘,取決于您訓練的時間。
|
||||
|
||||
每一節的命令操作將會更改本文。推薦您復制本文的一個副本,然後在副本上
|
||||
進行訓練(如果您是通過"vimtutor"來啟動教程的,那麼本文就已經是副本了)。
|
||||
|
||||
切記一點︰本教程的設計思路是在使用中進行學習的。也就是說,您需要通過
|
||||
執行命令來學習它們本身的正確用法。如果您只是閱讀而不操作,那麼您可能
|
||||
會很快遺忘這些命令的!
|
||||
|
||||
好了,現在請確定您的Shift-Lock(大小寫鎖定鍵)還沒有按下,然後按鍵盤上
|
||||
的字母鍵 j 足夠多的次數來移動光標,直到第一節的內容能夠完全充滿屏幕。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講第一節︰移動光標
|
||||
|
||||
|
||||
※※ 要移動光標,請依照說明分別按下 h、j、k、l 鍵。 ※※
|
||||
|
||||
^
|
||||
k 提示︰ h 的鍵位于左邊,每次按下就會向左移動。
|
||||
< h l > l 的鍵位于右邊,每次按下就會向右移動。
|
||||
j j 鍵看起來很象一支尖端方向朝下的箭頭。
|
||||
v
|
||||
|
||||
1. 請隨意在屏幕內移動光標,直至您覺得舒服為止。
|
||||
|
||||
2. 按下下行鍵(j),直到出現光標重復下行。
|
||||
|
||||
---> 現在您應該已經學會如何移動到下一講吧。
|
||||
|
||||
3. 現在請使用下行鍵,將光標移動到第二講。
|
||||
|
||||
提示︰如果您不敢確定您所按下的字母,請按下<ESC>鍵回到正常(Normal)模式。
|
||||
然後再次從鍵盤輸入您想要的命令。
|
||||
|
||||
提示︰光標鍵應當也能正常工作的。但是使用hjkl鍵,在習慣之後您就能夠快速
|
||||
地在屏幕內四處移動光標了。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講第二節︰VIM的進入和退出
|
||||
|
||||
|
||||
!! 特別提示︰敬請閱讀完整本一節的內容,然後才能執行以下所講解的命令。
|
||||
|
||||
1. 請按<ESC>鍵(這是為了確保您處在正常模式)。
|
||||
|
||||
2. 然後輸入︰ :q! <回車>
|
||||
|
||||
---> 這種方式的退出編輯器絕不會保存您進入編輯器以來所做的改動。
|
||||
如果您想保存更改再退出,請輸入︰
|
||||
:wq <回車>
|
||||
|
||||
3. 如果您看到了命令行提示符,請輸入能夠帶您回到本教程的命令,那就是︰
|
||||
|
||||
vimtutor <回車>
|
||||
|
||||
通常情況下您也可以用這種方式︰
|
||||
|
||||
vim tutor <回車>
|
||||
|
||||
---> 這裡的 'vim' 表示進入vim編輯器,而 'tutor'則是您準備要編輯的文件。
|
||||
|
||||
4. 如果您自信已經牢牢記住了這些步驟的話,請從步驟1執行到步驟3退出,然
|
||||
後再次進入編輯器。接著將光標移動到第一講第三節來繼續我們的教程講解。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講第三節︰文本編輯之刪除
|
||||
|
||||
|
||||
** 在正常(Normal)模式下,可以按下 x 鍵來刪除光標所在位置的字符。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
2. 為了修正輸入錯誤,請將光標移至準備刪除的字符的位置處。
|
||||
|
||||
3. 然後按下 x 鍵將錯誤字符刪除掉。
|
||||
|
||||
4. 重復步驟2到步驟4,直到句子修正為止。
|
||||
|
||||
---> The ccow jumpedd ovverr thhe mooon.
|
||||
|
||||
5. 好了,該行已經修正了,下一節內容是第一講第四節。
|
||||
|
||||
特別提示︰在您瀏覽本教程時,不要強行記憶。記住一點︰在使用中學習。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講第四節︰文本編輯之插入
|
||||
|
||||
|
||||
** 在正常模式下,可以按下 i 鍵來插入文本。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
2. 為了使得第一行內容雷同于第二行,請將光標移至文本第一個字符準備插入
|
||||
的位置。
|
||||
|
||||
3. 然後按下 i 鍵,接著輸入必要的文本字符。
|
||||
|
||||
4. 所有文本都修正完畢,請按下 <ESC> 鍵返回正常模式。
|
||||
重復步驟2至步驟4以便修正句子。
|
||||
|
||||
---> There is text misng this .
|
||||
---> There is some text missing from this line.
|
||||
|
||||
5. 如果您對文本插入操作已經很滿意,請接著閱讀下面的小結。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講小結
|
||||
|
||||
|
||||
1. 光標在屏幕文本中的移動既可以用箭頭鍵,也可以使用 hjkl 字母鍵。
|
||||
h (左移) j (下行) k (上行) l (右移)
|
||||
|
||||
2. 欲進入vim編輯器(從命令行提示符),請輸入︰vim 文件名 <回車>
|
||||
|
||||
3. 欲退出vim編輯器,請輸入以下命令放棄所有修改︰
|
||||
|
||||
<ESC> :q! <回車>
|
||||
|
||||
或者輸入以下命令保存所有修改︰
|
||||
|
||||
<ESC> :wq <回車>
|
||||
|
||||
4. 在正常模式下刪除光標所在位置的字符,請按︰ x
|
||||
|
||||
5. 在正常模式下要在光標所在位置開始插入文本,請按︰
|
||||
|
||||
i 輸入必要文本 <ESC>
|
||||
|
||||
特別提示︰按下 <ESC> 鍵會帶您回到正常模式或者取消一個不期望或者部分完成
|
||||
的命令。
|
||||
|
||||
好了,第一講到此結束。下面接下來繼續第二講的內容。
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第一節︰刪除類命令
|
||||
|
||||
|
||||
** 輸入 dw 可以從光標處刪除至一個單字/單詞的末尾。**
|
||||
|
||||
1. 請按下 <ESC> 鍵確保您處于正常模式。
|
||||
|
||||
2. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
3. 請將光標移至準備要刪除的單詞的開始。
|
||||
|
||||
4. 接著輸入 dw 刪除掉該單詞。
|
||||
|
||||
特別提示︰您所輸入的 dw 會在您輸入的同時出現在屏幕的最後一行。如果您輸
|
||||
入有誤,請按下 <ESC> 鍵取消,然後重新再來。
|
||||
|
||||
---> There are a some words fun that don't belong paper in this sentence.
|
||||
|
||||
5. 重復步驟3至步驟4,直至句子修正完畢。接著繼續第二講第二節內容。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第二節︰其他刪除類命令
|
||||
|
||||
|
||||
** 輸入 d$ 從當前光標刪除到行末。**
|
||||
|
||||
1. 請按下 <ESC> 鍵確保您處于正常模式。
|
||||
|
||||
2. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
3. 請將光標移動到該行的尾部(也就是在第一個點號‘.’後面)。
|
||||
|
||||
4. 然後輸入 d$ 從光標處刪至當前行尾部。
|
||||
|
||||
---> Somebody typed the end of this line twice. end of this line twice.
|
||||
|
||||
|
||||
5. 請繼續學習第二講第三節就知道是怎麼回事了。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第三節︰關于命令和對象
|
||||
|
||||
|
||||
刪除命令 d 的格式如下︰
|
||||
|
||||
[number] d object 或者 d [number] object
|
||||
|
||||
其意如下︰
|
||||
number - 代表執行命令的次數(可選項,缺省設置為 1 )。
|
||||
d - 代表刪除。
|
||||
object - 代表命令所要操作的對象(下面有相關介紹)。
|
||||
|
||||
一個簡短的對象列表︰
|
||||
w - 從當前光標當前位置直到單字/單詞末尾,包括空格。
|
||||
e - 從當前光標當前位置直到單字/單詞末尾,但是 *不* 包括空格。
|
||||
$ - 從當前光標當前位置直到當前行末。
|
||||
|
||||
特別提示︰
|
||||
對于勇于探索者,請在正常模式下面僅按代表相應對象的鍵而不使用命令,則
|
||||
將看到光標的移動正如上面的對象列表所代表的一樣。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第四節︰對象命令的特殊情況
|
||||
|
||||
|
||||
** 輸入 dd 可以刪除整一個當前行。 **
|
||||
|
||||
鑒于整行刪除的高頻度,VIM 的設計者決定要簡化整行刪除,僅需要在同一行上
|
||||
擊打兩次 d 就可以刪除掉光標所在的整行了。
|
||||
|
||||
1. 請將光標移動到本節中下面的短句段落中的第二行。
|
||||
2. 輸入 dd 刪除該行。
|
||||
3. 然後移動到第四行。
|
||||
4. 接著輸入 2dd (還記得前面講過的 number-command-object 嗎?) 刪除兩行。
|
||||
|
||||
1) Roses are red,
|
||||
2) Mud is fun,
|
||||
3) Violets are blue,
|
||||
4) I have a car,
|
||||
5) Clocks tell time,
|
||||
6) Sugar is sweet
|
||||
7) And so are you.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第五節︰撤消類命令
|
||||
|
||||
|
||||
** 輸入 u 來撤消最後執行的命令,輸入 U 來修正整行。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的那一行,並將其置于第一個錯誤
|
||||
處。
|
||||
2. 輸入 x 刪除第一個不想保留的字母。
|
||||
3. 然後輸入 u 撤消最後執行的(一次)命令。
|
||||
4. 這次要使用 x 修正本行的所有錯誤。
|
||||
5. 現在輸入一個大寫的 U ,恢復到該行的原始狀態。
|
||||
6. 接著多次輸入 u 以撤消 U 以及更前的命令。
|
||||
7. 然後多次輸入 CTRL-R (先按下 CTRL 鍵不放開,接著輸入 R 鍵) ,這樣就
|
||||
可以執行恢復命令,也就是撤消掉撤消命令。
|
||||
|
||||
---> Fiix the errors oon thhis line and reeplace them witth undo.
|
||||
|
||||
8. 這些都是非常有用的命令。下面是第二講的小結了。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講小結
|
||||
|
||||
|
||||
1. 欲從當前光標刪除至單字/單詞末尾,請輸入︰dw
|
||||
|
||||
2. 欲從當前光標刪除至當前行末尾,請輸入︰d$
|
||||
|
||||
3. 欲刪除整行,請輸入︰dd
|
||||
|
||||
4. 在正常模式下一個命令的格式是︰
|
||||
|
||||
[number] command object 或者 command [number] object
|
||||
其意是︰
|
||||
number - 代表的是命令執行的次數
|
||||
command - 代表要做的事情,比如 d 代表刪除
|
||||
object - 代表要操作的對象,比如 w 代表單字/單詞,$ 代表到行末等等。
|
||||
$ (to the end of line), etc.
|
||||
|
||||
5. 欲撤消以前的操作,請輸入︰u (小寫的u)
|
||||
欲撤消在一行中所做的改動,請輸入︰U (大寫的U)
|
||||
欲撤消以前的撤消命令,恢復以前的操作結果,請輸入︰CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講第一節︰置入類命令
|
||||
|
||||
|
||||
** 輸入 p 將最後一次刪除的內容置入光標之後 **
|
||||
|
||||
1. 請將光標移動到本節中下面示范段落的首行。
|
||||
|
||||
2. 輸入 dd 將該行刪除,這樣會將該行保存到vim的緩沖區中。
|
||||
|
||||
3. 接著將光標移動到準備置入的位置的上方。記住︰是上方哦。
|
||||
|
||||
4. 然後在正常模式下(<ESC>鍵進入),輸入 p 將該行粘貼置入。
|
||||
|
||||
5. 重復步驟2至步驟4,將所有的行依序放置到正確的位置上。
|
||||
|
||||
d) Can you learn too?
|
||||
b) Violets are blue,
|
||||
c) Intelligence is learned,
|
||||
a) Roses are red,
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講第二節︰替換類命令
|
||||
|
||||
|
||||
** 輸入 r 和一個字符替換光標所在位置的字符。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
2. 請移動光標到第一個錯誤的適當位置。
|
||||
|
||||
3. 接著輸入 r ,這樣就能將錯誤替換掉了。
|
||||
|
||||
4. 重復步驟2和步驟3,直到第一行已經修改完畢。
|
||||
|
||||
---> Whan this lime was tuoed in, someone presswd some wrojg keys!
|
||||
---> When this line was typed in, someone pressed some wrong keys!
|
||||
|
||||
5. 然後我們繼續學校第三講第三節。
|
||||
|
||||
特別提示︰切記您要在使用中學習,而不是在記憶中學習。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講第三節︰更改類命令
|
||||
|
||||
|
||||
** 要改變一個單字/單詞的部分或者全部,請輸入 cw **
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
2. 接著把光標放在單詞 lubw 的字母 u 的位置那裡。
|
||||
|
||||
3. 然後輸入 cw 就可以修正該單詞了(在本例這裡是輸入 ine 。)
|
||||
|
||||
4. 最後按 <ESC> 鍵,然後光標定位到下一個錯誤第一個準備更改的字母處。
|
||||
|
||||
5. 重復步驟3和步驟4,直到第一個句子完全雷同第二個句子。
|
||||
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change command.
|
||||
---> This line has a few words that need changing using the change command.
|
||||
|
||||
提示︰請注意 cw 命令不僅僅是替換了一個單詞,也讓您進入文本插入狀態了。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講第四節︰使用c指令的其他更改類命令
|
||||
|
||||
|
||||
** 更改類指令可以使用同刪除類命令所使用的對象參數。**
|
||||
|
||||
1. 更改類指令的工作方式跟刪除類命令是一致的。操作格式是︰
|
||||
|
||||
[number] c object 或者 c [number] object
|
||||
|
||||
2. 對象參數也是一樣的,比如 w 代表單字/單詞,$代表行末等等。
|
||||
|
||||
3. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
4. 接著將光標移動到第一個錯誤處。
|
||||
|
||||
5. 然後輸入 c$ 使得該行剩下的部分更正得同第二行一樣。最後按 <ESC> 鍵。
|
||||
|
||||
---> The end of this line needs some help to make it like the second.
|
||||
---> The end of this line needs to be corrected using the c$ command.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講小結
|
||||
|
||||
|
||||
1. 要重新置入已經刪除的文本內容,請輸入小寫字母 p。該操作可以將已刪除
|
||||
的文本內容置于光標之後。如果最後一次刪除的是一個整行,那麼該行將置
|
||||
于當前光標所在行的下一行。
|
||||
|
||||
2. 要替換光標所在位置的字符,請輸入小寫的 r 和要替換掉原位置字符的新字
|
||||
符即可。
|
||||
|
||||
3. 更改類命令允許您改變指定的對象,從當前光標所在位置直到對象的末尾。
|
||||
比如輸入 cw 可以替換當前光標到單詞的末尾的內容;輸入 c$ 可以替換當
|
||||
前光標到行末的內容。
|
||||
|
||||
4. 更改類命令的格式是︰
|
||||
|
||||
[number] c object 或者 c [number] object
|
||||
|
||||
下面我們繼續學習下一講。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講第一節︰定位及文件狀態
|
||||
|
||||
|
||||
** 輸入 CTRL-g 顯示當前編輯文件中當前光標所在行位置以及文件狀態信息。
|
||||
輸入 SHIFT-G 則直接跳轉到文件中的某一指定行。**
|
||||
|
||||
提示︰切記要先通讀本節內容,之後才可以執行以下步驟!!!
|
||||
|
||||
1. 按下 CTRL 鍵不放開然後按 g 鍵。然後就會看到頁面最底部出現一個狀態信
|
||||
息行,顯示的內容是當前編輯的文件名和文件的總行數。請記住步驟3的行號。
|
||||
|
||||
2. 按下 SHIFT-G 鍵可以使得當前光標直接跳轉到文件最後一行。
|
||||
|
||||
3. 輸入您曾停留的行號,然後按下 SHIFT-G。這樣就可以返回到您第一次按下
|
||||
CTRL-g 時所在的行好了。注意︰輸入行號時,行號是不會在屏幕上顯示出來
|
||||
的。
|
||||
|
||||
4. 如果願意,您可以繼續執行步驟1至步驟三。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講第二節︰搜索類命令
|
||||
|
||||
|
||||
** 輸入 / 以及尾隨的字符串可以用以在當前文件中查找該字符串。**
|
||||
|
||||
1. 在正常模式下輸入 / 字符。您此時會注意到該字符和光標都會出現在屏幕底
|
||||
部,這跟 : 命令是一樣的。
|
||||
|
||||
2. 接著輸入 errroor <回車>。那個errroor就是您要查找的字符串。
|
||||
|
||||
3. 要查找同上一次的字符串,只需要按 n 鍵。要向相反方向查找同上一次的字
|
||||
符串,請輸入 Shift-N 即可。
|
||||
|
||||
4. 如果您想逆向查找字符串,請使用 ? 代替 / 進行。
|
||||
|
||||
---> When the search reaches the end of the file it will continue at the start.
|
||||
|
||||
"errroor" is not the way to spell error; errroor is an error.
|
||||
|
||||
提示︰如果查找已經到達文件末尾,查找會自動從文件頭部繼續查找。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講第三節︰配對括號的查找
|
||||
|
||||
|
||||
** 按 % 可以查找配對的括號 )、]、}。**
|
||||
|
||||
1. 把光標放在本節下面標記有 --> 那一行中的任何一個 (、[ 或 { 處。
|
||||
|
||||
2. 接著按 % 字符。
|
||||
|
||||
3. 此時光標的位置應當是在配對的括號處。
|
||||
|
||||
4. 再次按 % 就可以跳回配對的第一個括號處。
|
||||
|
||||
---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
|
||||
|
||||
提示︰在程序調試時,這個功能用來查找不配對的括號是很有用的。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講第四節︰修正錯誤的方法之一
|
||||
|
||||
|
||||
** 輸入 :s/old/new/g 可以替換 old 為 new。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
2. 輸入 :s/thee/the <回車> 。請注意該命令只改變光標所在行的第一個匹配
|
||||
串。
|
||||
|
||||
3. 輸入 :s/thee/the/g 則是替換全行的匹配串。
|
||||
|
||||
---> the best time to see thee flowers is in thee spring.
|
||||
|
||||
4. 要替換兩行之間出現的每個匹配串,請輸入 :#,#s/old/new/g (#,#代表的是
|
||||
兩行的行號)。輸入 :%s/old/new/g 則是替換整個文件中的每個匹配串。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講小結
|
||||
|
||||
|
||||
1. Ctrl-g 用于顯示當前光標所在位置和文件狀態信息。Shift-G 用于將光標跳
|
||||
轉至文件最後一行。先敲入一個行號然後按 Shift-G 則是將光標移動至該行
|
||||
號代表的行。
|
||||
|
||||
2. 輸入 / 然後緊隨一個字符串是則是在當前所編輯的文檔中向後查找該字符串。
|
||||
輸入問號 ? 然後緊隨一個字符串是則是在當前所編輯的文檔中向前查找該字
|
||||
符串。完成一次查找之後按 n 鍵則是重復上一次的命令,可在同一方向上查
|
||||
找下一個字符串所在;或者按 Shift-N 向相反方向查找下該字符串所在。
|
||||
|
||||
3. 如果光標當前位置是括號(、)、[、]、{、},按 % 可以將光標移動到配對的
|
||||
括號上。
|
||||
|
||||
4. 在一行內替換頭一個字符串 old 為新的字符串 new,請輸入 :s/old/new
|
||||
在一行內替換所有的字符串 old 為新的字符串 new,請輸入 :s/old/new/g
|
||||
在兩行內替換所有的字符串 old 為新的字符串 new,請輸入 :#,#s/old/new/g
|
||||
在文件內替換所有的字符串 old 為新的字符串 new,請輸入 :%s/old/new/g
|
||||
進行全文替換時詢問用戶確認每個替換需添加 c 選項,請輸入 :%s/old/new/gc
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講第一節︰在 VIM 內執行外部命令的方法
|
||||
|
||||
|
||||
** 輸入 :! 然後緊隨著輸入一個外部命令可以執行該外部命令。**
|
||||
|
||||
1. 按下我們所熟悉的 : 命令設置光標到屏幕底部。這樣就可以讓您輸入命令了。
|
||||
|
||||
2. 接著輸入感嘆號 ! 這個字符,這樣就允許您執行外部的 shell 命令了。
|
||||
|
||||
3. 我們以 ls 命令為例。輸入 !ls <回車> 。該命令就會列舉出您當前目錄的
|
||||
內容,就如同您在命令行提示符下輸入 ls 命令的結果一樣。如果 !ls 沒起
|
||||
作用,您可以試試 :!dir 看看。
|
||||
|
||||
---> 提示︰ 所有的外部命令都可以以這種方式執行。
|
||||
|
||||
---> 提示︰ 所有的 : 命令都必須以 <回車> 告終。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講第二節︰關于保存文件的更多信息
|
||||
|
||||
|
||||
** 要將對文件的改動保存到文件中,請輸入 :w FILENAME **
|
||||
|
||||
1. 輸入 :!dir 或者 :!ls 獲知當前目錄的內容。您應當已知道最後還得敲
|
||||
<回車> 吧。
|
||||
|
||||
2. 選擇一個尚未存在文件名,比如 TEST 。
|
||||
|
||||
3. 接著輸入 :w TEST (此處 TEST 是您所選擇的文件名。)
|
||||
|
||||
4. 該命令會以 TEST 為文件名保存整個文件 (VIM 教程)。為了確保正確保存,
|
||||
請再次輸入 :!dir 查看您的目錄列表內容。
|
||||
|
||||
---> 請注意︰如果您退出 VIM 然後在以文件名 TEST 為參數進入,那麼該文件內
|
||||
容應該同您保存時的文件內容是完全一樣的。
|
||||
|
||||
5. 現在您可以通過輸入 :!rm TEST 來刪除 TEST 文件了。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講第三節︰一個具有選擇性的保存命令
|
||||
|
||||
|
||||
** 要保存文件的部分內容,請輸入 :#,# w FILENAME **
|
||||
|
||||
1. 再來執行一次 :!dir 或者 :!ls 獲知當前目錄的內容,然後選擇一個合適的
|
||||
不重名的文件名,比如 TEST 。
|
||||
|
||||
2. 接著將光標移動至本頁的最頂端,然後按 CTRL-g 找到該行的行號。別忘了
|
||||
行號哦。
|
||||
|
||||
3. 接著把光標移動至本頁的最底端,再按一次 CTRL-g 。也別忘了這個行好哦。
|
||||
|
||||
4. 為了只保存文章的某個部分,請輸入 :#,# w TEST 。這裡的 #,# 就是上面
|
||||
要求您記住的行號(頂端行號,底端行號),而 TEST 就是選定的文件名。
|
||||
|
||||
5. 最後,用 :!dir 確認文件是否正確保存。但是這次先別刪除掉。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講第四節︰提取和合並文件
|
||||
|
||||
|
||||
** 要向當前文件中插入另外的文件的內容,請輸入 :r FILENAME **
|
||||
|
||||
1. 請鍵入 :!dir 確認您前面創建的 TEST 文件還在。
|
||||
|
||||
2. 然後將光標移動至當前頁面的頂端。
|
||||
|
||||
特別提示︰ 執行步驟3之後您將看到第五講第三節,請屆時再往下移動回到這裡來。
|
||||
|
||||
3. 接著通過 :r TEST 將前面創建的名為 TEST 的文件提取進來。
|
||||
|
||||
特別提示︰您所提取進來的文件將從光標所在位置處開始置入。
|
||||
|
||||
4. 為了確認文件已經提取成功,移動光標回到原來的位置就可以注意有兩份第
|
||||
五講第三節,一份是原本,另外一份是來自文件的副本。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講小結
|
||||
|
||||
|
||||
1. :!command 用于執行一個外部命令 command。
|
||||
|
||||
請看一些實際例子︰
|
||||
:!dir - 用于顯示當前目錄的內容。
|
||||
:!rm FILENAME - 用于刪除名為 FILENAME 的文件。
|
||||
|
||||
2. :w FILENAME 可將當前 VIM 中正在編輯的文件保存到名為 FILENAME
|
||||
的文件中。
|
||||
|
||||
3. :#,#w FILENAME 可將當前編輯文件第 # 行至第 # 行的內容保存到文件
|
||||
FILENAME 中。
|
||||
|
||||
4. :r FILENAME 可提取磁盤文件 FILENAME 並將其插入到當前文件的光標位置
|
||||
後面。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講第一節︰打開類命令
|
||||
|
||||
|
||||
** 輸入 o 將在光標的下方打開新的一行並進入插入模式。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
2. 接著輸入小寫的 o 在光標 *下方* 打開新的一行並進入插入模式。
|
||||
|
||||
3. 然後復制標記有 ---> 的行並按 <ESC> 鍵退出插入模式而進入正常模式。
|
||||
|
||||
---> After typing o the cursor is placed on the open line in Insert mode.
|
||||
|
||||
4. 為了在光標 *上方* 打開新的一行,只需要輸入大寫的 O 而不是小寫的 o
|
||||
就可以了。請在下行測試一下吧。當光標處在在該行上時,按 Shift-O可以
|
||||
在該行上方新開一行。
|
||||
|
||||
Open up a line above this by typing Shift-O while the cursor is on this line.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講第二節︰光標後插入類命令
|
||||
|
||||
|
||||
** 輸入 a 將可在光標之後插入文本。 **
|
||||
|
||||
1. 請在正常模式下通過輸入 $ 將光標移動到本節中下面標記有 ---> 的第一行
|
||||
的末尾。
|
||||
|
||||
2. 接著輸入小寫的 a 則可在光標之後插入文本了。大寫的 A 則可以直接在行
|
||||
末插入文本。
|
||||
|
||||
提示︰輸入大寫 A 的操作方法可以在行末插入文本,避免了輸入 i,光標定位到
|
||||
最後一個字符,輸入的文本,<ESC> 回復正常模式,箭頭右鍵移動光標以及
|
||||
x 刪除當前光標所在位置字符等等諸多繁雜的操作。
|
||||
|
||||
3. 操作之後第一行就可以補充完整了。請注意光標後插入文本與插入模式是基
|
||||
本完全一致的,只是文本插入的位置定位稍有不同罷了。
|
||||
|
||||
---> This line will allow you to practice
|
||||
---> This line will allow you to practice appending text to the end of a line.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講第三節︰另外一個置換類命令的版本
|
||||
|
||||
|
||||
** 輸入大寫的 R 可連續替換多個字符。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
2. 移動光標到第一行中不同于標有 ---> 的第二行的第一個單詞的開始,即單
|
||||
詞 last 處。
|
||||
|
||||
3. 然後輸入大寫的 R 開始把第一行中的不同于第二行的剩余字符逐一輸入,就
|
||||
可以全部替換掉原有的字符而使得第一行完全雷同第二行了。
|
||||
|
||||
---> To make the first line the same as the last on this page use the keys.
|
||||
---> To make the first line the same as the second, type R and the new text.
|
||||
|
||||
4. 請注意︰如果您按 <ESC> 退出置換模式回復正常模式,尚未替換的文本將仍
|
||||
然保持原狀。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講第四節︰設置類命令的選項
|
||||
|
||||
|
||||
** 設置可使查找或者替換可忽略大小寫的選項 **
|
||||
|
||||
|
||||
1. 要查找單詞 ignore 可在正常模式下輸入 /ignore 。要重復查找該詞,可以
|
||||
重復按 n 鍵。
|
||||
|
||||
2. 然後設置 ic 選項(ic就是英文忽略大小寫Ignore Case的首字母縮寫詞),即
|
||||
輸入︰
|
||||
:set ic
|
||||
|
||||
3. 現在可以通過鍵入 n 鍵再次查找單詞 ignore。重復查找可以重復鍵入 n 鍵。
|
||||
|
||||
4. 然後設置 hlsearch 和 incsearch 這兩個選項,輸入以下內容︰
|
||||
:set hls is
|
||||
|
||||
5. 現在可以再次輸入查找命令,看看會有什麼效果︰
|
||||
/ignore
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講小結
|
||||
|
||||
|
||||
1. 輸入小寫的 o 可以在光標下方打開新的一行並將光標置于新開的行首,進入
|
||||
插入模式。
|
||||
輸入大寫的 O 可以在光標上方打開新的一行並將光標置于新開的行首,進入
|
||||
插入模式。
|
||||
|
||||
2. 輸入小寫的 a 可以在光標所在位置之後插入文本。
|
||||
輸入大寫的 A 可以在光標所在行的行末之後插入文本。
|
||||
|
||||
3. 輸入大寫的 R 將進入替換模式,直至按 <ESC> 鍵退出替換模式而進入正常
|
||||
模式。
|
||||
|
||||
4. 輸入 :set xxx 可以設置 xxx 選項。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第七講︰在線幫助命令
|
||||
|
||||
** 使用在線幫助系統 **
|
||||
|
||||
Vim 擁有一個細致全面的在線幫助系統。要啟動該幫助系統,請選擇如下三種方
|
||||
法之一︰
|
||||
- 按下 <HELP> 鍵 (如果鍵盤上有的話)
|
||||
- 按下 <F1> 鍵 (如果鍵盤上有的話)
|
||||
- 輸入 :help <回車>
|
||||
|
||||
輸入 :q <回車> 可以關閉幫助窗口。
|
||||
|
||||
提供一個正確的參數給":help"命令,您可以找到關于該主題的幫助。請試驗以
|
||||
下參數(可別忘了按回車鍵哦。:)︰
|
||||
|
||||
:help w <回車>
|
||||
:help c_<T <回車>
|
||||
:help insert-index <回車>
|
||||
:help user-manual <回車>
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第八講︰創建一個啟動腳本
|
||||
|
||||
** 啟用vim的功能 **
|
||||
|
||||
Vim的功能特性要比vi多得多,但大部分功能都沒有缺省激活。為了啟動更多的
|
||||
功能,您得創建一個vimrc文件。
|
||||
|
||||
1. 開始編輯vimrc文件,這取決于您所使用的操作系統︰
|
||||
|
||||
:edit ~/.vimrc 這是Unix系統所使用的命令
|
||||
:edit $VIM/_vimrc 這是Windows系統所使用的命令
|
||||
|
||||
2. 接著導入vimrc范例文件︰
|
||||
|
||||
:read $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. 保存文件,命令為︰
|
||||
|
||||
:write
|
||||
|
||||
在下次您啟動vim的時候,編輯器就會有了語法高亮的功能。您可以繼續把您喜
|
||||
歡的其它功能設置添加到這個vimrc文件中。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
vim 教程到此結束。本教程只是為了簡明地介紹一下vim編輯器,但已足以讓您
|
||||
很容易學會使用本編輯器了。毋庸質疑,vim還有很多很多的命令,本教程所介
|
||||
紹的還差得遠著呢。所以您要精通的話,還望繼續努力哦。下一步您可以閱讀
|
||||
vim手冊,使用的命令是︰
|
||||
:help user-manual
|
||||
|
||||
為了更進一步的參考和學習,以下這本書值得推薦︰
|
||||
|
||||
Vim - Vi Improved - 作者︰Steve Oualline
|
||||
出版社︰New Riders
|
||||
|
||||
這是第一本完全講解vim的書籍。對于初學者特別有用。其中還包含有大量實例
|
||||
和圖示。欲知詳情,請訪問 http://iccf-holland.org/click5.html
|
||||
|
||||
以下這本書比較老了而且內容主要是vi而不是vim,但是也值得推薦︰
|
||||
|
||||
Learning the Vi Editor - 作者︰Linda Lamb
|
||||
出版社︰O'Reilly & Associates Inc.
|
||||
|
||||
這是一本不錯的書,通過它您幾乎能夠了解到全部vi能夠做到的事情。此書的第
|
||||
六個版本也包含了一些關于vim的信息。
|
||||
|
||||
本教程是由來自Calorado School of Minese的Michael C. Pierce、Robert K.
|
||||
Ware 所編寫的,其中來自Colorado State University的Charles Smith提供了
|
||||
很多創意。編者通信地址是︰
|
||||
|
||||
bware@mines.colorado.edu
|
||||
|
||||
本教程已由Bram Moolenaar專為vim進行修訂。
|
||||
|
||||
|
||||
|
||||
譯制者附言︰
|
||||
===========
|
||||
簡體中文教程翻譯版之譯制者為梁昌泰 <beos@turbolinux.com.cn>,還有
|
||||
另外一個聯系地址︰linuxrat@gnuchina.org。
|
||||
|
||||
繁體中文教程是從簡體中文教程翻譯版使用 Debian GNU/Linux 中文項目小
|
||||
組的于廣輝先生編寫的中文漢字轉碼器 autoconvert 轉換而成的,並對轉
|
||||
換的結果做了一些細節的改動。
|
||||
|
||||
變更記錄︰
|
||||
=========
|
||||
2002年08月30日 梁昌泰 <beos@turbolinux.com.cn>
|
||||
感謝 RMS@SMTH 的指正,將多處錯誤修正。
|
||||
|
||||
2002年04月22日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
感謝 xuandong@sh163.net 的指正,將兩處錯別字修正。
|
||||
|
||||
2002年03月18日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
根據Bram Molenaar先生在2002年03月16日的來信要求,將vimtutor1.4中譯
|
||||
版升級到vimtutor1.5。
|
||||
|
||||
2001年11月15日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
將vimtutor1.4中譯版提交給Bram Molenaar和Sven Guckes。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -527,7 +527,7 @@ STDMETHODIMP_(ULONG) CShellExt::Release()
|
||||
//
|
||||
// PARAMETERS:
|
||||
// pIDFolder - Specifies the parent folder
|
||||
// pDataObj - Spefifies the set of items selected in that folder.
|
||||
// pDataObj - Specifies the set of items selected in that folder.
|
||||
// hRegKey - Specifies the type of the focused item in the selection.
|
||||
//
|
||||
// RETURN VALUE:
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user