Updated runtime files.
This commit is contained in:
@ -1,16 +1,31 @@
|
|||||||
" Vim OMNI completion script for SQL
|
" Vim OMNI completion script for SQL
|
||||||
" Language: SQL
|
" Language: SQL
|
||||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||||
" Version: 10.0
|
" Version: 12.0
|
||||||
" Last Change: 2010 Jun 11
|
" Last Change: 2012 Feb 08
|
||||||
" Usage: For detailed help
|
" Usage: For detailed help
|
||||||
" ":help sql.txt"
|
" ":help sql.txt"
|
||||||
" or ":help ft-sql-omni"
|
" or ":help ft-sql-omni"
|
||||||
" or read $VIMRUNTIME/doc/sql.txt
|
" or read $VIMRUNTIME/doc/sql.txt
|
||||||
|
|
||||||
" History
|
" 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
|
" Version 10.0
|
||||||
" Updated PreCacheSyntax()
|
" Updated PreCacheSyntax()
|
||||||
" - Now returns a List of the syntax items it finds.
|
" - Now returns a List of the syntax items it finds.
|
||||||
" This allows other plugins / scripts to use this list for their own
|
" This allows other plugins / scripts to use this list for their own
|
||||||
" purposes. In this case XPTemplate can use them for a Choose list.
|
" purposes. In this case XPTemplate can use them for a Choose list.
|
||||||
@ -18,22 +33,22 @@
|
|||||||
" warning if not.
|
" warning if not.
|
||||||
" - Verifies the parameters are the correct type and displays a
|
" - Verifies the parameters are the correct type and displays a
|
||||||
" warning if not.
|
" warning if not.
|
||||||
" Updated SQLCWarningMsg()
|
" Updated SQLCWarningMsg()
|
||||||
" - Prepends warning message with SQLComplete so you know who issued
|
" - Prepends warning message with SQLComplete so you know who issued
|
||||||
" the warning.
|
" the warning.
|
||||||
" Updated SQLCErrorMsg()
|
" Updated SQLCErrorMsg()
|
||||||
" - Prepends error message with SQLComplete so you know who issued
|
" - Prepends error message with SQLComplete so you know who issued
|
||||||
" the error.
|
" the error.
|
||||||
"
|
"
|
||||||
" Version 9.0
|
" Version 9.0
|
||||||
" This change removes some of the support for tables with spaces in their
|
" 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.
|
" aliases for more robust table name and column name code completion.
|
||||||
" Full support for "table names with spaces" can be added in again
|
" Full support for "table names with spaces" can be added in again
|
||||||
" after 7.3.
|
" after 7.3.
|
||||||
"
|
"
|
||||||
" Version 8.0
|
" 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.
|
" when drilling in and out of a column list for a table.
|
||||||
"
|
"
|
||||||
" Version 7.0
|
" Version 7.0
|
||||||
@ -44,7 +59,7 @@
|
|||||||
"
|
"
|
||||||
" Set completion with CTRL-X CTRL-O to autoloaded function.
|
" Set completion with CTRL-X CTRL-O to autoloaded function.
|
||||||
" This check is in place in case this script is
|
" 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')
|
if exists('&omnifunc')
|
||||||
" Do not set the option if already set since this
|
" Do not set the option if already set since this
|
||||||
" results in an E117 warning.
|
" results in an E117 warning.
|
||||||
@ -54,9 +69,9 @@ if exists('&omnifunc')
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if exists('g:loaded_sql_completion')
|
if exists('g:loaded_sql_completion')
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_sql_completion = 100
|
let g:loaded_sql_completion = 120
|
||||||
|
|
||||||
" Maintains filename of dictionary
|
" Maintains filename of dictionary
|
||||||
let s:sql_file_table = ""
|
let s:sql_file_table = ""
|
||||||
@ -69,7 +84,7 @@ let s:tbl_alias = []
|
|||||||
let s:tbl_cols = []
|
let s:tbl_cols = []
|
||||||
let s:syn_list = []
|
let s:syn_list = []
|
||||||
let s:syn_value = []
|
let s:syn_value = []
|
||||||
|
|
||||||
" Used in conjunction with the syntaxcomplete plugin
|
" Used in conjunction with the syntaxcomplete plugin
|
||||||
let s:save_inc = ""
|
let s:save_inc = ""
|
||||||
let s:save_exc = ""
|
let s:save_exc = ""
|
||||||
@ -79,7 +94,7 @@ endif
|
|||||||
if exists('g:omni_syntax_group_exclude_sql')
|
if exists('g:omni_syntax_group_exclude_sql')
|
||||||
let s:save_exc = g:omni_syntax_group_exclude_sql
|
let s:save_exc = g:omni_syntax_group_exclude_sql
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" Used with the column list
|
" Used with the column list
|
||||||
let s:save_prev_table = ""
|
let s:save_prev_table = ""
|
||||||
|
|
||||||
@ -110,12 +125,16 @@ if !exists('g:omni_sql_include_owner')
|
|||||||
if g:loaded_dbext >= 300
|
if g:loaded_dbext >= 300
|
||||||
" New to dbext 3.00, by default the table lists include the owner
|
" 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
|
" 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.
|
" code replacement.
|
||||||
let g:omni_sql_include_owner = 1
|
let g:omni_sql_include_owner = 1
|
||||||
endif
|
endif
|
||||||
endif
|
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.
|
" This function is used for the 'omnifunc' option.
|
||||||
function! sqlcomplete#Complete(findstart, base)
|
function! sqlcomplete#Complete(findstart, base)
|
||||||
@ -140,7 +159,7 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
let begindot = 1
|
let begindot = 1
|
||||||
endif
|
endif
|
||||||
while start > 0
|
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".
|
" can contain spaces like "my table name".
|
||||||
if line[start - 1] !~ '\(\w\|\.\)'
|
if line[start - 1] !~ '\(\w\|\.\)'
|
||||||
" If the previous character is not a period or word character
|
" 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'
|
elseif line[start - 1] =~ '\w'
|
||||||
" If the previous character is word character continue back
|
" If the previous character is word character continue back
|
||||||
let start -= 1
|
let start -= 1
|
||||||
elseif line[start - 1] =~ '\.' &&
|
elseif line[start - 1] =~ '\.' &&
|
||||||
\ compl_type =~ 'column\|table\|view\|procedure'
|
\ compl_type =~ 'column\|table\|view\|procedure'
|
||||||
" If the previous character is a period and we are completing
|
" If the previous character is a period and we are completing
|
||||||
" an object which can be specified with a period like this:
|
" 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
|
" If lastword has already been set for column completion
|
||||||
" break from the loop, since we do not also want to pickup
|
" break from the loop, since we do not also want to pickup
|
||||||
" a table name if it was also supplied.
|
" a table name if it was also supplied.
|
||||||
if lastword != -1 && compl_type == 'column'
|
if lastword != -1 && compl_type == 'column'
|
||||||
break
|
break
|
||||||
endif
|
endif
|
||||||
" If column completion was specified stop at the "." if
|
" If column completion was specified stop at the "." if
|
||||||
@ -171,8 +190,8 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
endif
|
endif
|
||||||
" If omni_sql_include_owner = 0, do not include the table
|
" If omni_sql_include_owner = 0, do not include the table
|
||||||
" name as part of the substitution, so break here
|
" name as part of the substitution, so break here
|
||||||
if lastword == -1 &&
|
if lastword == -1 &&
|
||||||
\ compl_type =~ 'table\|view\|procedure\column_csv' &&
|
\ compl_type =~ 'table\|view\|procedure\column_csv' &&
|
||||||
\ g:omni_sql_include_owner == 0
|
\ g:omni_sql_include_owner == 0
|
||||||
let lastword = start
|
let lastword = start
|
||||||
break
|
break
|
||||||
@ -202,7 +221,7 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
let compl_list = []
|
let compl_list = []
|
||||||
|
|
||||||
" Default to table name completion
|
" 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
|
" Allow maps to specify what type of object completion they want
|
||||||
if exists('b:sql_compl_type')
|
if exists('b:sql_compl_type')
|
||||||
let compl_type = b:sql_compl_type
|
let compl_type = b:sql_compl_type
|
||||||
@ -216,7 +235,7 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
|
|
||||||
if compl_type == 'table' ||
|
if compl_type == 'table' ||
|
||||||
\ compl_type == 'procedure' ||
|
\ compl_type == 'procedure' ||
|
||||||
\ compl_type == 'view'
|
\ compl_type == 'view'
|
||||||
|
|
||||||
" This type of completion relies upon the dbext.vim plugin
|
" This type of completion relies upon the dbext.vim plugin
|
||||||
if s:SQLCCheck4dbext() == -1
|
if s:SQLCCheck4dbext() == -1
|
||||||
@ -254,7 +273,7 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
|
|
||||||
if base == ""
|
if base == ""
|
||||||
" The last time we displayed a column list we stored
|
" 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
|
" without a table name of alias present, assume they want
|
||||||
" the previous column list displayed.
|
" the previous column list displayed.
|
||||||
let base = s:save_prev_table
|
let base = s:save_prev_table
|
||||||
@ -273,16 +292,16 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
" has entered:
|
" has entered:
|
||||||
" owner.table
|
" owner.table
|
||||||
" table.column_prefix
|
" 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.
|
" this issue.
|
||||||
" 1. Check if the dbext plugin has the option turned
|
" 1. Check if the dbext plugin has the option turned
|
||||||
" on to even allow owners
|
" on to even allow owners
|
||||||
" 2. Based on 1, if the user is showing a table list
|
" 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
|
" 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
|
" 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.
|
" owner.table, not table.column_prefix.
|
||||||
let found = -1
|
let found = -1
|
||||||
if g:omni_sql_include_owner == 1 && owner == ''
|
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
|
" 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
|
" the base ends in a '.' we know they are not providing a column
|
||||||
" name, so we can shift the items appropriately.
|
" name, so we can shift the items appropriately.
|
||||||
if found != -1 || (g:omni_sql_include_owner == 0 && base !~ '\.$')
|
" if found != -1 || (g:omni_sql_include_owner == 0 && base !~ '\.$')
|
||||||
let owner = table
|
" let owner = table
|
||||||
let table = column
|
" let table = column
|
||||||
let column = ''
|
" let column = ''
|
||||||
endif
|
" endif
|
||||||
else
|
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
|
let table = base
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" Get anything after the . and consider this the table name
|
" 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
|
" base to be a partial column name
|
||||||
" let base = matchstr( base, '^\(.*\.\)\?\zs.*' )
|
" let base = matchstr( base, '^\(.*\.\)\?\zs.*' )
|
||||||
|
|
||||||
@ -327,11 +375,11 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
" If no column prefix has been provided and the table
|
" If no column prefix has been provided and the table
|
||||||
" name was provided, append it to each of the items
|
" name was provided, append it to each of the items
|
||||||
" returned.
|
" returned.
|
||||||
let compl_list = map(compl_list, "table.'.'.v:val")
|
let compl_list = map(compl_list, 'table.".".v:val')
|
||||||
if owner != ''
|
if owner != ''
|
||||||
" If an owner has been provided append it to each of the
|
" If an owner has been provided append it to each of the
|
||||||
" items returned.
|
" items returned.
|
||||||
let compl_list = map(compl_list, "owner.'.'.v:val")
|
let compl_list = map(compl_list, 'owner.".".v:val')
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
let base = ''
|
let base = ''
|
||||||
@ -361,11 +409,15 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
|
|
||||||
if base != ''
|
if base != ''
|
||||||
" Filter the list based on the first few characters the user entered.
|
" Filter the list based on the first few characters the user entered.
|
||||||
" Check if the text matches at the beginning
|
" Check if the text matches at the beginning
|
||||||
" or
|
" \\(^.base.'\\)
|
||||||
|
" or
|
||||||
" Match to a owner.table or alias.column type match
|
" Match to a owner.table or alias.column type match
|
||||||
|
" ^\\(\\w\\+\\.\\)\\?'.base.'\\)
|
||||||
" or
|
" or
|
||||||
" Handle names with spaces "my table name"
|
" 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.'\\|^\\(\\w\\+\\.\\)\\?'.base.'\\)"'
|
||||||
" let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\)"'
|
" let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\)"'
|
||||||
" let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\|\\(\\.\\)\\?'.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_group_arr = []
|
||||||
let syn_items = []
|
let syn_items = []
|
||||||
|
|
||||||
if a:0 > 0
|
if a:0 > 0
|
||||||
if type(a:1) != 3
|
if type(a:1) != 3
|
||||||
call s:SQLCWarningMsg("Parameter is not a list. Example:['syntaxGroup1', 'syntaxGroup2']")
|
call s:SQLCWarningMsg("Parameter is not a list. Example:['syntaxGroup1', 'syntaxGroup2']")
|
||||||
return ''
|
return ''
|
||||||
@ -407,7 +459,7 @@ endfunction
|
|||||||
function! sqlcomplete#ResetCacheSyntax(...)
|
function! sqlcomplete#ResetCacheSyntax(...)
|
||||||
let syn_group_arr = []
|
let syn_group_arr = []
|
||||||
|
|
||||||
if a:0 > 0
|
if a:0 > 0
|
||||||
if type(a:1) != 3
|
if type(a:1) != 3
|
||||||
call s:SQLCWarningMsg("Parameter is not a list. Example:['syntaxGroup1', 'syntaxGroup2']")
|
call s:SQLCWarningMsg("Parameter is not a list. Example:['syntaxGroup1', 'syntaxGroup2']")
|
||||||
return ''
|
return ''
|
||||||
@ -458,7 +510,7 @@ function! sqlcomplete#DrillIntoTable()
|
|||||||
" If the popup is not visible, simple perform the normal
|
" If the popup is not visible, simple perform the normal
|
||||||
" key behaviour.
|
" key behaviour.
|
||||||
" Must use exec since they key must be preceeded by "\"
|
" 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".
|
" rather than the "key press".
|
||||||
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_right.'", "n")'
|
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_right.'", "n")'
|
||||||
endif
|
endif
|
||||||
@ -475,7 +527,7 @@ function! sqlcomplete#DrillOutOfColumns()
|
|||||||
" If the popup is not visible, simple perform the normal
|
" If the popup is not visible, simple perform the normal
|
||||||
" key behaviour.
|
" key behaviour.
|
||||||
" Must use exec since they key must be preceeded by "\"
|
" 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".
|
" rather than the "key press".
|
||||||
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_left.'", "n")'
|
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_left.'", "n")'
|
||||||
endif
|
endif
|
||||||
@ -484,16 +536,16 @@ endfunction
|
|||||||
|
|
||||||
function! s:SQLCWarningMsg(msg)
|
function! s:SQLCWarningMsg(msg)
|
||||||
echohl WarningMsg
|
echohl WarningMsg
|
||||||
echomsg 'SQLComplete:'.a:msg
|
echomsg 'SQLComplete:'.a:msg
|
||||||
echohl None
|
echohl None
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:SQLCErrorMsg(msg)
|
function! s:SQLCErrorMsg(msg)
|
||||||
echohl ErrorMsg
|
echohl ErrorMsg
|
||||||
echomsg 'SQLComplete:'.a:msg
|
echomsg 'SQLComplete:'.a:msg
|
||||||
echohl None
|
echohl None
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:SQLCGetSyntaxList(syn_group)
|
function! s:SQLCGetSyntaxList(syn_group)
|
||||||
let syn_group = a:syn_group
|
let syn_group = a:syn_group
|
||||||
let compl_list = []
|
let compl_list = []
|
||||||
@ -504,7 +556,7 @@ function! s:SQLCGetSyntaxList(syn_group)
|
|||||||
" Return previously cached value
|
" Return previously cached value
|
||||||
let compl_list = s:syn_value[list_idx]
|
let compl_list = s:syn_value[list_idx]
|
||||||
else
|
else
|
||||||
" Request the syntax list items from the
|
" Request the syntax list items from the
|
||||||
" syntax completion plugin
|
" syntax completion plugin
|
||||||
if syn_group == 'syntax'
|
if syn_group == 'syntax'
|
||||||
" Handle this special case. This allows the user
|
" 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 table_alias = a:table_alias
|
||||||
let cols = a:cols
|
let cols = a:cols
|
||||||
|
|
||||||
if g:omni_sql_use_tbl_alias != 'n'
|
if g:omni_sql_use_tbl_alias != 'n'
|
||||||
if table_alias == ''
|
if table_alias == ''
|
||||||
if 'da' =~? g:omni_sql_use_tbl_alias
|
if 'da' =~? g:omni_sql_use_tbl_alias
|
||||||
if table_name =~ '_'
|
if table_name =~ '_'
|
||||||
@ -562,13 +614,13 @@ function! s:SQLCAddAlias(table_name, table_alias, cols)
|
|||||||
setlocal iskeyword-=_
|
setlocal iskeyword-=_
|
||||||
|
|
||||||
" Get the first letter of each word
|
" Get the first letter of each word
|
||||||
" [[:alpha:]] is used instead of \w
|
" [[:alpha:]] is used instead of \w
|
||||||
" to catch extended accented characters
|
" to catch extended accented characters
|
||||||
"
|
"
|
||||||
let table_alias = substitute(
|
let table_alias = substitute(
|
||||||
\ table_name,
|
\ table_name,
|
||||||
\ '\<[[:alpha:]]\+\>_\?',
|
\ '\<[[:alpha:]]\+\>_\?',
|
||||||
\ '\=strpart(submatch(0), 0, 1)',
|
\ '\=strpart(submatch(0), 0, 1)',
|
||||||
\ 'g'
|
\ 'g'
|
||||||
\ )
|
\ )
|
||||||
" Restore original value
|
" Restore original value
|
||||||
@ -596,7 +648,7 @@ function! s:SQLCAddAlias(table_name, table_alias, cols)
|
|||||||
return cols
|
return cols
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:SQLCGetObjectOwner(object)
|
function! s:SQLCGetObjectOwner(object)
|
||||||
" The owner regex matches a word at the start of the string which is
|
" 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.
|
" followed by a dot, but doesn't include the dot in the result.
|
||||||
" ^ - from beginning of line
|
" ^ - 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, '^\s*\zs.*\ze\.' )
|
||||||
let owner = matchstr( a:object, '^\("\|\[\)\?\zs\.\{-}\ze\("\|\]\)\?\.' )
|
let owner = matchstr( a:object, '^\("\|\[\)\?\zs\.\{-}\ze\("\|\]\)\?\.' )
|
||||||
return owner
|
return owner
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:SQLCGetColumns(table_name, list_type)
|
function! s:SQLCGetColumns(table_name, list_type)
|
||||||
" Check if the table name was provided as part of the column name
|
" 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
|
if list_idx > -1
|
||||||
let table_cols = split(s:tbl_cols[list_idx], '\n')
|
let table_cols = split(s:tbl_cols[list_idx], '\n')
|
||||||
else
|
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
|
" by its alias, assuming the table_name provided was actually
|
||||||
" the alias for the table instead
|
" the alias for the table instead
|
||||||
" select *
|
" 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
|
" 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 =~ '\.' || b:sql_compl_type =~ 'column')
|
||||||
" if list_idx == -1 && (a:table_name =~ '\.' || a:list_type =~ 'csv')
|
" if list_idx == -1 && (a:table_name =~ '\.' || a:list_type =~ 'csv')
|
||||||
if list_idx == -1
|
if list_idx == -1
|
||||||
let saveY = @y
|
let saveY = @y
|
||||||
let saveSearch = @/
|
let saveSearch = @/
|
||||||
let saveWScan = &wrapscan
|
let saveWScan = &wrapscan
|
||||||
@ -665,7 +717,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
|||||||
setlocal nowrapscan
|
setlocal nowrapscan
|
||||||
" If . was entered, look at the word just before the .
|
" If . was entered, look at the word just before the .
|
||||||
" We are looking for something like this:
|
" We are looking for something like this:
|
||||||
" select *
|
" select *
|
||||||
" from customer c
|
" from customer c
|
||||||
" where c.
|
" where c.
|
||||||
" So when . is pressed, we need to find '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 =~? '^\c\(select\)'
|
||||||
if query =~? '^\(select\|update\|delete\)'
|
if query =~? '^\(select\|update\|delete\)'
|
||||||
let found = 1
|
let found = 1
|
||||||
" \(\(\<\w\+\>\)\.\)\? -
|
" \(\(\<\w\+\>\)\.\)\? -
|
||||||
" '\c\(from\|join\|,\).\{-}' - Starting at the from clause (case insensitive)
|
" '\c\(from\|join\|,\).\{-}' - Starting at the from clause (case insensitive)
|
||||||
" '\zs\(\(\<\w\+\>\)\.\)\?' - Get the owner name (optional)
|
" '\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\+\<'.table_name.'\>' - Followed by the alias
|
||||||
" '\s*\.\@!.*' - Cannot be followed by a .
|
" '\s*\.\@!.*' - Cannot be followed by a .
|
||||||
" '\(\<where\>\|$\)' - Must be followed by a WHERE clause
|
" '\(\<where\>\|$\)' - Must be followed by a WHERE clause
|
||||||
" '.*' - Exclude the rest of the line in the match
|
" '.*' - Exclude the rest of the line in the match
|
||||||
" let table_name_new = matchstr(@y,
|
" let table_name_new = matchstr(@y,
|
||||||
" \ '\c\(from\|join\|,\).\{-}'.
|
" \ '\c\(from\|join\|,\).\{-}'.
|
||||||
" \ '\zs\(\("\|\[\)\?.\{-}\("\|\]\)\.\)\?'.
|
" \ '\zs\(\("\|\[\)\?.\{-}\("\|\]\)\.\)\?'.
|
||||||
" \ '\("\|\[\)\?.\{-}\("\|\]\)\?\ze'.
|
" \ '\("\|\[\)\?.\{-}\("\|\]\)\?\ze'.
|
||||||
@ -711,7 +763,16 @@ function! s:SQLCGetColumns(table_name, list_type)
|
|||||||
" \ '\(\<where\>\|$\)'.
|
" \ '\(\<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*'.
|
\ '\c\(\<from\>\|\<join\>\|,\)\s*'.
|
||||||
\ '\zs\(\("\|\[\)\?\w\+\("\|\]\)\?\.\)\?'.
|
\ '\zs\(\("\|\[\)\?\w\+\("\|\]\)\?\.\)\?'.
|
||||||
\ '\("\|\[\)\?\w\+\("\|\]\)\?\ze'.
|
\ '\("\|\[\)\?\w\+\("\|\]\)\?\ze'.
|
||||||
@ -753,7 +814,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
|||||||
|
|
||||||
" Return to previous location
|
" Return to previous location
|
||||||
call cursor(curline, curcol)
|
call cursor(curline, curcol)
|
||||||
|
|
||||||
if found == 0
|
if found == 0
|
||||||
if g:loaded_dbext > 300
|
if g:loaded_dbext > 300
|
||||||
exec 'DBSetOption use_tbl_alias='.saveSettingAlias
|
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
|
" Not a SQL statement, do not display a list
|
||||||
return []
|
return []
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if empty(table_cols)
|
if empty(table_cols)
|
||||||
" Specify silent mode, no messages to the user (tbl, 1)
|
" Specify silent mode, no messages to the user (tbl, 1)
|
||||||
|
|||||||
@ -1,11 +1,13 @@
|
|||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Compiler: Erlang
|
" Compiler: Erlang
|
||||||
" Maintainer: none, please volunteer!
|
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||||
" Last Change: 2012 Jan 20
|
" Last Change: 2012-02-13
|
||||||
|
|
||||||
if exists("current_compiler")
|
if exists("current_compiler")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let current_compiler = "erlang"
|
let current_compiler = "erlang"
|
||||||
|
|
||||||
" TODO
|
CompilerSet makeprg=erlc\ -Wall\ %
|
||||||
|
|
||||||
|
CompilerSet errorformat=%f:%l:\ %m
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*autocmd.txt* For Vim version 7.3. Last change: 2012 Feb 12
|
*autocmd.txt* For Vim version 7.3. Last change: 2012 Feb 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
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
|
features, such as editing compressed files (see |gzip-example|). The usual
|
||||||
place to put autocommands is in your .vimrc or .exrc file.
|
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
|
WARNING: Using autocommands is very powerful, and may lead to unexpected side
|
||||||
effects. Be careful not to destroy your text.
|
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.
|
- It's a good idea to do some testing on an expendable copy of a file first.
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*options.txt* For Vim version 7.3. Last change: 2012 Feb 12
|
*options.txt* For Vim version 7.3. Last change: 2012 Feb 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -5900,9 +5900,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
|
|
||||||
*'shellcmdflag'* *'shcf'*
|
*'shellcmdflag'* *'shcf'*
|
||||||
'shellcmdflag' 'shcf' string (default: "-c";
|
'shellcmdflag' 'shcf' string (default: "-c";
|
||||||
Win32, when 'shell' is cmd.exe: "/s /c";
|
MS-DOS and Win32, when 'shell' does not
|
||||||
MS-DOS and Win32, when 'shell' neither is
|
contain "sh" somewhere: "/c")
|
||||||
cmd.exe nor contains "sh" somewhere: "/c")
|
|
||||||
global
|
global
|
||||||
{not in Vi}
|
{not in Vi}
|
||||||
Flag passed to the shell to execute "!" and ":!" commands; e.g.,
|
Flag passed to the shell to execute "!" and ":!" commands; e.g.,
|
||||||
@ -6041,6 +6040,15 @@ 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
|
0 and 2: use "shell 'shellcmdflag' cmd" to start external commands
|
||||||
1 and 3: use "shell 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'*
|
||||||
'shellxquote' 'sxq' string (default: "";
|
'shellxquote' 'sxq' string (default: "";
|
||||||
for Win32, when 'shell' is cmd.exe: "("
|
for Win32, when 'shell' is cmd.exe: "("
|
||||||
@ -6065,16 +6073,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
security reasons.
|
security reasons.
|
||||||
|
|
||||||
*'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.
|
|
||||||
|
|
||||||
|
|
||||||
*'shiftround'* *'sr'* *'noshiftround'* *'nosr'*
|
*'shiftround'* *'sr'* *'noshiftround'* *'nosr'*
|
||||||
'shiftround' 'sr' boolean (default off)
|
'shiftround' 'sr' boolean (default off)
|
||||||
global
|
global
|
||||||
|
|||||||
@ -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
|
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
|
'shellslash' 'ssl' use forward slash for shell file names
|
||||||
'shelltemp' 'stmp' whether to use a temp file for shell commands
|
'shelltemp' 'stmp' whether to use a temp file for shell commands
|
||||||
'shelltype' 'st' Amiga: influences how to use a shell
|
'shelltype' 'st' Amiga: influences how to use a shell
|
||||||
|
'shellxescape' 'sxe' characters to escape when 'shellxquote' is (
|
||||||
'shellxquote' 'sxq' like 'shellquote', but include redirection
|
'shellxquote' 'sxq' like 'shellquote', but include redirection
|
||||||
'shiftround' 'sr' round indent to multiple of shiftwidth
|
'shiftround' 'sr' round indent to multiple of shiftwidth
|
||||||
'shiftwidth' 'sw' number of spaces to use for (auto)indent step
|
'shiftwidth' 'sw' number of spaces to use for (auto)indent step
|
||||||
|
|||||||
@ -783,6 +783,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
|||||||
'shellslash' options.txt /*'shellslash'*
|
'shellslash' options.txt /*'shellslash'*
|
||||||
'shelltemp' options.txt /*'shelltemp'*
|
'shelltemp' options.txt /*'shelltemp'*
|
||||||
'shelltype' options.txt /*'shelltype'*
|
'shelltype' options.txt /*'shelltype'*
|
||||||
|
'shellxescape' options.txt /*'shellxescape'*
|
||||||
'shellxquote' options.txt /*'shellxquote'*
|
'shellxquote' options.txt /*'shellxquote'*
|
||||||
'shiftround' options.txt /*'shiftround'*
|
'shiftround' options.txt /*'shiftround'*
|
||||||
'shiftwidth' options.txt /*'shiftwidth'*
|
'shiftwidth' options.txt /*'shiftwidth'*
|
||||||
@ -852,6 +853,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
|||||||
'swf' options.txt /*'swf'*
|
'swf' options.txt /*'swf'*
|
||||||
'switchbuf' options.txt /*'switchbuf'*
|
'switchbuf' options.txt /*'switchbuf'*
|
||||||
'sws' options.txt /*'sws'*
|
'sws' options.txt /*'sws'*
|
||||||
|
'sxe' options.txt /*'sxe'*
|
||||||
'sxq' options.txt /*'sxq'*
|
'sxq' options.txt /*'sxq'*
|
||||||
'syn' options.txt /*'syn'*
|
'syn' options.txt /*'syn'*
|
||||||
'synmaxcol' options.txt /*'synmaxcol'*
|
'synmaxcol' options.txt /*'synmaxcol'*
|
||||||
@ -4241,6 +4243,7 @@ E851 gui_x11.txt /*E851*
|
|||||||
E852 gui_x11.txt /*E852*
|
E852 gui_x11.txt /*E852*
|
||||||
E853 eval.txt /*E853*
|
E853 eval.txt /*E853*
|
||||||
E854 options.txt /*E854*
|
E854 options.txt /*E854*
|
||||||
|
E855 autocmd.txt /*E855*
|
||||||
E86 windows.txt /*E86*
|
E86 windows.txt /*E86*
|
||||||
E87 windows.txt /*E87*
|
E87 windows.txt /*E87*
|
||||||
E88 windows.txt /*E88*
|
E88 windows.txt /*E88*
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*todo.txt* For Vim version 7.3. Last change: 2012 Feb 12
|
*todo.txt* For Vim version 7.3. Last change: 2012 Feb 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -38,9 +38,15 @@ Go through more coverity reports.
|
|||||||
|
|
||||||
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
|
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
|
||||||
|
|
||||||
|
Stack trace of crash: http://vpaste.net/GBt9S
|
||||||
|
(Alexandre Provencio)
|
||||||
|
|
||||||
Once syntax and other runtime files have been fixed: add "set cp" to
|
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'.
|
check.vim. Use a function to run both with 'cp' and 'nocp'.
|
||||||
|
|
||||||
|
Undo broken when pasting close to the last line. (Andrey Radev, 2012 Feb 14)
|
||||||
|
Patch by Christian Brabandt, 2012 Feb 14.
|
||||||
|
|
||||||
GTK: problem with 'L' in 'guioptions' changing the window width.
|
GTK: problem with 'L' in 'guioptions' changing the window width.
|
||||||
(Aaron Cornelius, 2012 Feb 6)
|
(Aaron Cornelius, 2012 Feb 6)
|
||||||
|
|
||||||
@ -48,6 +54,8 @@ Win32: When a directory name contains an exclamation mark, completion doesn't
|
|||||||
complete the contents of the directory. No escaping for the "!"? (Jan
|
complete the contents of the directory. No escaping for the "!"? (Jan
|
||||||
Stocker, 2012 Jan 5)
|
Stocker, 2012 Jan 5)
|
||||||
|
|
||||||
|
Patch to speed up ga_grow(). (Dominique Pelle, 2012 Feb 13)
|
||||||
|
|
||||||
Patch for "tab drop hoge" moving current window. (Higashi, 2012 Jan 31)
|
Patch for "tab drop hoge" moving current window. (Higashi, 2012 Jan 31)
|
||||||
":tab drop buffer.c" always opens a new tab, also if buffer.c is already in an
|
":tab drop buffer.c" always opens a new tab, also if buffer.c is already in an
|
||||||
open window. (Herb Sitz, 2011 Nov 17)
|
open window. (Herb Sitz, 2011 Nov 17)
|
||||||
@ -79,6 +87,9 @@ URXVT:
|
|||||||
Patch for using QuickFixCmdPre for more commands. (Marcin Szamotulski, 2012
|
Patch for using QuickFixCmdPre for more commands. (Marcin Szamotulski, 2012
|
||||||
Feb 1, update Feb 2)
|
Feb 1, update Feb 2)
|
||||||
|
|
||||||
|
Patch for pasting in the Ex command line is slow. (Dominique Pelle, 2012 Feb
|
||||||
|
19)
|
||||||
|
|
||||||
When running Vim in silent ex mode, an existing swapfile causes Vim to wait
|
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)
|
for a user action without a prompt. (Maarten Billemont, 2012 Feb 3)
|
||||||
Do give the prompt? Quit with an error?
|
Do give the prompt? Quit with an error?
|
||||||
@ -87,6 +98,10 @@ 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
|
dialog, there is no dialog to ask whether the existing file should be
|
||||||
overwritten. (Felipe G. Nievinski, 2011 Dec 22)
|
overwritten. (Felipe G. Nievinski, 2011 Dec 22)
|
||||||
|
|
||||||
|
Patch for improved ":qa" behavior. (Hirohito Higashi, 2012 Feb 18)
|
||||||
|
|
||||||
|
Recognize objcpp. (Austin Ziegler, 2012 Feb 15)
|
||||||
|
|
||||||
7 Setting an option always sets "w_set_curswant", while this is only
|
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
|
required for a few options. Only do it for those options to avoid the
|
||||||
side effect.
|
side effect.
|
||||||
@ -98,7 +113,7 @@ Carvalho merged the patch: New version 2012 Jan 19.
|
|||||||
|
|
||||||
Patch for option in 'cino' to specify more indent for continued conditions.
|
Patch for option in 'cino' to specify more indent for continued conditions.
|
||||||
(Lech Lorens, 2011 Nov 27)
|
(Lech Lorens, 2011 Nov 27)
|
||||||
Isn't this already possible?
|
Isn't this already possible? Update 2012 Feb 15.
|
||||||
|
|
||||||
Patch for using objcpp file type for headers files. Issue 44.
|
Patch for using objcpp file type for headers files. Issue 44.
|
||||||
|
|
||||||
@ -155,6 +170,9 @@ Plugin for Modeleasy. (Massimiliano Tripoli, 2011 Nov 29)
|
|||||||
Updated syntax file for ssh_config, maintainer doesn't respond.
|
Updated syntax file for ssh_config, maintainer doesn't respond.
|
||||||
(Leonard Ehrenfried, 2011 Sep 26)
|
(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
|
"fC" doesn't position the cursor correctly when there are concealed
|
||||||
characters. Patch by Christian Brabandt, 2011 Oct 11)
|
characters. Patch by Christian Brabandt, 2011 Oct 11)
|
||||||
|
|
||||||
@ -959,6 +977,7 @@ Performance tests:
|
|||||||
- ~/vim/test/slowsearch
|
- ~/vim/test/slowsearch
|
||||||
- ~/vim/test/rgb.vim
|
- ~/vim/test/rgb.vim
|
||||||
- ~/vim/text/FeiqCfg.xml (file from Netjune)
|
- ~/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
|
- search for a.*e*exn in the vim executable. Go to last line to use
|
||||||
'hlsearch'.
|
'hlsearch'.
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
" These commands create the option window.
|
" These commands create the option window.
|
||||||
"
|
"
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" 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 there already is an option window, jump to that one.
|
||||||
if bufwinnr("option-window") > 0
|
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 <SID>OptionG("shq", &shq)
|
||||||
call append("$", "shellxquote\tlike 'shellquote' but include the redirection")
|
call append("$", "shellxquote\tlike 'shellquote' but include the redirection")
|
||||||
call <SID>OptionG("sxq", &sxq)
|
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 append("$", "shellcmdflag\targument for 'shell' to execute a command")
|
||||||
call <SID>OptionG("shcf", &shcf)
|
call <SID>OptionG("shcf", &shcf)
|
||||||
call append("$", "shellredir\tused to redirect command output to a file")
|
call append("$", "shellredir\tused to redirect command output to a file")
|
||||||
|
|||||||
@ -1,10 +1,10 @@
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: Flat Assembler (FASM)
|
" Language: Flat Assembler (FASM)
|
||||||
" Maintainer: Ron Aaron <ron@ronware.org>
|
" Maintainer: Ron Aaron <ron@ronware.org>
|
||||||
" Last Change: 2004 May 16
|
" Last Change: 2012/02/13
|
||||||
" Vim URL: http://www.vim.org/lang.html
|
" Vim URL: http://www.vim.org/lang.html
|
||||||
" FASM Home: http://flatassembler.net/
|
" FASM Home: http://flatassembler.net/
|
||||||
" FASM Version: 1.52
|
" FASM Version: 1.56
|
||||||
|
|
||||||
if version < 600
|
if version < 600
|
||||||
syntax clear
|
syntax clear
|
||||||
@ -12,6 +12,9 @@ elseif exists("b:current_syntax")
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
setlocal iskeyword=a-z,A-Z,48-57,.,_
|
setlocal iskeyword=a-z,A-Z,48-57,.,_
|
||||||
setlocal isident=a-z,A-Z,48-57,.,_
|
setlocal isident=a-z,A-Z,48-57,.,_
|
||||||
syn case ignore
|
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 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 import label ms mz native near notpageable pe public readable
|
||||||
syn keyword fasmDirective repeat resource section segment shareable stack times
|
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 keyword fasmOperator as at defined eq eqtype from mod on ptr rva used
|
||||||
|
|
||||||
syn match fasmNumericOperator "[+-/*]"
|
syn match fasmNumericOperator "[+-/*]"
|
||||||
@ -142,4 +145,8 @@ hi def link fasmInstr keyword
|
|||||||
hi def link fasmLabel label
|
hi def link fasmLabel label
|
||||||
hi def link fasmPrefix preproc
|
hi def link fasmPrefix preproc
|
||||||
let b:current_syntax = "fasm"
|
let b:current_syntax = "fasm"
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim: ts=8 sw=8 :
|
" vim: ts=8 sw=8 :
|
||||||
|
|||||||
@ -1,11 +1,10 @@
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: resolver configuration file
|
" Language: resolver configuration file
|
||||||
" Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
|
" Maintainer: David Necas (Yeti) <yeti@physics.muni.cz>
|
||||||
" Original Maintaner: Radu Dineiu <littledragon@altern.org>
|
" Original Maintaner: Radu Dineiu <littledragon@altern.org>
|
||||||
" License: This file can be redistribued and/or modified under the same terms
|
" License: This file can be redistribued and/or modified under the same terms
|
||||||
" as Vim itself.
|
" as Vim itself.
|
||||||
" URL: http://trific.ath.cx/Ftp/vim/syntax/resolv.vim
|
" Last Change: 2012-02-21
|
||||||
" Last Change: 2006-04-16
|
|
||||||
|
|
||||||
if version < 600
|
if version < 600
|
||||||
syntax clear
|
syntax clear
|
||||||
@ -26,7 +25,8 @@ syn match resolvIPSpecial /\%(127\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\)/ contained
|
|||||||
" General
|
" General
|
||||||
syn match resolvIP contained /\%(\d\{1,4}\.\)\{3}\d\{1,4}/ contains=@resolvIPCluster
|
syn match resolvIP contained /\%(\d\{1,4}\.\)\{3}\d\{1,4}/ contains=@resolvIPCluster
|
||||||
syn match resolvIPNetmask contained /\%(\d\{1,4}\.\)\{3}\d\{1,4}\%(\/\%(\%(\d\{1,4}\.\)\{,3}\d\{1,4}\)\)\?/ contains=resolvOperator,@resolvIPCluster
|
syn match resolvIPNetmask contained /\%(\d\{1,4}\.\)\{3}\d\{1,4}\%(\/\%(\%(\d\{1,4}\.\)\{,3}\d\{1,4}\)\)\?/ contains=resolvOperator,@resolvIPCluster
|
||||||
syn match resolvHostname contained /\w\{-}\.[-0-9A-Za-z_\.]*/
|
syn match resolvHostname contained /\w\{-}\.[-0-9A-Za-z_.]*/
|
||||||
|
syn match resolvDomainname contained /[-0-9A-Za-z_.]\+/
|
||||||
|
|
||||||
" Particular
|
" Particular
|
||||||
syn match resolvIPNameserver contained /\%(\%(\d\{1,4}\.\)\{3}\d\{1,4}\%(\s\|$\)\)\+/ contains=@resolvIPCluster
|
syn match resolvIPNameserver contained /\%(\%(\d\{1,4}\.\)\{3}\d\{1,4}\%(\s\|$\)\)\+/ contains=@resolvIPCluster
|
||||||
@ -36,7 +36,7 @@ syn match resolvIPNetmaskSortList contained /\%(\%(\d\{1,4}\.\)\{3}\d\{1,4}\%(\/
|
|||||||
" Identifiers
|
" Identifiers
|
||||||
syn match resolvNameserver /^\s*nameserver\>/ nextgroup=resolvIPNameserver skipwhite
|
syn match resolvNameserver /^\s*nameserver\>/ nextgroup=resolvIPNameserver skipwhite
|
||||||
syn match resolvLwserver /^\s*lwserver\>/ nextgroup=resolvIPNameserver skipwhite
|
syn match resolvLwserver /^\s*lwserver\>/ nextgroup=resolvIPNameserver skipwhite
|
||||||
syn match resolvDomain /^\s*domain\>/ nextgroup=resolvHostname skipwhite
|
syn match resolvDomain /^\s*domain\>/ nextgroup=resolvDomainname skipwhite
|
||||||
syn match resolvSearch /^\s*search\>/ nextgroup=resolvHostnameSearch skipwhite
|
syn match resolvSearch /^\s*search\>/ nextgroup=resolvHostnameSearch skipwhite
|
||||||
syn match resolvSortList /^\s*sortlist\>/ nextgroup=resolvIPNetmaskSortList skipwhite
|
syn match resolvSortList /^\s*sortlist\>/ nextgroup=resolvIPNetmaskSortList skipwhite
|
||||||
syn match resolvOptions /^\s*options\>/ nextgroup=resolvOption skipwhite
|
syn match resolvOptions /^\s*options\>/ nextgroup=resolvOption skipwhite
|
||||||
@ -61,6 +61,7 @@ if version >= 508 || !exists("did_config_syntax_inits")
|
|||||||
HiLink resolvIP Number
|
HiLink resolvIP Number
|
||||||
HiLink resolvIPNetmask Number
|
HiLink resolvIPNetmask Number
|
||||||
HiLink resolvHostname String
|
HiLink resolvHostname String
|
||||||
|
HiLink resolvDomainname String
|
||||||
HiLink resolvOption String
|
HiLink resolvOption String
|
||||||
|
|
||||||
HiLink resolvIPNameserver Number
|
HiLink resolvIPNameserver Number
|
||||||
|
|||||||
@ -1,10 +1,10 @@
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: Reva Forth
|
" Language: Reva Forth
|
||||||
" Version: 7.1
|
" Version: 2011.2
|
||||||
" Last Change: 2008/01/11
|
" Last Change: 2012/02/13
|
||||||
" Maintainer: Ron Aaron <ron@ronware.org>
|
" Maintainer: Ron Aaron <ron@ronware.org>
|
||||||
" URL: http://ronware.org/reva/
|
" URL: http://ronware.org/reva/
|
||||||
" Filetypes: *.rf *.frt
|
" Filetypes: *.rf *.frt
|
||||||
" NOTE: You should also have the ftplugin/reva.vim file to set 'isk'
|
" NOTE: You should also have the ftplugin/reva.vim file to set 'isk'
|
||||||
|
|
||||||
" For version 5.x: Clear all syntax items and don't load
|
" For version 5.x: Clear all syntax items and don't load
|
||||||
@ -17,10 +17,13 @@ elseif exists("b:current_syntax")
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
syn clear
|
syn clear
|
||||||
|
|
||||||
" Synchronization method
|
" Synchronization method
|
||||||
syn sync ccomment
|
syn sync ccomment
|
||||||
syn sync maxlines=100
|
syn sync maxlines=100
|
||||||
|
|
||||||
|
|
||||||
@ -39,7 +42,7 @@ syn region revaEOF start='\<|||\>' end='{$}' contains=revaHelpStuff
|
|||||||
syn case match
|
syn case match
|
||||||
" basic mathematical and logical operators
|
" basic mathematical and logical operators
|
||||||
syn keyword revaoperators + - * / mod /mod negate abs min max umin umax
|
syn keyword revaoperators + - * / mod /mod negate abs min max umin umax
|
||||||
syn keyword revaoperators and or xor not invert 1+ 1-
|
syn keyword revaoperators and or xor not invert 1+ 1-
|
||||||
syn keyword revaoperators m+ */ */mod m* um* m*/ um/mod fm/mod sm/rem
|
syn keyword revaoperators m+ */ */mod m* um* m*/ um/mod fm/mod sm/rem
|
||||||
syn keyword revaoperators d+ d- dnegate dabs dmin dmax > < = >> << u< <>
|
syn keyword revaoperators d+ d- dnegate dabs dmin dmax > < = >> << u< <>
|
||||||
|
|
||||||
@ -53,10 +56,10 @@ syn keyword revastack >r r> r@ rdrop
|
|||||||
" address operations
|
" address operations
|
||||||
syn keyword revamemory @ ! +! c@ c! 2@ 2! align aligned allot allocate here free resize
|
syn keyword revamemory @ ! +! c@ c! 2@ 2! align aligned allot allocate here free resize
|
||||||
syn keyword revaadrarith chars char+ cells cell+ cell cell- 2cell+ 2cell- 3cell+ 4cell+
|
syn keyword revaadrarith chars char+ cells cell+ cell cell- 2cell+ 2cell- 3cell+ 4cell+
|
||||||
syn keyword revamemblks move fill
|
syn keyword revamemblks move fill
|
||||||
|
|
||||||
" conditionals
|
" conditionals
|
||||||
syn keyword revacond if else then =if >if <if <>if if0 ;; catch throw
|
syn keyword revacond if else then =if >if <if <>if if0 ;; catch throw
|
||||||
|
|
||||||
" iterations
|
" iterations
|
||||||
syn keyword revaloop while repeat until again
|
syn keyword revaloop while repeat until again
|
||||||
@ -66,18 +69,18 @@ syn keyword revaloop do loop i j leave unloop skip more
|
|||||||
syn match revaColonDef '\<noname:\|\<:\s+' contains=revaComment
|
syn match revaColonDef '\<noname:\|\<:\s+' contains=revaComment
|
||||||
syn keyword revaEndOfColonDef ; ;inline
|
syn keyword revaEndOfColonDef ; ;inline
|
||||||
syn keyword revadefine constant constant, variable create variable,
|
syn keyword revadefine constant constant, variable create variable,
|
||||||
syn keyword revadefine user value to +to defer! defer@ defer is does> immediate
|
syn keyword revadefine user value to +to defer! defer@ defer is does> immediate
|
||||||
syn keyword revadefine compile literal ' [']
|
syn keyword revadefine compile literal ' [']
|
||||||
|
|
||||||
" Built in words
|
" Built in words
|
||||||
com! -nargs=+ Builtin syn keyword revaBuiltin <args>
|
com! -nargs=+ Builtin syn keyword revaBuiltin <args>
|
||||||
Builtin execute ahead interp bye >body here pad words make
|
Builtin execute ahead interp bye >body here pad words make
|
||||||
Builtin accept close cr creat delete ekey emit fsize ioerr key?
|
Builtin accept close cr creat delete ekey emit fsize ioerr key?
|
||||||
Builtin mtime open/r open/rw read rename seek space spaces stat
|
Builtin mtime open/r open/rw read rename seek space spaces stat
|
||||||
Builtin tell type type_ write (seek) (argv) (save) 0; 0drop;
|
Builtin tell type type_ write (seek) (argv) (save) 0; 0drop;
|
||||||
Builtin >class >lz >name >xt alias alias: appname argc asciiz, asciizl,
|
Builtin >class >lz >name >xt alias alias: appname argc asciiz, asciizl,
|
||||||
Builtin body> clamp depth disassemble findprev fnvhash getenv here,
|
Builtin body> clamp depth disassemble findprev fnvhash getenv here,
|
||||||
Builtin iterate last! last@ later link lz> lzmax os parse/ peek
|
Builtin iterate last! last@ later link lz> lzmax os parse/ peek
|
||||||
Builtin peek-n pop prior push put rp@ rpick save setenv slurp
|
Builtin peek-n pop prior push put rp@ rpick save setenv slurp
|
||||||
Builtin stack-empty? stack-iterate stack-size stack: THROW_BADFUNC
|
Builtin stack-empty? stack-iterate stack-size stack: THROW_BADFUNC
|
||||||
Builtin THROW_BADLIB THROW_GENERIC used xt>size z,
|
Builtin THROW_BADLIB THROW_GENERIC used xt>size z,
|
||||||
@ -88,21 +91,21 @@ Builtin chdir g32 k32 u32 getcwd getpid hinst osname stdin stdout
|
|||||||
Builtin (-lib) (bye) (call) (else) (find) (func) (here) (if (lib) (s0) (s^)
|
Builtin (-lib) (bye) (call) (else) (find) (func) (here) (if (lib) (s0) (s^)
|
||||||
Builtin (to~) (while) >in >rel ?literal appstart cold compiling? context? d0 default_class
|
Builtin (to~) (while) >in >rel ?literal appstart cold compiling? context? d0 default_class
|
||||||
Builtin defer? dict dolstr dostr find-word h0 if) interp isa onexit
|
Builtin defer? dict dolstr dostr find-word h0 if) interp isa onexit
|
||||||
Builtin onstartup pdoes pop>ebx prompt rel> rp0 s0 src srcstr state str0 then,> then> tib
|
Builtin onstartup pdoes pop>ebx prompt rel> rp0 s0 src srcstr state str0 then,> then> tib
|
||||||
Builtin tp vector vector! word? xt? .ver revaver revaver# && '' 'constant 'context
|
Builtin tp vector vector! word? xt? .ver revaver revaver# && '' 'constant 'context
|
||||||
Builtin 'create 'defer 'does 'forth 'inline 'macro 'macront 'notail 'value 'variable
|
Builtin 'create 'defer 'does 'forth 'inline 'macro 'macront 'notail 'value 'variable
|
||||||
Builtin (.r) (context) (create) (header) (hide) (inline) (p.r) (words~) (xfind)
|
Builtin (.r) (context) (create) (header) (hide) (inline) (p.r) (words~) (xfind)
|
||||||
Builtin ++ -- , -2drop -2nip -link -swap . .2x .classes .contexts .funcs .libs .needs .r
|
Builtin ++ -- , -2drop -2nip -link -swap . .2x .classes .contexts .funcs .libs .needs .r
|
||||||
Builtin .rs .x 00; 0do 0if 1, 2, 3, 2* 2/ 2constant 2variable 3dup 4dup ;then >base >defer
|
Builtin .rs .x 00; 0do 0if 1, 2, 3, 2* 2/ 2constant 2variable 3dup 4dup ;then >base >defer
|
||||||
Builtin >rr ? ?do @execute @rem appdir argv as back base base! between chain cleanup-libs
|
Builtin >rr ? ?do @execute @rem appdir argv as back base base! between chain cleanup-libs
|
||||||
Builtin cmove> context?? ctrl-c ctx>name data: defer: defer@def dictgone do_cr eleave
|
Builtin cmove> context?? ctrl-c ctx>name data: defer: defer@def dictgone do_cr eleave
|
||||||
Builtin endcase endof eval exception exec false find func: header heapgone help help/
|
Builtin endcase endof eval exception exec false find func: header heapgone help help/
|
||||||
Builtin hex# hide inline{ last lastxt lib libdir literal, makeexename mnotail ms ms@
|
Builtin hex# hide inline{ last lastxt lib libdir literal, makeexename mnotail ms ms@
|
||||||
Builtin newclass noop nosavedict notail nul of off on p: padchar parse parseln
|
Builtin newclass noop nosavedict notail nul of off on p: padchar parse parseln
|
||||||
Builtin parsews rangeof rdepth remains reset reva revaused rol8 rr> scratch setclass sp
|
Builtin parsews rangeof rdepth remains reset reva revaused rol8 rr> scratch setclass sp
|
||||||
Builtin strof super> temp time&date true turnkey? undo vfunc: w! w@
|
Builtin strof super> temp time&date true turnkey? undo vfunc: w! w@
|
||||||
Builtin xchg xchg2 xfind xt>name xwords { {{ }} } _+ _1+ _1- pathsep case \||
|
Builtin xchg xchg2 xfind xt>name xwords { {{ }} } _+ _1+ _1- pathsep case \||
|
||||||
" p[ [''] [ [']
|
" p[ [''] [ [']
|
||||||
|
|
||||||
|
|
||||||
" debugging
|
" debugging
|
||||||
@ -116,11 +119,11 @@ syn keyword revadebug .s dump see
|
|||||||
" syn region revaCharOps start=+."\s+ skip=+\\"+ end=+"+
|
" syn region revaCharOps start=+."\s+ skip=+\\"+ end=+"+
|
||||||
|
|
||||||
" char-number conversion
|
" char-number conversion
|
||||||
syn keyword revaconversion s>d >digit digit> >single >double >number >float
|
syn keyword revaconversion s>d >digit digit> >single >double >number >float
|
||||||
|
|
||||||
" contexts
|
" contexts
|
||||||
syn keyword revavocs forth macro inline
|
syn keyword revavocs forth macro inline
|
||||||
syn keyword revavocs context:
|
syn keyword revavocs context:
|
||||||
syn match revavocs /\<\~[^~ ]*/
|
syn match revavocs /\<\~[^~ ]*/
|
||||||
syn match revavocs /[^~ ]*\~\>/
|
syn match revavocs /[^~ ]*\~\>/
|
||||||
|
|
||||||
@ -135,7 +138,7 @@ syn match revainteger "\<'.\>"
|
|||||||
|
|
||||||
" Strings
|
" Strings
|
||||||
" syn region revaString start=+\.\?\"+ end=+"+ end=+$+
|
" syn region revaString start=+\.\?\"+ end=+"+ end=+$+
|
||||||
syn region revaString start=/"/ skip=/\\"/ end=/"/
|
syn region revaString start=/"/ skip=/\\"/ end=/"/
|
||||||
|
|
||||||
" Comments
|
" Comments
|
||||||
syn region revaComment start='\\S\s' end='.*' contains=revaTodo
|
syn region revaComment start='\\S\s' end='.*' contains=revaTodo
|
||||||
@ -187,5 +190,7 @@ if !exists("did_reva_syntax_inits")
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
let b:current_syntax = "reva"
|
let b:current_syntax = "reva"
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim: ts=8:sw=4:nocindent:smartindent:
|
" vim: ts=8:sw=4:nocindent:smartindent:
|
||||||
|
|||||||
@ -2,9 +2,7 @@
|
|||||||
" Language: OpenSSH client configuration file (ssh_config)
|
" Language: OpenSSH client configuration file (ssh_config)
|
||||||
" Author: David Necas (Yeti)
|
" Author: David Necas (Yeti)
|
||||||
" Maintainer: Leonard Ehrenfried <leonard.ehrenfried@web.de>
|
" Maintainer: Leonard Ehrenfried <leonard.ehrenfried@web.de>
|
||||||
" Modified By: Thilo Six
|
" Last Change: 2012 Feb 19
|
||||||
" Originally: 2009-07-09
|
|
||||||
" Last Change: 2011 Oct 31
|
|
||||||
" SSH Version: 5.9p1
|
" SSH Version: 5.9p1
|
||||||
"
|
"
|
||||||
|
|
||||||
@ -92,7 +90,8 @@ syn match sshconfigNumber "\d\+"
|
|||||||
syn match sshconfigHostPort "\<\(\d\{1,3}\.\)\{3}\d\{1,3}\(:\d\+\)\?\>"
|
syn match sshconfigHostPort "\<\(\d\{1,3}\.\)\{3}\d\{1,3}\(:\d\+\)\?\>"
|
||||||
syn match sshconfigHostPort "\<\([-a-zA-Z0-9]\+\.\)\+[-a-zA-Z0-9]\{2,}\(:\d\+\)\?\>"
|
syn match sshconfigHostPort "\<\([-a-zA-Z0-9]\+\.\)\+[-a-zA-Z0-9]\{2,}\(:\d\+\)\?\>"
|
||||||
syn match sshconfigHostPort "\<\(\x\{,4}:\)\+\x\{,4}[:/]\d\+\>"
|
syn match sshconfigHostPort "\<\(\x\{,4}:\)\+\x\{,4}[:/]\d\+\>"
|
||||||
|
syn match sshconfigHostPort "\(Host \)\@<=.\+"
|
||||||
|
syn match sshconfigHostPort "\(HostName \)\@<=.\+"
|
||||||
|
|
||||||
" case off
|
" case off
|
||||||
syn case ignore
|
syn case ignore
|
||||||
|
|||||||
Reference in New Issue
Block a user