mirror of
https://github.com/zoriya/vim.git
synced 2025-12-28 09:58:17 +00:00
Compare commits
89 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3dbde6226d | ||
|
|
61d35bd020 | ||
|
|
913077c37c | ||
|
|
ca628610c0 | ||
|
|
da5a4970a9 | ||
|
|
f99bc6d002 | ||
|
|
6df5e5ae42 | ||
|
|
524780d69f | ||
|
|
61d281a4c0 | ||
|
|
970a1b82ec | ||
|
|
06ca513e2c | ||
|
|
507cc8acf1 | ||
|
|
12b0290d42 | ||
|
|
5e4b9e9ff8 | ||
|
|
5d3a8038b6 | ||
|
|
dfba6b6449 | ||
|
|
1ea69b7077 | ||
|
|
5ad15df9ce | ||
|
|
1c0b03e857 | ||
|
|
84f7235bdb | ||
|
|
7c578d3c3f | ||
|
|
5fbe699390 | ||
|
|
8ec1f8523b | ||
|
|
917ba89f7f | ||
|
|
9e98edfe8f | ||
|
|
146e9c3886 | ||
|
|
552ac13d55 | ||
|
|
0faaeb826e | ||
|
|
d25ad65a97 | ||
|
|
f5876f147a | ||
|
|
91856270df | ||
|
|
4336cdf318 | ||
|
|
7f29f7a2f4 | ||
|
|
011a34d77d | ||
|
|
52379eadfb | ||
|
|
b549a731fb | ||
|
|
7282bc3e7e | ||
|
|
58437e0409 | ||
|
|
5f1e3e4473 | ||
|
|
db7207e6e5 | ||
|
|
84a4c334e1 | ||
|
|
ee7d100091 | ||
|
|
42ec656524 | ||
|
|
fb7df7be2f | ||
|
|
6b707b4b82 | ||
|
|
f66b3fcf6c | ||
|
|
034b115568 | ||
|
|
5dc6252d33 | ||
|
|
61c3519b78 | ||
|
|
a64ba220f0 | ||
|
|
60542ac9fd | ||
|
|
bbc98db7c4 | ||
|
|
efcb54b78c | ||
|
|
be74734429 | ||
|
|
a61d5fbf7a | ||
|
|
28f2908d95 | ||
|
|
68ba0dd633 | ||
|
|
c047b9a49f | ||
|
|
3fe37d62d1 | ||
|
|
b3a6bbc7b6 | ||
|
|
8d462f9666 | ||
|
|
a8c8a688ac | ||
|
|
73b2470896 | ||
|
|
be094a1579 | ||
|
|
e37c611012 | ||
|
|
a489e1d9d6 | ||
|
|
76b9b3696c | ||
|
|
d87fbc2b1c | ||
|
|
fbe323d854 | ||
|
|
b8ff1fb5eb | ||
|
|
7f85d297dc | ||
|
|
3c70f33440 | ||
|
|
16c31fe1b7 | ||
|
|
7d550fbde5 | ||
|
|
6110a006d5 | ||
|
|
8e808d2b4d | ||
|
|
975261e8a0 | ||
|
|
f44cfb88f6 | ||
|
|
abe838b099 | ||
|
|
06af60244e | ||
|
|
38f5f9529a | ||
|
|
2b04b19455 | ||
|
|
53748fcb7b | ||
|
|
33c1b198c6 | ||
|
|
7474c7c3d6 | ||
|
|
6be7f8733f | ||
|
|
90b280059f | ||
|
|
f31b764c23 | ||
|
|
3ef7cdf0fd |
@@ -1,8 +1,8 @@
|
||||
" ---------------------------------------------------------------------
|
||||
" getscript.vim
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: May 31, 2011
|
||||
" Version: 33
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 34
|
||||
" Installing: :help glvs-install
|
||||
" Usage: :help glvs
|
||||
"
|
||||
@@ -15,7 +15,7 @@
|
||||
if exists("g:loaded_getscript")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_getscript= "v33"
|
||||
let g:loaded_getscript= "v34"
|
||||
if &cp
|
||||
echoerr "GetLatestVimScripts is not vi-compatible; not loaded (you need to set nocp)"
|
||||
finish
|
||||
@@ -550,30 +550,42 @@ fun! s:GetOneScript(...)
|
||||
" decompress
|
||||
if sname =~ '\.bz2$'
|
||||
" call Decho("decompress: attempt to bunzip2 ".sname)
|
||||
exe "silent !bunzip2 ".shellescape(sname)
|
||||
exe "sil !bunzip2 ".shellescape(sname)
|
||||
let sname= substitute(sname,'\.bz2$','','')
|
||||
" call Decho("decompress: new sname<".sname."> after bunzip2")
|
||||
elseif sname =~ '\.gz$'
|
||||
" call Decho("decompress: attempt to gunzip ".sname)
|
||||
exe "silent !gunzip ".shellescape(sname)
|
||||
exe "sil !gunzip ".shellescape(sname)
|
||||
let sname= substitute(sname,'\.gz$','','')
|
||||
" call Decho("decompress: new sname<".sname."> after gunzip")
|
||||
elseif sname =~ '\.xz$'
|
||||
" call Decho("decompress: attempt to unxz ".sname)
|
||||
exe "silent !unxz ".shellescape(sname)
|
||||
exe "sil !unxz ".shellescape(sname)
|
||||
let sname= substitute(sname,'\.xz$','','')
|
||||
" call Decho("decompress: new sname<".sname."> after unxz")
|
||||
else
|
||||
" call Decho("no decompression needed")
|
||||
endif
|
||||
|
||||
" distribute archive(.zip, .tar, .vba) contents
|
||||
" distribute archive(.zip, .tar, .vba, ...) contents
|
||||
if sname =~ '\.zip$'
|
||||
" call Decho("dearchive: attempt to unzip ".sname)
|
||||
exe "silent !unzip -o ".shellescape(sname)
|
||||
elseif sname =~ '\.tar$'
|
||||
" call Decho("dearchive: attempt to untar ".sname)
|
||||
exe "silent !tar -xvf ".shellescape(sname)
|
||||
elseif sname =~ '\.tgz$'
|
||||
" call Decho("dearchive: attempt to untar+gunzip ".sname)
|
||||
exe "silent !tar -zxvf ".shellescape(sname)
|
||||
elseif sname =~ '\.taz$'
|
||||
" call Decho("dearchive: attempt to untar+uncompress ".sname)
|
||||
exe "silent !tar -Zxvf ".shellescape(sname)
|
||||
elseif sname =~ '\.tbz$'
|
||||
" call Decho("dearchive: attempt to untar+bunzip2 ".sname)
|
||||
exe "silent !tar -jxvf ".shellescape(sname)
|
||||
elseif sname =~ '\.txz$'
|
||||
" call Decho("dearchive: attempt to untar+xz ".sname)
|
||||
exe "silent !tar -Jxvf ".shellescape(sname)
|
||||
elseif sname =~ '\.vba$'
|
||||
" call Decho("dearchive: attempt to handle a vimball: ".sname)
|
||||
silent 1split
|
||||
|
||||
@@ -1,16 +1,31 @@
|
||||
" Vim OMNI completion script for SQL
|
||||
" Language: SQL
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Version: 10.0
|
||||
" Last Change: 2010 Jun 11
|
||||
" Version: 12.0
|
||||
" Last Change: 2012 Feb 08
|
||||
" Usage: For detailed help
|
||||
" ":help sql.txt"
|
||||
" or ":help ft-sql-omni"
|
||||
" ":help sql.txt"
|
||||
" or ":help ft-sql-omni"
|
||||
" or read $VIMRUNTIME/doc/sql.txt
|
||||
|
||||
" History
|
||||
" Version 12.0
|
||||
" - Partial column name completion did not work when a table
|
||||
" name or table alias was provided (Jonas Enberg).
|
||||
" - Improved the handling of column completion. First we match any
|
||||
" columns from a previous completion. If not matches are found, we
|
||||
" consider the partial name to be a table or table alias for the
|
||||
" query and attempt to match on it.
|
||||
"
|
||||
" Version 11.0
|
||||
" Added g:omni_sql_default_compl_type variable
|
||||
" - You can specify which type of completion to default to
|
||||
" when pressing <C-X><C-O>. The entire list of available
|
||||
" choices can be found in the calls to sqlcomplete#Map in:
|
||||
" ftplugin/sql.vim
|
||||
"
|
||||
" Version 10.0
|
||||
" Updated PreCacheSyntax()
|
||||
" Updated PreCacheSyntax()
|
||||
" - Now returns a List of the syntax items it finds.
|
||||
" This allows other plugins / scripts to use this list for their own
|
||||
" purposes. In this case XPTemplate can use them for a Choose list.
|
||||
@@ -18,22 +33,22 @@
|
||||
" warning if not.
|
||||
" - Verifies the parameters are the correct type and displays a
|
||||
" warning if not.
|
||||
" Updated SQLCWarningMsg()
|
||||
" Updated SQLCWarningMsg()
|
||||
" - Prepends warning message with SQLComplete so you know who issued
|
||||
" the warning.
|
||||
" Updated SQLCErrorMsg()
|
||||
" Updated SQLCErrorMsg()
|
||||
" - Prepends error message with SQLComplete so you know who issued
|
||||
" the error.
|
||||
"
|
||||
"
|
||||
" Version 9.0
|
||||
" This change removes some of the support for tables with spaces in their
|
||||
" names in order to simplify the regexes used to pull out query table
|
||||
" names in order to simplify the regexes used to pull out query table
|
||||
" aliases for more robust table name and column name code completion.
|
||||
" Full support for "table names with spaces" can be added in again
|
||||
" after 7.3.
|
||||
"
|
||||
" Version 8.0
|
||||
" Incorrectly re-executed the g:ftplugin_sql_omni_key_right and g:ftplugin_sql_omni_key_left
|
||||
" Incorrectly re-executed the g:ftplugin_sql_omni_key_right and g:ftplugin_sql_omni_key_left
|
||||
" when drilling in and out of a column list for a table.
|
||||
"
|
||||
" Version 7.0
|
||||
@@ -44,7 +59,7 @@
|
||||
"
|
||||
" Set completion with CTRL-X CTRL-O to autoloaded function.
|
||||
" This check is in place in case this script is
|
||||
" sourced directly instead of using the autoload feature.
|
||||
" sourced directly instead of using the autoload feature.
|
||||
if exists('&omnifunc')
|
||||
" Do not set the option if already set since this
|
||||
" results in an E117 warning.
|
||||
@@ -54,9 +69,9 @@ if exists('&omnifunc')
|
||||
endif
|
||||
|
||||
if exists('g:loaded_sql_completion')
|
||||
finish
|
||||
finish
|
||||
endif
|
||||
let g:loaded_sql_completion = 100
|
||||
let g:loaded_sql_completion = 120
|
||||
|
||||
" Maintains filename of dictionary
|
||||
let s:sql_file_table = ""
|
||||
@@ -69,7 +84,7 @@ let s:tbl_alias = []
|
||||
let s:tbl_cols = []
|
||||
let s:syn_list = []
|
||||
let s:syn_value = []
|
||||
|
||||
|
||||
" Used in conjunction with the syntaxcomplete plugin
|
||||
let s:save_inc = ""
|
||||
let s:save_exc = ""
|
||||
@@ -79,7 +94,7 @@ endif
|
||||
if exists('g:omni_syntax_group_exclude_sql')
|
||||
let s:save_exc = g:omni_syntax_group_exclude_sql
|
||||
endif
|
||||
|
||||
|
||||
" Used with the column list
|
||||
let s:save_prev_table = ""
|
||||
|
||||
@@ -110,12 +125,16 @@ if !exists('g:omni_sql_include_owner')
|
||||
if g:loaded_dbext >= 300
|
||||
" New to dbext 3.00, by default the table lists include the owner
|
||||
" name of the table. This is used when determining how much of
|
||||
" whatever has been typed should be replaced as part of the
|
||||
" whatever has been typed should be replaced as part of the
|
||||
" code replacement.
|
||||
let g:omni_sql_include_owner = 1
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
" Default type of completion used when <C-X><C-O> is pressed
|
||||
if !exists('g:omni_sql_default_compl_type')
|
||||
let g:omni_sql_default_compl_type = 'table'
|
||||
endif
|
||||
|
||||
" This function is used for the 'omnifunc' option.
|
||||
function! sqlcomplete#Complete(findstart, base)
|
||||
@@ -140,7 +159,7 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
let begindot = 1
|
||||
endif
|
||||
while start > 0
|
||||
" Additional code was required to handle objects which
|
||||
" Additional code was required to handle objects which
|
||||
" can contain spaces like "my table name".
|
||||
if line[start - 1] !~ '\(\w\|\.\)'
|
||||
" If the previous character is not a period or word character
|
||||
@@ -150,7 +169,7 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
elseif line[start - 1] =~ '\w'
|
||||
" If the previous character is word character continue back
|
||||
let start -= 1
|
||||
elseif line[start - 1] =~ '\.' &&
|
||||
elseif line[start - 1] =~ '\.' &&
|
||||
\ compl_type =~ 'column\|table\|view\|procedure'
|
||||
" If the previous character is a period and we are completing
|
||||
" an object which can be specified with a period like this:
|
||||
@@ -160,7 +179,7 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
" If lastword has already been set for column completion
|
||||
" break from the loop, since we do not also want to pickup
|
||||
" a table name if it was also supplied.
|
||||
if lastword != -1 && compl_type == 'column'
|
||||
if lastword != -1 && compl_type == 'column'
|
||||
break
|
||||
endif
|
||||
" If column completion was specified stop at the "." if
|
||||
@@ -171,8 +190,8 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
endif
|
||||
" If omni_sql_include_owner = 0, do not include the table
|
||||
" name as part of the substitution, so break here
|
||||
if lastword == -1 &&
|
||||
\ compl_type =~ 'table\|view\|procedure\column_csv' &&
|
||||
if lastword == -1 &&
|
||||
\ compl_type =~ 'table\|view\|procedure\column_csv' &&
|
||||
\ g:omni_sql_include_owner == 0
|
||||
let lastword = start
|
||||
break
|
||||
@@ -202,7 +221,7 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
let compl_list = []
|
||||
|
||||
" Default to table name completion
|
||||
let compl_type = 'table'
|
||||
let compl_type = g:omni_sql_default_compl_type
|
||||
" Allow maps to specify what type of object completion they want
|
||||
if exists('b:sql_compl_type')
|
||||
let compl_type = b:sql_compl_type
|
||||
@@ -216,7 +235,7 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
|
||||
if compl_type == 'table' ||
|
||||
\ compl_type == 'procedure' ||
|
||||
\ compl_type == 'view'
|
||||
\ compl_type == 'view'
|
||||
|
||||
" This type of completion relies upon the dbext.vim plugin
|
||||
if s:SQLCCheck4dbext() == -1
|
||||
@@ -254,7 +273,7 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
|
||||
if base == ""
|
||||
" The last time we displayed a column list we stored
|
||||
" the table name. If the user selects a column list
|
||||
" the table name. If the user selects a column list
|
||||
" without a table name of alias present, assume they want
|
||||
" the previous column list displayed.
|
||||
let base = s:save_prev_table
|
||||
@@ -273,16 +292,16 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
" has entered:
|
||||
" owner.table
|
||||
" table.column_prefix
|
||||
" So there are a couple of things we can do to mitigate
|
||||
" So there are a couple of things we can do to mitigate
|
||||
" this issue.
|
||||
" 1. Check if the dbext plugin has the option turned
|
||||
" on to even allow owners
|
||||
" 2. Based on 1, if the user is showing a table list
|
||||
" and the DrillIntoTable (using <Right>) then
|
||||
" and the DrillIntoTable (using <Right>) then
|
||||
" this will be owner.table. In this case, we can
|
||||
" check to see the table.column exists in the
|
||||
" check to see the table.column exists in the
|
||||
" cached table list. If it does, then we have
|
||||
" determined the user has actually chosen
|
||||
" determined the user has actually chosen
|
||||
" owner.table, not table.column_prefix.
|
||||
let found = -1
|
||||
if g:omni_sql_include_owner == 1 && owner == ''
|
||||
@@ -297,17 +316,46 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
" If the user has indicated not to use table owners at all and
|
||||
" the base ends in a '.' we know they are not providing a column
|
||||
" name, so we can shift the items appropriately.
|
||||
if found != -1 || (g:omni_sql_include_owner == 0 && base !~ '\.$')
|
||||
let owner = table
|
||||
let table = column
|
||||
let column = ''
|
||||
endif
|
||||
" if found != -1 || (g:omni_sql_include_owner == 0 && base !~ '\.$')
|
||||
" let owner = table
|
||||
" let table = column
|
||||
" let column = ''
|
||||
" endif
|
||||
else
|
||||
" If no "." was provided and the user asked for
|
||||
" column level completion, first attempt the match
|
||||
" on any previous column lists. If the user asked
|
||||
" for a list of columns comma separated, continue as usual.
|
||||
if compl_type == 'column' && s:save_prev_table != ''
|
||||
" The last time we displayed a column list we stored
|
||||
" the table name. If the user selects a column list
|
||||
" without a table name of alias present, assume they want
|
||||
" the previous column list displayed.
|
||||
let table = s:save_prev_table
|
||||
let list_type = ''
|
||||
|
||||
let compl_list = s:SQLCGetColumns(table, list_type)
|
||||
if ! empty(compl_list)
|
||||
" If no column prefix has been provided and the table
|
||||
" name was provided, append it to each of the items
|
||||
" returned.
|
||||
let compl_list = filter(deepcopy(compl_list), 'v:val=~"^'.base.'"' )
|
||||
|
||||
" If not empty, we have a match on columns
|
||||
" return the list
|
||||
if ! empty(compl_list)
|
||||
return compl_list
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
" Since no columns were found to match the base supplied
|
||||
" assume the user is trying to complete the column list
|
||||
" for a table (and or an alias to a table).
|
||||
let table = base
|
||||
endif
|
||||
|
||||
" Get anything after the . and consider this the table name
|
||||
" If an owner has been specified, then we must consider the
|
||||
" If an owner has been specified, then we must consider the
|
||||
" base to be a partial column name
|
||||
" let base = matchstr( base, '^\(.*\.\)\?\zs.*' )
|
||||
|
||||
@@ -327,11 +375,11 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
" If no column prefix has been provided and the table
|
||||
" name was provided, append it to each of the items
|
||||
" returned.
|
||||
let compl_list = map(compl_list, "table.'.'.v:val")
|
||||
let compl_list = map(compl_list, 'table.".".v:val')
|
||||
if owner != ''
|
||||
" If an owner has been provided append it to each of the
|
||||
" items returned.
|
||||
let compl_list = map(compl_list, "owner.'.'.v:val")
|
||||
let compl_list = map(compl_list, 'owner.".".v:val')
|
||||
endif
|
||||
else
|
||||
let base = ''
|
||||
@@ -361,11 +409,15 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
|
||||
if base != ''
|
||||
" Filter the list based on the first few characters the user entered.
|
||||
" Check if the text matches at the beginning
|
||||
" or
|
||||
" Check if the text matches at the beginning
|
||||
" \\(^.base.'\\)
|
||||
" or
|
||||
" Match to a owner.table or alias.column type match
|
||||
" ^\\(\\w\\+\\.\\)\\?'.base.'\\)
|
||||
" or
|
||||
" Handle names with spaces "my table name"
|
||||
" "\\(^'.base.'\\|^\\(\\w\\+\\.\\)\\?'.base.'\\)"'
|
||||
"
|
||||
let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\|^\\(\\w\\+\\.\\)\\?'.base.'\\)"'
|
||||
" let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\)"'
|
||||
" let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\|\\(\\.\\)\\?'.base.'\\)"'
|
||||
@@ -384,7 +436,7 @@ function! sqlcomplete#PreCacheSyntax(...)
|
||||
let syn_group_arr = []
|
||||
let syn_items = []
|
||||
|
||||
if a:0 > 0
|
||||
if a:0 > 0
|
||||
if type(a:1) != 3
|
||||
call s:SQLCWarningMsg("Parameter is not a list. Example:['syntaxGroup1', 'syntaxGroup2']")
|
||||
return ''
|
||||
@@ -407,7 +459,7 @@ endfunction
|
||||
function! sqlcomplete#ResetCacheSyntax(...)
|
||||
let syn_group_arr = []
|
||||
|
||||
if a:0 > 0
|
||||
if a:0 > 0
|
||||
if type(a:1) != 3
|
||||
call s:SQLCWarningMsg("Parameter is not a list. Example:['syntaxGroup1', 'syntaxGroup2']")
|
||||
return ''
|
||||
@@ -458,7 +510,7 @@ function! sqlcomplete#DrillIntoTable()
|
||||
" If the popup is not visible, simple perform the normal
|
||||
" key behaviour.
|
||||
" Must use exec since they key must be preceeded by "\"
|
||||
" or feedkeys will simply push each character of the string
|
||||
" or feedkeys will simply push each character of the string
|
||||
" rather than the "key press".
|
||||
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_right.'", "n")'
|
||||
endif
|
||||
@@ -475,7 +527,7 @@ function! sqlcomplete#DrillOutOfColumns()
|
||||
" If the popup is not visible, simple perform the normal
|
||||
" key behaviour.
|
||||
" Must use exec since they key must be preceeded by "\"
|
||||
" or feedkeys will simply push each character of the string
|
||||
" or feedkeys will simply push each character of the string
|
||||
" rather than the "key press".
|
||||
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_left.'", "n")'
|
||||
endif
|
||||
@@ -484,16 +536,16 @@ endfunction
|
||||
|
||||
function! s:SQLCWarningMsg(msg)
|
||||
echohl WarningMsg
|
||||
echomsg 'SQLComplete:'.a:msg
|
||||
echomsg 'SQLComplete:'.a:msg
|
||||
echohl None
|
||||
endfunction
|
||||
|
||||
|
||||
function! s:SQLCErrorMsg(msg)
|
||||
echohl ErrorMsg
|
||||
echomsg 'SQLComplete:'.a:msg
|
||||
echomsg 'SQLComplete:'.a:msg
|
||||
echohl None
|
||||
endfunction
|
||||
|
||||
|
||||
function! s:SQLCGetSyntaxList(syn_group)
|
||||
let syn_group = a:syn_group
|
||||
let compl_list = []
|
||||
@@ -504,7 +556,7 @@ function! s:SQLCGetSyntaxList(syn_group)
|
||||
" Return previously cached value
|
||||
let compl_list = s:syn_value[list_idx]
|
||||
else
|
||||
" Request the syntax list items from the
|
||||
" Request the syntax list items from the
|
||||
" syntax completion plugin
|
||||
if syn_group == 'syntax'
|
||||
" Handle this special case. This allows the user
|
||||
@@ -552,7 +604,7 @@ function! s:SQLCAddAlias(table_name, table_alias, cols)
|
||||
let table_alias = a:table_alias
|
||||
let cols = a:cols
|
||||
|
||||
if g:omni_sql_use_tbl_alias != 'n'
|
||||
if g:omni_sql_use_tbl_alias != 'n'
|
||||
if table_alias == ''
|
||||
if 'da' =~? g:omni_sql_use_tbl_alias
|
||||
if table_name =~ '_'
|
||||
@@ -562,13 +614,13 @@ function! s:SQLCAddAlias(table_name, table_alias, cols)
|
||||
setlocal iskeyword-=_
|
||||
|
||||
" Get the first letter of each word
|
||||
" [[:alpha:]] is used instead of \w
|
||||
" [[:alpha:]] is used instead of \w
|
||||
" to catch extended accented characters
|
||||
"
|
||||
let table_alias = substitute(
|
||||
\ table_name,
|
||||
\ '\<[[:alpha:]]\+\>_\?',
|
||||
\ '\=strpart(submatch(0), 0, 1)',
|
||||
let table_alias = substitute(
|
||||
\ table_name,
|
||||
\ '\<[[:alpha:]]\+\>_\?',
|
||||
\ '\=strpart(submatch(0), 0, 1)',
|
||||
\ 'g'
|
||||
\ )
|
||||
" Restore original value
|
||||
@@ -596,7 +648,7 @@ function! s:SQLCAddAlias(table_name, table_alias, cols)
|
||||
return cols
|
||||
endfunction
|
||||
|
||||
function! s:SQLCGetObjectOwner(object)
|
||||
function! s:SQLCGetObjectOwner(object)
|
||||
" The owner regex matches a word at the start of the string which is
|
||||
" followed by a dot, but doesn't include the dot in the result.
|
||||
" ^ - from beginning of line
|
||||
@@ -609,7 +661,7 @@ function! s:SQLCGetObjectOwner(object)
|
||||
" let owner = matchstr( a:object, '^\s*\zs.*\ze\.' )
|
||||
let owner = matchstr( a:object, '^\("\|\[\)\?\zs\.\{-}\ze\("\|\]\)\?\.' )
|
||||
return owner
|
||||
endfunction
|
||||
endfunction
|
||||
|
||||
function! s:SQLCGetColumns(table_name, list_type)
|
||||
" Check if the table name was provided as part of the column name
|
||||
@@ -636,7 +688,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
if list_idx > -1
|
||||
let table_cols = split(s:tbl_cols[list_idx], '\n')
|
||||
else
|
||||
" Check if we have already cached the column list for this table
|
||||
" Check if we have already cached the column list for this table
|
||||
" by its alias, assuming the table_name provided was actually
|
||||
" the alias for the table instead
|
||||
" select *
|
||||
@@ -654,7 +706,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
" And the table ends in a "." or we are looking for a column list
|
||||
" if list_idx == -1 && (a:table_name =~ '\.' || b:sql_compl_type =~ 'column')
|
||||
" if list_idx == -1 && (a:table_name =~ '\.' || a:list_type =~ 'csv')
|
||||
if list_idx == -1
|
||||
if list_idx == -1
|
||||
let saveY = @y
|
||||
let saveSearch = @/
|
||||
let saveWScan = &wrapscan
|
||||
@@ -665,7 +717,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
setlocal nowrapscan
|
||||
" If . was entered, look at the word just before the .
|
||||
" We are looking for something like this:
|
||||
" select *
|
||||
" select *
|
||||
" from customer c
|
||||
" where c.
|
||||
" So when . is pressed, we need to find 'c'
|
||||
@@ -692,15 +744,15 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
" if query =~? '^\c\(select\)'
|
||||
if query =~? '^\(select\|update\|delete\)'
|
||||
let found = 1
|
||||
" \(\(\<\w\+\>\)\.\)\? -
|
||||
" \(\(\<\w\+\>\)\.\)\? -
|
||||
" '\c\(from\|join\|,\).\{-}' - Starting at the from clause (case insensitive)
|
||||
" '\zs\(\(\<\w\+\>\)\.\)\?' - Get the owner name (optional)
|
||||
" '\<\w\+\>\ze' - Get the table name
|
||||
" '\<\w\+\>\ze' - Get the table name
|
||||
" '\s\+\<'.table_name.'\>' - Followed by the alias
|
||||
" '\s*\.\@!.*' - Cannot be followed by a .
|
||||
" '\(\<where\>\|$\)' - Must be followed by a WHERE clause
|
||||
" '.*' - Exclude the rest of the line in the match
|
||||
" let table_name_new = matchstr(@y,
|
||||
" let table_name_new = matchstr(@y,
|
||||
" \ '\c\(from\|join\|,\).\{-}'.
|
||||
" \ '\zs\(\("\|\[\)\?.\{-}\("\|\]\)\.\)\?'.
|
||||
" \ '\("\|\[\)\?.\{-}\("\|\]\)\?\ze'.
|
||||
@@ -711,7 +763,16 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
" \ '\(\<where\>\|$\)'.
|
||||
" \ '.*'
|
||||
" \ )
|
||||
let table_name_new = matchstr(@y,
|
||||
"
|
||||
"
|
||||
" ''\c\(\<from\>\|\<join\>\|,\)\s*' - Starting at the from clause (case insensitive)
|
||||
" '\zs\(\("\|\[\)\?\w\+\("\|\]\)\?\.\)\?' - Get the owner name (optional)
|
||||
" '\("\|\[\)\?\w\+\("\|\]\)\?\ze' - Get the table name
|
||||
" '\s\+\%(as\s\+\)\?\<'.matchstr(table_name, '.\{-}\ze\.\?$').'\>' - Followed by the alias
|
||||
" '\s*\.\@!.*' - Cannot be followed by a .
|
||||
" '\(\<where\>\|$\)' - Must be followed by a WHERE clause
|
||||
" '.*' - Exclude the rest of the line in the match
|
||||
let table_name_new = matchstr(@y,
|
||||
\ '\c\(\<from\>\|\<join\>\|,\)\s*'.
|
||||
\ '\zs\(\("\|\[\)\?\w\+\("\|\]\)\?\.\)\?'.
|
||||
\ '\("\|\[\)\?\w\+\("\|\]\)\?\ze'.
|
||||
@@ -753,7 +814,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
|
||||
" Return to previous location
|
||||
call cursor(curline, curcol)
|
||||
|
||||
|
||||
if found == 0
|
||||
if g:loaded_dbext > 300
|
||||
exec 'DBSetOption use_tbl_alias='.saveSettingAlias
|
||||
@@ -762,7 +823,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
" Not a SQL statement, do not display a list
|
||||
return []
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
if empty(table_cols)
|
||||
" Specify silent mode, no messages to the user (tbl, 1)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" tar.vim: Handles browsing tarfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: May 31, 2011
|
||||
" Version: 27
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 28
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
"
|
||||
@@ -22,7 +22,7 @@
|
||||
if &cp || exists("g:loaded_tar")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tar= "v27"
|
||||
let g:loaded_tar= "v28"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of tar needs vim 7.2"
|
||||
@@ -143,7 +143,7 @@ fun! tar#Browse(tarfile)
|
||||
call setline(lastline+2,'" Browsing tarfile '.a:tarfile)
|
||||
call setline(lastline+3,'" Select a file with cursor and press ENTER')
|
||||
keepj $put =''
|
||||
keepj 0d
|
||||
keepj sil! 0d
|
||||
keepj $
|
||||
|
||||
let tarfile= a:tarfile
|
||||
@@ -158,10 +158,10 @@ fun! tar#Browse(tarfile)
|
||||
elseif tarfile =~# '\.lrp'
|
||||
" call Decho("2: exe silent r! cat -- ".shellescape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "sil! r! cat -- ".shellescape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.bz2$'
|
||||
elseif tarfile =~# '\.\(bz2\|tbz\|tb2\)$'
|
||||
" call Decho("3: exe silent r! bzip2 -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.lzma$'
|
||||
elseif tarfile =~# '\.\(lzma\|tlz\)$'
|
||||
" call Decho("3: exe silent r! lzma -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "sil! r! lzma -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.\(xz\|txz\)$'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" vimball.vim : construct a file containing both paths and files
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: Sep 26, 2011
|
||||
" Version: 34
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 35
|
||||
" GetLatestVimScripts: 1502 1 :AutoInstall: vimball.vim
|
||||
" Copyright: (c) 2004-2011 by Charles E. Campbell, Jr.
|
||||
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
||||
@@ -14,7 +14,7 @@
|
||||
if &cp || exists("g:loaded_vimball")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_vimball = "v34"
|
||||
let g:loaded_vimball = "v35"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of vimball needs vim 7.2"
|
||||
@@ -767,6 +767,9 @@ fun! vimball#RestoreSettings()
|
||||
" call Dret("RestoreSettings")
|
||||
endfun
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Modelines: {{{1
|
||||
" vim: fdm=marker
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" zip.vim: Handles browsing zipfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: May 24, 2011
|
||||
" Version: 24
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 25
|
||||
" Maintainer: Charles E Campbell, Jr <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, Jr. {{{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= "v24"
|
||||
let g:loaded_zip= "v25"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of zip needs vim 7.2"
|
||||
@@ -104,12 +104,12 @@ fun! zip#Browse(zipfile)
|
||||
|
||||
" give header
|
||||
call append(0, ['" zip.vim version '.g:loaded_zip,
|
||||
\ '" Browsing zipfile '.a:zipfile,
|
||||
\ '" Select a file with cursor and press ENTER'])
|
||||
\ '" Browsing zipfile '.a:zipfile,
|
||||
\ '" Select a file with cursor and press ENTER'])
|
||||
keepj $
|
||||
|
||||
" call Decho("exe silent r! ".g:zip_unzipcmd." -l -- ".s:Escape(a:zipfile,1))
|
||||
exe "silent r! ".g:zip_unzipcmd." -Z -1 -- ".s:Escape(a:zipfile,1)
|
||||
exe "keepj sil! r! ".g:zip_unzipcmd." -Z -1 -- ".s:Escape(a:zipfile,1)
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
echohl WarningMsg | echo "***warning*** (zip#Browse) ".fnameescape(a:zipfile)." is not a zip file" | echohl None
|
||||
|
||||
13
runtime/compiler/erlang.vim
Normal file
13
runtime/compiler/erlang.vim
Normal file
@@ -0,0 +1,13 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Erlang
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||
" Last Change: 2012-02-13
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "erlang"
|
||||
|
||||
CompilerSet makeprg=erlc\ -Wall\ %
|
||||
|
||||
CompilerSet errorformat=%f:%l:\ %m
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2011 Oct 26
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2012 Feb 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -33,7 +33,7 @@ files matching *.c. You can also use autocommands to implement advanced
|
||||
features, such as editing compressed files (see |gzip-example|). The usual
|
||||
place to put autocommands is in your .vimrc or .exrc file.
|
||||
|
||||
*E203* *E204* *E143*
|
||||
*E203* *E204* *E143* *E855*
|
||||
WARNING: Using autocommands is very powerful, and may lead to unexpected side
|
||||
effects. Be careful not to destroy your text.
|
||||
- It's a good idea to do some testing on an expendable copy of a file first.
|
||||
@@ -699,7 +699,10 @@ MenuPopup Just before showing the popup menu (under the
|
||||
QuickFixCmdPre Before a quickfix command is run (|:make|,
|
||||
|:lmake|, |:grep|, |:lgrep|, |:grepadd|,
|
||||
|:lgrepadd|, |:vimgrep|, |:lvimgrep|,
|
||||
|:vimgrepadd|, |:lvimgrepadd|, |:cscope|).
|
||||
|:vimgrepadd|, |:lvimgrepadd|, |:cscope|,
|
||||
|:cfile|, |:cgetfile|, |:caddfile|, |:lfile|,
|
||||
|:lgetfile|, |:laddfile|, |:helpgrep|,
|
||||
|:lhelpgrep|).
|
||||
The pattern is matched against the command
|
||||
being run. When |:grep| is used but 'grepprg'
|
||||
is set to "internal" it still matches "grep".
|
||||
@@ -710,7 +713,10 @@ QuickFixCmdPre Before a quickfix command is run (|:make|,
|
||||
*QuickFixCmdPost*
|
||||
QuickFixCmdPost Like QuickFixCmdPre, but after a quickfix
|
||||
command is run, before jumping to the first
|
||||
location. See |QuickFixCmdPost-example|.
|
||||
location. For |:cfile| and |:lfile| commands
|
||||
it is run after error file is read and before
|
||||
moving to the first error.
|
||||
See |QuickFixCmdPost-example|.
|
||||
*RemoteReply*
|
||||
RemoteReply When a reply from a Vim that functions as
|
||||
server was received |server2client()|. The
|
||||
@@ -1052,7 +1058,7 @@ Note that the 'eventignore' option applies here too. Events listed in this
|
||||
option will not cause any commands to be executed.
|
||||
|
||||
*:do* *:doau* *:doautocmd* *E217*
|
||||
:do[autocmd] [group] {event} [fname]
|
||||
:do[autocmd] [<nomodeline>] [group] {event} [fname]
|
||||
Apply the autocommands matching [fname] (default:
|
||||
current file name) for {event} to the current buffer.
|
||||
You can use this when the current file name does not
|
||||
@@ -1071,14 +1077,17 @@ option will not cause any commands to be executed.
|
||||
argument is included, Vim executes only the matching
|
||||
autocommands for that group. Note: if you use an
|
||||
undefined group name, Vim gives you an error message.
|
||||
|
||||
*<nomodeline>*
|
||||
After applying the autocommands the modelines are
|
||||
processed, so that their settings overrule the
|
||||
settings from autocommands, like what happens when
|
||||
editing a file.
|
||||
editing a file. This is skipped when the <nomodeline>
|
||||
argument is present. You probably want to use
|
||||
<nomodeline> for events that are not used when loading
|
||||
a buffer, such as |User|.
|
||||
|
||||
*:doautoa* *:doautoall*
|
||||
:doautoa[ll] [group] {event} [fname]
|
||||
:doautoa[ll] [<nomodeline>] [group] {event} [fname]
|
||||
Like ":doautocmd", but apply the autocommands to each
|
||||
loaded buffer. Note that [fname] is used to select
|
||||
the autocommands, not the buffers to which they are
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 7.3. Last change: 2011 Mar 27
|
||||
*cmdline.txt* For Vim version 7.3. Last change: 2012 Feb 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -426,6 +426,8 @@ a previous version <Esc> was used). In the pattern standard wildcards '*' and
|
||||
'?' are accepted when matching file names. '*' matches any string, '?'
|
||||
matches exactly one character.
|
||||
|
||||
The 'wildignorecase' option can be set to ignore case in filenames.
|
||||
|
||||
If you like tcsh's autolist completion, you can use this mapping:
|
||||
:cnoremap X <C-L><C-D>
|
||||
(Where X is the command key to use, <C-L> is CTRL-L and <C-D> is CTRL-D)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*debug.txt* For Vim version 7.3. Last change: 2010 Dec 22
|
||||
*debug.txt* For Vim version 7.3. Last change: 2012 Feb 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -15,7 +15,7 @@ For debugging Vim scripts, functions, etc. see |debug-scripts|
|
||||
|
||||
==============================================================================
|
||||
|
||||
1. Location of a crash, using gcc and gdb *debug-gcc*
|
||||
1. Location of a crash, using gcc and gdb *debug-gcc* *gdb*
|
||||
|
||||
When Vim crashes in one of the test files, and you are using gcc for
|
||||
compilation, here is what you can do to find out exactly where Vim crashes.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*develop.txt* For Vim version 7.3. Last change: 2008 Dec 17
|
||||
*develop.txt* For Vim version 7.3. Last change: 2012 Jan 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -232,6 +232,17 @@ time shadows global declaration
|
||||
new C++ reserved keyword
|
||||
try Borland C++ doesn't like it to be used as a variable.
|
||||
|
||||
clear Mac curses.h
|
||||
echo Mac curses.h
|
||||
instr Mac curses.h
|
||||
meta Mac curses.h
|
||||
newwin Mac curses.h
|
||||
nl Mac curses.h
|
||||
overwrite Mac curses.h
|
||||
refresh Mac curses.h
|
||||
scroll Mac curses.h
|
||||
typeahead Mac curses.h
|
||||
|
||||
basename() GNU string function
|
||||
dirname() GNU string function
|
||||
get_env_value() Linux system function
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 7.3. Last change: 2011 Feb 26
|
||||
*editing.txt* For Vim version 7.3. Last change: 2012 Mar 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1159,8 +1159,10 @@ MULTIPLE WINDOWS AND BUFFERS *window-exit*
|
||||
*:confirm* *:conf*
|
||||
:conf[irm] {command} Execute {command}, and use a dialog when an
|
||||
operation has to be confirmed. Can be used on the
|
||||
":q", ":qa" and ":w" commands (the latter to over-ride
|
||||
a read-only setting).
|
||||
|:q|, |:qa| and |:w| commands (the latter to override
|
||||
a read-only setting), and any other command that can
|
||||
fail in such a way, such as |:only|, |:buffer|,
|
||||
|:bdelete|, etc.
|
||||
|
||||
Examples: >
|
||||
:confirm w foo
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.3. Last change: 2012 Jan 04
|
||||
*eval.txt* For Vim version 7.3. Last change: 2012 Mar 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1746,7 +1746,8 @@ exists( {expr}) Number TRUE if {expr} exists
|
||||
extend( {expr1}, {expr2} [, {expr3}])
|
||||
List/Dict insert items of {expr2} into {expr1}
|
||||
exp( {expr}) Float exponential of {expr}
|
||||
expand( {expr} [, {flag}]) String expand special keywords in {expr}
|
||||
expand( {expr} [, {nosuf} [, {list}]])
|
||||
any expand special keywords in {expr}
|
||||
feedkeys( {string} [, {mode}]) Number add key sequence to typeahead buffer
|
||||
filereadable( {file}) Number TRUE if {file} is a readable file
|
||||
filewritable( {file}) Number TRUE if {file} is a writable file
|
||||
@@ -1800,7 +1801,8 @@ gettabwinvar( {tabnr}, {winnr}, {name})
|
||||
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}
|
||||
glob( {expr} [, {flag}]) String expand file wildcards in {expr}
|
||||
glob( {expr} [, {nosuf} [, {list}]])
|
||||
any expand file wildcards in {expr}
|
||||
globpath( {path}, {expr} [, {flag}])
|
||||
String do glob({expr}) for all dirs in {path}
|
||||
has( {feature}) Number TRUE if feature {feature} supported
|
||||
@@ -2742,13 +2744,15 @@ exp({expr}) *exp()*
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
expand({expr} [, {flag}]) *expand()*
|
||||
expand({expr} [, {nosuf} [, {list}]]) *expand()*
|
||||
Expand wildcards and the following special keywords in {expr}.
|
||||
The result is a String. 'wildignorecase' applies.
|
||||
'wildignorecase' applies.
|
||||
|
||||
When there are several matches, they are separated by <NL>
|
||||
characters. [Note: in version 5.0 a space was used, which
|
||||
caused problems when a file name contains a space]
|
||||
If {list} is given and it is non-zero, a List will be returned.
|
||||
Otherwise the result is a String and when there are several
|
||||
matches, they are separated by <NL> characters. [Note: in
|
||||
version 5.0 a space was used, which caused problems when a
|
||||
file name contains a space]
|
||||
|
||||
If the expansion fails, the result is an empty string. A name
|
||||
for a non-existing file is not included.
|
||||
@@ -2802,10 +2806,10 @@ expand({expr} [, {flag}]) *expand()*
|
||||
When {expr} does not start with '%', '#' or '<', it is
|
||||
expanded like a file name is expanded on the command line.
|
||||
'suffixes' and 'wildignore' are used, unless the optional
|
||||
{flag} argument is given and it is non-zero. Names for
|
||||
non-existing files are included. The "**" item can be used to
|
||||
search in a directory tree. For example, to find all "README"
|
||||
files in the current directory and below: >
|
||||
{nosuf} argument is given and it is non-zero.
|
||||
Names for non-existing files are included. The "**" item can
|
||||
be used to search in a directory tree. For example, to find
|
||||
all "README" files in the current directory and below: >
|
||||
:echo expand("**/README")
|
||||
<
|
||||
Expand() can also be used to expand variables and environment
|
||||
@@ -3452,19 +3456,25 @@ getwinvar({winnr}, {varname}) *getwinvar()*
|
||||
:let list_is_on = getwinvar(2, '&list')
|
||||
:echo "myvar = " . getwinvar(1, 'myvar')
|
||||
<
|
||||
glob({expr} [, {flag}]) *glob()*
|
||||
glob({expr} [, {nosuf} [, {list}]]) *glob()*
|
||||
Expand the file wildcards in {expr}. See |wildcards| for the
|
||||
use of special characters.
|
||||
The result is a String.
|
||||
When there are several matches, they are separated by <NL>
|
||||
characters.
|
||||
Unless the optional {flag} argument is given and is non-zero,
|
||||
|
||||
Unless the optional {nosuf} argument is given and is non-zero,
|
||||
the 'suffixes' and 'wildignore' options apply: Names matching
|
||||
one of the patterns in 'wildignore' will be skipped and
|
||||
'suffixes' affect the ordering of matches.
|
||||
'wildignorecase' always applies.
|
||||
If the expansion fails, the result is an empty string.
|
||||
A name for a non-existing file is not included.
|
||||
|
||||
When {list} is present and it is non-zero the result is a List
|
||||
with all matching files. The advantage of using a List is,
|
||||
you also get filenames containing newlines correctly.
|
||||
Otherwise the result is a String and when there are several
|
||||
matches, they are separated by <NL> characters.
|
||||
|
||||
If the expansion fails, the result is an empty String or List.
|
||||
A name for a non-existing file is not included. A symbolic
|
||||
link is only included if it points to an existing file.
|
||||
|
||||
For most systems backticks can be used to get files names from
|
||||
any external command. Example: >
|
||||
@@ -4814,6 +4824,10 @@ search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
|
||||
Search for regexp pattern {pattern}. The search starts at the
|
||||
cursor position (you can use |cursor()| to set it).
|
||||
|
||||
If there is no match a 0 is returned and the cursor doesn't
|
||||
move. No error message is given.
|
||||
When a match has been found its line number is returned.
|
||||
|
||||
{flags} is a String, which can contain these character flags:
|
||||
'b' search backward instead of forward
|
||||
'c' accept a match at the cursor position
|
||||
@@ -4847,9 +4861,6 @@ search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
|
||||
giving the argument.
|
||||
{only available when compiled with the |+reltime| feature}
|
||||
|
||||
If there is no match a 0 is returned and the cursor doesn't
|
||||
move. No error message is given.
|
||||
When a match has been found its line number is returned.
|
||||
*search()-sub-match*
|
||||
With the 'p' flag the returned value is one more than the
|
||||
first sub-match in \(\). One if none of them matched but the
|
||||
@@ -5068,7 +5079,8 @@ setcmdpos({pos}) *setcmdpos()*
|
||||
line.
|
||||
|
||||
setline({lnum}, {text}) *setline()*
|
||||
Set line {lnum} of the current buffer to {text}.
|
||||
Set line {lnum} of the current buffer to {text}. To insert
|
||||
lines use |append()|.
|
||||
{lnum} is used like with |getline()|.
|
||||
When {lnum} is just below the last line the {text} will be
|
||||
added as a new line.
|
||||
@@ -5768,9 +5780,9 @@ tabpagebuflist([{arg}]) *tabpagebuflist()*
|
||||
omitted the current tab page is used.
|
||||
When {arg} is invalid the number zero is returned.
|
||||
To get a list of all buffers in all tabs use this: >
|
||||
tablist = []
|
||||
let buflist = []
|
||||
for i in range(tabpagenr('$'))
|
||||
call extend(tablist, tabpagebuflist(i + 1))
|
||||
call extend(buflist, tabpagebuflist(i + 1))
|
||||
endfor
|
||||
< Note that a buffer may appear in more than one window.
|
||||
|
||||
@@ -5992,7 +6004,7 @@ virtcol({expr}) *virtcol()*
|
||||
would be of unlimited width. When there is a <Tab> at the
|
||||
position, the returned Number will be the column at the end of
|
||||
the <Tab>. For example, for a <Tab> in column 1, with 'ts'
|
||||
set to 8, it returns 8.
|
||||
set to 8, it returns 8. |conceal| is ignored.
|
||||
For the byte position use |col()|.
|
||||
For the use of {expr} see |col()|.
|
||||
When 'virtualedit' is used {expr} can be [lnum, col, off], where
|
||||
@@ -6674,9 +6686,9 @@ Hint: If you distribute a bunch of scripts you can pack them together with the
|
||||
==============================================================================
|
||||
6. Curly braces names *curly-braces-names*
|
||||
|
||||
Wherever you can use a variable, you can use a "curly braces name" variable.
|
||||
This is a regular variable name with one or more expressions wrapped in braces
|
||||
{} like this: >
|
||||
In most places where you can use a variable, you can use a "curly braces name"
|
||||
variable. This is a regular variable name with one or more expressions
|
||||
wrapped in braces {} like this: >
|
||||
my_{adjective}_variable
|
||||
|
||||
When Vim encounters this, it evaluates the expression inside the braces, puts
|
||||
@@ -6712,6 +6724,11 @@ Example: >
|
||||
|
||||
This would call the function "my_func_whizz(parameter)".
|
||||
|
||||
This does NOT work: >
|
||||
:let i = 3
|
||||
:let @{i} = '' " error
|
||||
:echo @{i} " error
|
||||
|
||||
==============================================================================
|
||||
7. Commands *expression-commands*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2011 Aug 19
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2012 Feb 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -222,8 +222,9 @@ Buffer objects represent vim buffers. You can obtain them in a number of ways:
|
||||
- from indexing vim.buffers (|python-buffers|)
|
||||
- from the "buffer" attribute of a window (|python-window|)
|
||||
|
||||
Buffer objects have one read-only attribute - name - the full file name for
|
||||
the buffer. They also have three methods (append, mark, and range; see below).
|
||||
Buffer objects have two read-only attributes - name - the full file name for
|
||||
the buffer, and number - the buffer number. They also have three methods
|
||||
(append, mark, and range; see below).
|
||||
|
||||
You can also treat buffer objects as sequence objects. In this context, they
|
||||
act as if they were lists (yes, they are mutable) of strings, with each
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.3. Last change: 2011 Sep 14
|
||||
*insert.txt* For Vim version 7.3. Last change: 2012 Jan 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1010,7 +1010,8 @@ number between zero and the cursor column "col('.')". This involves looking
|
||||
at the characters just before the cursor and including those characters that
|
||||
could be part of the completed item. The text between this column and the
|
||||
cursor column will be replaced with the matches. Return -1 if no completion
|
||||
can be done.
|
||||
can be done, the completion will be cancelled with an error message. Return
|
||||
-2 to cancel silently.
|
||||
|
||||
On the second invocation the arguments are:
|
||||
a:findstart 0
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 7.3. Last change: 2011 Oct 22
|
||||
*map.txt* For Vim version 7.3. Last change: 2012 Feb 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -527,7 +527,7 @@ mappings.
|
||||
<LocalLeader> is just like <Leader>, except that it uses "maplocalleader"
|
||||
instead of "mapleader". <LocalLeader> is to be used for mappings which are
|
||||
local to a buffer. Example: >
|
||||
:map <LocalLeader>q \DoItNow
|
||||
:map <buffer> <LocalLeader>A oanother line<Esc>
|
||||
<
|
||||
In a global plugin <Leader> should be used and in a filetype plugin
|
||||
<LocalLeader>. "mapleader" and "maplocalleader" can be equal. Although, if
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mbyte.txt* For Vim version 7.3. Last change: 2011 Oct 15
|
||||
*mbyte.txt* For Vim version 7.3. Last change: 2012 Feb 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||
@@ -857,7 +857,7 @@ Use the RPM or port for your system.
|
||||
|
||||
|
||||
USING XIM *multibyte-input* *E284* *E286* *E287* *E288*
|
||||
*E285* *E291* *E292* *E290* *E289*
|
||||
*E285* *E289*
|
||||
|
||||
Note that Display and Input are independent. It is possible to see your
|
||||
language even though you have no input method for it. But when your Display
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mlang.txt* For Vim version 7.3. Last change: 2010 Dec 11
|
||||
*mlang.txt* For Vim version 7.3. Last change: 2012 Jan 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -59,7 +59,7 @@ use of "-" and "_".
|
||||
system. Some systems accept aliases like "en" or
|
||||
"en_US", but some only accept the full specification
|
||||
like "en_US.ISO_8859-1". On Unix systems you can use
|
||||
the this command to see what locales are supported: >
|
||||
this command to see what locales are supported: >
|
||||
:!locale -a
|
||||
< With the "messages" argument the language used for
|
||||
messages is set. This can be different when you want,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*netbeans.txt* For Vim version 7.3. Last change: 2011 Oct 20
|
||||
*netbeans.txt* For Vim version 7.3. Last change: 2012 Jan 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur et al.
|
||||
@@ -266,7 +266,7 @@ mechanism.
|
||||
Netbeans messages are processed when Vim is idle, waiting for user input.
|
||||
When Vim is run in non-interactive mode, for example when running an automated
|
||||
test case that sources a Vim script, the idle loop may not be called often
|
||||
enough. In that case, insert |sleep| commands in the Vim script. The |sleep|
|
||||
enough. In that case, insert |:sleep| commands in the Vim script. The |:sleep|
|
||||
command does invoke Netbeans messages processing.
|
||||
|
||||
6.1 Kinds of messages |nb-messages|
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.3. Last change: 2011 Dec 15
|
||||
*options.txt* For Vim version 7.3. Last change: 2012 Mar 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -301,9 +301,8 @@ You will not get back the 'list' value as it was the last time you edited
|
||||
copying the value.
|
||||
{not in Vi}
|
||||
|
||||
:se[t] {option}< Set the local value of {option} to its global value by
|
||||
making it empty. Only makes sense for |global-local|
|
||||
options.
|
||||
:se[t] {option}< For |global-local| options: Remove the local value of
|
||||
{option}, so that the global value will be used.
|
||||
{not in Vi}
|
||||
|
||||
*:setg* *:setglobal*
|
||||
@@ -3773,9 +3772,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'highlight' 'hl' string (default (as a single string):
|
||||
"8:SpecialKey,@:NonText,d:Directory,
|
||||
e:ErrorMsg,i:IncSearch,l:Search,m:MoreMsg,
|
||||
M:ModeMsg,n:LineNr,r:Question,
|
||||
s:StatusLine,S:StatusLineNC,c:VertSplit,
|
||||
t:Title,v:Visual,w:WarningMsg,W:WildMenu,
|
||||
M:ModeMsg,n:LineNr,N:CursorLineNr,
|
||||
r:Question,s:StatusLine,S:StatusLineNC,
|
||||
c:VertSplit, t:Title,v:Visual,
|
||||
w:WarningMsg,W:WildMenu,
|
||||
f:Folded,F:FoldColumn,A:DiffAdd,
|
||||
C:DiffChange,D:DiffDelete,T:DiffText,
|
||||
>:SignColumn,B:SpellBad,P:SpellCap,
|
||||
@@ -3801,6 +3801,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|hl-ModeMsg| M Mode (e.g., "-- INSERT --")
|
||||
|hl-LineNr| n line number for ":number" and ":#" commands, and
|
||||
when 'number' or 'relativenumber' option is set.
|
||||
|hl-CursorLineNr| N like n for when 'cursorline' is set.
|
||||
|hl-Question| r |hit-enter| prompt and yes/no questions
|
||||
|hl-StatusLine| s status line of current window |status-line|
|
||||
|hl-StatusLineNC| S status lines of not-current windows
|
||||
@@ -5079,7 +5080,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
number.
|
||||
When a long, wrapped line doesn't start with the first character, '-'
|
||||
characters are put before the number.
|
||||
See |hl-LineNr| for the highlighting used for the number.
|
||||
See |hl-LineNr| and |hl-CursorLineNr| for the highlighting used for
|
||||
the number.
|
||||
When setting this option, 'relativenumber' is reset.
|
||||
|
||||
*'numberwidth'* *'nuw'*
|
||||
@@ -5478,7 +5480,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
number.
|
||||
When a long, wrapped line doesn't start with the first character, '-'
|
||||
characters are put before the number.
|
||||
See |hl-LineNr| for the highlighting used for the number.
|
||||
See |hl-LineNr| and |hl-CursorLineNr| for the highlighting used for
|
||||
the number.
|
||||
When setting this option, 'number' is reset.
|
||||
|
||||
*'remap'* *'noremap'*
|
||||
@@ -5900,8 +5903,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
security reasons.
|
||||
|
||||
*'shellcmdflag'* *'shcf'*
|
||||
'shellcmdflag' 'shcf' string (default: "-c", MS-DOS and Win32, when 'shell'
|
||||
does not contain "sh" somewhere: "/c")
|
||||
'shellcmdflag' 'shcf' string (default: "-c";
|
||||
MS-DOS and Win32, when 'shell' does not
|
||||
contain "sh" somewhere: "/c")
|
||||
global
|
||||
{not in Vi}
|
||||
Flag passed to the shell to execute "!" and ":!" commands; e.g.,
|
||||
@@ -6040,8 +6044,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
0 and 2: use "shell 'shellcmdflag' cmd" to start external commands
|
||||
1 and 3: use "shell cmd" to start external commands
|
||||
|
||||
*'shellxescape'* *'sxe'*
|
||||
'shellxescape' 'sxe' string (default: "";
|
||||
for MS-DOS and MS-Windows: "\"&|<>()@^")
|
||||
global
|
||||
{not in Vi}
|
||||
When 'shellxquote' is set to "(" then the characters listed in this
|
||||
option will be escaped with a '^' character. This makes it possible
|
||||
to execute most external commands with cmd.exe.
|
||||
|
||||
*'shellxquote'* *'sxq'*
|
||||
'shellxquote' 'sxq' string (default: "";
|
||||
for Win32, when 'shell' is cmd.exe: "("
|
||||
for Win32, when 'shell' contains "sh"
|
||||
somewhere: "\""
|
||||
for Unix, when using system(): "\"")
|
||||
@@ -6051,11 +6065,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
the "!" and ":!" commands. Includes the redirection. See
|
||||
'shellquote' to exclude the redirection. It's probably not useful
|
||||
to set both options.
|
||||
This is an empty string by default. Known to be useful for
|
||||
third-party shells when using the Win32 version, such as the MKS Korn
|
||||
Shell or bash, where it should be "\"". The default is adjusted
|
||||
according the value of 'shell', to reduce the need to set this option
|
||||
by the user. See |dos-shell|.
|
||||
When the value is '(' then ')' is appended. When the value is '"('
|
||||
then ')"' is appended.
|
||||
When the value is '(' then also see 'shellxescape'.
|
||||
This is an empty string by default on most systems, but is known to be
|
||||
useful for on Win32 version, either for cmd.exe which automatically
|
||||
strips off the first and last quote on a command, or 3rd-party shells
|
||||
such as the MKS Korn Shell or bash, where it should be "\"". The
|
||||
default is adjusted according the value of 'shell', to reduce the need
|
||||
to set this option by the user. See |dos-shell|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
@@ -6549,6 +6567,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
evaluated and the result is used as the option value. Example: >
|
||||
:set statusline=%!MyStatusLine()
|
||||
< The result can contain %{} items that will be evaluated too.
|
||||
Note that the "%!" expression is evaluated in the context of the
|
||||
current window and buffer, while %{} items are evaluated in the
|
||||
context of the window that the statusline belongs to.
|
||||
|
||||
When there is error while evaluating the option then it will be made
|
||||
empty to avoid further errors. Otherwise screen updating would loop.
|
||||
|
||||
@@ -1,15 +1,21 @@
|
||||
*pi_getscript.txt* For Vim version 7.0. Last change: 2011 May 31
|
||||
*pi_getscript.txt* For Vim version 7.0. Last change: 2011 Jun 23
|
||||
>
|
||||
GETSCRIPT REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||
<
|
||||
Authors: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamilyA.Mbiz>
|
||||
(remove NOSPAM from the email address)
|
||||
*GetLatestVimScripts-copyright*
|
||||
Copyright: (c) 2004-2010 by Charles E. Campbell, Jr. *glvs-copyright*
|
||||
The VIM LICENSE applies to getscript.vim and
|
||||
pi_getscript.txt (see |copyright|) except use
|
||||
"getscript" instead of "Vim". No warranty, express or implied.
|
||||
Use At-Your-Own-Risk.
|
||||
Copyright: (c) 2004-2012 by Charles E. Campbell, Jr. *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"
|
||||
instead of "VIM". Like anything else that's free, getscript and its
|
||||
associated files are provided *as is* and comes with no warranty of
|
||||
any kind, either expressed or implied. No guarantees of
|
||||
merchantability. No guarantees of suitability for any purpose. By
|
||||
using this plugin, you agree that in no event will the copyright
|
||||
holder be liable for any damages resulting from the use of this
|
||||
software. Use at your own risk!
|
||||
|
||||
Getscript is a plugin that simplifies retrieval of the latest versions of the
|
||||
scripts that you yourself use! Typing |:GLVS| will invoke getscript; it will
|
||||
@@ -374,6 +380,8 @@ The AutoInstall process will:
|
||||
==============================================================================
|
||||
9. GetLatestVimScripts History *getscript-history* *glvs-hist* {{{1
|
||||
|
||||
v44 Jun 23, 2011 : * handles additional decompression options for tarballs
|
||||
(tgz taz tbz txz)
|
||||
v33 May 31, 2011 : * using fnameescape() instead of escape()
|
||||
* *.xz support
|
||||
v32 Jun 19, 2010 : * (Jan Steffens) added support for xz compression
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_netrw.txt* For Vim version 7.3. Last change: 2011 Sep 26
|
||||
*pi_netrw.txt* For Vim version 7.3. Last change: 2012 Jan 26
|
||||
|
||||
-----------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||
@@ -43,7 +43,7 @@ Copyright: Copyright (C) 1999-2011 Charles E Campbell, Jr *netrw-copyright*
|
||||
5. Activation...........................................|netrw-activate|
|
||||
6. Transparent Remote File Editing......................|netrw-transparent|
|
||||
7. Ex Commands..........................................|netrw-ex|
|
||||
8. Variables and Options................................|netrw-var|
|
||||
8. Variables and Options................................|netrw-settings|
|
||||
9. Browsing.............................................|netrw-browse|
|
||||
Introduction To Browsing...........................|netrw-intro-browse|
|
||||
Quick Reference: Maps..............................|netrw-browse-maps|
|
||||
@@ -309,7 +309,7 @@ CHANGING USERID AND PASSWORD *netrw-chgup* *netrw-userpass* {{{2
|
||||
:call NetUserPass("uid","password") -- sets global uid and password
|
||||
|
||||
NETRW VARIABLES AND SETTINGS *netrw-variables* {{{2
|
||||
(also see: |netrw-browser-var| |netrw-protocol| |netrw-settings| |netrw-var|)
|
||||
(also see: |netrw-browser-var| |netrw-protocol| |netrw-settings|)
|
||||
|
||||
Netrw provides a lot of variables which allow you to customize netrw to your
|
||||
preferences. One way to look at them is via the command :NetrwSettings (see
|
||||
@@ -2354,7 +2354,7 @@ settings. You may change any of their values; when you save the file, the
|
||||
settings therein will be used. One may also press "?" on any of the lines for
|
||||
help on what each of the variables do.
|
||||
|
||||
(also see: |netrw-browser-var| |netrw-protocol| |netrw-var| |netrw-variables|)
|
||||
(also see: |netrw-browser-var| |netrw-protocol| |netrw-settings| |netrw-variables|)
|
||||
|
||||
|
||||
==============================================================================
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_tar.txt* For Vim version 7.3. Last change: 2011 May 31
|
||||
*pi_tar.txt* For Vim version 7.3. Last change: 2012 Jan 17
|
||||
|
||||
+====================+
|
||||
| Tar File Interface |
|
||||
@@ -6,9 +6,16 @@
|
||||
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Copyright 2005-2010: The GPL (gnu public license) applies to *tar-copyright*
|
||||
tar.vim, tarPlugin.vim, and pi_tar.txt.
|
||||
No warranty, express or implied. Use At-Your-Own-Risk.
|
||||
Copyright 2005-2012: *tar-copyright*
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
package, including tarPlugin.vim, tar.vim, and pi_tar.txt. Like
|
||||
anything else that's except use "tar.vim" instead of "VIM". Like
|
||||
anything else that's free, tar.vim and its associated files are
|
||||
provided *as is* and comes with no warranty of any kind, either
|
||||
expressed or implied. No guarantees of merchantability. No
|
||||
guarantees of suitability for any purpose. By using this plugin, you
|
||||
agree that in no event will the copyright holder be liable for any
|
||||
damages resulting from the use of this software. Use at your own risk!
|
||||
|
||||
==============================================================================
|
||||
1. Contents *tar* *tar-contents*
|
||||
@@ -83,6 +90,7 @@ Copyright 2005-2010: The GPL (gnu public license) applies to *tar-copyright*
|
||||
4. History *tar-history*
|
||||
|
||||
|
||||
v28 Jun 23, 2011 * a few more decompression options (tbz tb2 txz)
|
||||
v27 May 31, 2011 * moved cygwin detection before g:tar_copycmd handling
|
||||
* inserted additional |:keepj| modifiers
|
||||
* changed silent to sil! (|:silent|)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_vimball.txt* For Vim version 7.3. Last change: 2011 Sep 26
|
||||
*pi_vimball.txt* For Vim version 7.3. Last change: 2012 Jan 17
|
||||
|
||||
----------------
|
||||
Vimball Archiver
|
||||
@@ -6,11 +6,16 @@
|
||||
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Copyright: (c) 2004-2011 by Charles E. Campbell, Jr. *Vimball-copyright*
|
||||
The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
||||
(see |copyright|) except use "Vimball" instead of "Vim".
|
||||
No warranty, express or implied.
|
||||
Use At-Your-Own-Risk!
|
||||
Copyright: (c) 2004-2012 by Charles E. Campbell, Jr. *Vimball-copyright*
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
package, including vimballPlugin.vim, vimball.vim, and pi_vimball.txt.
|
||||
except use "vimball" instead of "VIM". Like anything else that's free,
|
||||
vimball.vim and its associated files are provided *as is* and comes with
|
||||
no warranty of any kind, either expressed or implied. No guarantees
|
||||
of merchantability. No guarantees of suitability for any purpose. By
|
||||
using this plugin, you agree that in no event will the copyright
|
||||
holder be liable for any damages resulting from the use of this
|
||||
software. Use at your own risk!
|
||||
|
||||
==============================================================================
|
||||
1. Contents *vba* *vimball* *vimball-contents*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_zip.txt* For Vim version 7.3. Last change: 2011 Aug 14
|
||||
*pi_zip.txt* For Vim version 7.3. Last change: 2012 Jan 17
|
||||
|
||||
+====================+
|
||||
| Zip File Interface |
|
||||
@@ -7,14 +7,15 @@
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
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,
|
||||
zip.vim, zipPlugin.vim, and pi_zip.txt are provided *as is*
|
||||
and it comes with no warranty of any kind, either expressed or
|
||||
implied. By using this plugin, you agree that in no event will
|
||||
the copyright holder be liable for any damages resulting from
|
||||
the use of this software.
|
||||
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
|
||||
and its associated files are provided *as is* and comes with no
|
||||
warranty of any kind, either expressed or implied. No guarantees of
|
||||
merchantability. No guarantees of suitability for any purpose. By
|
||||
using this plugin, you agree that in no event will the copyright
|
||||
holder be liable for any damages resulting from the use of this
|
||||
software. Use at your own risk!
|
||||
|
||||
==============================================================================
|
||||
1. Contents *zip* *zip-contents*
|
||||
@@ -73,7 +74,7 @@ Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
==============================================================================
|
||||
3. Additional Extensions *zip-extension*
|
||||
|
||||
Apparently there are a number of archivers who generate zip files that
|
||||
Apparently there are a number of archivers which generate zip files that
|
||||
don't use the .zip extension (.jar, .xpi, etc). To handle such files,
|
||||
place a line in your <.vimrc> file: >
|
||||
|
||||
@@ -84,6 +85,8 @@ Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
|
||||
==============================================================================
|
||||
4. History *zip-history* {{{1
|
||||
v25 Jun 27, 2011 * using keepj with unzip -Z
|
||||
(consistent with the -p variant)
|
||||
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 @@
|
||||
*quickref.txt* For Vim version 7.3. Last change: 2011 Jun 12
|
||||
*quickref.txt* For Vim version 7.3. Last change: 2012 Feb 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -851,6 +851,7 @@ Short explanation of each option: *option-list*
|
||||
'shellslash' 'ssl' use forward slash for shell file names
|
||||
'shelltemp' 'stmp' whether to use a temp file for shell commands
|
||||
'shelltype' 'st' Amiga: influences how to use a shell
|
||||
'shellxescape' 'sxe' characters to escape when 'shellxquote' is (
|
||||
'shellxquote' 'sxq' like 'shellquote', but include redirection
|
||||
'shiftround' 'sr' round indent to multiple of shiftwidth
|
||||
'shiftwidth' 'sw' number of spaces to use for (auto)indent step
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 7.3. Last change: 2011 Jan 06
|
||||
*repeat.txt* For Vim version 7.3. Last change: 2012 Mar 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -109,7 +109,7 @@ q Stops recording. (Implementation note: The 'q' that
|
||||
it was the result of a mapping) {Vi: no recording}
|
||||
|
||||
*@*
|
||||
@{0-9a-z".=*} Execute the contents of register {0-9a-z".=*} [count]
|
||||
@{0-9a-z".=*+} Execute the contents of register {0-9a-z".=*+} [count]
|
||||
times. Note that register '%' (name of the current
|
||||
file) and '#' (name of the alternate file) cannot be
|
||||
used.
|
||||
@@ -123,8 +123,8 @@ q Stops recording. (Implementation note: The 'q' that
|
||||
*@@* *E748*
|
||||
@@ Repeat the previous @{0-9a-z":*} [count] times.
|
||||
|
||||
:[addr]*{0-9a-z".=} *:@* *:star*
|
||||
:[addr]@{0-9a-z".=*} Execute the contents of register {0-9a-z".=*} as an Ex
|
||||
:[addr]*{0-9a-z".=+} *:@* *:star*
|
||||
:[addr]@{0-9a-z".=*+} Execute the contents of register {0-9a-z".=*+} as an Ex
|
||||
command. First set cursor at line [addr] (default is
|
||||
current line). When the last line in the register does
|
||||
not have a <CR> it will be added automatically when
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*starting.txt* For Vim version 7.3. Last change: 2011 Jul 22
|
||||
*starting.txt* For Vim version 7.3. Last change: 2012 Mar 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -248,7 +248,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
{not in Vi}
|
||||
|
||||
*-g*
|
||||
-g Start Vim in GUI mode. See |gui|. {not in Vi}
|
||||
-g Start Vim in GUI mode. See |gui|. For the opposite see |-v|.
|
||||
{not in Vi}
|
||||
|
||||
*-v*
|
||||
-v Start Ex in Vi mode. Only makes a difference when the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2012 Jan 04
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2012 Mar 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -199,7 +199,8 @@ REPLACING AN EXISTING SYNTAX FILE *mysyntaxfile-replace*
|
||||
If you don't like a distributed syntax file, or you have downloaded a new
|
||||
version, follow the same steps as for |mysyntaxfile| above. Just make sure
|
||||
that you write the syntax file in a directory that is early in 'runtimepath'.
|
||||
Vim will only load the first syntax file found.
|
||||
Vim will only load the first syntax file found, assuming that it sets
|
||||
b:current_syntax.
|
||||
|
||||
|
||||
NAMING CONVENTIONS *group-name* *{group-name}* *E669* *W18*
|
||||
@@ -754,7 +755,8 @@ c_no_ansi don't do standard ANSI types and constants
|
||||
c_ansi_typedefs ... but do standard ANSI types
|
||||
c_ansi_constants ... but do standard ANSI constants
|
||||
c_no_utf don't highlight \u and \U in strings
|
||||
c_syntax_for_h use C syntax for *.h files, instead of C++
|
||||
c_syntax_for_h for *.h files use C syntax instead of C++ and use objc
|
||||
syntax instead of objcpp
|
||||
c_no_if0 don't highlight "#if 0" blocks as comments
|
||||
c_no_cformat don't highlight %-formats in strings
|
||||
c_no_c99 don't highlight C99 standard items
|
||||
@@ -986,9 +988,9 @@ Example: >
|
||||
or >
|
||||
// vim:syntax=c.doxygen
|
||||
|
||||
It can also be done automatically for C, C++, C# and IDL files by setting the
|
||||
global or buffer-local variable load_doxygen_syntax. This is done by adding
|
||||
the following to your .vimrc. >
|
||||
It can also be done automatically for C, C++, C#, IDL and PHP files by setting
|
||||
the global or buffer-local variable load_doxygen_syntax. This is done by
|
||||
adding the following to your .vimrc. >
|
||||
:let g:load_doxygen_syntax=1
|
||||
|
||||
There are a couple of variables that have an effect on syntax highlighting, and
|
||||
@@ -1161,7 +1163,7 @@ should be appropriate for most users most of the time because Fortran 2008 is
|
||||
almost a superset of previous versions (Fortran 2003, 95, 90, and 77).
|
||||
|
||||
Fortran source code form ~
|
||||
Fortran 9x code can be in either fixed or free source form. Note that the
|
||||
Fortran code can be in either fixed or free source form. Note that the
|
||||
syntax highlighting will not be correct if the form is incorrectly set.
|
||||
|
||||
When you create a new fortran file, the syntax script assumes fixed source
|
||||
@@ -1242,54 +1244,54 @@ recognized, as will construct names at the end of a do, if, select or forall
|
||||
construct.
|
||||
|
||||
Non-default fortran dialects ~
|
||||
The syntax script supports five Fortran dialects: f95, f90, f77, the Lahey
|
||||
subset elf90, and the Imagine1 subset F. However, these dialects are outdated;
|
||||
the next version of the syntax script will support only two variants: modern
|
||||
Fortran and legacy Fortran.
|
||||
The syntax script supports two Fortran dialects: f08 and F. You will probably
|
||||
find the default highlighting (f08) satisfactory. A few legacy constructs
|
||||
deleted or declared obsolescent in the 2008 standard are highlighted as todo
|
||||
items.
|
||||
|
||||
If you use f77 with extensions, even common ones like do/enddo loops, do/while
|
||||
loops and free source form that are supported by most f77 compilers including
|
||||
g77 (GNU Fortran), then you will probably find the default highlighting
|
||||
satisfactory. However, if you use strict f77 with no extensions, not even free
|
||||
source form or the MIL STD 1753 extensions, then the advantages of setting the
|
||||
dialect to f77 are that names such as SUM are recognized as user variable
|
||||
names and not highlighted as f9x intrinsic functions, that obsolete constructs
|
||||
such as ASSIGN statements are not highlighted as todo items, and that fixed
|
||||
source form will be assumed.
|
||||
If you use F, the advantage of setting the dialect appropriately is that
|
||||
other legacy features excluded from F will be highlighted as todo items and
|
||||
that free source form will be assumed.
|
||||
|
||||
If you use elf90 or F, the advantage of setting the dialect appropriately is
|
||||
that f90 features excluded from these dialects will be highlighted as todo
|
||||
items and that free source form will be assumed as required for these
|
||||
dialects.
|
||||
The dialect can be selected in various ways. If all your fortran files use
|
||||
the same dialect, set the global variable fortran_dialect in your .vimrc prior
|
||||
to your syntax on statement. The case-sensitive, permissible values of
|
||||
fortran_dialect are "f08" or "F". Invalid values of fortran_dialect are
|
||||
ignored.
|
||||
|
||||
The dialect can be selected by setting the variable fortran_dialect. The
|
||||
permissible values of fortran_dialect are case-sensitive and must be "f95",
|
||||
"f90", "f77", "elf" or "F". Invalid values of fortran_dialect are ignored.
|
||||
|
||||
If all your fortran files use the same dialect, set fortran_dialect in your
|
||||
.vimrc prior to your syntax on statement. If the dialect depends upon the file
|
||||
extension, then it is most convenient to set it in a ftplugin file. For more
|
||||
information on ftplugin files, see |ftplugin|. For example, if all your
|
||||
fortran files with an .f90 extension are written in the elf subset, your
|
||||
ftplugin file should contain the code >
|
||||
If the dialect depends upon the file extension, then it is most convenient to
|
||||
set a buffer-local variable in a ftplugin file. For more information on
|
||||
ftplugin files, see |ftplugin|. For example, if all your fortran files with
|
||||
an .f90 extension are written in the F subset, your ftplugin file should
|
||||
contain the code >
|
||||
let s:extfname = expand("%:e")
|
||||
if s:extfname ==? "f90"
|
||||
let fortran_dialect="elf"
|
||||
let b:fortran_dialect="F"
|
||||
else
|
||||
unlet! fortran_dialect
|
||||
unlet! b:fortran_dialect
|
||||
endif
|
||||
Note that this will work only if the "filetype plugin indent on" command
|
||||
precedes the "syntax on" command in your .vimrc file.
|
||||
|
||||
Finer control is necessary if the file extension does not uniquely identify
|
||||
the dialect. You can override the default dialect, on a file-by-file basis, by
|
||||
including a comment with the directive "fortran_dialect=xx" (where xx=f77 or
|
||||
elf or F or f90 or f95) in one of the first three lines in your file. For
|
||||
example, your older .f files may be written in extended f77 but your newer
|
||||
ones may be F codes, and you would identify the latter by including in the
|
||||
first three lines of those files a Fortran comment of the form >
|
||||
the dialect. You can override the default dialect, on a file-by-file basis,
|
||||
by including a comment with the directive "fortran_dialect=xx" (where xx=F or
|
||||
f08) in one of the first three lines in your file. For example, your older .f
|
||||
files may be legacy code but your newer ones may be F codes, and you would
|
||||
identify the latter by including in the first three lines of those files a
|
||||
Fortran comment of the form >
|
||||
! fortran_dialect=F
|
||||
F overrides elf if both directives are present.
|
||||
|
||||
For previous versions of the syntax, you may have set fortran_dialect to the
|
||||
now-obsolete values "f77", "f90", "f95", or "elf". Such settings will be
|
||||
silently handled as "f08". Users of "elf" may wish to experiment with "F"
|
||||
instead.
|
||||
|
||||
The syntax/fortran.vim script contains embedded comments that tell you how to
|
||||
comment and/or uncomment some lines to (a) activate recognition of some
|
||||
non-standard, vendor-supplied intrinsics and (b) to prevent features deleted
|
||||
or declared obsolescent in the 2008 standard from being highlighted as todo
|
||||
items.
|
||||
|
||||
Limitations ~
|
||||
Parenthesis checking does not catch too few closing parentheses. Hollerith
|
||||
@@ -1742,19 +1744,10 @@ instead, and the name of your source file should be *.pike
|
||||
|
||||
LUA *lua.vim* *ft-lua-syntax*
|
||||
|
||||
This syntax file may be used for Lua 4.0, Lua 5.0 or Lua 5.1 (the latter is
|
||||
The Lua syntax file can be used for versions 4.0, 5.0, 5.1 and 5.2 (5.2 is
|
||||
the default). You can select one of these versions using the global variables
|
||||
lua_version and lua_subversion. For example, to activate Lua
|
||||
4.0 syntax highlighting, use this command: >
|
||||
|
||||
:let lua_version = 4
|
||||
|
||||
If you are using Lua 5.0, use these commands: >
|
||||
|
||||
:let lua_version = 5
|
||||
:let lua_subversion = 0
|
||||
|
||||
To restore highlighting for Lua 5.1: >
|
||||
5.1 syntax highlighting, set the variables like this:
|
||||
|
||||
:let lua_version = 5
|
||||
:let lua_subversion = 1
|
||||
@@ -4430,6 +4423,8 @@ IncSearch 'incsearch' highlighting; also used for the text replaced with
|
||||
*hl-LineNr*
|
||||
LineNr Line number for ":number" and ":#" commands, and when 'number'
|
||||
or 'relativenumber' option is set.
|
||||
*hl-CursorLineNr*
|
||||
CursorLineNr Like LineNr when 'cursorline' is set for the cursor line.
|
||||
*hl-MatchParen*
|
||||
MatchParen The character under the cursor or just before it, if it
|
||||
is a paired bracket, and its match. |pi_paren.txt|
|
||||
|
||||
@@ -783,6 +783,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'shellslash' options.txt /*'shellslash'*
|
||||
'shelltemp' options.txt /*'shelltemp'*
|
||||
'shelltype' options.txt /*'shelltype'*
|
||||
'shellxescape' options.txt /*'shellxescape'*
|
||||
'shellxquote' options.txt /*'shellxquote'*
|
||||
'shiftround' options.txt /*'shiftround'*
|
||||
'shiftwidth' options.txt /*'shiftwidth'*
|
||||
@@ -852,6 +853,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'swf' options.txt /*'swf'*
|
||||
'switchbuf' options.txt /*'switchbuf'*
|
||||
'sws' options.txt /*'sws'*
|
||||
'sxe' options.txt /*'sxe'*
|
||||
'sxq' options.txt /*'sxq'*
|
||||
'syn' options.txt /*'syn'*
|
||||
'synmaxcol' options.txt /*'synmaxcol'*
|
||||
@@ -1243,6 +1245,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
+writebackup various.txt /*+writebackup*
|
||||
+xfontset various.txt /*+xfontset*
|
||||
+xim various.txt /*+xim*
|
||||
+xpm_w32 various.txt /*+xpm_w32*
|
||||
+xsmp various.txt /*+xsmp*
|
||||
+xsmp_interact various.txt /*+xsmp_interact*
|
||||
+xterm_clipboard various.txt /*+xterm_clipboard*
|
||||
@@ -3205,6 +3208,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
<line1> map.txt /*<line1>*
|
||||
<line2> map.txt /*<line2>*
|
||||
<lt> intro.txt /*<lt>*
|
||||
<nomodeline> autocmd.txt /*<nomodeline>*
|
||||
<q-args> map.txt /*<q-args>*
|
||||
<reg> map.txt /*<reg>*
|
||||
<register> map.txt /*<register>*
|
||||
@@ -4239,6 +4243,7 @@ E851 gui_x11.txt /*E851*
|
||||
E852 gui_x11.txt /*E852*
|
||||
E853 eval.txt /*E853*
|
||||
E854 options.txt /*E854*
|
||||
E855 autocmd.txt /*E855*
|
||||
E86 windows.txt /*E86*
|
||||
E87 windows.txt /*E87*
|
||||
E88 windows.txt /*E88*
|
||||
@@ -4791,6 +4796,7 @@ beval_col-variable eval.txt /*beval_col-variable*
|
||||
beval_lnum-variable eval.txt /*beval_lnum-variable*
|
||||
beval_text-variable eval.txt /*beval_text-variable*
|
||||
beval_winnr-variable eval.txt /*beval_winnr-variable*
|
||||
bitwise-function usr_41.txt /*bitwise-function*
|
||||
blockwise-examples visual.txt /*blockwise-examples*
|
||||
blockwise-operators visual.txt /*blockwise-operators*
|
||||
blockwise-register change.txt /*blockwise-register*
|
||||
@@ -5946,6 +5952,7 @@ g`a motion.txt /*g`a*
|
||||
ga various.txt /*ga*
|
||||
garbagecollect() eval.txt /*garbagecollect()*
|
||||
gd pattern.txt /*gd*
|
||||
gdb debug.txt /*gdb*
|
||||
ge motion.txt /*ge*
|
||||
get() eval.txt /*get()*
|
||||
get-ms-debuggers debug.txt /*get-ms-debuggers*
|
||||
@@ -7041,8 +7048,8 @@ objects index.txt /*objects*
|
||||
obtaining-exted netbeans.txt /*obtaining-exted*
|
||||
ocaml.vim syntax.txt /*ocaml.vim*
|
||||
octal eval.txt /*octal*
|
||||
octal-nrformats options.txt /*octal-nrformats*
|
||||
octal-number eval.txt /*octal-number*
|
||||
octal-number options.txt /*octal-number*
|
||||
oldfiles-variable eval.txt /*oldfiles-variable*
|
||||
ole-activation if_ole.txt /*ole-activation*
|
||||
ole-eval if_ole.txt /*ole-eval*
|
||||
@@ -8357,13 +8364,27 @@ vimdev intro.txt /*vimdev*
|
||||
vimdiff diff.txt /*vimdiff*
|
||||
vimfiles options.txt /*vimfiles*
|
||||
viminfo starting.txt /*viminfo*
|
||||
viminfo-! options.txt /*viminfo-!*
|
||||
viminfo-% options.txt /*viminfo-%*
|
||||
viminfo-' options.txt /*viminfo-'*
|
||||
viminfo-/ options.txt /*viminfo-\/*
|
||||
viminfo-: options.txt /*viminfo-:*
|
||||
viminfo-< options.txt /*viminfo-<*
|
||||
viminfo-@ options.txt /*viminfo-@*
|
||||
viminfo-c options.txt /*viminfo-c*
|
||||
viminfo-encoding starting.txt /*viminfo-encoding*
|
||||
viminfo-errors starting.txt /*viminfo-errors*
|
||||
viminfo-f options.txt /*viminfo-f*
|
||||
viminfo-file starting.txt /*viminfo-file*
|
||||
viminfo-file-marks starting.txt /*viminfo-file-marks*
|
||||
viminfo-file-name starting.txt /*viminfo-file-name*
|
||||
viminfo-h options.txt /*viminfo-h*
|
||||
viminfo-n options.txt /*viminfo-n*
|
||||
viminfo-quote options.txt /*viminfo-quote*
|
||||
viminfo-r options.txt /*viminfo-r*
|
||||
viminfo-read starting.txt /*viminfo-read*
|
||||
viminfo-read-write starting.txt /*viminfo-read-write*
|
||||
viminfo-s options.txt /*viminfo-s*
|
||||
viminfo-write starting.txt /*viminfo-write*
|
||||
vimrc starting.txt /*vimrc*
|
||||
vimrc-filetype usr_05.txt /*vimrc-filetype*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.3. Last change: 2012 Jan 10
|
||||
*todo.txt* For Vim version 7.3. Last change: 2012 Mar 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -34,84 +34,66 @@ not be repeated below, unless there is extra information.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Go through list of maintainers that didn't respond. (Thilo Six, Mar 19)
|
||||
|
||||
Go through more coverity reports.
|
||||
|
||||
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
|
||||
|
||||
Compilation problem on z/OS, POUND is equal to '#', duplicate case.
|
||||
(Stephen Bovy, 2011 Dec 16)
|
||||
Stack trace of crash: http://vpaste.net/GBt9S
|
||||
(Alexandre Provencio)
|
||||
|
||||
Once syntax and other runtime files have been fixed: add "set cp" to
|
||||
check.vim. Use a function to run both with 'cp' and 'nocp'.
|
||||
|
||||
Patch to fix regression caused by 7.3.251. (Christian Brabandt, 2012 Jan 5)
|
||||
|
||||
Patch to make ":helpgrep" work with non-UTF-8 encoding. (Yasuhiro Matsumoto,
|
||||
2011 Nov 28, update later that day)
|
||||
|
||||
Patch to fix messing up terminal when redrawing too early. (Christian
|
||||
Brabandt, 2012 Jan 5)
|
||||
|
||||
Patch to fix member confusion in Lua interface. (Taro Muraoka, 2012 Jan 8)
|
||||
Update Jan 9.
|
||||
Carvalho will merge the patch.
|
||||
|
||||
Possible quickfix bug: Audrius Kažukauskas, 2012 Jan 6
|
||||
|
||||
Problem reading german spell file? (Jan Stocker, 2012 Jan 5)
|
||||
GTK: problem with 'L' in 'guioptions' changing the window width.
|
||||
(Aaron Cornelius, 2012 Feb 6)
|
||||
|
||||
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)
|
||||
|
||||
":doau" says it triggers modeline. Should this only happen for events used
|
||||
when loading a buffer? (Kana Natsuno, 2011 Nov 7)
|
||||
Issue 54: document behavior of -complete, also expands arg.
|
||||
|
||||
Patch to fix "it" and "at" when there is a dash in the tag name.
|
||||
(Christian Brabandt, 2011 Nov 20)
|
||||
|
||||
Patch to make 'shcf' default work better. (Benjamin Fritz, 2011 Nov 18)
|
||||
Win32: When 'shell' is cmd.exe this command fails:
|
||||
echo system('"c:/path/echo.exe" "foo bar"')
|
||||
Should we set the default for 'shellxquote' to a double quote, when 'shell'
|
||||
contains "cmd" in the tail? (Benjamin Fritz, 2008 Oct 13)
|
||||
Also set 'shellcmdflag' to include /s.
|
||||
|
||||
Other way to start Mzscheme. Tim Brown, 2011 Oct 5: change main call.
|
||||
Later patch by Sergey Khorev, 2011 Oct 9.
|
||||
|
||||
Patch to make InsertCharPre work better. (Yasuhiro Matsumoto, 2011 Oct 21)
|
||||
|
||||
Patch to fix closed folds with "loadview". (Xavier de Gaye, 2011 Nov 25)
|
||||
Syntax update problem in one buffer opened in two windows, bottom window is
|
||||
not correctly updated. (Paul Harris, 2012 Feb 27)
|
||||
|
||||
Patch to add getsid(). (Tyru, 2011 Oct 2) Do we want this? Update Oct 4.
|
||||
Or use expand('<sid>')?
|
||||
|
||||
Patch for glob() returning a list. (Christian Brabandt, 2011 Aug 24, second
|
||||
one)
|
||||
Win32: When the taskbar is at the top of the screen creating the tabbar causes
|
||||
the window to move unnecessarily. (William E. Skeith III, 2012 Jan 12)
|
||||
Patch: 2012 Jan 13 Needs more work (2012 Feb 2)
|
||||
|
||||
Patch to highlight cursor line number. (Howard Buchholz (lhb), 2011 Oct 18)
|
||||
URXVT:
|
||||
- will get stuck if byte sequence does not containe expected semicolon.
|
||||
- Use urxvt mouse support also in xterm. Explanations:
|
||||
http://www.midnight-commander.org/ticket/2662
|
||||
|
||||
Patch for urxvt mouse support after shell command. (Issue 31)
|
||||
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?
|
||||
|
||||
When exiting with unsaved changes, selecting an existing file in the file
|
||||
dialog, there is no dialog to ask whether the existing file should be
|
||||
overwritten. (Felipe G. Nievinski, 2011 Dec 22)
|
||||
|
||||
7 Setting an option always sets "w_set_curswant", while this is only
|
||||
required for a few options. Only do it for those options to avoid the
|
||||
side effect.
|
||||
Patch by Kana Natsuno, 2011 Nov 12.
|
||||
Using Ctrl-] in a mapping does not expand abbreviations. Patch by Christian
|
||||
Brabandt, 2012 Mar 2.
|
||||
|
||||
Patch to fix member confusion in Lua interface. (Taro Muraoka, 2012 Jan 8)
|
||||
Update Jan 9.
|
||||
Carvalho merged the patch: New version 2012 Jan 19.
|
||||
|
||||
Patch for option in 'cino' to specify more indent for continued conditions.
|
||||
(Lech Lorens, 2011 Nov 27)
|
||||
Isn't this already possible?
|
||||
|
||||
Patch for using objcpp file type for headers files. Issue 44.
|
||||
Isn't this already possible? Update 2012 Feb 15.
|
||||
|
||||
Docs fix for v:register. (Ingo Karkat, 2011 Sep 26, 27)
|
||||
v:register doesn't work exactly as expected. (David Fishburn, 2011 Sep 20)
|
||||
|
||||
Patch for: vimgrep fails when 'autochdir' is set. (Ben Fritz, 2012 Feb 4)
|
||||
|
||||
Patch for: (Christian Brabandt, 2011 Aug 22)
|
||||
- Make it possible to enter "r<C-E>" and "r<C-Y>" (get character from line
|
||||
below/above).
|
||||
@@ -121,24 +103,39 @@ Patch for: (Christian Brabandt, 2011 Aug 24, updated patch)
|
||||
buffer={bufnr}". So one can remove all signs for one file/buffer.
|
||||
|
||||
Patch to add "onselected" callback for completion. (Taro Muraoka, 2011 Sep 24)
|
||||
Another for CompleteFuncOk. (Florian Klein, 2012 Jan 31)
|
||||
Name it "CompleteFuncDone".
|
||||
|
||||
Patch for Make_mvc.mak and Make_ming.mak for Ruby support. (Yasuhiro
|
||||
Matsumoto, 2012 Jan 30)
|
||||
|
||||
Patch to add completion for :history command. (Dominique Pelle, 2012 Feb 26)
|
||||
|
||||
Patch for 'backupcopy' default behavior for symlinks on Windows. (David Pope,
|
||||
2012 Mar 21)
|
||||
|
||||
Use a count before "v" and "V" to select that many characters or lines?
|
||||
(Kikyous)
|
||||
|
||||
":tab drop buffer.c" always opens a new tab, also if buffer.c is already in an
|
||||
open window. (Herb Sitz, 2011 Nov 17)
|
||||
|
||||
Problem with winfixheight and resizing. (Yukihiro Nakadaira, 2011 Sep 17)
|
||||
Patch Sep 18.
|
||||
|
||||
Patch for has('unnamedplus') docs. (Tony Mechelynck, 2011 Sep 27)
|
||||
And one for gui_x11.txt.
|
||||
|
||||
":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.
|
||||
|
||||
Problem with l: dictionary being locked in a function. (ZyX, 2011 Jul 21)
|
||||
|
||||
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)
|
||||
|
||||
Patch to pass list to or(), and() and xor(). (Yasuhiro Matsumoto, 2012 Feb 8)
|
||||
|
||||
Patch to improve "it" and "at" text object matching. (Christian Brabandt, 2011
|
||||
Nov 20)
|
||||
|
||||
@@ -150,6 +147,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)
|
||||
|
||||
"fC" doesn't position the cursor correctly when there are concealed
|
||||
characters. Patch by Christian Brabandt, 2011 Oct 11)
|
||||
|
||||
@@ -174,12 +174,21 @@ 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)
|
||||
|
||||
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.
|
||||
|
||||
Win32: Patch for alpha-blended icons and toolbar height. (Sergiu Dotenco, 2011
|
||||
Sep 17) Asked for feedback from others.
|
||||
|
||||
Win32: Cannot cd into a directory that starts with a space. (Andy Wokula, 2012
|
||||
Jan 19)
|
||||
|
||||
Win32: default for 'backupcopy' is wrong for a symbolic link. (mklink one
|
||||
two). (Benjamin Fritz, 2012 Mar 15)
|
||||
|
||||
Need to escape $HOME on Windows? (ZyX, 2011 Jul 21)
|
||||
|
||||
"2" in 'formatopions' not working in comments. (Christian Corneliussen, 2011
|
||||
@@ -225,6 +234,10 @@ Bug: Windows 7 64 bit system freezes when 'clipboard' set to "unnamed" and
|
||||
doing ":g/test/d". Putting every delete on the clipboard? (Robert Chan, 2011
|
||||
Jun 17)
|
||||
|
||||
When there is a ">" in a line that "gq" wraps to the start of the next line,
|
||||
then the following line will pick it up as a leader. Should get the leader
|
||||
from the first line, not a wrapped line. (Matt Ackeret, 2012 Feb 27)
|
||||
|
||||
Using ":break" or something else that stops executing commands inside a
|
||||
":finally" does not rethrow a previously uncaught exception. (ZyX, 2010 Oct
|
||||
15)
|
||||
@@ -277,6 +290,8 @@ Patch to support sorting on floating point number. (Alex Jakushev, 2010 Oct
|
||||
Patch to addd TextDeletePost and TextYankPost events. (Philippe Vaucher, 2011
|
||||
May 24) Update May 26.
|
||||
|
||||
Patch for :tabrecently. (Hirokazu Yoshida, 2012 Jan 30)
|
||||
|
||||
When a script contains "redir => s:foo" but doesn't end redirection, a
|
||||
following "redir" command gives an error for not being able to access s:foo.
|
||||
(ZyX, 2011 Mar 27)
|
||||
@@ -490,6 +505,8 @@ path.
|
||||
Test 51 fails when language set to German. (Marco, 2011 Jan 9)
|
||||
Dominique can't reproduc it.
|
||||
|
||||
'ambiwidth' should be global-local.
|
||||
|
||||
":function f(x) keepjumps" creates a function where every command is executed
|
||||
like it has ":keepjumps" before it.
|
||||
|
||||
@@ -578,6 +595,8 @@ Win32: Expanding 'path' runs into a maximum size limit. (bgold12, 2009 Nov 15)
|
||||
Win32: Patch for enabling quick edit mode in console. (Craig Barkhouse, 2010
|
||||
Sep 1)
|
||||
|
||||
Win32: Patch for using .png files for icons. (Charles Peacech, 2012 Feb 5)
|
||||
|
||||
Putting a Visual block while 'visualedit' is "all" does not leave the cursor
|
||||
on the first character. (John Beckett, 2010 Aug 7)
|
||||
|
||||
@@ -803,8 +822,6 @@ the buffer to be unmodified.
|
||||
Unfinished patch by Ian Kelling, 2008 Jul 11. Followup Jul 14, need to have
|
||||
another look at it.
|
||||
|
||||
Patch for c.vim and cpp.vim syntax files. (Chung-chieh Shan, 2008 Nov 26)
|
||||
|
||||
c.vim: XXX in a comment is colored yellow, but not when it's after "#if 0".
|
||||
(Ilya Dogolazky, 2009 Aug 7)
|
||||
|
||||
@@ -939,9 +956,6 @@ try/catch not working when inside a for loop. (ZyX, 2011 Jan 25)
|
||||
":tab help" always opens a new tab, while ":help" re-uses an existing window.
|
||||
Would be more consistent when an existing tab is re-used. (Tony Mechelynck)
|
||||
|
||||
":tab drop filename" doesn't work nicely when "filename" is open in a window
|
||||
in another tab. (Tony Mechelynck, 2009 Feb 13)
|
||||
|
||||
Add ":nofold". Range will apply without expanding to closed fold.
|
||||
|
||||
Including NFA regexp code:
|
||||
@@ -952,6 +966,7 @@ Performance tests:
|
||||
- ~/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'.
|
||||
|
||||
@@ -3218,10 +3233,6 @@ Performance:
|
||||
Add command to compile a vim script and add it to the file in-place.
|
||||
Split Ex command executing into a parsing and executing phase.
|
||||
Use compiled code for functions, while loops, etc.
|
||||
8 When editing a file with extremely long lines (e.g., an executable), the
|
||||
"linerest" in readfile() is allocated twice to be able to copy what was
|
||||
read so far. Use realloc() instead? Or split the line when allocating
|
||||
memory fails and "linerest" is big (> 100000)?
|
||||
8 When defining autocommands (e.g., from $VIMRUNTIME/filetype.vim), need to
|
||||
compare each pattern with all existing patterns. Use a hash code to avoid
|
||||
using strcmp() too often?
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*undo.txt* For Vim version 7.3. Last change: 2011 Aug 02
|
||||
*undo.txt* For Vim version 7.3. Last change: 2012 Mar 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -250,7 +250,7 @@ detect if an undo file is no longer synchronized with the file it was written
|
||||
for (with a hash of the file contents) and ignore it when the file was changed
|
||||
after the undo file was written, to prevent corruption. An undo file is also
|
||||
ignored if its owner differs from the owner of the edited file. Set 'verbose'
|
||||
to get a message about that.
|
||||
to get a message about that when opening a file.
|
||||
|
||||
Undo files are normally saved in the same directory as the file. This can be
|
||||
changed with the 'undodir' option.
|
||||
@@ -267,7 +267,12 @@ respectively:
|
||||
(the magic number at the start of the file is wrong), then
|
||||
this fails, unless the ! was added.
|
||||
If it exists and does look like an undo file it is
|
||||
overwritten.
|
||||
overwritten. If there is no undo-history, nothing will be
|
||||
written.
|
||||
Implementation detail: Overwriting happens by first deleting
|
||||
the existing file and then creating a new file with the same
|
||||
name. So it is not possible to overwrite an existing undofile
|
||||
in a write-protected directory.
|
||||
{not in Vi}
|
||||
|
||||
:rundo {file} Read undo history from {file}.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 7.3. Last change: 2011 Dec 15
|
||||
*usr_41.txt* For Vim version 7.3. Last change: 2012 Mar 16
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -1710,6 +1710,7 @@ make the script work for most people. It is done like this: >
|
||||
12 set cpo&vim
|
||||
..
|
||||
42 let &cpo = s:save_cpo
|
||||
43 unlet s:save_cpo
|
||||
|
||||
We first store the old value of 'cpoptions' in the s:save_cpo variable. At
|
||||
the end of the plugin this value is restored.
|
||||
@@ -1956,6 +1957,7 @@ Here is the resulting complete example: >
|
||||
40 endif
|
||||
41
|
||||
42 let &cpo = s:save_cpo
|
||||
43 unlet s:save_cpo
|
||||
|
||||
Line 33 wasn't explained yet. It applies the new correction to the word under
|
||||
the cursor. The |:normal| command is used to use the new abbreviation. Note
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.3. Last change: 2012 Jan 04
|
||||
*various.txt* For Vim version 7.3. Last change: 2012 Jan 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -363,30 +363,30 @@ N *+multi_lang* non-English language support |multi-lang|
|
||||
m *+mzscheme* Mzscheme interface |mzscheme|
|
||||
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
|
||||
m *+netbeans_intg* |netbeans|
|
||||
m *+ole* Win32 GUI only: |ole-interface|
|
||||
N *+path_extra* Up/downwards search in 'path' and 'tags'
|
||||
m *+ole* Win32 GUI only: |ole-interface|
|
||||
N *+path_extra* Up/downwards search in 'path' and 'tags'
|
||||
m *+perl* Perl interface |perl|
|
||||
m *+perl/dyn* Perl interface |perl-dynamic| |/dyn|
|
||||
N *+persistent_undo* Persistent undo |undo-persistence|
|
||||
*+postscript* |:hardcopy| writes a PostScript file
|
||||
*+postscript* |:hardcopy| writes a PostScript file
|
||||
N *+printer* |:hardcopy| command
|
||||
H *+profile* |:profile| command
|
||||
m *+python* Python 2 interface |python|
|
||||
m *+python/dyn* Python 2 interface |python-dynamic| |/dyn|
|
||||
m *+python/dyn* Python 2 interface |python-dynamic| |/dyn|
|
||||
m *+python3* Python 3 interface |python|
|
||||
m *+python3/dyn* Python 3 interface |python-dynamic| |/dyn|
|
||||
m *+python3/dyn* Python 3 interface |python-dynamic| |/dyn|
|
||||
N *+quickfix* |:make| and |quickfix| commands
|
||||
N *+reltime* |reltime()| function, 'hlsearch'/'incsearch' timeout,
|
||||
'redrawtime' option
|
||||
B *+rightleft* Right to left typing |'rightleft'|
|
||||
m *+ruby* Ruby interface |ruby|
|
||||
m *+ruby/dyn* Ruby interface |ruby-dynamic| |/dyn|
|
||||
N *+scrollbind* |'scrollbind'|
|
||||
N *+scrollbind* |'scrollbind'|
|
||||
B *+signs* |:sign|
|
||||
N *+smartindent* |'smartindent'|
|
||||
N *+smartindent* |'smartindent'|
|
||||
m *+sniff* SniFF interface |sniff|
|
||||
N *+startuptime* |--startuptime| argument
|
||||
N *+statusline* Options 'statusline', 'rulerformat' and special
|
||||
N *+startuptime* |--startuptime| argument
|
||||
N *+statusline* Options 'statusline', 'rulerformat' and special
|
||||
formats of 'titlestring' and 'iconstring'
|
||||
m *+sun_workshop* |workshop|
|
||||
N *+syntax* Syntax highlighting |syntax|
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 Jan 04
|
||||
" Last Change: 2012 Mar 28
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -367,7 +367,11 @@ au BufNewFile,BufRead *.h call s:FTheader()
|
||||
|
||||
func! s:FTheader()
|
||||
if match(getline(1, min([line("$"), 200])), '^@\(interface\|end\|class\)') > -1
|
||||
setf objc
|
||||
if exists("g:c_syntax_for_h")
|
||||
setf objc
|
||||
else
|
||||
setf objcpp
|
||||
endif
|
||||
elseif exists("g:c_syntax_for_h")
|
||||
setf c
|
||||
elseif exists("g:ch_syntax_for_h")
|
||||
@@ -1264,7 +1268,7 @@ au BufNewFile,BufRead *.nqc setf nqc
|
||||
au BufNewFile,BufRead *.nsi setf nsis
|
||||
|
||||
" OCAML
|
||||
au BufNewFile,BufRead *.ml,*.mli,*.mll,*.mly setf ocaml
|
||||
au BufNewFile,BufRead *.ml,*.mli,*.mll,*.mly,.ocamlinit setf ocaml
|
||||
|
||||
" Occam
|
||||
au BufNewFile,BufRead *.occ setf occam
|
||||
@@ -2317,6 +2321,9 @@ au BufNewFile,BufRead fglrxrc setf xml
|
||||
au BufNewFile,BufRead *.xlf setf xml
|
||||
au BufNewFile,BufRead *.xliff setf xml
|
||||
|
||||
" XML User Interface Language
|
||||
au BufNewFile,BufRead *.xul setf xml
|
||||
|
||||
" X11 xmodmap (also see below)
|
||||
au BufNewFile,BufRead *Xmodmap setf xmodmap
|
||||
|
||||
@@ -2545,17 +2552,19 @@ au BufNewFile,BufRead *.txt,*.text setf text
|
||||
" detected filetypes.
|
||||
runtime! ftdetect/*.vim
|
||||
|
||||
" NOTE: The above command could have ended the filetypedetect autocmd group
|
||||
" and started another one. Let's make sure it has ended to get to a consistent
|
||||
" state.
|
||||
augroup END
|
||||
|
||||
" Generic configuration file (check this last, it's just guessing!)
|
||||
au BufNewFile,BufRead,StdinReadPost *
|
||||
au filetypedetect BufNewFile,BufRead,StdinReadPost *
|
||||
\ if !did_filetype() && expand("<amatch>") !~ g:ft_ignore_pat
|
||||
\ && (getline(1) =~ '^#' || getline(2) =~ '^#' || getline(3) =~ '^#'
|
||||
\ || getline(4) =~ '^#' || getline(5) =~ '^#') |
|
||||
\ setf conf |
|
||||
\ endif
|
||||
|
||||
augroup END
|
||||
|
||||
|
||||
" If the GUI is already running, may still need to install the Syntax menu.
|
||||
" Don't do it when the 'M' flag is included in 'guioptions'.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Abaqus finite element input file (www.abaqus.com)
|
||||
" Maintainer: Carl Osterwisch <osterwischc@asme.org>
|
||||
" Last Change: 2008 Oct 5
|
||||
" Last Change: 2012 Mar 11
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
@@ -87,3 +87,4 @@ let b:undo_ftplugin .= "|unmap <buffer> [[|unmap <buffer> ]]"
|
||||
|
||||
" Restore saved compatibility options
|
||||
let &cpoptions = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -41,3 +41,4 @@ let b:undo_ftplugin = "unlet! b:browsefilter | " . s:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -57,3 +57,4 @@ let b:undo_ftplugin = "unlet! b:match_words b:match_ignorecase b:browsefilter |
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -39,3 +39,4 @@ let b:undo_ftplugin = "unlet! b:browsefilter | " . b:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -24,3 +24,4 @@ let b:undo_ftplugin = "unlet! b:match_words"
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -45,3 +45,4 @@ let b:undo_ftplugin = "setlocal commentstring< formatoptions<" .
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Former Maintainers: Michael Piefel <piefel@informatik.hu-berlin.de>
|
||||
" Stefano Zacchiroli <zack@debian.org>
|
||||
" Last Change: 2010-07-11
|
||||
" License: GNU GPL, version 2.0 or later
|
||||
" Last Change: 2012-01-31
|
||||
" License: Vim License
|
||||
" URL: http://hg.debian.org/hg/pkg-vim/vim/file/unstable/runtime/ftplugin/debchangelog.vim
|
||||
|
||||
" Bug completion requires apt-listbugs installed for Debian packages or
|
||||
|
||||
@@ -37,3 +37,4 @@ let b:undo_ftplugin = "setlocal commentstring< comments< formatoptions<" .
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
87
runtime/ftplugin/erlang.vim
Normal file
87
runtime/ftplugin/erlang.vim
Normal file
@@ -0,0 +1,87 @@
|
||||
" Vim ftplugin file
|
||||
" Language: Erlang
|
||||
" Author: Oscar Hellstr<74>m <oscar@oscarh.net>
|
||||
" Contributors: Ricardo Catalinas Jim<69>nez <jimenezrick@gmail.com>
|
||||
" Eduardo Lopez (http://github.com/tapichu)
|
||||
" License: Vim license
|
||||
" Version: 2012/01/25
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
else
|
||||
let b:did_ftplugin = 1
|
||||
endif
|
||||
|
||||
if exists('s:did_function_definitions')
|
||||
call s:SetErlangOptions()
|
||||
finish
|
||||
else
|
||||
let s:did_function_definitions = 1
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
if !exists('g:erlang_keywordprg')
|
||||
let g:erlang_keywordprg = 'erl -man'
|
||||
endif
|
||||
|
||||
if !exists('g:erlang_folding')
|
||||
let g:erlang_folding = 0
|
||||
endif
|
||||
|
||||
let s:erlang_fun_begin = '^\a\w*(.*$'
|
||||
let s:erlang_fun_end = '^[^%]*\.\s*\(%.*\)\?$'
|
||||
|
||||
function s:SetErlangOptions()
|
||||
if g:erlang_folding
|
||||
setlocal foldmethod=expr
|
||||
setlocal foldexpr=GetErlangFold(v:lnum)
|
||||
setlocal foldtext=ErlangFoldText()
|
||||
endif
|
||||
|
||||
setlocal comments=:%%%,:%%,:%
|
||||
setlocal commentstring=%%s
|
||||
|
||||
setlocal formatoptions+=ro
|
||||
let &l:keywordprg = g:erlang_keywordprg
|
||||
endfunction
|
||||
|
||||
function GetErlangFold(lnum)
|
||||
let lnum = a:lnum
|
||||
let line = getline(lnum)
|
||||
|
||||
if line =~ s:erlang_fun_end
|
||||
return '<1'
|
||||
endif
|
||||
|
||||
if line =~ s:erlang_fun_begin && foldlevel(lnum - 1) == 1
|
||||
return '1'
|
||||
endif
|
||||
|
||||
if line =~ s:erlang_fun_begin
|
||||
return '>1'
|
||||
endif
|
||||
|
||||
return '='
|
||||
endfunction
|
||||
|
||||
function ErlangFoldText()
|
||||
let line = getline(v:foldstart)
|
||||
let foldlen = v:foldend - v:foldstart + 1
|
||||
let lines = ' ' . foldlen . ' lines: ' . substitute(line, "[\ \t]*", '', '')
|
||||
if foldlen < 10
|
||||
let lines = ' ' . lines
|
||||
endif
|
||||
let retval = '+' . v:folddashes . lines
|
||||
|
||||
return retval
|
||||
endfunction
|
||||
|
||||
call s:SetErlangOptions()
|
||||
|
||||
let b:undo_ftplugin = "setlocal foldmethod< foldexpr< foldtext<"
|
||||
\ . " comments< commentstring< formatoptions<"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: eRuby
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2010 Apr 15
|
||||
" Last Change: 2012 Mar 11
|
||||
" URL: http://vim-ruby.rubyforge.org
|
||||
" Anon CVS: See above site
|
||||
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
|
||||
@@ -100,5 +100,6 @@ let b:undo_ftplugin = "setl cms< "
|
||||
\ " | unlet! b:browsefilter b:match_words | " . s:undo_ftplugin
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Falcon
|
||||
" Author: Steven Oliver <oliver.steven@gmail.com>
|
||||
" Copyright: Copyright (c) 2009, 2010, 2011 Steven Oliver
|
||||
" Copyright: Copyright (c) 2009, 2010, 2011, 2012 Steven Oliver
|
||||
" License: You may redistribute this under the same terms as Vim itself
|
||||
" --------------------------------------------------------------------------
|
||||
" GetLatestVimScripts: 2762 1 :AutoInstall: falcon.vim
|
||||
@@ -40,6 +40,10 @@ if has("gui_win32") && !exists("b:browsefilter")
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setlocal tabstop< shiftwidth< expandtab< fileencoding<"
|
||||
\ . " suffixesadd< comments<"
|
||||
\ . "| unlet! b:browsefiler"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Haml
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2010 May 21
|
||||
" Last Change: 2012 Mar 11
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -63,5 +63,6 @@ let b:undo_ftplugin = "setl cms< com< "
|
||||
\ " | unlet! b:browsefilter b:match_words | " . s:undo_ftplugin
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim:set sw=2:
|
||||
|
||||
@@ -12,7 +12,7 @@ endif
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let cpo_save = &cpo
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
let b:undo_ftplugin = "setl fo< com< tw< commentstring<"
|
||||
@@ -57,5 +57,6 @@ if exists("loaded_matchit")
|
||||
endif
|
||||
|
||||
setlocal ignorecase
|
||||
let &cpo = cpo_save
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
setlocal cpo+=M " makes \%( match \)
|
||||
|
||||
@@ -88,3 +88,4 @@ let b:undo_ftplugin = "setlocal commentstring< matchpairs< omnifunc< comments< f
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -34,5 +34,6 @@ let &l:include = '\\input'
|
||||
setlocal suffixesadd=.tex
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim:sts=2:sw=2:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Java
|
||||
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
|
||||
" Last Change: 20 Jan 2009
|
||||
" Last Change: 2012 Mar 11
|
||||
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
@@ -48,3 +48,4 @@ let b:undo_ftplugin = "setlocal suffixes< suffixesadd<" .
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -64,3 +64,4 @@ let b:undo_ftplugin = "unlet! b:browsefilter b:match_words | " . s:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Kimwitu++
|
||||
" Maintainer: Michael Piefel <entwurf@piefel.de>
|
||||
" Last Change: 10 December 2011
|
||||
" Last Change: 10 March 2012
|
||||
|
||||
" Behaves almost like C++
|
||||
runtime! ftplugin/cpp.vim ftplugin/cpp_*.vim ftplugin/cpp/*.vim
|
||||
@@ -20,5 +20,13 @@ endif
|
||||
" Set the errorformat for the Kimwitu++ compiler
|
||||
set efm+=kc%.%#:\ error\ at\ %f:%l:\ %m
|
||||
|
||||
if exists("b:undo_ftplugin")
|
||||
let b:undo_ftplugin = b:undo_ftplugin . " | setlocal efm<"
|
||||
\ . "| unlet! b:browsefiler"
|
||||
else
|
||||
let b:undo_ftplugin = "setlocal efm<"
|
||||
\ . "| unlet! b:browsefiler"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" URL: http://sites.google.com/site/khorser/opensource/vim
|
||||
" Original author: Dorai Sitaram <ds26@gte.com>
|
||||
" Original URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
|
||||
" Last Change: Jan 9, 2012
|
||||
" Last Change: Mar 5, 2012
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -24,3 +24,5 @@ setl lisp
|
||||
" e.g. insertion of ;;; and ;; on normal "O" or "o" when staying in comment
|
||||
setl comments^=:;;;,:;;,sr:#\|,mb:\|,ex:\|#
|
||||
setl formatoptions+=croql
|
||||
|
||||
let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lisp<"
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Logcheck
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Last Change: 2010 Jul 29
|
||||
" License: GNU GPL, version 2.0
|
||||
" Last Change: 2012 Jan 15
|
||||
" License: Vim License
|
||||
" URL: http://hg.debian.org/hg/pkg-vim/vim/file/unstable/runtime/ftplugin/logcheck.vim
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file.
|
||||
" Language: Lua 4.0+
|
||||
" Maintainer: Max Ischenko <mfi@ukr.net>
|
||||
" Last Change: 2011 Dec 10 by Thilo Six
|
||||
" Last Change: 2012 Mar 07
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -38,3 +38,5 @@ endif " exists("loaded_matchit")
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
let b:undo_ftplugin = "setlocal fo< com< cms< suffixesadd<"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: man
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Last Change: 2011 Jul 25
|
||||
" Last Change: 2012 Mar 6
|
||||
|
||||
" To make the ":Man" command available before editing a manual page, source
|
||||
" this script from your startup vimrc file.
|
||||
@@ -35,6 +35,8 @@ if &filetype == "man"
|
||||
nnoremap <buffer> <c-t> :call <SID>PopPage()<CR>
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setlocal iskeyword<"
|
||||
|
||||
endif
|
||||
|
||||
if exists(":Man") != 2
|
||||
|
||||
@@ -25,6 +25,4 @@ let b:undo_ftplugin = "setlocal suffixesadd< suffixes< "
|
||||
\ . "| unlet! b:match_words"
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
|
||||
|
||||
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -2,17 +2,18 @@
|
||||
" Maintainer: David Baelde <firstname.name@ens-lyon.org>
|
||||
" Mike Leary <leary@nwlink.com>
|
||||
" Markus Mottl <markus.mottl@gmail.com>
|
||||
" Pierre Vittet <pierre-vittet@pvittet.com>
|
||||
" Stefano Zacchiroli <zack@bononia.it>
|
||||
" Vincent Aravantinos <firstname.name@imag.fr>
|
||||
" URL: http://www.ocaml.info/vim/ftplugin/ocaml.vim
|
||||
" Last Change: 2010 Jul 10 - Bugfix, thanks to Pat Rondon
|
||||
" Last Change:
|
||||
" 2012 Jan 15 - Bugfix :reloading .annot file does not close
|
||||
" splitted view (Pierre Vittet)
|
||||
" 2011 Nov 28 - Bugfix + support of multiple ml annotation file
|
||||
" (Pierre Vittet)
|
||||
" 2010 Jul 10 - Bugfix, thanks to Pat Rondon
|
||||
" 2008 Jul 17 - Bugfix related to fnameescape (VA)
|
||||
" 2007 Sep 09 - Added .annot support for ocamlbuild, python not
|
||||
" needed anymore (VA)
|
||||
" 2006 May 01 - Added .annot support for file.whateverext (SZ)
|
||||
" 2006 Apr 11 - Fixed an initialization bug; fixed ASS abbrev (MM)
|
||||
" 2005 Oct 13 - removed GPL; better matchit support (MM, SZ)
|
||||
"
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
@@ -287,24 +288,27 @@ endfunction
|
||||
endfun
|
||||
|
||||
" After call:
|
||||
" - b:annot_file_path :
|
||||
"
|
||||
" Following information have been put in s:annot_file_list, using
|
||||
" annot_file_name name as key:
|
||||
" - annot_file_path :
|
||||
" path to the .annot file corresponding to the
|
||||
" source file (dealing with ocamlbuild stuff)
|
||||
" - b:_build_path:
|
||||
" - _build_path:
|
||||
" path to the build directory even if this one is
|
||||
" not named '_build'
|
||||
" - date_of_last annot:
|
||||
" Set to 0 until we load the file. It contains the
|
||||
" date at which the file has been loaded.
|
||||
function! s:Locate_annotation()
|
||||
if !b:annotation_file_located
|
||||
|
||||
let annot_file_name = s:Fnameescape(expand('%:t:r')).'.annot'
|
||||
if !exists ("s:annot_file_list[annot_file_name]")
|
||||
silent exe 'cd' s:Fnameescape(expand('%:p:h'))
|
||||
|
||||
let annot_file_name = s:Fnameescape(expand('%:r')).'.annot'
|
||||
|
||||
" 1st case : the annot file is in the same directory as the buffer (no ocamlbuild)
|
||||
let b:annot_file_path = findfile(annot_file_name,'.')
|
||||
if b:annot_file_path != ''
|
||||
let b:annot_file_path = getcwd().'/'.b:annot_file_path
|
||||
let b:_build_path = ''
|
||||
let annot_file_path = findfile(annot_file_name,'.')
|
||||
if annot_file_path != ''
|
||||
let annot_file_path = getcwd().'/'.annot_file_path
|
||||
let _build_path = ''
|
||||
else
|
||||
" 2nd case : the buffer and the _build directory are in the same directory
|
||||
" ..
|
||||
@@ -312,12 +316,12 @@ endfunction
|
||||
" / \
|
||||
" _build .ml
|
||||
"
|
||||
let b:_build_path = finddir('_build','.')
|
||||
if b:_build_path != ''
|
||||
let b:_build_path = getcwd().'/'.b:_build_path
|
||||
let b:annot_file_path = findfile(annot_file_name,'_build')
|
||||
if b:annot_file_path != ''
|
||||
let b:annot_file_path = getcwd().'/'.b:annot_file_path
|
||||
let _build_path = finddir('_build','.')
|
||||
if _build_path != ''
|
||||
let _build_path = getcwd().'/'._build_path
|
||||
let annot_file_path = findfile(annot_file_name,'_build')
|
||||
if annot_file_path != ''
|
||||
let annot_file_path = getcwd().'/'.annot_file_path
|
||||
endif
|
||||
else
|
||||
" 3rd case : the _build directory is in a directory higher in the file hierarchy
|
||||
@@ -330,46 +334,54 @@ endfunction
|
||||
" \
|
||||
" .ml
|
||||
"
|
||||
let b:_build_path = finddir('_build',';')
|
||||
if b:_build_path != ''
|
||||
let project_path = substitute(b:_build_path,'/_build$','','')
|
||||
let _build_path = finddir('_build',';')
|
||||
if _build_path != ''
|
||||
let project_path = substitute(_build_path,'/_build$','','')
|
||||
let path_relative_to_project = s:Fnameescape(substitute(expand('%:p:h'),project_path.'/','',''))
|
||||
let b:annot_file_path = findfile(annot_file_name,project_path.'/_build/'.path_relative_to_project)
|
||||
let annot_file_path = findfile(annot_file_name,project_path.'/_build/'.path_relative_to_project)
|
||||
else
|
||||
let b:annot_file_path = findfile(annot_file_name,'**')
|
||||
let annot_file_path = findfile(annot_file_name,'**')
|
||||
"4th case : what if the user decided to change the name of the _build directory ?
|
||||
" -> we relax the constraints, it should work in most cases
|
||||
if b:annot_file_path != ''
|
||||
if annot_file_path != ''
|
||||
" 4a. we suppose the renamed _build directory is in the current directory
|
||||
let b:_build_path = matchstr(b:annot_file_path,'^[^/]*')
|
||||
if b:annot_file_path != ''
|
||||
let b:annot_file_path = getcwd().'/'.b:annot_file_path
|
||||
let b:_build_path = getcwd().'/'.b:_build_path
|
||||
let _build_path = matchstr(annot_file_path,'^[^/]*')
|
||||
if annot_file_path != ''
|
||||
let annot_file_path = getcwd().'/'.annot_file_path
|
||||
let _build_path = getcwd().'/'._build_path
|
||||
endif
|
||||
else
|
||||
let annot_file_name = ''
|
||||
"(Pierre Vittet: I have commented 4b because this was chrashing
|
||||
"my vim (it produced infinite loop))
|
||||
"
|
||||
" 4b. anarchy : the renamed _build directory may be higher in the hierarchy
|
||||
" this will work if the file for which we are looking annotations has a unique name in the whole project
|
||||
" if this is not the case, it may still work, but no warranty here
|
||||
let b:annot_file_path = findfile(annot_file_name,'**;')
|
||||
let project_path = s:Find_common_path(b:annot_file_path,expand('%:p:h'))
|
||||
let b:_build_path = matchstr(b:annot_file_path,project_path.'/[^/]*')
|
||||
"let annot_file_path = findfile(annot_file_name,'**;')
|
||||
"let project_path = s:Find_common_path(annot_file_path,expand('%:p:h'))
|
||||
"let _build_path = matchstr(annot_file_path,project_path.'/[^/]*')
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
if b:annot_file_path == ''
|
||||
if annot_file_path == ''
|
||||
throw 'E484: no annotation file found'
|
||||
endif
|
||||
|
||||
silent exe 'cd' '-'
|
||||
|
||||
let b:annotation_file_located = 1
|
||||
let s:annot_file_list[annot_file_name]= [annot_file_path, _build_path, 0]
|
||||
endif
|
||||
endfun
|
||||
|
||||
" This in order to locate the .annot file only once
|
||||
let b:annotation_file_located = 0
|
||||
" This variable contain a dictionnary of list. Each element of the dictionnary
|
||||
" represent an annotation system. An annotation system is a list with :
|
||||
" - annotation file name as it's key
|
||||
" - annotation file path as first element of the contained list
|
||||
" - build path as second element of the contained list
|
||||
" - annot_file_last_mod (contain the date of .annot file) as third element
|
||||
let s:annot_file_list = {}
|
||||
|
||||
" 2. Finding the type information in the annotation file
|
||||
|
||||
@@ -379,16 +391,17 @@ endfunction
|
||||
" After call:
|
||||
" The current buffer is now the one containing the .annot file.
|
||||
" We manage to keep all this hidden to the user's eye.
|
||||
function! s:Enter_annotation_buffer()
|
||||
function! s:Enter_annotation_buffer(annot_file_path)
|
||||
let s:current_pos = getpos('.')
|
||||
let s:current_hidden = &l:hidden
|
||||
set hidden
|
||||
let s:current_buf = bufname('%')
|
||||
if bufloaded(b:annot_file_path)
|
||||
silent exe 'keepj keepalt' 'buffer' s:Fnameescape(b:annot_file_path)
|
||||
if bufloaded(a:annot_file_path)
|
||||
silent exe 'keepj keepalt' 'buffer' s:Fnameescape(a:annot_file_path)
|
||||
else
|
||||
silent exe 'keepj keepalt' 'view' s:Fnameescape(b:annot_file_path)
|
||||
silent exe 'keepj keepalt' 'view' s:Fnameescape(a:annot_file_path)
|
||||
endif
|
||||
call setpos(".", [0, 0 , 0 , 0])
|
||||
endfun
|
||||
|
||||
" After call:
|
||||
@@ -402,21 +415,29 @@ endfunction
|
||||
" After call:
|
||||
" The annot file is loaded and assigned to a buffer.
|
||||
" This also handles the modification date of the .annot file, eg. after a
|
||||
" compilation.
|
||||
function! s:Load_annotation()
|
||||
if bufloaded(b:annot_file_path) && b:annot_file_last_mod < getftime(b:annot_file_path)
|
||||
call s:Enter_annotation_buffer()
|
||||
silent exe "bunload"
|
||||
call s:Exit_annotation_buffer()
|
||||
" compilation (return an updated annot_file_list).
|
||||
function! s:Load_annotation(annot_file_name)
|
||||
let annot = s:annot_file_list[a:annot_file_name]
|
||||
let annot_file_path = annot[0]
|
||||
let annot_file_last_mod = 0
|
||||
if exists("annot[2]")
|
||||
let annot_file_last_mod = annot[2]
|
||||
endif
|
||||
if !bufloaded(b:annot_file_path)
|
||||
call s:Enter_annotation_buffer()
|
||||
if bufloaded(annot_file_path) && annot_file_last_mod < getftime(annot_file_path)
|
||||
" if there is a more recent file
|
||||
let nr = bufnr(annot_file_path)
|
||||
silent exe 'keepj keepalt' 'bunload' nr
|
||||
endif
|
||||
if !bufloaded(annot_file_path)
|
||||
call s:Enter_annotation_buffer(annot_file_path)
|
||||
setlocal nobuflisted
|
||||
setlocal bufhidden=hide
|
||||
setlocal noswapfile
|
||||
setlocal buftype=nowrite
|
||||
call s:Exit_annotation_buffer()
|
||||
let b:annot_file_last_mod = getftime(b:annot_file_path)
|
||||
let annot[2] = getftime(annot_file_path)
|
||||
" List updated with the new date
|
||||
let s:annot_file_list[a:annot_file_name] = annot
|
||||
endif
|
||||
endfun
|
||||
|
||||
@@ -466,8 +487,9 @@ endfunction
|
||||
"In: the pattern to look for in order to match the block
|
||||
"Out: the type information (calls s:Match_data)
|
||||
" Should be called in the annotation buffer
|
||||
function! s:Extract_type_data(block_pattern)
|
||||
call s:Enter_annotation_buffer()
|
||||
function! s:Extract_type_data(block_pattern, annot_file_name)
|
||||
let annot_file_path = s:annot_file_list[a:annot_file_name][0]
|
||||
call s:Enter_annotation_buffer(annot_file_path)
|
||||
try
|
||||
if search(a:block_pattern,'e') == 0
|
||||
throw "no_annotation"
|
||||
@@ -527,9 +549,9 @@ endfunction
|
||||
|
||||
"In: the current mode (eg. "visual", "normal", etc.)
|
||||
"Out: the type information (calls s:Extract_type_data)
|
||||
function! s:Get_type(mode)
|
||||
function! s:Get_type(mode, annot_file_name)
|
||||
let [lin1,lin2,col1,col2] = s:Match_borders(a:mode)
|
||||
return s:Extract_type_data(s:Block_pattern(lin1,lin2,col1,col2))
|
||||
return s:Extract_type_data(s:Block_pattern(lin1,lin2,col1,col2), a:annot_file_name)
|
||||
endfun
|
||||
|
||||
"d. main
|
||||
@@ -537,9 +559,10 @@ endfunction
|
||||
"After call: the type information is displayed
|
||||
if !exists("*Ocaml_get_type")
|
||||
function Ocaml_get_type(mode)
|
||||
let annot_file_name = s:Fnameescape(expand('%:t:r')).'.annot'
|
||||
call s:Locate_annotation()
|
||||
call s:Load_annotation()
|
||||
return s:Get_type(a:mode)
|
||||
call s:Load_annotation(annot_file_name)
|
||||
return s:Get_type(a:mode, annot_file_name)
|
||||
endfun
|
||||
endif
|
||||
|
||||
|
||||
@@ -37,3 +37,8 @@ if has("gui_win32") && !exists("b:browsefilter")
|
||||
endif
|
||||
"}}}
|
||||
|
||||
"{{{ Undo settings
|
||||
let b:undo_ftplugin = "setlocal shiftwidth< softtabstop< expandtab<"
|
||||
\ . " formatoptions< comments< textwidth<"
|
||||
\ . "| unlet! b:browsefiler"
|
||||
"}}}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Perl
|
||||
" Maintainer: Andy Lester <andy@petdance.com>
|
||||
" URL: http://github.com/petdance/vim-perl
|
||||
" Last Change: 2009-08-14
|
||||
" Last Change: 2012 Mar 11
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
let b:did_ftplugin = 1
|
||||
@@ -69,3 +69,4 @@ let b:undo_ftplugin = "setlocal fo< com< cms< inc< inex< def< isf< kp<" .
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Perl 6
|
||||
" Maintainer: Andy Lester <andy@petdance.com>
|
||||
" URL: http://github.com/petdance/vim-perl/tree/master
|
||||
" Last Change: 2010-08-10
|
||||
" Last Change: 2012 Mar 11
|
||||
" Contributors: Hinrik Örn Sigurðsson <hinrik.sig@gmail.com>
|
||||
"
|
||||
" Based on ftplugin/perl.vim by Dan Sharp <dwsharp at hotmail dot com>
|
||||
@@ -46,3 +46,4 @@ let b:undo_ftplugin = "setlocal fo< com< cms< inc< inex< def< isk<" .
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -80,3 +80,4 @@ let b:undo_ftplugin = "setlocal commentstring< include< omnifunc<" .
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -32,5 +32,6 @@ if exists("loaded_matchit")
|
||||
endif " exists("loaded_matchit")
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim:sts=2:sw=2:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: PostScript
|
||||
" Maintainer: Mike Williams <mrw@eandem.co.uk>
|
||||
" Last Change: 27th June 2002
|
||||
" Language: PostScript
|
||||
" Maintainer: Mike Williams <mrw@eandem.co.uk>
|
||||
" Last Change: 16th January 2012
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -11,6 +11,9 @@ endif
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" PS comment formatting
|
||||
setlocal comments=b:%
|
||||
setlocal formatoptions-=t formatoptions+=rol
|
||||
@@ -21,11 +24,12 @@ if !exists("b:match_words")
|
||||
let b:match_words = '<<:>>,\<begin\>:\<end\>,\<save\>:\<restore\>,\<gsave\>:\<grestore\>'
|
||||
endif
|
||||
|
||||
set cpo-=C
|
||||
|
||||
" Define patterns for the browse file filter
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
let b:browsefilter = "PostScript Files (*.ps)\t*.ps\n" .
|
||||
\ "EPS Files (*.eps)\t*.eps\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: RPL/2
|
||||
" Maintainer: Jo<4A>l BERTRAND <rpl2@free.fr>
|
||||
" Last Change: 2005 Mar 28
|
||||
" Last Change: 2012 Mar 07
|
||||
" Version: 0.1
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
@@ -18,3 +18,5 @@ setlocal fo-=t fo+=croql
|
||||
|
||||
" Set 'comments' to format dashed lists in comments.
|
||||
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
|
||||
|
||||
let b:undo_ftplugin = "setlocal fo< comments<"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" URL: http://sites.google.com/site/khorser/opensource/vim
|
||||
" Original author: Dorai Sitaram <ds26@gte.com>
|
||||
" Original URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
|
||||
" Last Change: Jan 9, 2012
|
||||
" Last Change: Mar 5, 2012
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -43,3 +43,5 @@ if exists("b:is_chicken") || exists("is_chicken")
|
||||
setl lispwords+=define-values,opt-lambda,case-lambda,syntax-rules,with-syntax,syntax-case
|
||||
setl lispwords+=cond-expand,and-let*,foreign-lambda,foreign-lambda*
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lispwords< lisp<"
|
||||
|
||||
@@ -37,3 +37,4 @@ let b:undo_ftplugin = "unlet! b:browsefilter | " . s:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -36,3 +36,4 @@ let b:undo_ftplugin = "setlocal cms< | unlet! b:browsefilter b:match_words"
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Plugin to update the %changelog section of RPM spec files
|
||||
" Filename: spec.vim
|
||||
" Maintainer: Gustavo Niemeyer <niemeyer@conectiva.com>
|
||||
" Last Change: 2011 Dec 25 by Thilo Six
|
||||
" Last Change: 2012 Mar 07
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@@ -172,3 +172,4 @@ let b:match_words =
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
let b:undo_ftplugin = "unlet! b:match_ignorecase b:match_words"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: SQL (Common for Oracle, Microsoft SQL Server, Sybase)
|
||||
" Version: 8.0
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Last Change: 2011 Apr 01
|
||||
" Last Change: 2012 Mar 11
|
||||
" Download: http://vim.sourceforge.net/script.php?script_id=454
|
||||
|
||||
" For more details please use:
|
||||
@@ -490,6 +490,7 @@ if exists('&omnifunc')
|
||||
endif
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim:sw=4:
|
||||
|
||||
|
||||
@@ -37,3 +37,4 @@ let b:undo_ftplugin = "unlet! b:browsefilter | " . s:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -32,5 +32,6 @@ let b:undo_ftplugin = "setlocal fo< com< cms< inc< inex< def< isf< kp<" .
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: set et ts=4 sw=4 tw=78:
|
||||
|
||||
@@ -37,3 +37,4 @@ let b:undo_ftplugin = "unlet! b:browsefilter | " . s:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -41,5 +41,6 @@ if exists("loaded_matchit")
|
||||
endif " exists("loaded_matchit")
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim:sts=2:sw=2:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Vim
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2009 Jan 22
|
||||
" Last Change: 2012 Mar 21
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -21,6 +21,10 @@ let b:undo_ftplugin = "setl fo< isk< com< tw< commentstring<"
|
||||
" and insert the comment leader when hitting <CR> or using "o".
|
||||
setlocal fo-=t fo+=croql
|
||||
|
||||
" To make syntax highlighting of 'vimVar's work correctly we need the colon to
|
||||
" be part of keywords. This needs to be done prior to the 'isk+=#' below.
|
||||
setlocal isk+=:
|
||||
|
||||
" To allow tag lookup via CTRL-] for autoload functions, '#' must be a
|
||||
" keyword character. E.g., for netrw#Nread().
|
||||
setlocal isk+=#
|
||||
|
||||
@@ -64,3 +64,4 @@ let b:undo_ftplugin = "unlet! b:browsefilter b:match_words | " . s:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -61,3 +61,4 @@ let b:undo_ftplugin = "setlocal commentstring< comments< formatoptions<" .
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -36,3 +36,4 @@ let b:undo_ftplugin = "unlet! b:browsefilter | " . s:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -322,3 +322,4 @@ function GetDTDIndent()
|
||||
endfunction
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,128 +1,144 @@
|
||||
" Vim indent file
|
||||
" Language: Erlang
|
||||
" Maintainer: Csaba Hoch <csaba.hoch@gmail.com>
|
||||
" Contributor: Edwin Fine <efine145_nospam01 at usa dot net>
|
||||
" Last Change: 2008 Mar 12
|
||||
" Author: Csaba Hoch <csaba.hoch@gmail.com>
|
||||
" Contributors: Edwin Fine <efine145_nospam01 at usa dot net>
|
||||
" Pawel 'kTT' Salata <rockplayer.pl@gmail.com>
|
||||
" Ricardo Catalinas Jiménez <jimenezrick@gmail.com>
|
||||
" License: Vim license
|
||||
" Version: 2011/09/06
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
" Only load this indent file when no other was loaded
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
finish
|
||||
else
|
||||
let b:did_indent = 1
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentexpr=ErlangIndent()
|
||||
setlocal indentkeys+==after,=end,=catch,=),=],=}
|
||||
|
||||
" Only define the functions once.
|
||||
" Only define the functions once
|
||||
if exists("*ErlangIndent")
|
||||
finish
|
||||
finish
|
||||
endif
|
||||
|
||||
" The function go through the whole line, analyses it and sets the indentation
|
||||
" (ind variable).
|
||||
" l: the number of the line to be examined.
|
||||
function s:ErlangIndentAtferLine(l)
|
||||
let i = 0 " the index of the current character in the line
|
||||
let length = strlen(a:l) " the length of the line
|
||||
" The function goes through the whole line, analyses it and returns the
|
||||
" indentation level.
|
||||
"
|
||||
" line: the line to be examined
|
||||
" return: the indentation level of the examined line
|
||||
function s:ErlangIndentAfterLine(line)
|
||||
let linelen = strlen(a:line) " the length of the line
|
||||
let i = 0 " the index of the current character in the line
|
||||
let ind = 0 " how much should be the difference between the indentation of
|
||||
" the current line and the indentation of the next line?
|
||||
" e.g. +1: the indentation of the next line should be equal to
|
||||
" the indentation of the current line plus one shiftwidth
|
||||
let lastFun = 0 " the last token was a 'fun'
|
||||
let lastReceive = 0 " the last token was a 'receive'; needed for 'after'
|
||||
let lastHashMark = 0 " the last token was a 'hashmark'
|
||||
let last_fun = 0 " the last token was a 'fun'
|
||||
let last_receive = 0 " the last token was a 'receive'; needed for 'after'
|
||||
let last_hash_sym = 0 " the last token was a '#'
|
||||
|
||||
while 0<= i && i < length
|
||||
" Ignore comments
|
||||
if a:line =~# '^\s*%'
|
||||
return 0
|
||||
endif
|
||||
|
||||
" Partial function head where the guard is missing
|
||||
if a:line =~# "\\(^\\l[[:alnum:]_]*\\)\\|\\(^'[^']\\+'\\)(" && a:line !~# '->'
|
||||
return 2
|
||||
endif
|
||||
|
||||
" The missing guard from the split function head
|
||||
if a:line =~# '^\s*when\s\+.*->'
|
||||
return -1
|
||||
endif
|
||||
|
||||
while 0<=i && i<linelen
|
||||
" m: the next value of the i
|
||||
if a:l[i] == '%'
|
||||
break
|
||||
elseif a:l[i] == '"'
|
||||
let m = matchend(a:l,'"\%([^"\\]\|\\.\)*"',i)
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == "'"
|
||||
let m = matchend(a:l,"'[^']*'",i)
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] =~# "[a-z]"
|
||||
let m = matchend(a:l,".[[:alnum:]_]*",i)
|
||||
if lastFun
|
||||
if a:line[i] == '"'
|
||||
let m = matchend(a:line,'"\%([^"\\]\|\\.\)*"',i)
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == "'"
|
||||
let m = matchend(a:line,"'[^']*'",i)
|
||||
let last_receive = 0
|
||||
elseif a:line[i] =~# "[a-z]"
|
||||
let m = matchend(a:line,".[[:alnum:]_]*",i)
|
||||
if last_fun
|
||||
let ind = ind - 1
|
||||
let lastFun = 0
|
||||
let lastReceive = 0
|
||||
elseif a:l[(i):(m-1)] =~# '^\%(case\|if\|try\)$'
|
||||
let last_fun = 0
|
||||
let last_receive = 0
|
||||
elseif a:line[(i):(m-1)] =~# '^\%(case\|if\|try\)$'
|
||||
let ind = ind + 1
|
||||
elseif a:l[(i):(m-1)] =~# '^receive$'
|
||||
elseif a:line[(i):(m-1)] =~# '^receive$'
|
||||
let ind = ind + 1
|
||||
let lastReceive = 1
|
||||
elseif a:l[(i):(m-1)] =~# '^begin$'
|
||||
let last_receive = 1
|
||||
elseif a:line[(i):(m-1)] =~# '^begin$'
|
||||
let ind = ind + 2
|
||||
let lastReceive = 0
|
||||
elseif a:l[(i):(m-1)] =~# '^end$'
|
||||
let last_receive = 0
|
||||
elseif a:line[(i):(m-1)] =~# '^end$'
|
||||
let ind = ind - 2
|
||||
let lastReceive = 0
|
||||
elseif a:l[(i):(m-1)] =~# '^after$'
|
||||
if lastReceive == 0
|
||||
let last_receive = 0
|
||||
elseif a:line[(i):(m-1)] =~# '^after$'
|
||||
if last_receive == 0
|
||||
let ind = ind - 1
|
||||
else
|
||||
let ind = ind + 0
|
||||
end
|
||||
let lastReceive = 0
|
||||
elseif a:l[(i):(m-1)] =~# '^fun$'
|
||||
endif
|
||||
let last_receive = 0
|
||||
elseif a:line[(i):(m-1)] =~# '^fun$'
|
||||
let ind = ind + 1
|
||||
let lastFun = 1
|
||||
let lastReceive = 0
|
||||
let last_fun = 1
|
||||
let last_receive = 0
|
||||
endif
|
||||
elseif a:l[i] =~# "[A-Z_]"
|
||||
let m = matchend(a:l,".[[:alnum:]_]*",i)
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == '$'
|
||||
elseif a:line[i] =~# "[A-Z_]"
|
||||
let m = matchend(a:line,".[[:alnum:]_]*",i)
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == '$'
|
||||
let m = i+2
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == "." && (i+1>=length || a:l[i+1]!~ "[0-9]")
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == "." && (i+1>=linelen || a:line[i+1]!~ "[0-9]")
|
||||
let m = i+1
|
||||
if lastHashMark
|
||||
let lastHashMark = 0
|
||||
if last_hash_sym
|
||||
let last_hash_sym = 0
|
||||
else
|
||||
let ind = ind - 1
|
||||
end
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == '-' && (i+1<length && a:l[i+1]=='>')
|
||||
endif
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == '-' && (i+1<linelen && a:line[i+1]=='>')
|
||||
let m = i+2
|
||||
let ind = ind + 1
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == ';'
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == ';' && a:line[(i):(linelen)] !~# '.*->.*'
|
||||
let m = i+1
|
||||
let ind = ind - 1
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == '#'
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == '#'
|
||||
let m = i+1
|
||||
let lastHashMark = 1
|
||||
elseif a:l[i] =~# '[({[]'
|
||||
let last_hash_sym = 1
|
||||
elseif a:line[i] =~# '[({[]'
|
||||
let m = i+1
|
||||
let ind = ind + 1
|
||||
let lastFun = 0
|
||||
let lastReceive = 0
|
||||
let lastHashMark = 0
|
||||
elseif a:l[i] =~# '[)}\]]'
|
||||
let last_fun = 0
|
||||
let last_receive = 0
|
||||
let last_hash_sym = 0
|
||||
elseif a:line[i] =~# '[)}\]]'
|
||||
let m = i+1
|
||||
let ind = ind - 1
|
||||
let lastReceive = 0
|
||||
let last_receive = 0
|
||||
else
|
||||
let m = i+1
|
||||
endif
|
||||
|
||||
let i = m
|
||||
|
||||
endwhile
|
||||
|
||||
return ind
|
||||
|
||||
endfunction
|
||||
|
||||
function s:FindPrevNonBlankNonComment(lnum)
|
||||
let lnum = prevnonblank(a:lnum)
|
||||
let line = getline(lnum)
|
||||
" continue to search above if the current line begins with a '%'
|
||||
" Continue to search above if the current line begins with a '%'
|
||||
while line =~# '^\s*%.*$'
|
||||
let lnum = prevnonblank(lnum - 1)
|
||||
if 0 == lnum
|
||||
@@ -133,12 +149,20 @@ function s:FindPrevNonBlankNonComment(lnum)
|
||||
return lnum
|
||||
endfunction
|
||||
|
||||
function ErlangIndent()
|
||||
" The function returns the indentation level of the line adjusted to a mutiple
|
||||
" of 'shiftwidth' option.
|
||||
"
|
||||
" lnum: line number
|
||||
" return: the indentation level of the line
|
||||
function s:GetLineIndent(lnum)
|
||||
return (indent(a:lnum) / &sw) * &sw
|
||||
endfunction
|
||||
|
||||
" Find a non-blank line above the current line.
|
||||
function ErlangIndent()
|
||||
" Find a non-blank line above the current line
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
" Hit the start of the file, use zero indent.
|
||||
" Hit the start of the file, use zero indent
|
||||
if lnum == 0
|
||||
return 0
|
||||
endif
|
||||
@@ -146,9 +170,14 @@ function ErlangIndent()
|
||||
let prevline = getline(lnum)
|
||||
let currline = getline(v:lnum)
|
||||
|
||||
let ind = indent(lnum) + &sw * s:ErlangIndentAtferLine(prevline)
|
||||
let ind_after = s:ErlangIndentAfterLine(prevline)
|
||||
if ind_after != 0
|
||||
let ind = s:GetLineIndent(lnum) + ind_after * &sw
|
||||
else
|
||||
let ind = indent(lnum) + ind_after * &sw
|
||||
endif
|
||||
|
||||
" special cases:
|
||||
" Special cases:
|
||||
if prevline =~# '^\s*\%(after\|end\)\>'
|
||||
let ind = ind + 2*&sw
|
||||
endif
|
||||
@@ -158,8 +187,8 @@ function ErlangIndent()
|
||||
if currline =~# '^\s*after\>'
|
||||
let plnum = s:FindPrevNonBlankNonComment(v:lnum-1)
|
||||
if getline(plnum) =~# '^[^%]*\<receive\>\s*\%(%.*\)\=$'
|
||||
let ind = ind - 1*&sw
|
||||
" If the 'receive' is not in the same line as the 'after'
|
||||
let ind = ind - 1*&sw
|
||||
else
|
||||
let ind = ind - 2*&sw
|
||||
endif
|
||||
@@ -181,26 +210,4 @@ function ErlangIndent()
|
||||
let ind = 0
|
||||
endif
|
||||
return ind
|
||||
|
||||
endfunction
|
||||
|
||||
" TODO:
|
||||
"
|
||||
" f() ->
|
||||
" x("foo
|
||||
" bar")
|
||||
" ,
|
||||
" bad_indent.
|
||||
"
|
||||
" fun
|
||||
" init/0,
|
||||
" bad_indent
|
||||
"
|
||||
" #rec
|
||||
" .field,
|
||||
" bad_indent
|
||||
"
|
||||
" case X of
|
||||
" 1 when A; B ->
|
||||
" bad_indent
|
||||
|
||||
|
||||
@@ -1,7 +1,12 @@
|
||||
" Vim indent file
|
||||
" Language: Java
|
||||
" Maintainer: Toby Allsopp <toby.allsopp@peace.com> (resigned)
|
||||
" Last Change: 2005 Mar 28
|
||||
" Previous Maintainer: Toby Allsopp <toby.allsopp@peace.com>
|
||||
" Current Maintainer: Hong Xu <xuhdev@gmail.com>
|
||||
" Last Change: 2012 Jan 20
|
||||
" Version: 1.0
|
||||
" License: Same as Vim.
|
||||
" Copyright (c) 2012 Hong Xu
|
||||
" Before 2012, this file is maintained by Toby Allsopp.
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -60,6 +65,13 @@ function GetJavaIndent()
|
||||
|
||||
" find start of previous line, in case it was a continuation line
|
||||
let lnum = SkipJavaBlanksAndComments(v:lnum - 1)
|
||||
|
||||
" If the previous line starts with '@', we should have the same indent as
|
||||
" the previous one
|
||||
if getline(lnum) =~ '^\s*@\S\+\s*$'
|
||||
return indent(lnum)
|
||||
endif
|
||||
|
||||
let prev = lnum
|
||||
while prev > 1
|
||||
let next_prev = SkipJavaBlanksAndComments(prev - 1)
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
" Vim indent file
|
||||
" Language: OCaml
|
||||
" Maintainers: Jean-Francois Yuen <jfyuen@happycoders.org>
|
||||
" Mike Leary <leary@nwlink.com>
|
||||
" Markus Mottl <markus.mottl@gmail.com>
|
||||
" URL: http://www.ocaml.info/vim/indent/ocaml.vim
|
||||
" Last Change: 2005 Jun 25 - Fixed multiple bugs due to 'else\nreturn ind' working
|
||||
" 2005 May 09 - Added an option to not indent OCaml-indents specially (MM)
|
||||
" 2005 Apr 11 - Fixed an indentation bug concerning "let" (MM)
|
||||
" Maintainers: Jean-Francois Yuen <jfyuen@happycoders.org>
|
||||
" Mike Leary <leary@nwlink.com>
|
||||
" Markus Mottl <markus.mottl@gmail.com>
|
||||
" URL: http://www.ocaml.info/vim/indent/ocaml.vim
|
||||
" Last Change: 2010 Sep 04 - Added an indentation improvement by Mark Weber
|
||||
" 2005 Jun 25 - Fixed multiple bugs due to 'else\nreturn ind' working
|
||||
" 2005 May 09 - Added an option to not indent OCaml-indents specially (MM)
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -44,7 +44,7 @@ let s:obj = '^\s*\(constraint\|inherit\|initializer\|method\|val\)\>\|\<\(object
|
||||
let s:type = '^\s*\%(class\|let\|type\)\>.*='
|
||||
|
||||
" Skipping pattern, for comments
|
||||
function s:GetLineWithoutFullComment(lnum)
|
||||
function! s:GetLineWithoutFullComment(lnum)
|
||||
let lnum = prevnonblank(a:lnum - 1)
|
||||
let lline = substitute(getline(lnum), '(\*.*\*)\s*$', '', '')
|
||||
while lline =~ '^\s*$' && lnum > 0
|
||||
@@ -55,7 +55,7 @@ function s:GetLineWithoutFullComment(lnum)
|
||||
endfunction
|
||||
|
||||
" Indent for ';;' to match multiple 'let'
|
||||
function s:GetInd(lnum, pat, lim)
|
||||
function! s:GetInd(lnum, pat, lim)
|
||||
let llet = search(a:pat, 'bW')
|
||||
let old = indent(a:lnum)
|
||||
while llet > 0
|
||||
@@ -70,18 +70,18 @@ function s:GetInd(lnum, pat, lim)
|
||||
endfunction
|
||||
|
||||
" Indent pairs
|
||||
function s:FindPair(pstart, pmid, pend)
|
||||
function! s:FindPair(pstart, pmid, pend)
|
||||
call search(a:pend, 'bW')
|
||||
return indent(searchpair(a:pstart, a:pmid, a:pend, 'bWn', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"'))
|
||||
endfunction
|
||||
|
||||
" Indent 'let'
|
||||
function s:FindLet(pstart, pmid, pend)
|
||||
function! s:FindLet(pstart, pmid, pend)
|
||||
call search(a:pend, 'bW')
|
||||
return indent(searchpair(a:pstart, a:pmid, a:pend, 'bWn', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment" || getline(".") =~ "^\\s*let\\>.*=.*\\<in\\s*$" || getline(prevnonblank(".") - 1) =~ s:beflet'))
|
||||
endfunction
|
||||
|
||||
function GetOCamlIndent()
|
||||
function! GetOCamlIndent()
|
||||
" Find a non-commented line above the current line.
|
||||
let lnum = s:GetLineWithoutFullComment(v:lnum)
|
||||
|
||||
@@ -239,6 +239,20 @@ function GetOCamlIndent()
|
||||
elseif lline =~ '^\s*(\*' && line =~ '^\s*\*'
|
||||
let ind = ind + 1
|
||||
|
||||
else
|
||||
" Don't change indentation of this line
|
||||
" for new lines (indent==0) use indentation of previous line
|
||||
|
||||
" This is for preventing removing indentation of these args:
|
||||
" let f x =
|
||||
" let y = x + 1 in
|
||||
" Printf.printf
|
||||
" "o" << here
|
||||
" "oeuth" << don't touch indentation
|
||||
|
||||
let i = indent(v:lnum)
|
||||
return i == 0 ? ind : i
|
||||
|
||||
endif
|
||||
|
||||
" Subtract a 'shiftwidth' after lines matching 'match ... with parser':
|
||||
|
||||
@@ -1,33 +1,54 @@
|
||||
" Vim indent file
|
||||
" Language: LaTeX
|
||||
" Maintainer: Zhou YiChao <broken.zhou@gmail.com>
|
||||
" Maintainer: Zhou YiChao <broken.zhou AT gmail.com>
|
||||
" Created: Sat, 16 Feb 2002 16:50:19 +0100
|
||||
" Last Change: 2011 Dec 24
|
||||
" Last Update: 25th Sep 2002, by LH :
|
||||
" Last Change: 2012 Mar 18 19:19:50
|
||||
" Version: 0.7
|
||||
" Please email me if you found something we can do. Bug report and
|
||||
" feature request is welcome.
|
||||
|
||||
" Last Update: {{{
|
||||
" 25th Sep 2002, by LH :
|
||||
" (*) better support for the option
|
||||
" (*) use some regex instead of several '||'.
|
||||
" Oct 9th, 2003, by JT:
|
||||
" (*) don't change indentation of lines starting with '%'
|
||||
" 2005/06/15, Moshe Kaminsky <kaminsky@math.huji.ac.il>
|
||||
" 2005/06/15, Moshe Kaminsky <kaminsky AT math.huji.ac.il>
|
||||
" (*) New variables:
|
||||
" g:tex_items, g:tex_itemize_env, g:tex_noindent_env
|
||||
" 2011/3/6, by Zhou YiChao <broken.zhou@gmail.com>
|
||||
" 2011/3/6, by Zhou YiChao <broken.zhou AT gmail.com>
|
||||
" (*) Don't change indentation of lines starting with '%'
|
||||
" I don't see any code with '%' and it doesn't work properly
|
||||
" so I add some code.
|
||||
" (*) New features: Add smartindent-like indent for "{}" and "[]".
|
||||
" (*) New variables: g:tex_indent_brace
|
||||
" 2011/9/25, by Zhou Yichao <broken.zhou@gmail.com>
|
||||
" 2011/9/25, by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Bug fix: smartindent-like indent for "[]"
|
||||
" (*) New features: Align with "&".
|
||||
" (*) New variable: g:tex_indent_and
|
||||
" 2011/10/23 by Zhou Yichao <broken.zhou@gmail.com>
|
||||
" (*) New variable: g:tex_indent_and.
|
||||
" 2011/10/23 by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Bug fix: improve the smartindent-like indent for "{}" and
|
||||
" "[]".
|
||||
"
|
||||
" Version: 0.62
|
||||
" 2012/02/27 by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Bug fix: support default folding marker.
|
||||
" (*) Indent with "&" is not very handy. Make it not enable by
|
||||
" default.
|
||||
" 2012/03/06 by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Modify "&" behavior and make it default again. Now "&"
|
||||
" won't align when there are more then one "&" in the previous
|
||||
" line.
|
||||
" (*) Add indent "\left(" and "\right)"
|
||||
" (*) Trust user when in "verbatim" and "lstlisting"
|
||||
" 2012/03/11 by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Modify "&" so that only indent when current line start with
|
||||
" "&".
|
||||
" 2012/03/12 by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Modify indentkeys.
|
||||
" 2012/03/18 by Zhou Yichao <broken.zhou AT gmail.com>
|
||||
" (*) Add &cpo
|
||||
" }}}
|
||||
|
||||
" Options: {{{
|
||||
" Document: {{{
|
||||
"
|
||||
" To set the following options (ok, currently it's just one), add a line like
|
||||
" let g:tex_indent_items = 1
|
||||
@@ -37,42 +58,42 @@
|
||||
"
|
||||
" If this variable is unset or non-zero, it will use smartindent-like style
|
||||
" for "{}" and "[]"
|
||||
"
|
||||
"
|
||||
" * g:tex_indent_items
|
||||
"
|
||||
" If this variable is set, item-environments are indented like Emacs does
|
||||
" it, i.e., continuation lines are indented with a shiftwidth.
|
||||
"
|
||||
"
|
||||
" NOTE: I've already set the variable below; delete the corresponding line
|
||||
" if you don't like this behaviour.
|
||||
"
|
||||
" Per default, it is unset.
|
||||
"
|
||||
"
|
||||
" set unset
|
||||
" ----------------------------------------------------------------
|
||||
" \begin{itemize} \begin{itemize}
|
||||
" \begin{itemize} \begin{itemize}
|
||||
" \item blablabla \item blablabla
|
||||
" bla bla bla bla bla bla
|
||||
" bla bla bla bla bla bla
|
||||
" \item blablabla \item blablabla
|
||||
" bla bla bla bla bla bla
|
||||
" \end{itemize} \end{itemize}
|
||||
" bla bla bla bla bla bla
|
||||
" \end{itemize} \end{itemize}
|
||||
"
|
||||
"
|
||||
" * g:tex_items
|
||||
"
|
||||
" A list of tokens to be considered as commands for the beginning of an item
|
||||
" command. The tokens should be separated with '\|'. The initial '\' should
|
||||
" A list of tokens to be considered as commands for the beginning of an item
|
||||
" command. The tokens should be separated with '\|'. The initial '\' should
|
||||
" be escaped. The default is '\\bibitem\|\\item'.
|
||||
"
|
||||
" * g:tex_itemize_env
|
||||
"
|
||||
" A list of environment names, separated with '\|', where the items (item
|
||||
" commands matching g:tex_items) may appear. The default is
|
||||
"
|
||||
" A list of environment names, separated with '\|', where the items (item
|
||||
" commands matching g:tex_items) may appear. The default is
|
||||
" 'itemize\|description\|enumerate\|thebibliography'.
|
||||
"
|
||||
" * g:tex_noindent_env
|
||||
"
|
||||
" A list of environment names. separated with '\|', where no indentation is
|
||||
" A list of environment names. separated with '\|', where no indentation is
|
||||
" required. The default is 'document\|verbatim'.
|
||||
"
|
||||
" * g:tex_indent_and
|
||||
@@ -82,14 +103,24 @@
|
||||
" Note that this feature need to search back some line, so vim may become
|
||||
" a little slow.
|
||||
"
|
||||
" }}}
|
||||
" }}}
|
||||
|
||||
" Only define the function once
|
||||
if exists("*GetTeXIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Define global variable {{{
|
||||
|
||||
let b:did_indent = 1
|
||||
|
||||
" Delete the next line to avoid the special indention of items
|
||||
if !exists("g:tex_indent_items")
|
||||
let g:tex_indent_items = 1
|
||||
endif
|
||||
@@ -104,31 +135,30 @@ if g:tex_indent_items
|
||||
let g:tex_itemize_env = 'itemize\|description\|enumerate\|thebibliography'
|
||||
endif
|
||||
if !exists('g:tex_items')
|
||||
let g:tex_items = '\\bibitem\|\\item'
|
||||
let g:tex_items = '\\bibitem\|\\item'
|
||||
endif
|
||||
else
|
||||
let g:tex_items = ''
|
||||
endif
|
||||
|
||||
if !exists("g:tex_noindent_env")
|
||||
let g:tex_noindent_env = 'document\|verbatim\|lstlisting'
|
||||
if !exists("g:tex_indent_paretheses")
|
||||
let g:tex_indent_paretheses = 1
|
||||
endif
|
||||
|
||||
if !exists("g:tex_noindent_env")
|
||||
let g:tex_noindent_env = 'document\|verbatim\|lstlisting'
|
||||
endif "}}}
|
||||
|
||||
" VIM Setting " {{{
|
||||
setlocal autoindent
|
||||
setlocal nosmartindent
|
||||
setlocal indentexpr=GetTeXIndent()
|
||||
exec 'setlocal indentkeys+=},],\&' . substitute(g:tex_items, '^\|\(\\|\)', ',=', 'g')
|
||||
let g:tex_items = '^\s*' . g:tex_items
|
||||
setlocal indentkeys&
|
||||
exec 'setlocal indentkeys+=[,(,{,),},],\&' . substitute(g:tex_items, '^\|\(\\|\)', ',=', 'g')
|
||||
let g:tex_items = '^\s*' . substitute(g:tex_items, '^\(\^\\s\*\)*', '', '')
|
||||
" }}}
|
||||
|
||||
|
||||
" Only define the function once
|
||||
if exists("*GetTeXIndent") | finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
function GetTeXIndent()
|
||||
function GetTeXIndent() " {{{
|
||||
" Find a non-blank line above the current line.
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
@@ -139,16 +169,25 @@ function GetTeXIndent()
|
||||
|
||||
" At the start of the file use zero indent.
|
||||
if lnum == 0
|
||||
return 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let line = getline(lnum) " last line
|
||||
let cline = getline(v:lnum) " current line
|
||||
let line = substitute(getline(lnum), '%.*', ' ','g') " last line
|
||||
let cline = substitute(getline(v:lnum), '%.*', ' ', 'g') " current line
|
||||
|
||||
" We are in verbatim, so do what our user what.
|
||||
if synIDattr(synID(v:lnum, indent(v:lnum), 1), "name") == "texZone"
|
||||
if empty(cline)
|
||||
return indent(lnum)
|
||||
else
|
||||
return indent(v:lnum)
|
||||
end
|
||||
endif
|
||||
|
||||
" You want to align with "&"
|
||||
if g:tex_indent_and
|
||||
" Align with last line if last line has a "&"
|
||||
if stridx(cline, "&") != -1 && stridx(line, "&") != -1
|
||||
" Align only when current line start with "&"
|
||||
if line =~ '&.*\\\\' && cline =~ '^\s*&'
|
||||
return indent(v:lnum) + stridx(line, "&") - stridx(cline, "&")
|
||||
endif
|
||||
|
||||
@@ -161,7 +200,7 @@ function GetTeXIndent()
|
||||
|
||||
|
||||
if lnum == 0
|
||||
return 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let ind = indent(lnum)
|
||||
@@ -173,12 +212,10 @@ function GetTeXIndent()
|
||||
|
||||
" Add a 'shiftwidth' after beginning of environments.
|
||||
" Don't add it for \begin{document} and \begin{verbatim}
|
||||
""if line =~ '^\s*\\begin{\(.*\)}' && line !~ 'verbatim'
|
||||
""if line =~ '^\s*\\begin{\(.*\)}' && line !~ 'verbatim'
|
||||
" LH modification : \begin does not always start a line
|
||||
" ZYC modification : \end after \begin won't cause wrong indent anymore
|
||||
if line =~ '\\begin{.*}' && line !~ g:tex_noindent_env
|
||||
\ && line !~ '\\begin{.\{-}}.*\\end{.*}'
|
||||
|
||||
let ind = ind + &sw
|
||||
|
||||
if g:tex_indent_items
|
||||
@@ -189,9 +226,8 @@ function GetTeXIndent()
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
" Subtract a 'shiftwidth' when an environment ends
|
||||
if cline =~ '^\s*\\end' && cline !~ g:tex_noindent_env
|
||||
if cline =~ '\\end{.*}' && cline !~ g:tex_noindent_env
|
||||
|
||||
if g:tex_indent_items
|
||||
" Remove another sw for item-environments
|
||||
@@ -204,23 +240,26 @@ function GetTeXIndent()
|
||||
endif
|
||||
|
||||
if g:tex_indent_brace
|
||||
" Add a 'shiftwidth' after a "{" or "[".
|
||||
let sum1 = 0
|
||||
for i in range(0, strlen(line)-1)
|
||||
if line[i] == "}" || line[i] == "]"
|
||||
if line[i] == "}" || line[i] == "]" ||
|
||||
\ strpart(line, i, 7) == '\right)'
|
||||
let sum1 = max([0, sum1-1])
|
||||
endif
|
||||
if line[i] == "{" || line[i] == "["
|
||||
if line[i] == "{" || line[i] == "[" ||
|
||||
\ strpart(line, i, 6) == '\left('
|
||||
let sum1 += 1
|
||||
endif
|
||||
endfor
|
||||
|
||||
let sum2 = 0
|
||||
for i in reverse(range(0, strlen(cline)-1))
|
||||
if cline[i] == "{" || cline[i] == "["
|
||||
if cline[i] == "{" || cline[i] == "[" ||
|
||||
\ strpart(cline, i, 6) == '\left('
|
||||
let sum2 = max([0, sum2-1])
|
||||
endif
|
||||
if cline[i] == "}" || cline[i] == "]"
|
||||
if cline[i] == "}" || cline[i] == "]" ||
|
||||
\ strpart(cline, i, 7) == '\right)'
|
||||
let sum2 += 1
|
||||
endif
|
||||
endfor
|
||||
@@ -228,6 +267,8 @@ function GetTeXIndent()
|
||||
let ind += (sum1 - sum2) * &sw
|
||||
endif
|
||||
|
||||
if g:tex_indent_paretheses
|
||||
endif
|
||||
|
||||
" Special treatment for 'item'
|
||||
" ----------------------------
|
||||
@@ -247,7 +288,7 @@ function GetTeXIndent()
|
||||
endif
|
||||
|
||||
return ind
|
||||
endfunction
|
||||
endfunction "}}}
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -808,5 +808,6 @@ fun! s:ParseSkip(str)
|
||||
endfun
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim:sts=2:sw=2:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" These commands create the option window.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2011 Jun 13
|
||||
" Last Change: 2012 Feb 22
|
||||
|
||||
" If there already is an option window, jump to that one.
|
||||
if bufwinnr("option-window") > 0
|
||||
@@ -1064,6 +1064,8 @@ call append("$", "shellquote\tcharacter(s) to enclose a shell command in")
|
||||
call <SID>OptionG("shq", &shq)
|
||||
call append("$", "shellxquote\tlike 'shellquote' but include the redirection")
|
||||
call <SID>OptionG("sxq", &sxq)
|
||||
call append("$", "shellxescape\tcharacters to escape when 'shellxquote' is (")
|
||||
call <SID>OptionG("sxe", &sxe)
|
||||
call append("$", "shellcmdflag\targument for 'shell' to execute a command")
|
||||
call <SID>OptionG("shcf", &shcf)
|
||||
call append("$", "shellredir\tused to redirect command output to a file")
|
||||
|
||||
@@ -19,7 +19,7 @@ if &cp || exists("g:loaded_getscriptPlugin")
|
||||
endif
|
||||
finish
|
||||
endif
|
||||
let g:loaded_getscriptPlugin = "v33"
|
||||
let g:loaded_getscriptPlugin = "v34"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
if &cp || exists("g:loaded_tarPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tarPlugin = "v27"
|
||||
let g:loaded_tarPlugin = "v28"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
if &cp || exists("g:loaded_vimballPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_vimballPlugin = "v34"
|
||||
let g:loaded_vimballPlugin = "v35"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
" zipPlugin.vim: Handles browsing zipfiles
|
||||
" PLUGIN PORTION
|
||||
" Date: Oct 05, 2007
|
||||
" Date: Aug 15, 2011
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
" Copyright: Copyright (C) 2005,2006 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 2005-2011 Charles E. Campbell, Jr. {{{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 = "v24"
|
||||
let g:loaded_zipPlugin = "v25"
|
||||
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 call zip#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.zip,*.jar,*.xpi,*.war,*.ear,*.celzip,*.oxt call zip#Browse(expand("<amatch>"))
|
||||
augroup END
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
+ # soundslike mapping from Aspell
|
||||
+ # Aspell phonetics for Irish, by Kevin Scannell <scannell@slu.edu>
|
||||
+ # Copyright 2002, 2003 Kevin P. Scannell, distributed under GNU GPL
|
||||
+ # version 2.0
|
||||
+ # version 2.0 or the Vim license (attribution by Kevin Scannell, Jan 2012)
|
||||
+
|
||||
+ SAL followup 0 # else breaks QU^, e.g.
|
||||
+ SAL collapse_result 1 # no double letters in resulting strings
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
+ # soundslike mapping from Aspell
|
||||
+ # Aspell phonetics for Irish, by Kevin Scannell <scannell@slu.edu>
|
||||
+ # Copyright 2002, 2003 Kevin P. Scannell, distributed under GNU GPL
|
||||
+ # version 2.0
|
||||
+ # version 2.0 or the Vim license (attribution by Kevin Scannell, Jan 2012)
|
||||
+
|
||||
+ SAL followup 0 # else breaks QU^, e.g.
|
||||
+ SAL collapse_result 1 # no double letters in resulting strings
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
+ # soundslike mapping from Aspell
|
||||
+ # swedish_phonet.dat - Swedish phonetic transformation rules for aspell
|
||||
+ # Copyright (C) 2000 Martin Norb<72>ck <d95mback@dtek.chalmers.se>
|
||||
+ # distributed under GNU GPL
|
||||
+ # distributed under GNU GPL or the Vim license, at your choice.
|
||||
+ # version 0.2
|
||||
+
|
||||
+ SAL & &
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: awk, nawk, gawk, mawk
|
||||
" Maintainer: Antonio Colombo <azc10@yahoo.com>
|
||||
" Last Change: 2005 Mar 16
|
||||
" Maintainer: Antonio Colombo <azc100@gmail.com>
|
||||
" Last Change: 2012 Jan 31
|
||||
|
||||
" AWK ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger
|
||||
" The AWK Programming Language, Addison-Wesley, 1988
|
||||
@@ -25,6 +25,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" A bunch of useful Awk keywords
|
||||
" AWK ref. p. 188
|
||||
syn keyword awkStatement break continue delete exit
|
||||
@@ -213,4 +216,7 @@ endif
|
||||
|
||||
let b:current_syntax = "awk"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" Vim syntax file
|
||||
" Language: Bazaar (bzr) commit file
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot spb dot ru>
|
||||
" URL: http://www.hlabs.spb.ru/vim/bzr.vim
|
||||
" Last Change: 2009-01-27
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||
" URL: https://github.com/hdima/vim-scripts/blob/master/syntax/bzr.vim
|
||||
" Last Change: 2012-02-11
|
||||
" Filenames: bzr_log.*
|
||||
" Version: 1.2.1
|
||||
" Version: 1.2.2
|
||||
"
|
||||
" Thanks:
|
||||
"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 Jan 04
|
||||
" Last Change: 2012 Jan 14
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -62,6 +62,25 @@ syn match cSpecialCharacter display "L\='\\\o\{1,3}'"
|
||||
syn match cSpecialCharacter display "'\\x\x\{1,2}'"
|
||||
syn match cSpecialCharacter display "L'\\x\x\+'"
|
||||
|
||||
if !exists("c_no_c11") " ISO C11
|
||||
if exists("c_no_cformat")
|
||||
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,@Spell
|
||||
else
|
||||
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell
|
||||
endif
|
||||
syn match cCharacter "[Uu]'[^\\]'"
|
||||
syn match cCharacter "[Uu]'[^']*'" contains=cSpecial
|
||||
if exists("c_gnu")
|
||||
syn match cSpecialError "[Uu]'\\[^'\"?\\abefnrtv]'"
|
||||
syn match cSpecialCharacter "[Uu]'\\['\"?\\abefnrtv]'"
|
||||
else
|
||||
syn match cSpecialError "[Uu]'\\[^'\"?\\abfnrtv]'"
|
||||
syn match cSpecialCharacter "[Uu]'\\['\"?\\abfnrtv]'"
|
||||
endif
|
||||
syn match cSpecialCharacter display "[Uu]'\\\o\{1,3}'"
|
||||
syn match cSpecialCharacter display "[Uu]'\\x\x\+'"
|
||||
endif
|
||||
|
||||
"when wanted, highlight trailing white space
|
||||
if exists("c_space_errors")
|
||||
if !exists("c_no_trail_space_error")
|
||||
@@ -211,6 +230,7 @@ if !exists("c_no_c11")
|
||||
syn keyword cStorageClass _Noreturn noreturn
|
||||
syn keyword cOperator _Static_assert static_assert
|
||||
syn keyword cStorageClass _Thread_local thread_local
|
||||
syn keyword cType char16_t char32_t
|
||||
endif
|
||||
|
||||
if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
|
||||
|
||||
@@ -2,20 +2,21 @@
|
||||
"
|
||||
" Language: D
|
||||
" Maintainer: Jesse Phillips <Jesse.K.Phillips+D@gmail.com>
|
||||
" Last Change: 2010 Sep 21
|
||||
" Version: 0.22
|
||||
" Last Change: 2012 Jan 11
|
||||
" Version: 0.24
|
||||
"
|
||||
" Contributors:
|
||||
" - Jason Mills <jasonmills@nf.sympatico.ca>: original Maintainer
|
||||
" - Kirk McDonald: version 0.17 updates, with minor modifications
|
||||
" (http://paste.dprogramming.com/dplmb7qx?view=hidelines)
|
||||
" - Tim Keating: patch to fix a bug in highlighting the `\` literal
|
||||
" - Frank Benoit: Fixed a bug that caused some identifiers and numbers to highlight as octal number errors.
|
||||
" - Shougo Matsushita <Shougo.Matsu@gmail.com>: updates for latest 2.047 highlighting
|
||||
" - Ellery Newcomer: Fixed some highlighting bugs.
|
||||
" - Steven N. Oliver: #! highlighting
|
||||
" - Kirk McDonald
|
||||
" - Tim Keating
|
||||
" - Frank Benoit
|
||||
" - Shougo Matsushita <Shougo.Matsu@gmail.com>
|
||||
" - Ellery Newcomer
|
||||
" - Steven N. Oliver
|
||||
" - Sohgo Takeuchi
|
||||
"
|
||||
" Please email me with bugs, comments, and suggestions.
|
||||
" Please submit bugs/comments/suggestions to the github repo:
|
||||
" https://github.com/he-the-great/d.vim
|
||||
"
|
||||
" Options:
|
||||
" d_comment_strings - Set to highlight strings and numbers in comments.
|
||||
@@ -23,34 +24,23 @@
|
||||
" d_hl_operator_overload - Set to highlight D's specially named functions
|
||||
" that when overloaded implement unary and binary operators (e.g. opCmp).
|
||||
"
|
||||
" Todo:
|
||||
" - Determine a better method of sync'ing than simply setting minlines
|
||||
" to a large number.
|
||||
"
|
||||
" - Several keywords (e.g., in, out, inout) are both storage class and
|
||||
" statements, depending on their context. Perhaps use pattern matching to
|
||||
" figure out which and highlight appropriately. For now I have made such
|
||||
" keywords storage classes so their highlighting is consistent with other
|
||||
" keywords that are commonly used with them, but are true storage classes,
|
||||
" such as lazy. Similarly, I made some statement keywords (e.g. body) storage
|
||||
" classes.
|
||||
"
|
||||
" - Mark contents of the asm statement body as special
|
||||
"
|
||||
" - Maybe highlight the 'exit', 'failure', and 'success' parts of the
|
||||
" scope() statement.
|
||||
"
|
||||
" - Highlighting DDoc comments.
|
||||
"
|
||||
" d_hl_object_types - Set to highlight some common types from object.di.
|
||||
|
||||
" Quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Support cpoptions
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Set the current syntax to be known as d
|
||||
let b:current_syntax = "d"
|
||||
|
||||
" Keyword definitions
|
||||
"
|
||||
syn keyword dExternal import package module extern
|
||||
syn keyword dExternal import module
|
||||
syn keyword dConditional if else switch
|
||||
syn keyword dBranch goto break continue
|
||||
syn keyword dRepeat while for do foreach foreach_reverse
|
||||
@@ -77,21 +67,34 @@ if exists("d_hl_operator_overload")
|
||||
syn keyword dOpOverload opCall opSlice opSliceAssign opSliceOpAssign
|
||||
syn keyword dOpOverload opPos opAdd_r opMul_r opAnd_r opOr_r opXor_r
|
||||
syn keyword dOpOverload opIn opIn_r opPow opDispatch opStar opDot
|
||||
syn keyword dOpOverload opApply opApplyReverse
|
||||
syn keyword dOpOverload opApply opApplyReverse opDollar
|
||||
syn keyword dOpOverload opUnary opIndexUnary opSliceUnary
|
||||
syn keyword dOpOverload opBinary opBinaryRight
|
||||
endif
|
||||
|
||||
syn keyword dType void ushort int uint long ulong float
|
||||
syn keyword dType byte ubyte double bit char wchar ucent cent
|
||||
syn keyword dType short bool dchar wstring dstring
|
||||
syn keyword dType real ireal ifloat idouble
|
||||
syn keyword dType creal cfloat cdouble
|
||||
syn keyword dType byte ubyte short ushort int uint long ulong cent ucent
|
||||
syn keyword dType void bool bit
|
||||
syn keyword dType float double real
|
||||
syn keyword dType ushort int uint long ulong float
|
||||
syn keyword dType char wchar dchar string wstring dstring
|
||||
syn keyword dType ireal ifloat idouble creal cfloat cdouble
|
||||
syn keyword dType size_t ptrdiff_t sizediff_t equals_t hash_t
|
||||
if exists("d_hl_object_types")
|
||||
syn keyword dType Object Throwable AssociativeArray Error Exception
|
||||
syn keyword dType Interface OffsetTypeInfo TypeInfo TypeInfo_Typedef
|
||||
syn keyword dType TypeInfo_Enum TypeInfo_Pointer TypeInfo_Array
|
||||
syn keyword dType TypeInfo_StaticArray TypeInfo_AssociativeArray
|
||||
syn keyword dType TypeInfo_Function TypeInfo_Delegate TypeInfo_Class
|
||||
syn keyword dType ClassInfo TypeInfo_Interface TypeInfo_Struct
|
||||
syn keyword dType TypeInfo_Tuple TypeInfo_Const TypeInfo_Invariant
|
||||
syn keyword dType TypeInfo_Shared TypeInfo_Inout MemberInfo
|
||||
syn keyword dType MemberInfo_field MemberInfo_function ModuleInfo
|
||||
endif
|
||||
syn keyword dDebug deprecated unittest invariant
|
||||
syn keyword dExceptions throw try catch finally
|
||||
syn keyword dScopeDecl public protected private export
|
||||
syn keyword dScopeDecl public protected private export package
|
||||
syn keyword dStatement debug return with
|
||||
syn keyword dStatement function delegate __traits mixin macro
|
||||
syn keyword dStatement function delegate __ctfe mixin macro
|
||||
syn keyword dStorageClass in out inout ref lazy body
|
||||
syn keyword dStorageClass pure nothrow
|
||||
syn keyword dStorageClass auto static override final abstract volatile
|
||||
@@ -100,15 +103,26 @@ syn keyword dStorageClass synchronized shared immutable const lazy
|
||||
syn keyword dPragma pragma
|
||||
syn keyword dIdentifier _arguments _argptr __vptr __monitor _ctor _dtor
|
||||
syn keyword dScopeIdentifier contained exit success failure
|
||||
syn keyword dTraitsIdentifier contained isAbstractClass isArithmetic isAssociativeArray
|
||||
syn keyword dTraitsIdentifier contained isFinalClass isFloating isIntegral isScalar
|
||||
syn keyword dTraitsIdentifier contained isStaticArray isUnsigned isVirtualFunction
|
||||
syn keyword dTraitsIdentifier contained isAbstractFunction isFinalFunction isStaticFunction
|
||||
syn keyword dTraitsIdentifier contained isRef isOut isLazy hasMember identifier getMember
|
||||
syn keyword dTraitsIdentifier contained getOverloads getVirtualFunctions parent compiles
|
||||
syn keyword dTraitsIdentifier contained classInstanceSize allMembers derivedMembers isSame
|
||||
syn keyword dExternIdentifier contained Windows Pascal Java System D
|
||||
syn keyword dAttribute contained safe trusted system
|
||||
syn keyword dAttribute contained property disable
|
||||
syn keyword dVersionIdentifier contained DigitalMars GNU LDC LLVM
|
||||
syn keyword dVersionIdentifier contained X86 X86_64 Windows Win32 Win64
|
||||
syn keyword dVersionIdentifier contained linux Posix OSX FreeBSD
|
||||
syn keyword dVersionIdentifier contained LittleEndian BigEndian D_Coverage
|
||||
syn keyword dVersionIdentifier contained D_Ddoc D_InlineAsm_X86
|
||||
syn keyword dVersionIdentifier contained D_InlineAsm_X86_64 D_LP64 D_PIC
|
||||
syn keyword dVersionIdentifier contained unittest D_Version2 none all
|
||||
syn keyword dVersionIdentifier contained DigitalMars GNU LDC SDC D_NET
|
||||
syn keyword dVersionIdentifier contained X86 X86_64 ARM PPC PPC64 IA64 MIPS MIPS64 Alpha
|
||||
syn keyword dVersionIdentifier contained SPARC SPARC64 S390 S390X HPPA HPPA64 SH SH64
|
||||
syn keyword dVersionIdentifier contained linux Posix OSX FreeBSD Windows Win32 Win64
|
||||
syn keyword dVersionIdentifier contained OpenBSD BSD Solaris AIX SkyOS SysV3 SysV4 Hurd
|
||||
syn keyword dVersionIdentifier contained Cygwin MinGW
|
||||
syn keyword dVersionIdentifier contained LittleEndian BigEndian
|
||||
syn keyword dVersionIdentifier contained D_InlineAsm_X86 D_InlineAsm_X86_64
|
||||
syn keyword dVersionIdentifier contained D_Version2 D_Coverage D_Ddoc D_LP64 D_PIC
|
||||
syn keyword dVersionIdentifier contained unittest none all
|
||||
|
||||
" Highlight the sharpbang
|
||||
syn match dSharpBang "\%^#!.*" display
|
||||
@@ -117,23 +131,38 @@ syn match dSharpBang "\%^#!.*" display
|
||||
syn match dAnnotation "@[_$a-zA-Z][_$a-zA-Z0-9_]*\>" contains=dAttribute
|
||||
|
||||
" Version Identifiers
|
||||
syn match dVersion "[^.]version" nextgroup=dVersionInside
|
||||
syn match dVersion "^version" nextgroup=dVersionInside
|
||||
syn match dVersionInside "([_a-zA-Z][_a-zA-Z0-9]*\>" transparent contained contains=dVersionIdentifier
|
||||
syn match dVersion "[^.]\<version\>"hs=s+1 nextgroup=dVersionInside
|
||||
syn match dVersion "^\<version\>" nextgroup=dVersionInside
|
||||
syn match dVersionInside "\s*([_a-zA-Z][_a-zA-Z0-9]*\>" transparent contained contains=dVersionIdentifier
|
||||
|
||||
" Scope StorageClass
|
||||
syn match dStorageClass "scope"
|
||||
syn match dStorageClass "\<scope\>"
|
||||
|
||||
" Traits Expression
|
||||
syn match dStatement "\<__traits\>"
|
||||
|
||||
" Extern Modifier
|
||||
syn match dExternal "\<extern\>"
|
||||
|
||||
" Scope Identifiers
|
||||
syn match dScope "scope\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+5 contains=dScopeIdentifier
|
||||
syn match dScope "\<scope\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+5 contains=dScopeIdentifier
|
||||
|
||||
" Traits Identifiers
|
||||
syn match dTraits "\<__traits\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+8 contains=dTraitsIdentifier
|
||||
|
||||
" Necessary to highlight C++ in extern modifiers.
|
||||
syn match dExternIdentifier "C\(++\)\?" contained
|
||||
|
||||
" Extern Identifiers
|
||||
syn match dExtern "\<extern\s*([_a-zA-Z][_a-zA-Z0-9\+]*\>"he=s+6 contains=dExternIdentifier
|
||||
|
||||
" String is a statement and a module name.
|
||||
syn match dType "^string"
|
||||
syn match dType "[^.]\s*\<string\>"ms=s+1
|
||||
syn match dType "[^.]\<string\>"ms=s+1
|
||||
syn match dType "^\<string\>"
|
||||
|
||||
" Assert is a statement and a module name.
|
||||
syn match dAssert "^assert"
|
||||
syn match dAssert "[^.]\s*\<assert\>"ms=s+1
|
||||
syn match dAssert "[^.]\<assert\>"ms=s+1
|
||||
syn match dAssert "^\<assert\>"
|
||||
|
||||
" dTokens is used by the token string highlighting
|
||||
syn cluster dTokens contains=dExternal,dConditional,dBranch,dRepeat,dBoolean
|
||||
@@ -161,12 +190,12 @@ if exists("d_comment_strings")
|
||||
syn region dBlockCommentString contained start=+"+ end=+"+ end=+\*/+me=s-1,he=s-1 contains=dCommentStar,dUnicode,dEscSequence,@Spell
|
||||
syn region dNestedCommentString contained start=+"+ end=+"+ end="+"me=s-1,he=s-1 contains=dCommentPlus,dUnicode,dEscSequence,@Spell
|
||||
syn region dLineCommentString contained start=+"+ end=+$\|"+ contains=dUnicode,dEscSequence,@Spell
|
||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell
|
||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell
|
||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell fold
|
||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell fold
|
||||
syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell
|
||||
else
|
||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell
|
||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell
|
||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell fold
|
||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell fold
|
||||
syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell
|
||||
endif
|
||||
|
||||
@@ -280,6 +309,10 @@ syn case match
|
||||
" TODO: Highlight following Integer and optional Filespec.
|
||||
syn region dPragma start="#\s*\(line\>\)" skip="\\$" end="$"
|
||||
|
||||
" Block
|
||||
"
|
||||
syn region dBlock start="{" end="}" transparent fold
|
||||
|
||||
|
||||
" The default highlighting.
|
||||
"
|
||||
@@ -330,12 +363,14 @@ hi def link dAnnotation PreProc
|
||||
hi def link dSharpBang PreProc
|
||||
hi def link dAttribute StorageClass
|
||||
hi def link dIdentifier Identifier
|
||||
hi def link dVersionIdentifier Identifier
|
||||
hi def link dVersion dStatement
|
||||
hi def link dScopeIdentifier dStatement
|
||||
hi def link dVersionIdentifier Identifier
|
||||
hi def link dScope dStorageClass
|
||||
|
||||
let b:current_syntax = "d"
|
||||
hi def link dScopeIdentifier Identifier
|
||||
hi def link dTraits dStatement
|
||||
hi def link dTraitsIdentifier Identifier
|
||||
hi def link dExtern dExternal
|
||||
hi def link dExternIdentifier Identifier
|
||||
|
||||
" Marks contents of the asm statment body as special
|
||||
|
||||
@@ -464,3 +499,5 @@ syn keyword dAsmOpCode contained pfnacc pfpnacc pfrcp pfrcpit1 pfrcpit2
|
||||
syn keyword dAsmOpCode contained pfrsqit1 pfrsqrt pfsub pfsubr pi2fd
|
||||
syn keyword dAsmOpCode contained pmulhrw pswapd
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,14 +1,19 @@
|
||||
" Vim syntax file
|
||||
" Language: dnsmasq configuration file
|
||||
" Vim file
|
||||
" Maintainer: Thilo Six <T.Six@gmx.de>
|
||||
" Version: 2.59-1
|
||||
" Last Change: 2011 Dec 11
|
||||
" Version: 2.60-1
|
||||
" Last Change: 2012 Mar 10
|
||||
" Modeline: vim: ts=8:sw=2:sts=2:
|
||||
" File: runtime/syntax/dnsmasq.vim
|
||||
"
|
||||
" Credits: Igor N. Prischepoff
|
||||
" Doug Kearns
|
||||
" David Ne\v{c}as
|
||||
"
|
||||
" License: VIM License
|
||||
" see ":help copyright"
|
||||
"
|
||||
" Description: highlight dnsmasq configuration files
|
||||
"
|
||||
" Options: You might want to add this to your vimrc:
|
||||
"
|
||||
" if &background == "dark"
|
||||
@@ -18,7 +23,6 @@
|
||||
" let dnsmasq_backrgound_light = 1
|
||||
" endif
|
||||
"
|
||||
"
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -28,11 +32,9 @@ elseif exists("b:current_syntax") || &compatible
|
||||
finish
|
||||
endif
|
||||
|
||||
" predictable environment:
|
||||
let s:keepcpo = &cpo
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
if !exists("b:dnsmasq_backrgound_light")
|
||||
if exists("dnsmasq_backrgound_light")
|
||||
let b:dnsmasq_backrgound_light = dnsmasq_backrgound_light
|
||||
@@ -106,6 +108,7 @@ syn match DnsmasqKeyword "^\s*dhcp-authoritative\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-boot\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-broadcast\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-circuitid\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-client-update\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-fqdn\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-generate-names\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-host\>"
|
||||
@@ -114,6 +117,7 @@ syn match DnsmasqKeyword "^\s*dhcp-ignore\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-ignore-names\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-lease-max\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-leasefile\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-luascript\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-mac\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-match\>"
|
||||
syn match DnsmasqKeyword "^\s*dhcp-no-override\>"
|
||||
@@ -134,6 +138,7 @@ syn match DnsmasqKeyword "^\s*domain\>"
|
||||
syn match DnsmasqKeyword "^\s*domain-needed\>"
|
||||
syn match DnsmasqKeyword "^\s*edns-packet-max\>"
|
||||
syn match DnsmasqKeyword "^\s*enable-dbus\>"
|
||||
syn match DnsmasqKeyword "^\s*enable-ra\>"
|
||||
syn match DnsmasqKeyword "^\s*enable-tftp\>"
|
||||
syn match DnsmasqKeyword "^\s*except-interface\>"
|
||||
syn match DnsmasqKeyword "^\s*expand-hosts\>"
|
||||
@@ -145,9 +150,9 @@ syn match DnsmasqKeyword "^\s*keep-in-foreground\>"
|
||||
syn match DnsmasqKeyword "^\s*leasefile-ro\>"
|
||||
syn match DnsmasqKeyword "^\s*listen-address\>"
|
||||
syn match DnsmasqKeyword "^\s*local\>"
|
||||
syn match DnsmasqKeyword "^\s*localmx\>"
|
||||
syn match DnsmasqKeyword "^\s*local-ttl\>"
|
||||
syn match DnsmasqKeyword "^\s*localise-queries\>"
|
||||
syn match DnsmasqKeyword "^\s*localmx\>"
|
||||
syn match DnsmasqKeyword "^\s*log-async\>"
|
||||
syn match DnsmasqKeyword "^\s*log-dhcp\>"
|
||||
syn match DnsmasqKeyword "^\s*log-facility\>"
|
||||
@@ -217,6 +222,6 @@ hi def link DnsmasqValues Normal
|
||||
|
||||
let b:current_syntax = "dnsmasq"
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
|
||||
@@ -1,229 +1,126 @@
|
||||
" Vim syntax file
|
||||
" Language: erlang (ERicsson LANGuage)
|
||||
" http://www.erlang.se
|
||||
" 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: 12-Mar-2008
|
||||
" Filenames: .erl
|
||||
" Language: Erlang
|
||||
" Author: Oscar Hellstr<74>m <oscar@oscarh.net> (http://oscar.hellstrom.st)
|
||||
" Contributors: Ricardo Catalinas Jim<69>nez <jimenezrick@gmail.com>
|
||||
" License: Vim license
|
||||
" Version: 2011/09/11
|
||||
|
||||
|
||||
" There are three sets of highlighting in here:
|
||||
" One is "erlang_characters", second is "erlang_functions" and third
|
||||
" is "erlang_keywords".
|
||||
" If you want to disable keywords highlighting, put in your .vimrc:
|
||||
" let erlang_keywords=1
|
||||
" If you want to disable erlang BIF highlighting, put in your .vimrc
|
||||
" this:
|
||||
" let erlang_functions=1
|
||||
" If you want to disable special characters highlighting, put in
|
||||
" your .vimrc:
|
||||
" let erlang_characters=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
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
else
|
||||
let b:current_syntax = "erlang"
|
||||
endif
|
||||
|
||||
if !exists("g:erlang_highlight_bif")
|
||||
let g:erlang_highlight_bif = 1
|
||||
endif
|
||||
|
||||
" Case sensitive
|
||||
" Erlang is 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 /\$\\\?./
|
||||
|
||||
if ! exists ("erlang_characters")
|
||||
syn match erlangInteger /\<\%([0-9]\+#[0-9a-fA-F]\+\|[0-9]\+\)\>/
|
||||
syn match erlangFloat /\<[0-9]\+\.[0-9]\+\%(e-\?[0-9]\+\)\?\>/
|
||||
|
||||
" Basic elements
|
||||
syn match erlangComment "%.*$" contains=erlangAnnotation,erlangTodo
|
||||
syn match erlangAnnotation " \@<=@\%(clear\|docfile\|end\|headerfile\|todo\|TODO\|type\|author\|copyright\|doc\|reference\|see\|since\|title\|version\|deprecated\|hidden\|private\|equiv\|spec\|throws\)" contained
|
||||
syn match erlangAnnotation "`[^']*'" contained
|
||||
syn keyword erlangTodo TODO FIXME XXX contained
|
||||
syn match erlangModifier "\~\a\|\\\a\|\\\\" contained
|
||||
syn match erlangSpecialCharacter ":\|_\|@\|\\\|\"\|\."
|
||||
syn match erlangSeparator "(\|)\|{\|}\|\[\|]\||\|||\|;\|,\|?\|->\|#" contained
|
||||
syn region erlangString start=+"+ skip=+\\.+ end=+"+ contains=erlangModifier
|
||||
syn region erlangAtom start=+'+ skip=+\\'+ end=+'+
|
||||
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
|
||||
|
||||
" Operators
|
||||
syn match erlangOperator "+\|-\|\*\|\/"
|
||||
syn keyword erlangOperator div rem or xor bor bxor bsl bsr
|
||||
syn keyword erlangOperator and band not bnot andalso orelse
|
||||
syn match erlangOperator "==\|/=\|=:=\|=/=\|<\|=<\|>\|>="
|
||||
syn match erlangOperator "++\|--\|=\|!\|<-"
|
||||
syn keyword erlangKeyword band bor bnot bsl bsr bxor div rem xor
|
||||
syn keyword erlangKeyword try catch begin receive after cond fun let query
|
||||
|
||||
" Numbers
|
||||
syn match erlangNumberInteger "\d\+" contains=erlangSeparator
|
||||
syn match erlangNumberFloat1 "\d\+\.\d\+" contains=erlangSeparator
|
||||
syn match erlangNumberFloat2 "\d\+\(\.\d\+\)\=[eE][+-]\=\d\+\(\.\d\+\)\=" contains=erlangSeparator
|
||||
syn match erlangNumberFloat3 "\d\+[#]\x\+" contains=erlangSeparator
|
||||
syn match erlangNumberHex "$\x\+" contains=erlangSeparator
|
||||
syn keyword erlangConditional case if of end
|
||||
syn keyword erlangConditional not and or andalso orelse
|
||||
syn keyword erlangConditional when
|
||||
|
||||
" Ignore '_' and '-' in words
|
||||
syn match erlangWord "\h\+\w*"
|
||||
syn keyword erlangBoolean true false
|
||||
|
||||
syn match erlangChar /\$./
|
||||
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
|
||||
endif
|
||||
|
||||
if ! exists ("erlang_functions")
|
||||
" Functions call
|
||||
syn match erlangFCall "\%(\w\+\s*\.\s*\)*\w\+\s*[:@]\s*\w\+"
|
||||
|
||||
" build-in-functions (BIFs)
|
||||
syn keyword erlangBIF abs alive apply atom_to_list
|
||||
syn keyword erlangBIF binary_to_list binary_to_term
|
||||
syn keyword erlangBIF concat_binary
|
||||
syn keyword erlangBIF date disconnect_node
|
||||
syn keyword erlangBIF element erase exit
|
||||
syn keyword erlangBIF float float_to_list
|
||||
syn keyword erlangBIF get get_keys group_leader
|
||||
syn keyword erlangBIF halt hd
|
||||
syn keyword erlangBIF integer_to_list is_alive
|
||||
syn keyword erlangBIF length link list_to_atom list_to_binary
|
||||
syn keyword erlangBIF list_to_float list_to_integer list_to_pid
|
||||
syn keyword erlangBIF list_to_tuple load_module
|
||||
syn keyword erlangBIF make_ref monitor_node
|
||||
syn keyword erlangBIF node nodes now
|
||||
syn keyword erlangBIF open_port
|
||||
syn keyword erlangBIF pid_to_list process_flag
|
||||
syn keyword erlangBIF process_info process put
|
||||
syn keyword erlangBIF register registered round
|
||||
syn keyword erlangBIF self setelement size spawn
|
||||
syn keyword erlangBIF spawn_link split_binary statistics
|
||||
syn keyword erlangBIF term_to_binary throw time tl trunc
|
||||
syn keyword erlangBIF tuple_to_list
|
||||
syn keyword erlangBIF unlink unregister
|
||||
syn keyword erlangBIF whereis
|
||||
|
||||
" Other BIFs
|
||||
syn keyword erlangBIF atom binary constant function integer
|
||||
syn keyword erlangBIF list number pid ports port_close port_info
|
||||
syn keyword erlangBIF reference record
|
||||
|
||||
" erlang:BIFs
|
||||
syn keyword erlangBIF check_process_code delete_module
|
||||
syn keyword erlangBIF get_cookie hash math module_loaded
|
||||
syn keyword erlangBIF preloaded processes purge_module set_cookie
|
||||
syn keyword erlangBIF set_node
|
||||
|
||||
" functions of math library
|
||||
syn keyword erlangFunction acos asin atan atan2 cos cosh exp
|
||||
syn keyword erlangFunction log log10 pi pow power sin sinh sqrt
|
||||
syn keyword erlangFunction tan tanh
|
||||
|
||||
" Other functions
|
||||
syn keyword erlangFunction call module_info parse_transform
|
||||
syn keyword erlangFunction undefined_function
|
||||
|
||||
" Modules
|
||||
syn keyword erlangModule error_handler
|
||||
endif
|
||||
|
||||
if ! exists ("erlang_keywords")
|
||||
" Constants and Directives
|
||||
syn match erlangDirective "-behaviour\|-behavior"
|
||||
syn match erlangDirective "-compile\|-define\|-else\|-endif\|-export\|-file"
|
||||
syn match erlangDirective "-ifdef\|-ifndef\|-import\|-include_lib\|-include"
|
||||
syn match erlangDirective "-module\|-record\|-undef"
|
||||
|
||||
syn match erlangConstant "-author\|-copyright\|-doc\|-vsn"
|
||||
|
||||
" Keywords
|
||||
syn keyword erlangKeyword after begin case catch
|
||||
syn keyword erlangKeyword cond end fun if
|
||||
syn keyword erlangKeyword let of query receive
|
||||
syn keyword erlangKeyword when
|
||||
syn keyword erlangKeyword try
|
||||
|
||||
" 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 false fun true
|
||||
|
||||
" Signals
|
||||
syn keyword erlangSignal badsig kill killed exit normal
|
||||
endif
|
||||
|
||||
|
||||
|
||||
" 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 erlangAnnotation Special
|
||||
HiLink erlangTodo Todo
|
||||
HiLink erlangSpecialCharacter Special
|
||||
HiLink erlangSeparator Normal
|
||||
HiLink erlangModifier Special
|
||||
HiLink erlangOperator Operator
|
||||
HiLink erlangString String
|
||||
HiLink erlangAtom Type
|
||||
|
||||
HiLink erlangNumberInteger Number
|
||||
HiLink erlangNumberFloat1 Float
|
||||
HiLink erlangNumberFloat2 Float
|
||||
HiLink erlangNumberFloat3 Float
|
||||
HiLink erlangNumberFloat4 Float
|
||||
HiLink erlangNumberHex Number
|
||||
|
||||
HiLink erlangWord Normal
|
||||
|
||||
" erlang_functions
|
||||
HiLink erlangFCall Function
|
||||
HiLink erlangBIF Function
|
||||
HiLink erlangFunction Function
|
||||
HiLink erlangModuleFunction Function
|
||||
|
||||
" erlang_keywords
|
||||
HiLink erlangDirective Type
|
||||
HiLink erlangConstant 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"
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" Vim syntax file
|
||||
" Language: Flat Assembler (FASM)
|
||||
" Maintainer: Ron Aaron <ron@ronware.org>
|
||||
" Last Change: 2004 May 16
|
||||
" Last Change: 2012/02/13
|
||||
" Vim URL: http://www.vim.org/lang.html
|
||||
" FASM Home: http://flatassembler.net/
|
||||
" FASM Version: 1.52
|
||||
" FASM Version: 1.56
|
||||
|
||||
if version < 600
|
||||
syntax clear
|
||||
@@ -12,6 +12,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal iskeyword=a-z,A-Z,48-57,.,_
|
||||
setlocal isident=a-z,A-Z,48-57,.,_
|
||||
syn case ignore
|
||||
@@ -97,7 +100,7 @@ syn keyword fasmDirective align binary code coff console discardable display dl
|
||||
syn keyword fasmDirective elf entry executable export extern far fixups format gui
|
||||
syn keyword fasmDirective import label ms mz native near notpageable pe public readable
|
||||
syn keyword fasmDirective repeat resource section segment shareable stack times
|
||||
syn keyword fasmDirective use16 use32 virtual wdm writeable
|
||||
syn keyword fasmDirective use16 use32 virtual wdm writable writeable
|
||||
syn keyword fasmOperator as at defined eq eqtype from mod on ptr rva used
|
||||
|
||||
syn match fasmNumericOperator "[+-/*]"
|
||||
@@ -142,4 +145,8 @@ hi def link fasmInstr keyword
|
||||
hi def link fasmLabel label
|
||||
hi def link fasmPrefix preproc
|
||||
let b:current_syntax = "fasm"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8 sw=8 :
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Fortran 2008 (and earlier versions including 2003, 95, 90, and 77)
|
||||
" Version: 0.91
|
||||
" Last Change: 2012 Jan. 02
|
||||
" Language: Fortran 2008 (and earlier versions: 2003, 95, 90, and 77)
|
||||
" Version: 0.93
|
||||
" Last Change: 2012 Jan. 18
|
||||
" Maintainer: Ajit J. Thakkar (ajit AT unb.ca); <http://www.unb.ca/chem/ajit/>
|
||||
" Usage: For instructions, do :help fortran-syntax from Vim
|
||||
" Credits:
|
||||
@@ -11,66 +11,48 @@
|
||||
" Walter Dieudonn<6E>, Alexander Wagner, Roman Bertle, Charles Rendleman,
|
||||
" Andrew Griffiths, Joe Krahn, and Hendrik Merx.
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit if a syntax file is already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" let b:fortran_dialect = fortran_dialect if set correctly by user
|
||||
if exists("fortran_dialect")
|
||||
if fortran_dialect =~ '\<\(f\(9[05]\|77\)\|elf\|F\)\>'
|
||||
let b:fortran_dialect = matchstr(fortran_dialect,'\<\(f\(9[05]\|77\)\|elf\|F\)\>')
|
||||
else
|
||||
echohl WarningMsg | echo "Unknown value of fortran_dialect" | echohl None
|
||||
let b:fortran_dialect = "unknown"
|
||||
" Choose fortran_dialect using the priority:
|
||||
" source file directive > buffer-local value > global value > default
|
||||
" try using directive in first three lines of file
|
||||
let b:fortran_retype = getline(1)." ".getline(2)." ".getline(3)
|
||||
if b:fortran_retype =~? '\<fortran_dialect\s*=\s*F\>'
|
||||
let b:fortran_dialect = "F"
|
||||
elseif b:fortran_retype =~? '\<fortran_dialect\s*=\s*f08\>'
|
||||
let b:fortran_dialect = "f08"
|
||||
elseif !exists("b:fortran_dialect")
|
||||
if exists("g:fortran_dialect") && g:fortran_dialect =~# '\<F\|f08\>'
|
||||
" try global variable
|
||||
let b:fortran_dialect = g:fortran_dialect
|
||||
else " nothing found, so use default
|
||||
let b:fortran_dialect = "f08"
|
||||
endif
|
||||
else
|
||||
let b:fortran_dialect = "unknown"
|
||||
endif
|
||||
|
||||
" fortran_dialect not set or set incorrectly by user,
|
||||
if b:fortran_dialect == "unknown"
|
||||
" set b:fortran_dialect from directive in first three lines of file
|
||||
let b:fortran_retype = getline(1)." ".getline(2)." ".getline(3)
|
||||
if b:fortran_retype =~ '\<fortran_dialect\s*=\s*F\>'
|
||||
let b:fortran_dialect = "F"
|
||||
elseif b:fortran_retype =~ '\<fortran_dialect\s*=\s*elf\>'
|
||||
let b:fortran_dialect = "elf"
|
||||
elseif b:fortran_retype =~ '\<fortran_dialect\s*=\s*f90\>'
|
||||
let b:fortran_dialect = "f90"
|
||||
elseif b:fortran_retype =~ '\<fortran_dialect\s*=\s*f95\>'
|
||||
let b:fortran_dialect = "f95"
|
||||
elseif b:fortran_retype =~ '\<fortran_dialect\s*=\s*f77\>'
|
||||
let b:fortran_dialect = "f77"
|
||||
else
|
||||
" no directive found, so assume f95
|
||||
let b:fortran_dialect = "f95"
|
||||
endif
|
||||
unlet b:fortran_retype
|
||||
unlet! b:fortran_retype
|
||||
" make sure buffer-local value is not invalid
|
||||
if b:fortran_dialect !~# '\<F\|f08\>'
|
||||
let b:fortran_dialect = "f08"
|
||||
endif
|
||||
|
||||
" Choose between fixed and free source form if this hasn't been done yet
|
||||
if !exists("b:fortran_fixed_source")
|
||||
if b:fortran_dialect == "elf" || b:fortran_dialect == "F"
|
||||
" elf and F require free source form
|
||||
if b:fortran_dialect == "F"
|
||||
" F requires free source form
|
||||
let b:fortran_fixed_source = 0
|
||||
elseif b:fortran_dialect == "f77"
|
||||
" f77 requires fixed source form
|
||||
let b:fortran_fixed_source = 1
|
||||
elseif exists("fortran_free_source")
|
||||
" User guarantees free source form for all f90 and f95 files
|
||||
" User guarantees free source form for all fortran files
|
||||
let b:fortran_fixed_source = 0
|
||||
elseif exists("fortran_fixed_source")
|
||||
" User guarantees fixed source form for all f90 and f95 files
|
||||
" User guarantees fixed source form for all fortran files
|
||||
let b:fortran_fixed_source = 1
|
||||
else
|
||||
" f90 and f95 allow both fixed and free source form.
|
||||
" Modern fortran still allows both free and fixed source form.
|
||||
" Assume fixed source form unless signs of free source form
|
||||
" are detected in the first five columns of the first s:lmax lines.
|
||||
" Detection becomes more accurate and time-consuming if more lines
|
||||
@@ -96,29 +78,18 @@ endif
|
||||
|
||||
syn case ignore
|
||||
|
||||
if b:fortran_dialect !=? "f77"
|
||||
if version >= 600
|
||||
if b:fortran_fixed_source == 1
|
||||
syn match fortranConstructName "^\s\{6,}\zs\a\w*\ze\s*:"
|
||||
else
|
||||
syn match fortranConstructName "^\s*\zs\a\w*\ze\s*:"
|
||||
endif
|
||||
if exists("fortran_more_precise")
|
||||
syn match fortranConstructName "\(\<end\s*do\s\+\)\@<=\a\w*"
|
||||
syn match fortranConstructName "\(\<end\s*if\s\+\)\@<=\a\w*"
|
||||
syn match fortranConstructName "\(\<end\s*select\s\+\)\@<=\a\w*"
|
||||
endif
|
||||
else
|
||||
if b:fortran_fixed_source == 1
|
||||
syn match fortranConstructName "^\s\{6,}\a\w*\s*:"
|
||||
else
|
||||
syn match fortranConstructName "^\s*\a\w*\s*:"
|
||||
endif
|
||||
endif
|
||||
if b:fortran_fixed_source == 1
|
||||
syn match fortranConstructName "^\s\{6,}\zs\a\w*\ze\s*:"
|
||||
else
|
||||
syn match fortranConstructName "^\s*\zs\a\w*\ze\s*:"
|
||||
endif
|
||||
if exists("fortran_more_precise")
|
||||
syn match fortranConstructName "\(\<end\s*do\s\+\)\@<=\a\w*"
|
||||
syn match fortranConstructName "\(\<end\s*if\s\+\)\@<=\a\w*"
|
||||
syn match fortranConstructName "\(\<end\s*select\s\+\)\@<=\a\w*"
|
||||
endif
|
||||
|
||||
syn match fortranUnitHeader "\<end\>"
|
||||
|
||||
syn match fortranUnitHeader "\<end\>"
|
||||
syn match fortranType "\<character\>"
|
||||
syn match fortranType "\<complex\>"
|
||||
syn match fortranType "\<integer\>"
|
||||
@@ -145,7 +116,7 @@ syn match fortranParenError ")"
|
||||
syn match fortranOperator "\.\s*n\=eqv\s*\."
|
||||
syn match fortranOperator "\.\s*\(and\|or\|not\)\s*\."
|
||||
syn match fortranOperator "\(+\|-\|/\|\*\)"
|
||||
syn match fortranTypeOb "\<character\>\@<=\s*\*"
|
||||
syn match fortranTypeOb "\<character\s*\*"
|
||||
|
||||
syn match fortranBoolean "\.\s*\(true\|false\)\s*\."
|
||||
|
||||
@@ -160,17 +131,17 @@ endif
|
||||
|
||||
syn keyword fortranIO access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit
|
||||
|
||||
syn keyword fortran66Intrinsic alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl
|
||||
syn keyword fortranIntrinsicR alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl
|
||||
|
||||
" Intrinsics provided by some vendors
|
||||
syn keyword fortranExtraIntrinsic algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh
|
||||
|
||||
syn keyword fortran77Intrinsic abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh
|
||||
syn match fortran77Intrinsic "\<len\s*[(,]"me=s+3
|
||||
syn match fortran77Intrinsic "\<real\s*("me=s+4
|
||||
syn keyword fortranIntrinsic abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh
|
||||
syn match fortranIntrinsic "\<len\s*[(,]"me=s+3
|
||||
syn match fortranIntrinsic "\<real\s*("me=s+4
|
||||
syn match fortranType "\<implicit\s\+real"
|
||||
syn match fortranType "^\s*real\>"
|
||||
syn match fortran90Intrinsic "\<logical\s*("me=s+7
|
||||
syn match fortranIntrinsic "\<logical\s*("me=s+7
|
||||
syn match fortranType "\<implicit\s\+logical"
|
||||
syn match fortranType "^\s*logical\>"
|
||||
|
||||
@@ -178,13 +149,13 @@ syn match fortranType "^\s*logical\>"
|
||||
" Integers
|
||||
syn match fortranNumber display "\<\d\+\(_\a\w*\)\=\>"
|
||||
" floating point number, without a decimal point
|
||||
syn match fortranFloatNoDec display "\<\d\+[deq][-+]\=\d\+\(_\a\w*\)\=\>"
|
||||
syn match fortranFloatIll display "\<\d\+[deq][-+]\=\d\+\(_\a\w*\)\=\>"
|
||||
" floating point number, starting with a decimal point
|
||||
syn match fortranFloatIniDec display "\.\d\+\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
syn match fortranFloatIll display "\.\d\+\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
" floating point number, no digits after decimal
|
||||
syn match fortranFloatEndDec display "\<\d\+\.\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
syn match fortranFloatIll display "\<\d\+\.\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
" floating point number, D or Q exponents
|
||||
syn match fortranFloatDExp display "\<\d\+\.\d\+\([dq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
syn match fortranFloatIll display "\<\d\+\.\d\+\([dq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
" floating point number
|
||||
syn match fortranFloat display "\<\d\+\.\d\+\(e[-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
" Numbers in formats
|
||||
@@ -202,76 +173,73 @@ syn match fortranLabelNumber display "^ \d\{1,3}\s"ms=s+2,me=e-1
|
||||
syn match fortranLabelNumber display "^ \d\d\=\s"ms=s+3,me=e-1
|
||||
syn match fortranLabelNumber display "^ \d\s"ms=s+4,me=e-1
|
||||
|
||||
if version >= 600 && exists("fortran_more_precise")
|
||||
if exists("fortran_more_precise")
|
||||
" Numbers as targets
|
||||
syn match fortranTarget display "\(\<if\s*(.\+)\s*\)\@<=\(\d\+\s*,\s*\)\{2}\d\+\>"
|
||||
syn match fortranTarget display "\(\<do\s\+\)\@<=\d\+\>"
|
||||
syn match fortranTarget display "\(\<go\s*to\s*(\=\)\@<=\(\d\+\s*,\s*\)*\d\+\>"
|
||||
endif
|
||||
|
||||
syn keyword fortranTypeEx external
|
||||
syn keyword fortranIOEx format
|
||||
syn match fortranKeywordEx "\<continue\>"
|
||||
syn keyword fortranTypeR external
|
||||
syn keyword fortranIOR format
|
||||
syn match fortranKeywordR "\<continue\>"
|
||||
syn match fortranKeyword "^\s*\d\+\s\+continue\>"
|
||||
syn match fortranKeyword "\<go\s*to\>"
|
||||
syn match fortranKeywordDel "\<go\s*to\ze\s\+.*,\s*(.*$"
|
||||
syn match fortranKeywordOb "\<go\s*to\ze\s*(\d\+.*$"
|
||||
syn region fortranStringEx start=+'+ end=+'+ contains=fortranContinueMark,fortranLeftMargin,fortranSerialNumber
|
||||
syn keyword fortran77IntrinsicEx dim lge lgt lle llt mod
|
||||
syn region fortranStringR start=+'+ end=+'+ contains=fortranContinueMark,fortranLeftMargin,fortranSerialNumber
|
||||
syn keyword fortranIntrinsicR dim lge lgt lle llt mod
|
||||
syn keyword fortranKeywordDel assign pause
|
||||
|
||||
if b:fortran_dialect != "f77"
|
||||
syn match fortranType "\<type\>"
|
||||
syn keyword fortranType none
|
||||
|
||||
syn match fortranType "\<type\>"
|
||||
syn keyword fortranType none
|
||||
syn keyword fortranStructure private public intent optional
|
||||
syn keyword fortranStructure pointer target allocatable
|
||||
syn keyword fortranStorageClass in out
|
||||
syn match fortranStorageClass "\<kind\s*="me=s+4
|
||||
syn match fortranStorageClass "\<len\s*="me=s+3
|
||||
|
||||
syn keyword fortranStructure private public intent optional
|
||||
syn keyword fortranStructure pointer target allocatable
|
||||
syn keyword fortranStorageClass in out
|
||||
syn match fortranStorageClass "\<kind\s*="me=s+4
|
||||
syn match fortranStorageClass "\<len\s*="me=s+3
|
||||
syn match fortranUnitHeader "\<module\>"
|
||||
syn keyword fortranUnitHeader use only contains
|
||||
syn keyword fortranUnitHeader result operator assignment
|
||||
syn match fortranUnitHeader "\<interface\>"
|
||||
syn match fortranUnitHeader "\<recursive\>"
|
||||
syn keyword fortranKeyword allocate deallocate nullify cycle exit
|
||||
syn match fortranConditional "\<select\>"
|
||||
syn keyword fortranConditional case default where elsewhere
|
||||
|
||||
syn match fortranUnitHeader "\<module\>"
|
||||
syn keyword fortranUnitHeader use only contains
|
||||
syn keyword fortranUnitHeader result operator assignment
|
||||
syn match fortranUnitHeader "\<interface\>"
|
||||
syn match fortranUnitHeader "\<recursive\>"
|
||||
syn keyword fortranKeyword allocate deallocate nullify cycle exit
|
||||
syn match fortranConditional "\<select\>"
|
||||
syn keyword fortranConditional case default where elsewhere
|
||||
syn match fortranOperator "\(\(>\|<\)=\=\|==\|/=\|=\)"
|
||||
syn match fortranOperator "=>"
|
||||
|
||||
syn match fortranOperator "\(\(>\|<\)=\=\|==\|/=\|=\)"
|
||||
syn match fortranOperator "=>"
|
||||
syn region fortranString start=+"+ end=+"+ contains=fortranLeftMargin,fortranContinueMark,fortranSerialNumber
|
||||
syn keyword fortranIO pad position action delim readwrite
|
||||
syn keyword fortranIO eor advance nml
|
||||
|
||||
syn region fortranString start=+"+ end=+"+ contains=fortranLeftMargin,fortranContinueMark,fortranSerialNumber
|
||||
syn keyword fortranIO pad position action delim readwrite
|
||||
syn keyword fortranIO eor advance nml
|
||||
syn keyword fortranIntrinsic adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack precision present product radix random_number random_seed range repeat reshape rrspacing
|
||||
syn keyword fortranIntrinsic scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify
|
||||
syn match fortranIntrinsic "\<not\>\(\s*\.\)\@!"me=s+3
|
||||
syn match fortranIntrinsic "\<kind\>\s*[(,]"me=s+4
|
||||
|
||||
syn keyword fortran90Intrinsic adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack precision present product radix random_number random_seed range repeat reshape rrspacing
|
||||
syn keyword fortran90Intrinsic scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify
|
||||
syn match fortran90Intrinsic "\<not\>\(\s*\.\)\@!"me=s+3
|
||||
syn match fortran90Intrinsic "\<kind\>\s*[(,]"me=s+4
|
||||
syn match fortranUnitHeader "\<end\s*function"
|
||||
syn match fortranUnitHeader "\<end\s*interface"
|
||||
syn match fortranUnitHeader "\<end\s*module"
|
||||
syn match fortranUnitHeader "\<end\s*program"
|
||||
syn match fortranUnitHeader "\<end\s*subroutine"
|
||||
syn match fortranRepeat "\<end\s*do"
|
||||
syn match fortranConditional "\<end\s*where"
|
||||
syn match fortranConditional "\<select\s*case"
|
||||
syn match fortranConditional "\<end\s*select"
|
||||
syn match fortranType "\<end\s*type"
|
||||
syn match fortranType "\<in\s*out"
|
||||
|
||||
syn match fortranUnitHeader "\<end\s*function"
|
||||
syn match fortranUnitHeader "\<end\s*interface"
|
||||
syn match fortranUnitHeader "\<end\s*module"
|
||||
syn match fortranUnitHeader "\<end\s*program"
|
||||
syn match fortranUnitHeader "\<end\s*subroutine"
|
||||
syn match fortranRepeat "\<end\s*do"
|
||||
syn match fortranConditional "\<end\s*where"
|
||||
syn match fortranConditional "\<select\s*case"
|
||||
syn match fortranConditional "\<end\s*select"
|
||||
syn match fortranType "\<end\s*type"
|
||||
syn match fortranType "\<in\s*out"
|
||||
syn keyword fortranType procedure
|
||||
syn keyword fortranIOR namelist
|
||||
syn keyword fortranConditionalR while
|
||||
syn keyword fortranIntrinsicR achar iachar transfer
|
||||
|
||||
syn keyword fortranType procedure
|
||||
syn keyword fortranIOEx namelist
|
||||
syn keyword fortranConditionalEx while
|
||||
syn keyword fortran90IntrinsicEx achar iachar transfer
|
||||
|
||||
syn keyword fortranInclude include
|
||||
syn keyword fortran90StorageClassR sequence
|
||||
endif
|
||||
syn keyword fortranInclude include
|
||||
syn keyword fortranStorageClassR sequence
|
||||
|
||||
syn match fortranConditional "\<end\s*if"
|
||||
syn match fortranIO contains=fortranOperator "\<e\(nd\|rr\)\s*=\s*\d\+"
|
||||
@@ -282,55 +250,53 @@ syn match fortranTypeR display "double\s\+precision"
|
||||
syn match fortranTypeR display "double\s\+complex"
|
||||
syn match fortranUnitHeaderR display "block\s\+data"
|
||||
syn keyword fortranStorageClassR common equivalence data
|
||||
syn keyword fortran77IntrinsicR dble dprod
|
||||
syn match fortran77OperatorR "\.\s*[gl][et]\s*\."
|
||||
syn match fortran77OperatorR "\.\s*\(eq\|ne\)\s*\."
|
||||
syn keyword fortranIntrinsicR dble dprod
|
||||
syn match fortranOperatorR "\.\s*[gl][et]\s*\."
|
||||
syn match fortranOperatorR "\.\s*\(eq\|ne\)\s*\."
|
||||
|
||||
if b:fortran_dialect == "f95" || b:fortran_dialect == "F"
|
||||
syn keyword fortranRepeat forall
|
||||
syn match fortranRepeat "\<end\s*forall"
|
||||
syn keyword fortran95Intrinsic null cpu_time
|
||||
syn match fortranType "\<elemental\>"
|
||||
syn match fortranType "\<pure\>"
|
||||
if exists("fortran_more_precise")
|
||||
syn match fortranConstructName "\(\<end\s*forall\s\+\)\@<=\a\w*\>"
|
||||
endif
|
||||
syn keyword fortranRepeat forall
|
||||
syn match fortranRepeat "\<end\s*forall"
|
||||
syn keyword fortranIntrinsic null cpu_time
|
||||
syn match fortranType "\<elemental\>"
|
||||
syn match fortranType "\<pure\>"
|
||||
if exists("fortran_more_precise")
|
||||
syn match fortranConstructName "\(\<end\s*forall\s\+\)\@<=\a\w*\>"
|
||||
endif
|
||||
|
||||
if b:fortran_dialect == "f95"
|
||||
if b:fortran_dialect == "f08"
|
||||
" F2003
|
||||
syn keyword fortran03Intrinsic command_argument_count get_command get_command_argument get_environment_variable is_iostat_end is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of
|
||||
syn keyword fortranIntrinsic command_argument_count get_command get_command_argument get_environment_variable is_iostat_end is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of
|
||||
" ISO_C_binding
|
||||
syn keyword fortran03Constant c_null_char c_alert c_backspace c_form_feed c_new_line c_carriage_return c_horizontal_tab c_vertical_tab
|
||||
syn keyword fortran03Constant c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr
|
||||
syn keyword fortran03Intrinsic iso_c_binding c_loc c_funloc c_associated c_f_pointer c_f_procpointer
|
||||
syn keyword fortran03Type c_ptr c_funptr
|
||||
syn keyword fortranConstant c_null_char c_alert c_backspace c_form_feed c_new_line c_carriage_return c_horizontal_tab c_vertical_tab
|
||||
syn keyword fortranConstant c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr
|
||||
syn keyword fortranIntrinsic iso_c_binding c_loc c_funloc c_associated c_f_pointer c_f_procpointer
|
||||
syn keyword fortranType c_ptr c_funptr
|
||||
" ISO_Fortran_env
|
||||
syn keyword fortran03Constant iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit
|
||||
syn keyword fortranConstant iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit
|
||||
" IEEE_arithmetic
|
||||
syn keyword fortran03Intrinsic ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode
|
||||
syn keyword fortranIntrinsic ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode
|
||||
|
||||
syn keyword fortran03ReadWrite flush wait
|
||||
syn keyword fortran03IO decimal round iomsg
|
||||
syn keyword fortran03Type asynchronous nopass non_overridable pass protected volatile abstract extends import
|
||||
syn keyword fortran03Type non_intrinsic value bind deferred generic final enumerator
|
||||
syn match fortran03Type "\<class\>"
|
||||
syn match fortran03Type "\<associate\>"
|
||||
syn match fortran03Type "\<end\s*associate"
|
||||
syn match fortran03Type "\<enum\s*,\s*bind\s*(\s*c\s*)"
|
||||
syn match fortran03Type "\<end\s*enum"
|
||||
syn match fortran03Conditional "\<select\s*type"
|
||||
syn match fortran03Conditional "\<type\s*is\>"
|
||||
syn match fortran03Conditional "\<class\s*is\>"
|
||||
syn match fortran03UnitHeader "\<abstract\s*interface\>"
|
||||
syn match fortran03Operator "\([\|]\)"
|
||||
syn keyword fortranReadWrite flush wait
|
||||
syn keyword fortranIO decimal round iomsg
|
||||
syn keyword fortranType asynchronous nopass non_overridable pass protected volatile abstract extends import
|
||||
syn keyword fortranType non_intrinsic value bind deferred generic final enumerator
|
||||
syn match fortranType "\<class\>"
|
||||
syn match fortranType "\<associate\>"
|
||||
syn match fortranType "\<end\s*associate"
|
||||
syn match fortranType "\<enum\s*,\s*bind\s*(\s*c\s*)"
|
||||
syn match fortranType "\<end\s*enum"
|
||||
syn match fortranConditional "\<select\s*type"
|
||||
syn match fortranConditional "\<type\s*is\>"
|
||||
syn match fortranConditional "\<class\s*is\>"
|
||||
syn match fortranUnitHeader "\<abstract\s*interface\>"
|
||||
syn match fortranOperator "\([\|]\)"
|
||||
|
||||
" F2008
|
||||
syn keyword fortran08Intrinsic acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2
|
||||
syn keyword fortran08Intrinsic atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits
|
||||
syn keyword fortran08Intrinsic bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image
|
||||
syn keyword fortran08IO newunit
|
||||
syn keyword fortran08Type contiguous
|
||||
syn keyword fortranIntrinsic acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2
|
||||
syn keyword fortranIntrinsic atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits
|
||||
syn keyword fortranIntrinsic bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image
|
||||
syn keyword fortranIO newunit
|
||||
syn keyword fortranType contiguous
|
||||
endif
|
||||
|
||||
syn cluster fortranCommentGroup contains=fortranTodo
|
||||
@@ -350,9 +316,7 @@ else
|
||||
syn match fortranContinueMark display "&"
|
||||
endif
|
||||
|
||||
if b:fortran_dialect != "f77"
|
||||
syn match fortranComment excludenl "!.*$" contains=@fortranCommentGroup,@spell
|
||||
endif
|
||||
syn match fortranComment excludenl "!.*$" contains=@fortranCommentGroup,@spell
|
||||
|
||||
"cpp is often used with Fortran
|
||||
syn match cPreProc "^\s*#\s*\(define\|ifdef\)\>.*"
|
||||
@@ -372,7 +336,7 @@ else
|
||||
syn sync minlines=30
|
||||
endif
|
||||
|
||||
if version >= 600 && exists("fortran_fold")
|
||||
if exists("fortran_fold")
|
||||
|
||||
if (b:fortran_fixed_source == 1)
|
||||
syn region fortranProgram transparent fold keepend start="^\s*program\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(program\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranModule
|
||||
@@ -416,148 +380,93 @@ if version >= 600 && exists("fortran_fold")
|
||||
endif
|
||||
|
||||
" 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_fortran_syn_inits")
|
||||
if version < 508
|
||||
let did_fortran_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" The default highlighting differs for each dialect.
|
||||
" Transparent groups:
|
||||
" fortranParen, fortranLeftMargin
|
||||
" fortranProgram, fortranModule, fortranSubroutine, fortranFunction,
|
||||
" fortranBlockData
|
||||
" fortran77Loop, fortran90Loop, fortranIfBlock, fortranCase
|
||||
" fortranMultiCommentLines
|
||||
hi def link fortranKeyword Keyword
|
||||
hi def link fortranConstructName Identifier
|
||||
hi def link fortranConditional Conditional
|
||||
hi def link fortranRepeat Repeat
|
||||
hi def link fortranTodo Todo
|
||||
hi def link fortranContinueMark Special
|
||||
hi def link fortranString String
|
||||
hi def link fortranNumber Number
|
||||
hi def link fortranOperator Operator
|
||||
hi def link fortranBoolean Boolean
|
||||
hi def link fortranLabelError Error
|
||||
hi def link fortranObsolete Todo
|
||||
hi def link fortranType Type
|
||||
hi def link fortranStructure Type
|
||||
hi def link fortranStorageClass StorageClass
|
||||
hi def link fortranCall Function
|
||||
hi def link fortranUnitHeader fortranPreCondit
|
||||
hi def link fortranReadWrite Keyword
|
||||
hi def link fortranIO Keyword
|
||||
hi def link fortranIntrinsic Function
|
||||
hi def link fortranConstant Constant
|
||||
|
||||
" The default highlighting differs for each dialect.
|
||||
" Transparent groups:
|
||||
" fortranParen, fortranLeftMargin
|
||||
" fortranProgram, fortranModule, fortranSubroutine, fortranFunction,
|
||||
" fortranBlockData
|
||||
" fortran77Loop, fortran90Loop, fortranIfBlock, fortranCase
|
||||
" fortranMultiCommentLines
|
||||
HiLink fortranKeyword Keyword
|
||||
HiLink fortranConstructName Identifier
|
||||
HiLink fortran03Conditional fortranConditional
|
||||
HiLink fortranConditional Conditional
|
||||
HiLink fortranRepeat Repeat
|
||||
HiLink fortranTodo Todo
|
||||
if (b:fortran_fixed_source == 1)
|
||||
HiLink fortranContinueMark Todo
|
||||
else
|
||||
HiLink fortranContinueMark Keyword
|
||||
endif
|
||||
HiLink fortranString String
|
||||
HiLink fortranNumber Number
|
||||
HiLink fortran03Operator fortranOperator
|
||||
HiLink fortranOperator Operator
|
||||
HiLink fortranBoolean Boolean
|
||||
HiLink fortranLabelError Error
|
||||
HiLink fortranObsolete Todo
|
||||
HiLink fortran03Type fortranType
|
||||
HiLink fortran08Type fortranType
|
||||
HiLink fortranType Type
|
||||
HiLink fortranStructure Type
|
||||
HiLink fortranStorageClass StorageClass
|
||||
HiLink fortranCall Function
|
||||
HiLink fortran03UnitHeader fortranUnitHeader
|
||||
HiLink fortranUnitHeader fortranPreCondit
|
||||
HiLink fortran03ReadWrite fortranReadWrite
|
||||
HiLink fortranReadWrite Keyword
|
||||
HiLink fortran03IO fortranIO
|
||||
HiLink fortran08IO fortranIO
|
||||
HiLink fortranIO Keyword
|
||||
HiLink fortran95Intrinsic fortran90Intrinsic
|
||||
HiLink fortran77Intrinsic fortran90Intrinsic
|
||||
HiLink fortran90Intrinsic Function
|
||||
HiLink fortran03Intrinsic Function
|
||||
HiLink fortran08Intrinsic Function
|
||||
HiLink fortran03Constant Function
|
||||
" To stop deleted & obsolescent features being highlighted as Todo items,
|
||||
" comment out the next 5 lines and uncomment the 5 lines after that
|
||||
hi def link fortranUnitHeaderOb fortranObsolete
|
||||
hi def link fortranKeywordOb fortranObsolete
|
||||
hi def link fortranConditionalOb fortranObsolete
|
||||
hi def link fortranTypeOb fortranObsolete
|
||||
hi def link fortranKeywordDel fortranObsolete
|
||||
"hi def link fortranUnitHeaderOb fortranUnitHeader
|
||||
"hi def link fortranKeywordOb fortranKeyword
|
||||
"hi def link fortranConditionalOb fortranConditional
|
||||
"hi def link fortranTypeOb fortranType
|
||||
"hi def link fortranKeywordDel fortranKeyword
|
||||
|
||||
if b:fortran_dialect != "f77"
|
||||
HiLink fortranUnitHeaderOb Todo
|
||||
HiLink fortranKeywordOb Todo
|
||||
HiLink fortranConditionalOb Todo
|
||||
HiLink fortranTypeOb Todo
|
||||
HiLink fortranKeywordDel Todo
|
||||
else
|
||||
HiLink fortranUnitHeaderOb fortranUnitHeader
|
||||
HiLink fortranKeywordOb fortranKeyword
|
||||
HiLink fortranConditionalOb fortranConditional
|
||||
HiLink fortranTypeOb fortranType
|
||||
HiLink fortranKeywordDel fortranKeyword
|
||||
endif
|
||||
|
||||
if ( b:fortran_dialect == "elf" || b:fortran_dialect == "F" )
|
||||
HiLink fortranKeywordOb fortranObsolete
|
||||
HiLink fortran66Intrinsic fortranObsolete
|
||||
HiLink fortran77IntrinsicR fortranObsolete
|
||||
HiLink fortranUnitHeaderR fortranObsolete
|
||||
HiLink fortranTypeR fortranObsolete
|
||||
HiLink fortranStorageClassR fortranObsolete
|
||||
HiLink fortran90StorageClassR fortranObsolete
|
||||
HiLink fortran77OperatorR fortranObsolete
|
||||
HiLink fortranInclude fortranObsolete
|
||||
else
|
||||
HiLink fortranKeywordOb fortranKeyword
|
||||
HiLink fortran66Intrinsic fortran90Intrinsic
|
||||
HiLink fortran77IntrinsicR fortran90Intrinsic
|
||||
HiLink fortranUnitHeaderR fortranPreCondit
|
||||
HiLink fortranTypeR fortranType
|
||||
HiLink fortranStorageClassR fortranStorageClass
|
||||
HiLink fortran77OperatorR fortranOperator
|
||||
HiLink fortranInclude Include
|
||||
HiLink fortran90StorageClassR fortranStorageClass
|
||||
endif
|
||||
|
||||
if ( b:fortran_dialect == "F" )
|
||||
HiLink fortranLabelNumber fortranObsolete
|
||||
HiLink fortranTarget fortranObsolete
|
||||
HiLink fortranFormatSpec fortranObsolete
|
||||
HiLink fortranFloatDExp fortranObsolete
|
||||
HiLink fortranFloatNoDec fortranObsolete
|
||||
HiLink fortranFloatIniDec fortranObsolete
|
||||
HiLink fortranFloatEndDec fortranObsolete
|
||||
HiLink fortranTypeEx fortranObsolete
|
||||
HiLink fortranIOEx fortranObsolete
|
||||
HiLink fortranKeywordEx fortranObsolete
|
||||
HiLink fortranStringEx fortranObsolete
|
||||
HiLink fortran77IntrinsicEx fortranObsolete
|
||||
HiLink fortranUnitHeaderEx fortranObsolete
|
||||
HiLink fortranConditionalEx fortranObsolete
|
||||
HiLink fortran90IntrinsicEx fortranObsolete
|
||||
else
|
||||
HiLink fortranLabelNumber Special
|
||||
HiLink fortranTarget Special
|
||||
HiLink fortranFormatSpec Identifier
|
||||
HiLink fortranFloatDExp fortranFloat
|
||||
HiLink fortranFloatNoDec fortranFloat
|
||||
HiLink fortranFloatIniDec fortranFloat
|
||||
HiLink fortranFloatEndDec fortranFloat
|
||||
HiLink fortranTypeEx fortranType
|
||||
HiLink fortranIOEx fortranIO
|
||||
HiLink fortranKeywordEx fortranKeyword
|
||||
HiLink fortranStringEx fortranString
|
||||
HiLink fortran77IntrinsicEx fortran90Intrinsic
|
||||
HiLink fortranUnitHeaderEx fortranUnitHeader
|
||||
HiLink fortranConditionalEx fortranConditional
|
||||
HiLink fortran90IntrinsicEx fortran90Intrinsic
|
||||
endif
|
||||
|
||||
HiLink fortranFloat Float
|
||||
HiLink fortranPreCondit PreCondit
|
||||
HiLink fortranInclude Include
|
||||
HiLink cIncluded fortranString
|
||||
HiLink cInclude Include
|
||||
HiLink cPreProc PreProc
|
||||
HiLink cPreCondit PreCondit
|
||||
HiLink fortranParenError Error
|
||||
HiLink fortranComment Comment
|
||||
HiLink fortranSerialNumber Todo
|
||||
HiLink fortranTab Error
|
||||
" Vendor extensions
|
||||
HiLink fortranExtraIntrinsic Function
|
||||
|
||||
delcommand HiLink
|
||||
if b:fortran_dialect == "F"
|
||||
hi! def link fortranIntrinsicR fortranObsolete
|
||||
hi! def link fortranUnitHeaderR fortranObsolete
|
||||
hi! def link fortranTypeR fortranObsolete
|
||||
hi! def link fortranStorageClassR fortranObsolete
|
||||
hi! def link fortranOperatorR fortranObsolete
|
||||
hi! def link fortranInclude fortranObsolete
|
||||
hi! def link fortranLabelNumber fortranObsolete
|
||||
hi! def link fortranTarget fortranObsolete
|
||||
hi! def link fortranFloatIll fortranObsolete
|
||||
hi! def link fortranIOR fortranObsolete
|
||||
hi! def link fortranKeywordR fortranObsolete
|
||||
hi! def link fortranStringR fortranObsolete
|
||||
hi! def link fortranConditionalR fortranObsolete
|
||||
else
|
||||
hi! def link fortranIntrinsicR fortranIntrinsic
|
||||
hi! def link fortranUnitHeaderR fortranPreCondit
|
||||
hi! def link fortranTypeR fortranType
|
||||
hi! def link fortranStorageClassR fortranStorageClass
|
||||
hi! def link fortranOperatorR fortranOperator
|
||||
hi! def link fortranInclude Include
|
||||
hi! def link fortranLabelNumber Special
|
||||
hi! def link fortranTarget Special
|
||||
hi! def link fortranFloatIll fortranFloat
|
||||
hi! def link fortranIOR fortranIO
|
||||
hi! def link fortranKeywordR fortranKeyword
|
||||
hi! def link fortranStringR fortranString
|
||||
hi! def link fortranConditionalR fortranConditional
|
||||
endif
|
||||
|
||||
hi def link fortranFormatSpec Identifier
|
||||
hi def link fortranFloat Float
|
||||
hi def link fortranPreCondit PreCondit
|
||||
hi def link cIncluded fortranString
|
||||
hi def link cInclude Include
|
||||
hi def link cPreProc PreProc
|
||||
hi def link cPreCondit PreCondit
|
||||
hi def link fortranParenError Error
|
||||
hi def link fortranComment Comment
|
||||
hi def link fortranSerialNumber Todo
|
||||
hi def link fortranTab Error
|
||||
|
||||
" Uncomment the next line if you use extra intrinsics provided by vendors
|
||||
"hi def link fortranExtraIntrinsic Function
|
||||
|
||||
let b:current_syntax = "fortran"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user