forked from aniani/vim
updated for version 7.1a
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
" Vim completion script
|
" Vim completion script
|
||||||
" Language: PHP
|
" Language: PHP
|
||||||
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
||||||
" Last Change: 2006 Apr 30
|
" Last Change: 2006 May 9
|
||||||
"
|
"
|
||||||
" TODO:
|
" TODO:
|
||||||
" - Class aware completion:
|
" - Class aware completion:
|
||||||
@@ -74,7 +74,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let file = getline(1, '$')
|
let file = getline(1, '$')
|
||||||
call filter(file,
|
call filter(file,
|
||||||
\ 'v:val =~ "class\\s\\+[a-zA-Z_\\x7f-\\xff][a-zA-Z_0-9\\x7f-\\xff]*\\s*("')
|
\ 'v:val =~ "class\\s\\+[a-zA-Z_\\x7f-\\xff][a-zA-Z_0-9\\x7f-\\xff]*\\s*("')
|
||||||
let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
|
let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
|
||||||
let jfile = join(file, ' ')
|
let jfile = join(file, ' ')
|
||||||
let int_values = split(jfile, 'class\s\+')
|
let int_values = split(jfile, 'class\s\+')
|
||||||
let int_classes = {}
|
let int_classes = {}
|
||||||
@@ -85,12 +85,13 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
" Prepare list of functions from tags file
|
" Prepare list of classes from tags file
|
||||||
let ext_classes = {}
|
let ext_classes = {}
|
||||||
let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
|
let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
|
||||||
if fnames != ''
|
if fnames != ''
|
||||||
exe 'silent! vimgrep /^'.a:base.'.*\tc\(\t\|$\)/j '.fnames
|
exe 'silent! vimgrep /^'.a:base.'.*\tc\(\t\|$\)/j '.fnames
|
||||||
let qflist = getqflist()
|
let qflist = getqflist()
|
||||||
|
if len(qflist) > 0
|
||||||
for field in qflist
|
for field in qflist
|
||||||
" [:space:] thing: we don't have to be so strict when
|
" [:space:] thing: we don't have to be so strict when
|
||||||
" dealing with tags files - entries there were already
|
" dealing with tags files - entries there were already
|
||||||
@@ -99,19 +100,28 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let ext_classes[item] = ''
|
let ext_classes[item] = ''
|
||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
call extend(int_classes, ext_classes)
|
" Prepare list of built in classes from g:php_builtin_functions
|
||||||
|
if !exists("g:php_omni_bi_classes")
|
||||||
|
let g:php_omni_bi_classes = {}
|
||||||
|
for i in keys(g:php_builtin_object_functions)
|
||||||
|
let g:php_omni_bi_classes[substitute(i, '::.*$', '', '')] = ''
|
||||||
|
endfor
|
||||||
|
endif
|
||||||
|
|
||||||
for m in sort(keys(int_classes))
|
let classes = sort(keys(int_classes))
|
||||||
|
let classes += sort(keys(ext_classes))
|
||||||
|
let classes += sort(keys(g:php_omni_bi_classes))
|
||||||
|
|
||||||
|
for m in classes
|
||||||
if m =~ '^'.a:base
|
if m =~ '^'.a:base
|
||||||
call add(res, m)
|
call add(res, m)
|
||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
let int_list = res
|
|
||||||
|
|
||||||
let final_menu = []
|
let final_menu = []
|
||||||
for i in int_list
|
for i in res
|
||||||
let final_menu += [{'word':i, 'kind':'c'}]
|
let final_menu += [{'word':i, 'kind':'c'}]
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
@@ -138,6 +148,19 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let classlocation = ''
|
let classlocation = ''
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if classlocation == 'VIMPHP_BUILTINOBJECT'
|
||||||
|
|
||||||
|
for object in keys(g:php_builtin_object_functions)
|
||||||
|
if object =~ '^'.classname
|
||||||
|
let res += [{'word':substitute(object, '.*::', '', ''),
|
||||||
|
\ 'info': g:php_builtin_object_functions[object]}]
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
|
||||||
|
return res
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
if filereadable(classlocation)
|
if filereadable(classlocation)
|
||||||
let classfile = readfile(classlocation)
|
let classfile = readfile(classlocation)
|
||||||
let classcontent = ''
|
let classcontent = ''
|
||||||
@@ -154,7 +177,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
" Functions declared with public keyword or without any
|
" Functions declared with public keyword or without any
|
||||||
" keyword are public
|
" keyword are public
|
||||||
let functions = filter(deepcopy(sccontent),
|
let functions = filter(deepcopy(sccontent),
|
||||||
\ 'v:val =~ "^\\s*\\(public\\s\\*\\)\\?function"')
|
\ 'v:val =~ "^\\s*\\(static\\s\\+\\|public\\s\\+\\)*function"')
|
||||||
let jfuncs = join(functions, ' ')
|
let jfuncs = join(functions, ' ')
|
||||||
let sfuncs = split(jfuncs, 'function\s\+')
|
let sfuncs = split(jfuncs, 'function\s\+')
|
||||||
let c_functions = {}
|
let c_functions = {}
|
||||||
@@ -185,7 +208,6 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let all_values = {}
|
let all_values = {}
|
||||||
call extend(all_values, c_functions)
|
call extend(all_values, c_functions)
|
||||||
call extend(all_values, c_variables)
|
call extend(all_values, c_variables)
|
||||||
call extend(all_values, g:php_builtin_object_functions)
|
|
||||||
|
|
||||||
for m in sort(keys(all_values))
|
for m in sort(keys(all_values))
|
||||||
if m =~ '^'.a:base && m !~ '::'
|
if m =~ '^'.a:base && m !~ '::'
|
||||||
@@ -244,12 +266,13 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
|
|
||||||
" ctags has good support for PHP, use tags file for external
|
" ctags has good support for PHP, use tags file for external
|
||||||
" variables
|
" variables
|
||||||
let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
|
let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
|
||||||
let ext_vars = {}
|
let ext_vars = {}
|
||||||
if fnames != ''
|
if fnames != ''
|
||||||
let sbase = substitute(a:base, '^\$', '', '')
|
let sbase = substitute(a:base, '^\$', '', '')
|
||||||
exe 'silent! vimgrep /^'.sbase.'.*\tv\(\t\|$\)/j '.fnames
|
exe 'silent! vimgrep /^'.sbase.'.*\tv\(\t\|$\)/j '.fnames
|
||||||
let qflist = getqflist()
|
let qflist = getqflist()
|
||||||
|
if len(qflist) > 0
|
||||||
for field in qflist
|
for field in qflist
|
||||||
let item = matchstr(field['text'], '^[^[:space:]]\+')
|
let item = matchstr(field['text'], '^[^[:space:]]\+')
|
||||||
" Add -> if it is possible object declaration
|
" Add -> if it is possible object declaration
|
||||||
@@ -262,6 +285,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let ext_vars[adddollar.item] = classname
|
let ext_vars[adddollar.item] = classname
|
||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
" Now we have all variables in int_vars dictionary
|
" Now we have all variables in int_vars dictionary
|
||||||
call extend(int_vars, ext_vars)
|
call extend(int_vars, ext_vars)
|
||||||
@@ -270,7 +294,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let file = getline(1, '$')
|
let file = getline(1, '$')
|
||||||
call filter(file,
|
call filter(file,
|
||||||
\ 'v:val =~ "function\\s\\+&\\?[a-zA-Z_\\x7f-\\xff][a-zA-Z_0-9\\x7f-\\xff]*\\s*("')
|
\ 'v:val =~ "function\\s\\+&\\?[a-zA-Z_\\x7f-\\xff][a-zA-Z_0-9\\x7f-\\xff]*\\s*("')
|
||||||
let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
|
let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
|
||||||
let jfile = join(file, ' ')
|
let jfile = join(file, ' ')
|
||||||
let int_values = split(jfile, 'function\s\+')
|
let int_values = split(jfile, 'function\s\+')
|
||||||
let int_functions = {}
|
let int_functions = {}
|
||||||
@@ -287,6 +311,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
if fnames != ''
|
if fnames != ''
|
||||||
exe 'silent! vimgrep /^'.a:base.'.*\tf\(\t\|$\)/j '.fnames
|
exe 'silent! vimgrep /^'.a:base.'.*\tf\(\t\|$\)/j '.fnames
|
||||||
let qflist = getqflist()
|
let qflist = getqflist()
|
||||||
|
if len(qflist) > 0
|
||||||
for field in qflist
|
for field in qflist
|
||||||
" File name
|
" File name
|
||||||
let item = matchstr(field['text'], '^[^[:space:]]\+')
|
let item = matchstr(field['text'], '^[^[:space:]]\+')
|
||||||
@@ -296,6 +321,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let ext_functions[item.'('] = prototype.') - '.fname
|
let ext_functions[item.'('] = prototype.') - '.fname
|
||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
let all_values = {}
|
let all_values = {}
|
||||||
call extend(all_values, int_functions)
|
call extend(all_values, int_functions)
|
||||||
@@ -375,12 +401,13 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
call extend(int_vars,g:php_builtin_vars)
|
call extend(int_vars,g:php_builtin_vars)
|
||||||
|
|
||||||
" ctags has support for PHP, use tags file for external variables
|
" ctags has support for PHP, use tags file for external variables
|
||||||
let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
|
let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
|
||||||
let ext_vars = {}
|
let ext_vars = {}
|
||||||
if fnames != ''
|
if fnames != ''
|
||||||
let sbase = substitute(a:base, '^\$', '', '')
|
let sbase = substitute(a:base, '^\$', '', '')
|
||||||
exe 'silent! vimgrep /^'.sbase.'.*\tv\(\t\|$\)/j '.fnames
|
exe 'silent! vimgrep /^'.sbase.'.*\tv\(\t\|$\)/j '.fnames
|
||||||
let qflist = getqflist()
|
let qflist = getqflist()
|
||||||
|
if len(qflist) > 0
|
||||||
for field in qflist
|
for field in qflist
|
||||||
let item = '$'.matchstr(field['text'], '^[^[:space:]]\+')
|
let item = '$'.matchstr(field['text'], '^[^[:space:]]\+')
|
||||||
let m_menu = ''
|
let m_menu = ''
|
||||||
@@ -393,6 +420,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let ext_vars[item] = m_menu
|
let ext_vars[item] = m_menu
|
||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
call extend(int_vars, ext_vars)
|
call extend(int_vars, ext_vars)
|
||||||
let g:a0 = keys(int_vars)
|
let g:a0 = keys(int_vars)
|
||||||
@@ -433,7 +461,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let file = getline(1, '$')
|
let file = getline(1, '$')
|
||||||
call filter(file,
|
call filter(file,
|
||||||
\ 'v:val =~ "function\\s\\+&\\?[a-zA-Z_\\x7f-\\xff][a-zA-Z_0-9\\x7f-\\xff]*\\s*("')
|
\ 'v:val =~ "function\\s\\+&\\?[a-zA-Z_\\x7f-\\xff][a-zA-Z_0-9\\x7f-\\xff]*\\s*("')
|
||||||
let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
|
let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
|
||||||
let jfile = join(file, ' ')
|
let jfile = join(file, ' ')
|
||||||
let int_values = split(jfile, 'function\s\+')
|
let int_values = split(jfile, 'function\s\+')
|
||||||
let int_functions = {}
|
let int_functions = {}
|
||||||
@@ -450,6 +478,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
if fnames != ''
|
if fnames != ''
|
||||||
exe 'silent! vimgrep /^'.a:base.'.*\tf\(\t\|$\)/j '.fnames
|
exe 'silent! vimgrep /^'.a:base.'.*\tf\(\t\|$\)/j '.fnames
|
||||||
let qflist = getqflist()
|
let qflist = getqflist()
|
||||||
|
if len(qflist) > 0
|
||||||
for field in qflist
|
for field in qflist
|
||||||
" File name
|
" File name
|
||||||
let item = matchstr(field['text'], '^[^[:space:]]\+')
|
let item = matchstr(field['text'], '^[^[:space:]]\+')
|
||||||
@@ -459,6 +488,7 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
let ext_functions[item.'('] = prototype.') - '.fname
|
let ext_functions[item.'('] = prototype.') - '.fname
|
||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
" All functions
|
" All functions
|
||||||
call extend(int_functions, ext_functions)
|
call extend(int_functions, ext_functions)
|
||||||
@@ -480,16 +510,18 @@ function! phpcomplete#CompletePHP(findstart, base)
|
|||||||
endfor
|
endfor
|
||||||
|
|
||||||
" Prepare list of constants from tags file
|
" Prepare list of constants from tags file
|
||||||
let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
|
let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
|
||||||
let ext_constants = {}
|
let ext_constants = {}
|
||||||
if fnames != ''
|
if fnames != ''
|
||||||
exe 'silent! vimgrep /^'.a:base.'.*\td\(\t\|$\)/j '.fnames
|
exe 'silent! vimgrep /^'.a:base.'.*\td\(\t\|$\)/j '.fnames
|
||||||
let qflist = getqflist()
|
let qflist = getqflist()
|
||||||
|
if len(qflist) > 0
|
||||||
for field in qflist
|
for field in qflist
|
||||||
let item = matchstr(field['text'], '^[^[:space:]]\+')
|
let item = matchstr(field['text'], '^[^[:space:]]\+')
|
||||||
let ext_constants[item] = ''
|
let ext_constants[item] = ''
|
||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
" All constants
|
" All constants
|
||||||
call extend(int_constants, ext_constants)
|
call extend(int_constants, ext_constants)
|
||||||
@@ -558,7 +590,7 @@ function! phpcomplete#GetClassName(scontext) " {{{
|
|||||||
endwhile
|
endwhile
|
||||||
|
|
||||||
" OK, first way failed, now check tags file(s)
|
" OK, first way failed, now check tags file(s)
|
||||||
let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
|
let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
|
||||||
exe 'silent! vimgrep /^'.object.'.*\$'.object.'.*=\s*new\s\+.*\tv\(\t\|$\)/j '.fnames
|
exe 'silent! vimgrep /^'.object.'.*\$'.object.'.*=\s*new\s\+.*\tv\(\t\|$\)/j '.fnames
|
||||||
let qflist = getqflist()
|
let qflist = getqflist()
|
||||||
if len(qflist) == 0
|
if len(qflist) == 0
|
||||||
@@ -573,6 +605,17 @@ function! phpcomplete#GetClassName(scontext) " {{{
|
|||||||
endfunction
|
endfunction
|
||||||
" }}}
|
" }}}
|
||||||
function! phpcomplete#GetClassLocation(classname) " {{{
|
function! phpcomplete#GetClassLocation(classname) " {{{
|
||||||
|
" Check classname may be name of built in object
|
||||||
|
if !exists("g:php_omni_bi_classes")
|
||||||
|
let g:php_omni_bi_classes = {}
|
||||||
|
for i in keys(g:php_builtin_object_functions)
|
||||||
|
let g:php_omni_bi_classes[substitute(i, '::.*$', '', '')] = ''
|
||||||
|
endfor
|
||||||
|
endif
|
||||||
|
if has_key(g:php_omni_bi_classes, a:classname)
|
||||||
|
return 'VIMPHP_BUILTINOBJECT'
|
||||||
|
endif
|
||||||
|
|
||||||
" Get class location
|
" Get class location
|
||||||
for fname in tagfiles()
|
for fname in tagfiles()
|
||||||
let fhead = fnamemodify(fname, ":h")
|
let fhead = fnamemodify(fname, ":h")
|
||||||
@@ -583,8 +626,12 @@ function! phpcomplete#GetClassLocation(classname) " {{{
|
|||||||
let fname = escape(fname, " \\")
|
let fname = escape(fname, " \\")
|
||||||
exe 'silent! vimgrep /^'.a:classname.'.*\tc\(\t\|$\)/j '.fname
|
exe 'silent! vimgrep /^'.a:classname.'.*\tc\(\t\|$\)/j '.fname
|
||||||
let qflist = getqflist()
|
let qflist = getqflist()
|
||||||
" As in GetClassName we can manage only one element
|
" As in GetClassName we can manage only one element if it exists
|
||||||
|
if len(qflist) > 0
|
||||||
let classlocation = matchstr(qflist[0]['text'], '\t\zs\f\+\ze\t')
|
let classlocation = matchstr(qflist[0]['text'], '\t\zs\f\+\ze\t')
|
||||||
|
else
|
||||||
|
return ''
|
||||||
|
endif
|
||||||
" And only one class location
|
" And only one class location
|
||||||
if classlocation != ''
|
if classlocation != ''
|
||||||
let classlocation = fhead.classlocation
|
let classlocation = fhead.classlocation
|
||||||
@@ -614,6 +661,7 @@ function! phpcomplete#GetClassContents(file, name) " {{{
|
|||||||
else
|
else
|
||||||
let extends_class = ''
|
let extends_class = ''
|
||||||
endif
|
endif
|
||||||
|
call search('{')
|
||||||
normal! %
|
normal! %
|
||||||
let classc = getline(cfline, ".")
|
let classc = getline(cfline, ".")
|
||||||
let classcontent = join(classc, "\n")
|
let classcontent = join(classc, "\n")
|
||||||
|
@@ -1,8 +1,8 @@
|
|||||||
" Vim OMNI completion script for SQL
|
" Vim OMNI completion script for SQL
|
||||||
" Language: SQL
|
" Language: SQL
|
||||||
" Maintainer: David Fishburn <fishburn@ianywhere.com>
|
" Maintainer: David Fishburn <fishburn@ianywhere.com>
|
||||||
" Version: 4.0
|
" Version: 5.0
|
||||||
" Last Change: Wed Apr 26 2006 3:00:06 PM
|
" Last Change: Mon Jun 05 2006 3:30:04 PM
|
||||||
" Usage: For detailed help
|
" Usage: For detailed help
|
||||||
" ":help sql.txt"
|
" ":help sql.txt"
|
||||||
" or ":help ft-sql-omni"
|
" or ":help ft-sql-omni"
|
||||||
@@ -22,7 +22,7 @@ endif
|
|||||||
if exists('g:loaded_sql_completion')
|
if exists('g:loaded_sql_completion')
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_sql_completion = 40
|
let g:loaded_sql_completion = 50
|
||||||
|
|
||||||
" Maintains filename of dictionary
|
" Maintains filename of dictionary
|
||||||
let s:sql_file_table = ""
|
let s:sql_file_table = ""
|
||||||
@@ -176,11 +176,19 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
return []
|
return []
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if s:sql_file_{compl_type} == ""
|
" Allow the user to override the dbext plugin to specify whether
|
||||||
let compl_type = substitute(compl_type, '\w\+', '\u&', '')
|
" the owner/creator should be included in the list
|
||||||
let s:sql_file_{compl_type} = DB_getDictionaryName(compl_type)
|
let saved_dbext_show_owner = 1
|
||||||
|
if exists('g:dbext_default_dict_show_owner')
|
||||||
|
let saved_dbext_show_owner = g:dbext_default_dict_show_owner
|
||||||
endif
|
endif
|
||||||
let s:sql_file_{compl_type} = DB_getDictionaryName(compl_type)
|
let g:dbext_default_dict_show_owner = g:omni_sql_include_owner
|
||||||
|
|
||||||
|
let compl_type_uc = substitute(compl_type, '\w\+', '\u&', '')
|
||||||
|
if s:sql_file_{compl_type} == ""
|
||||||
|
let s:sql_file_{compl_type} = DB_getDictionaryName(compl_type_uc)
|
||||||
|
endif
|
||||||
|
let s:sql_file_{compl_type} = DB_getDictionaryName(compl_type_uc)
|
||||||
if s:sql_file_{compl_type} != ""
|
if s:sql_file_{compl_type} != ""
|
||||||
if filereadable(s:sql_file_{compl_type})
|
if filereadable(s:sql_file_{compl_type})
|
||||||
let compl_list = readfile(s:sql_file_{compl_type})
|
let compl_list = readfile(s:sql_file_{compl_type})
|
||||||
@@ -194,7 +202,9 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
" endif
|
" endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
elseif compl_type == 'column'
|
|
||||||
|
let g:dbext_default_dict_show_owner = saved_dbext_show_owner
|
||||||
|
elseif compl_type =~? 'column'
|
||||||
|
|
||||||
" 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
|
||||||
@@ -209,33 +219,88 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
let base = s:save_prev_table
|
let base = s:save_prev_table
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if base != ""
|
let owner = ''
|
||||||
let compl_list = s:SQLCGetColumns(base, '')
|
let column = ''
|
||||||
|
|
||||||
|
if base =~ '\.'
|
||||||
|
" Check if the owner/creator has been specified
|
||||||
|
let owner = matchstr( base, '^\zs.*\ze\..*\..*' )
|
||||||
|
let table = matchstr( base, '^\(.*\.\)\?\zs.*\ze\..*' )
|
||||||
|
let column = matchstr( base, '.*\.\zs.*' )
|
||||||
|
|
||||||
|
" It is pretty well impossible to determine if the user
|
||||||
|
" has entered:
|
||||||
|
" owner.table
|
||||||
|
" table.column_prefix
|
||||||
|
" 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 <C-Right>) then
|
||||||
|
" this will be owner.table. In this case, we can
|
||||||
|
" check to see the table.column exists in the
|
||||||
|
" cached table list. If it does, then we have
|
||||||
|
" determined the user has actually chosen
|
||||||
|
" owner.table, not table.column_prefix.
|
||||||
|
let found = -1
|
||||||
|
if g:omni_sql_include_owner == 1 && owner == ''
|
||||||
|
if filereadable(s:sql_file_table)
|
||||||
|
let tbl_list = readfile(s:sql_file_table)
|
||||||
|
let found = index( tbl_list, ((table != '')?(table.'.'):'').column)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
" If the table.column was found in the table list, we can safely assume
|
||||||
|
" the owner was not provided and shift the items appropriately.
|
||||||
|
" OR
|
||||||
|
" 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
|
||||||
|
else
|
||||||
|
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
|
||||||
|
" base to be a partial column name
|
||||||
|
" let base = matchstr( base, '^\(.*\.\)\?\zs.*' )
|
||||||
|
|
||||||
|
if table != ""
|
||||||
let s:save_prev_table = base
|
let s:save_prev_table = base
|
||||||
|
let list_type = ''
|
||||||
|
|
||||||
|
if compl_type == 'column_csv'
|
||||||
|
" Return one array element, with a comma separated
|
||||||
|
" list of values instead of multiple array entries
|
||||||
|
" for each column in the table.
|
||||||
|
let list_type = 'csv'
|
||||||
|
endif
|
||||||
|
|
||||||
|
let compl_list = s:SQLCGetColumns(table, list_type)
|
||||||
|
if column != ''
|
||||||
|
" 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")
|
||||||
|
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")
|
||||||
|
endif
|
||||||
|
else
|
||||||
let base = ''
|
let base = ''
|
||||||
endif
|
endif
|
||||||
elseif compl_type == 'column_csv'
|
|
||||||
|
|
||||||
" This type of completion relies upon the dbext.vim plugin
|
if compl_type == 'column_csv'
|
||||||
if s:SQLCCheck4dbext() == -1
|
|
||||||
return []
|
|
||||||
endif
|
|
||||||
|
|
||||||
if base == ""
|
|
||||||
" 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 base = s:save_prev_table
|
|
||||||
endif
|
|
||||||
|
|
||||||
if base != ""
|
|
||||||
let compl_list = s:SQLCGetColumns(base, 'csv')
|
|
||||||
let s:save_prev_table = base
|
|
||||||
" Join the column array into 1 single element array
|
" Join the column array into 1 single element array
|
||||||
" but make the columns column separated
|
" but make the columns column separated
|
||||||
let compl_list = [join(compl_list, ', ')]
|
let compl_list = [join(compl_list, ', ')]
|
||||||
let base = ''
|
endif
|
||||||
endif
|
endif
|
||||||
elseif compl_type == 'resetCache'
|
elseif compl_type == 'resetCache'
|
||||||
" Reset all cached items
|
" Reset all cached items
|
||||||
@@ -256,7 +321,7 @@ function! sqlcomplete#Complete(findstart, base)
|
|||||||
if base != ''
|
if base != ''
|
||||||
" Filter the list based on the first few characters the user
|
" Filter the list based on the first few characters the user
|
||||||
" entered
|
" entered
|
||||||
let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "^'.base.'"'
|
let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\|\\([^.]*\\)\\?'.base.'\\)"'
|
||||||
let compl_list = filter(deepcopy(compl_list), expr)
|
let compl_list = filter(deepcopy(compl_list), expr)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -274,6 +339,8 @@ function! sqlcomplete#PreCacheSyntax(...)
|
|||||||
else
|
else
|
||||||
let syn_group_arr = g:omni_sql_precache_syntax_groups
|
let syn_group_arr = g:omni_sql_precache_syntax_groups
|
||||||
endif
|
endif
|
||||||
|
" For each group specified in the list, precache all
|
||||||
|
" the sytnax items.
|
||||||
if !empty(syn_group_arr)
|
if !empty(syn_group_arr)
|
||||||
for group_name in syn_group_arr
|
for group_name in syn_group_arr
|
||||||
call s:SQLCGetSyntaxList(group_name)
|
call s:SQLCGetSyntaxList(group_name)
|
||||||
@@ -444,9 +511,23 @@ function! s:SQLCAddAlias(table_name, table_alias, cols)
|
|||||||
return cols
|
return cols
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
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
|
||||||
|
" "\? - ignore any quotes
|
||||||
|
" \zs - start the match now
|
||||||
|
" \w\+ - get owner name
|
||||||
|
" \ze - end the match
|
||||||
|
" "\? - ignore any quotes
|
||||||
|
" \. - must by followed by a .
|
||||||
|
let owner = matchstr( a:object, '^"\?\zs\w\+\ze"\?\.' )
|
||||||
|
return owner
|
||||||
|
endfunction
|
||||||
|
|
||||||
function! s:SQLCGetColumns(table_name, list_type)
|
function! s:SQLCGetColumns(table_name, list_type)
|
||||||
let table_name = matchstr(a:table_name, '^\w\+')
|
" Check if the table name was provided as part of the column name
|
||||||
let table_name = matchstr(a:table_name, '^[a-zA-Z0-9_.]\+')
|
let table_name = matchstr(a:table_name, '^[a-zA-Z0-9_]\+\ze\.\?')
|
||||||
let table_cols = []
|
let table_cols = []
|
||||||
let table_alias = ''
|
let table_alias = ''
|
||||||
let move_to_top = 1
|
let move_to_top = 1
|
||||||
|
@@ -1,303 +0,0 @@
|
|||||||
*getscript.txt* For Vim version 7.0. Last change: 2006 Apr 30
|
|
||||||
|
|
||||||
Get the Latest VimScripts
|
|
||||||
|
|
||||||
Authors: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamilyA.Mbiz>
|
|
||||||
(remove NOSPAM from the email address)
|
|
||||||
*GetLatestVimScripts-copyright*
|
|
||||||
Copyright: (c) 2004-2005 by Charles E. Campbell, Jr.
|
|
||||||
The VIM LICENSE applies to GetLatestVimScripts.vim and
|
|
||||||
GetLatestVimScripts.txt (see |copyright|) except use
|
|
||||||
"GetLatestVimScripts" instead of "Vim".
|
|
||||||
No warranty, express or implied. Use At-Your-Own-Risk.
|
|
||||||
|
|
||||||
|
|
||||||
==============================================================================
|
|
||||||
1. Contents *glvs-contents*
|
|
||||||
|
|
||||||
1. Contents.......................................: |glvs-contents|
|
|
||||||
2. GetLatestVimScripts Usage......................: |glvs|
|
|
||||||
3. GetLatestVimScripts Data File..................: |glvs-data|
|
|
||||||
4. GetLatestVimScripts Plugins....................: |glvs-plugins|
|
|
||||||
5. GetLatestVimScripts AutoInstall................: |glvs-autoinstall|
|
|
||||||
6. GetLatestVimScripts Algorithm..................: |glvs-alg|
|
|
||||||
7. GetLatestVimScripts History....................: |glvs-hist|
|
|
||||||
|
|
||||||
|
|
||||||
==============================================================================
|
|
||||||
2. GetLatestVimScripts Usage *getlatestvimscripts* *getscript* *glvs*
|
|
||||||
|
|
||||||
While in vim, type
|
|
||||||
>
|
|
||||||
:GetLatestVimScripts
|
|
||||||
<
|
|
||||||
Unless its been defined elsewhere,
|
|
||||||
>
|
|
||||||
:GLVS
|
|
||||||
<
|
|
||||||
will also work.
|
|
||||||
|
|
||||||
The script will attempt to update and, if so directed, automatically
|
|
||||||
install scripts from http://vim.sourceforge.net/. To do so it will
|
|
||||||
peruse a file, [.vim|vimfiles]/GetLatest/GetLatestVimScripts.dat
|
|
||||||
(see |glvs-data|), and examine plugins in your [.vim|vimfiles]/plugin
|
|
||||||
directory (see |glvs-plugins|).
|
|
||||||
|
|
||||||
Scripts which have been downloaded will appear in the .../GetLatest
|
|
||||||
subdirectory.
|
|
||||||
|
|
||||||
The <GetLatestVimScripts.dat> file will be automatically be updated to
|
|
||||||
reflect the latest version of script(s) so downloaded.
|
|
||||||
|
|
||||||
|
|
||||||
==============================================================================
|
|
||||||
3. GetLatestVimScripts Data File *getlatestvimscripts-data* *glvs-data*
|
|
||||||
|
|
||||||
The Data file has a header which should appear as:
|
|
||||||
>
|
|
||||||
ScriptID SourceID Filename
|
|
||||||
--------------------------
|
|
||||||
<
|
|
||||||
Below that are three columns; the first two are numeric followed by a
|
|
||||||
text column.
|
|
||||||
|
|
||||||
The first number on each line gives the script's ScriptID. When
|
|
||||||
you're about to use a web browser to look at scripts on
|
|
||||||
http://vim.sf.net/, just before you click on the script's link, you'll
|
|
||||||
see a line resembling
|
|
||||||
|
|
||||||
http://vim.sourceforge.net/scripts/script.php?script_id=40
|
|
||||||
|
|
||||||
The "40" happens to be a ScriptID that GetLatestVimScripts needs to
|
|
||||||
download the associated page.
|
|
||||||
|
|
||||||
The second number on each line gives the script's SourceID. The
|
|
||||||
SourceID records the count of uploaded scripts as determined by
|
|
||||||
vim.sf.net; hence it serves to indicate "when" a script was uploaded.
|
|
||||||
Setting the SourceID to 1 insures that GetLatestVimScripts will assume
|
|
||||||
that the script it has is out-of-date.
|
|
||||||
|
|
||||||
The SourceID is extracted by GetLatestVimScripts from the script's
|
|
||||||
page on vim.sf.net; whenever its greater than the one stored in the
|
|
||||||
GetLatestVimScripts.dat file, the script will be downloaded.
|
|
||||||
|
|
||||||
If your script's author has included a special comment line in his/her
|
|
||||||
plugin, the plugin itself will be used by GetLatestVimScripts to build
|
|
||||||
your <GetLatestVimScripts.dat> file, including any dependencies on
|
|
||||||
other scripts it may have.
|
|
||||||
|
|
||||||
If your comment field begins with :AutoInstall:, GetLatestVimScripts
|
|
||||||
will attempt to automatically install the script. Thus,
|
|
||||||
GetLatestVimScripts thus provides a comprehensive ability to keep your
|
|
||||||
plugins up-to-date!
|
|
||||||
|
|
||||||
==============================================================================
|
|
||||||
4. GetLatestVimScripts Plugins *getlatestvimscripts-plugins* *glvs-plugins*
|
|
||||||
|
|
||||||
|
|
||||||
If a plugin author includes the following comment anywhere in their
|
|
||||||
plugin, GetLatestVimScripts will find it and use it to build user's
|
|
||||||
GetLatestVimScripts.dat files:
|
|
||||||
>
|
|
||||||
src_id
|
|
||||||
v
|
|
||||||
" GetLatestVimScripts: ### ### yourscriptname
|
|
||||||
^
|
|
||||||
scriptid
|
|
||||||
<
|
|
||||||
As an author, you should include such a line in to refer to your own
|
|
||||||
script plus any additional lines describing any plugin dependencies it
|
|
||||||
may have. Same format, of course!
|
|
||||||
|
|
||||||
If your command is auto-installable (see |glvs-autoinstall|), and most
|
|
||||||
scripts are, then you may include :AutoInstall: at the start of
|
|
||||||
"yourscriptname".
|
|
||||||
|
|
||||||
GetLatestVimScript commands for those scripts are then appended, if
|
|
||||||
not already present, to the user's GetLatest/GetLatestVimScripts.dat
|
|
||||||
file. Its a relatively painless way to automate the acquisition of
|
|
||||||
any scripts your plugins depend upon.
|
|
||||||
|
|
||||||
Now, as an author, you probably don't want GetLatestVimScripts to
|
|
||||||
download your own scripts for you yourself, thereby overwriting your
|
|
||||||
not-yet-released hard work. GetLatestVimScripts provides a solution
|
|
||||||
for this: put
|
|
||||||
>
|
|
||||||
0 0 yourscriptname
|
|
||||||
<
|
|
||||||
into your <GetLatestVimScripts.dat> file and GetLatestVimScripts will
|
|
||||||
skip examining the "yourscriptname" scripts for those
|
|
||||||
GetLatestVimScript comment lines. As a result, those lines won't be
|
|
||||||
inadvertently installed into your <GetLatestVimScripts.dat> file and
|
|
||||||
subsequently used to download your own scripts. This is especially
|
|
||||||
important to do if you've included the :AutoInstall: option.
|
|
||||||
|
|
||||||
Be certain to use the same "yourscriptname" in the "0 0
|
|
||||||
yourscriptname" line as you've used in your GetLatestVimScript
|
|
||||||
comment!
|
|
||||||
|
|
||||||
|
|
||||||
==============================================================================
|
|
||||||
5. GetLatestVimScripts AutoInstall *getlatestvimscripts-autoinstall*
|
|
||||||
*glvs-autoinstall*
|
|
||||||
|
|
||||||
GetLatestVimScripts now supports "AutoInstall". Not all scripts are
|
|
||||||
supportive of auto-install, as they may have special things you need
|
|
||||||
to do to install them (please refer to the script's "install"
|
|
||||||
directions). On the other hand, most scripts will be
|
|
||||||
auto-installable.
|
|
||||||
|
|
||||||
To let GetLatestVimScripts do an autoinstall, the data file's comment
|
|
||||||
field should begin with (surrounding blanks are ignored):
|
|
||||||
|
|
||||||
:AutoInstall:
|
|
||||||
|
|
||||||
Both colons are needed, and it should begin the comment
|
|
||||||
(yourscriptname) field.
|
|
||||||
|
|
||||||
One may prevent any autoinstalling by putting the following line
|
|
||||||
in your <.vimrc>:
|
|
||||||
>
|
|
||||||
let g:GetLatestVimScripts_allowautoinstall= 0
|
|
||||||
<
|
|
||||||
|
|
||||||
With :AutoInstall: enabled, as it is by default, files which end with
|
|
||||||
|
|
||||||
---.tar.bz2 : decompressed and untarred in [.vim|vimfiles] directory
|
|
||||||
---.tar.gz : decompressed and untarred in [.vim|vimfiles] directory
|
|
||||||
---.vim.bz2 : decompressed and moved to the .vim/plugin directory
|
|
||||||
---.vim.gz : decompressed and moved to the .vim/plugin directory
|
|
||||||
---.zip : unzipped in [.vim|vimfiles] directory
|
|
||||||
---.vim : moved to [.vim|vimfiles]/plugin directory
|
|
||||||
|
|
||||||
and which merely need to have their components placed by the
|
|
||||||
untar/gunzip or move-to-plugin-directory process should be
|
|
||||||
auto-installable.
|
|
||||||
|
|
||||||
When is a script not auto-installable? Let me give an example:
|
|
||||||
>
|
|
||||||
[.vim|vimfiles]/after/syntax/blockhl.vim
|
|
||||||
<
|
|
||||||
The <blockhl.vim> script provides block highlighting for C/C++
|
|
||||||
programs; it is available at:
|
|
||||||
>
|
|
||||||
http://vim.sourceforge.net/scripts/script.php?script_id=104
|
|
||||||
<
|
|
||||||
Currently, vim's after/syntax only supports by-filetype scripts (in
|
|
||||||
blockhl.vim's case, that's after/syntax/c.vim). Hence, auto-install
|
|
||||||
would possibly overwrite the current user's after/syntax/c.vim file.
|
|
||||||
|
|
||||||
In my own case, I use <aftersyntax.vim> (renamed to
|
|
||||||
after/syntax/c.vim) to allow a after/syntax/c/ directory:
|
|
||||||
>
|
|
||||||
http://vim.sourceforge.net/scripts/script.php?script_id=1023
|
|
||||||
<
|
|
||||||
The script allows multiple syntax files to exist separately in the
|
|
||||||
after/syntax/c subdirectory. I can't bundle aftersyntax.vim in and
|
|
||||||
build an appropriate tarball for auto-install because of the potential
|
|
||||||
for the after/syntax/c.vim contained in it to overwrite a user's
|
|
||||||
c.vim.
|
|
||||||
|
|
||||||
|
|
||||||
==============================================================================
|
|
||||||
6. GetLatestVimScripts Algorithm *getlatestvimscripts-algorithm*
|
|
||||||
*glvs-alg*
|
|
||||||
|
|
||||||
The Vim sourceforge page dynamically creates a page by keying off of
|
|
||||||
the so-called script-id. Within the webpage of
|
|
||||||
|
|
||||||
http://vim.sourceforge.net/scripts/script.php?script_id=40
|
|
||||||
|
|
||||||
is a line specifying the latest source-id (src_id). The source
|
|
||||||
identifier numbers are always increasing, hence if the src_id is
|
|
||||||
greater than the one recorded for the script in GetLatestVimScripts
|
|
||||||
then its time to download a newer copy of that script.
|
|
||||||
|
|
||||||
GetLatestVimScripts will then download the script and update its
|
|
||||||
internal database of script ids, source ids, and scriptnames.
|
|
||||||
|
|
||||||
The AutoInstall process will:
|
|
||||||
|
|
||||||
Move the file from GetLatest/ to the following directory
|
|
||||||
Unix : $HOME/.vim
|
|
||||||
Windows: $HOME\vimfiles
|
|
||||||
|
|
||||||
if the downloaded file ends with ".bz2"
|
|
||||||
bunzip2 it
|
|
||||||
else if the downloaded file ends with ".gz"
|
|
||||||
gunzip it
|
|
||||||
if the resulting file ends with ".zip"
|
|
||||||
unzip it
|
|
||||||
else if the resulting file ends with ".tar"
|
|
||||||
tar -oxvf it
|
|
||||||
else if the resulting file ends with ".vim"
|
|
||||||
move it to the plugin subdirectory
|
|
||||||
|
|
||||||
|
|
||||||
==============================================================================
|
|
||||||
7. GetLatestVimScripts History *getlatestvimscripts-history* *glvs-hist*
|
|
||||||
|
|
||||||
v20 Dec 23, 2005 : * Eric Haarbauer found&fixed a bug with unzip use;
|
|
||||||
unzip needs the -o flag to overwrite.
|
|
||||||
v19 Nov 28, 2005 : * v18's GetLatestVimScript line accessed the wrong
|
|
||||||
script! Fixed.
|
|
||||||
v18 Mar 21, 2005 : * bugfix to automatic database construction
|
|
||||||
* bugfix - nowrapscan caused an error
|
|
||||||
(tnx to David Green for the fix)
|
|
||||||
Apr 01, 2005 * if shell is bash, "mv" instead of "ren" used in
|
|
||||||
:AutoInstall:s, even though its o/s is windows
|
|
||||||
Apr 01, 2005 * when downloading errors occurred, GLVS was
|
|
||||||
terminating early. It now just goes on to trying
|
|
||||||
the next script (after trying three times to
|
|
||||||
download a script description page)
|
|
||||||
Apr 20, 2005 * bugfix - when a failure to download occurred,
|
|
||||||
GetLatestVimScripts would stop early and claim that
|
|
||||||
everything was current. Fixed.
|
|
||||||
v17 Aug 25, 2004 : * g:GetLatestVimScripts_allowautoinstall, which
|
|
||||||
defaults to 1, can be used to prevent all
|
|
||||||
:AutoInstall:
|
|
||||||
v16 Aug 25, 2004 : * made execution of bunzip2/gunzip/tar/zip silent
|
|
||||||
* fixed bug with :AutoInstall: use of helptags
|
|
||||||
v15 Aug 24, 2004 : * bugfix: the "0 0 comment" download prevention wasn't
|
|
||||||
always preventing downloads (just usually). Fixed.
|
|
||||||
v14 Aug 24, 2004 : * bugfix -- helptags was using dotvim, rather than
|
|
||||||
s:dotvim. Fixed.
|
|
||||||
v13 Aug 23, 2004 : * will skip downloading a file if its scriptid or srcid
|
|
||||||
is zero. Useful for script authors; that way their
|
|
||||||
own GetLatestVimScripts activity won't overwrite
|
|
||||||
their scripts.
|
|
||||||
v12 Aug 23, 2004 : * bugfix - a "return" got left in the distribution that
|
|
||||||
was intended only for testing. Removed, now works.
|
|
||||||
* :AutoInstall: implemented
|
|
||||||
v11 Aug 20, 2004 : * GetLatestVimScripts is now a plugin:
|
|
||||||
* :GetLatestVimScripts command
|
|
||||||
* (runtimepath)/GetLatest/GetLatestVimScripts.dat
|
|
||||||
now holds scripts that need updating
|
|
||||||
v10 Apr 19, 2004 : * moved history from script to doc
|
|
||||||
v9 Jan 23, 2004 : windows (win32/win16/win95) will use
|
|
||||||
double quotes ("") whereas other systems will use
|
|
||||||
single quotes ('') around the urls in calls via wget
|
|
||||||
v8 Dec 01, 2003 : makes three tries at downloading
|
|
||||||
v7 Sep 02, 2003 : added error messages if "Click on..." or "src_id="
|
|
||||||
not found in downloaded webpage
|
|
||||||
Uses t_ti, t_te, and rs to make progress visible
|
|
||||||
v6 Aug 06, 2003 : final status messages now display summary of work
|
|
||||||
( "Downloaded someqty scripts" or
|
|
||||||
"Everything was current")
|
|
||||||
Now GetLatestVimScripts is careful about downloading
|
|
||||||
GetLatestVimScripts.vim itself!
|
|
||||||
(goes to <NEW_GetLatestVimScripts.vim>)
|
|
||||||
v5 Aug 04, 2003 : missing an endif near bottom
|
|
||||||
v4 Jun 17, 2003 : redraw! just before each "considering" message
|
|
||||||
v3 May 27, 2003 : Protects downloaded files from errant shell
|
|
||||||
expansions with single quotes: '...'
|
|
||||||
v2 May 14, 2003 : extracts name of item to be obtained from the
|
|
||||||
script file. Uses it instead of comment field
|
|
||||||
for output filename; comment is used in the
|
|
||||||
"considering..." line and is now just a comment!
|
|
||||||
* Fixed a bug: a string-of-numbers is not the
|
|
||||||
same as a number, so I added zero to them
|
|
||||||
and they became numbers. Fixes comparison.
|
|
||||||
|
|
||||||
==============================================================================
|
|
||||||
vim:tw=78:ts=8:ft=help
|
|
@@ -86,13 +86,12 @@ OPTIONS
|
|||||||
found in hexdump.
|
found in hexdump.
|
||||||
|
|
||||||
-s [+][-]seek
|
-s [+][-]seek
|
||||||
start at <seek> bytes abs. (or rel.) infile offset. + fRindi-
|
start at <seek> bytes abs. (or rel.) infile offset. + indicates
|
||||||
cates that the seek is relative to the current stdin file posi-
|
that the seek is relative to the current stdin file position
|
||||||
tion (meaningless when not reading from stdin). - indicates
|
(meaningless when not reading from stdin). - indicates that the
|
||||||
that the seek should be that many characters from the end of the
|
seek should be that many characters from the end of the input
|
||||||
input (or if combined with +: before the current stdin file
|
(or if combined with +: before the current stdin file position).
|
||||||
position). Without -s option, xxd starts at the current file
|
Without -s option, xxd starts at the current file position.
|
||||||
position.
|
|
||||||
|
|
||||||
-u use upper case hex letters. Default is lower case.
|
-u use upper case hex letters. Default is lower case.
|
||||||
|
|
||||||
@@ -153,7 +152,7 @@ EXAMPLES
|
|||||||
Print 3 lines (hex 0x30 bytes) from the end of file.
|
Print 3 lines (hex 0x30 bytes) from the end of file.
|
||||||
% xxd -s -0x30 file
|
% xxd -s -0x30 file
|
||||||
|
|
||||||
Print 120 bytes as continuous hexdump with 40 octets per line.
|
Print 120 bytes as continuous hexdump with 20 octets per line.
|
||||||
% xxd -l 120 -ps -c 20 xxd.1
|
% xxd -l 120 -ps -c 20 xxd.1
|
||||||
2e54482058584420312022417567757374203139
|
2e54482058584420312022417567757374203139
|
||||||
39362220224d616e75616c207061676520666f72
|
39362220224d616e75616c207061676520666f72
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
" Keymap file for the editing Tamil language files in TSCII encoding.
|
" Keymap file for the editing Tamil language files in TSCII encoding.
|
||||||
"
|
"
|
||||||
" Maintainer: Yegappan Lakshmanan (yegappan AT yahoo DOT com)
|
" Maintainer: Yegappan Lakshmanan (yegappan AT yahoo DOT com)
|
||||||
" Last updated: August 4, 2005
|
" Last updated: 2006 June 17
|
||||||
"
|
"
|
||||||
" You will need a fixed width TSCII font to use this encoding. The
|
" You will need a fixed width TSCII font to use this encoding. The
|
||||||
" Avarangal TSCII fixed width font (TSC_AvarangalFxd) is used to test
|
" Avarangal TSCII fixed width font (TSC_AvarangalFxd) is used to test
|
||||||
@@ -118,7 +118,7 @@ sA <char-186><char-161>
|
|||||||
si <char-186><char-162>
|
si <char-186><char-162>
|
||||||
sii <char-186><char-163>
|
sii <char-186><char-163>
|
||||||
sI <char-186><char-163>
|
sI <char-186><char-163>
|
||||||
su <char-204>
|
su <char-205>
|
||||||
suu <char-221>
|
suu <char-221>
|
||||||
sU <char-221>
|
sU <char-221>
|
||||||
se <char-166><char-186>
|
se <char-166><char-186>
|
||||||
|
@@ -1,470 +0,0 @@
|
|||||||
" ---------------------------------------------------------------------
|
|
||||||
" GetLatestVimScripts.vim
|
|
||||||
" Author: Charles E. Campbell, Jr.
|
|
||||||
" Date: Feb 15, 2006
|
|
||||||
" Version: 20
|
|
||||||
" Installing: :help glvs-install
|
|
||||||
" Usage: :help glvs
|
|
||||||
"
|
|
||||||
" GetLatestVimScripts: 642 1 :AutoInstall: GetLatestVimScripts.vim
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" Initialization: {{{1
|
|
||||||
" if you're sourcing this file, surely you can't be
|
|
||||||
" expecting vim to be in its vi-compatible mode
|
|
||||||
if &cp
|
|
||||||
if &verbose
|
|
||||||
echo "GetLatestVimScripts is not vi-compatible; not loaded (you need to set nocp)"
|
|
||||||
endif
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
let s:keepfo = &fo
|
|
||||||
let s:keepcpo = &cpo
|
|
||||||
set cpo&vim
|
|
||||||
|
|
||||||
if exists("loaded_GetLatestVimScripts")
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
let g:loaded_GetLatestVimScripts= "v20"
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" Global Variables: {{{1
|
|
||||||
" allow user to change the command for obtaining scripts (does fetch work?)
|
|
||||||
if !exists("g:GetLatestVimScripts_wget")
|
|
||||||
let g:GetLatestVimScripts_wget= "wget"
|
|
||||||
endif
|
|
||||||
if !exists("g:GetLatestVimScripts_options")
|
|
||||||
let g:GetLatestVimScripts_options= "-q -O"
|
|
||||||
endif
|
|
||||||
if !exists("g:GetLatestVimScripts_allowautoinstall")
|
|
||||||
let g:GetLatestVimScripts_allowautoinstall= 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
"" For debugging:
|
|
||||||
"let g:GetLatestVimScripts_wget = "echo"
|
|
||||||
"let g:GetLatestVimScripts_options = "options"
|
|
||||||
|
|
||||||
" check if s:autoinstall is possible
|
|
||||||
let s:autoinstall= ""
|
|
||||||
if g:GetLatestVimScripts_allowautoinstall
|
|
||||||
|
|
||||||
if (has("win32") || has("gui_win32") || has("gui_win32s") || has("win16") || has("win64") || has("win32unix") || has("win95")) && &shell != "bash"
|
|
||||||
" windows (but not cygwin/bash)
|
|
||||||
let s:dotvim= "vimfiles"
|
|
||||||
if !exists("g:GetLatestVimScripts_mv")
|
|
||||||
let g:GetLatestVimScripts_mv= "ren"
|
|
||||||
endif
|
|
||||||
|
|
||||||
else
|
|
||||||
" unix
|
|
||||||
let s:dotvim= ".vim"
|
|
||||||
if !exists("g:GetLatestVimScripts_mv")
|
|
||||||
let g:GetLatestVimScripts_mv= "mv"
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
if exists('$HOME') && isdirectory(expand("$HOME")."/".s:dotvim)
|
|
||||||
let s:autoinstall= $HOME."/".s:dotvim
|
|
||||||
endif
|
|
||||||
" call Decho("s:autoinstall<".s:autoinstall.">")
|
|
||||||
else
|
|
||||||
" call Decho("g:GetLatestVimScripts_allowautoinstall=".g:GetLatestVimScripts_allowautoinstall.": :AutoInstall: disabled")
|
|
||||||
endif
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" Public Interface: {{{1
|
|
||||||
com! -nargs=0 GetLatestVimScripts call <SID>GetLatestVimScripts()
|
|
||||||
silent! com -nargs=0 GLVS call <SID>GetLatestVimScripts()
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" GetOneScript: (Get Latest Vim Script) this function operates {{{1
|
|
||||||
" on the current line, interpreting two numbers and text as
|
|
||||||
" ScriptID, SourceID, and Filename.
|
|
||||||
" It downloads any scripts that have newer versions from vim.sf.net.
|
|
||||||
fun! <SID>GetOneScript(...)
|
|
||||||
" call Dfunc("GetOneScript()")
|
|
||||||
|
|
||||||
" set options to allow progress to be shown on screen
|
|
||||||
let t_ti= &t_ti
|
|
||||||
let t_te= &t_te
|
|
||||||
let rs = &rs
|
|
||||||
set t_ti= t_te= nors
|
|
||||||
|
|
||||||
" put current line on top-of-screen and interpret it into
|
|
||||||
" a script identifer : used to obtain webpage
|
|
||||||
" source identifier : used to identify current version
|
|
||||||
" and an associated comment: used to report on what's being considered
|
|
||||||
if a:0 >= 3
|
|
||||||
let scriptid = a:1
|
|
||||||
let srcid = a:2
|
|
||||||
let cmmnt = a:3
|
|
||||||
" call Decho("scriptid<".scriptid.">")
|
|
||||||
" call Decho("srcid <".srcid.">")
|
|
||||||
" call Decho("cmmnt <".cmmnt.">")
|
|
||||||
else
|
|
||||||
let curline = getline(".")
|
|
||||||
let parsepat = '^\s*\(\d\+\)\s\+\(\d\+\)\s\+\(.\{-}\)$'
|
|
||||||
try
|
|
||||||
let scriptid = substitute(curline,parsepat,'\1','e')
|
|
||||||
catch /^Vim\%((\a\+)\)\=:E486/
|
|
||||||
let scriptid= 0
|
|
||||||
endtry
|
|
||||||
try
|
|
||||||
let srcid = substitute(curline,parsepat,'\2','e')
|
|
||||||
catch /^Vim\%((\a\+)\)\=:E486/
|
|
||||||
let srcid= 0
|
|
||||||
endtry
|
|
||||||
try
|
|
||||||
let cmmnt = substitute(curline,parsepat,'\3','e')
|
|
||||||
catch /^Vim\%((\a\+)\)\=:E486/
|
|
||||||
let cmmnt= ""
|
|
||||||
endtry
|
|
||||||
" call Decho("curline <".curline.">")
|
|
||||||
" call Decho("parsepat<".parsepat.">")
|
|
||||||
" call Decho("scriptid<".scriptid.">")
|
|
||||||
" call Decho("srcid <".srcid.">")
|
|
||||||
" call Decho("cmmnt <".cmmnt.">")
|
|
||||||
endif
|
|
||||||
|
|
||||||
if scriptid == 0 || srcid == 0
|
|
||||||
" When looking for :AutoInstall: lines, skip scripts that
|
|
||||||
" have 0 0 scriptname
|
|
||||||
" call Dret("GetOneScript : skipping a scriptid==srcid==0 line")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
|
|
||||||
let doautoinstall= 0
|
|
||||||
if cmmnt =~ ":AutoInstall:"
|
|
||||||
" call Decho("cmmnt<".cmmnt."> has :AutoInstall:...")
|
|
||||||
let aicmmnt= substitute(cmmnt,'\s\+:AutoInstall:\s\+',' ','')
|
|
||||||
" call Decho("aicmmnt<".aicmmnt."> s:autoinstall=".s:autoinstall)
|
|
||||||
if s:autoinstall != ""
|
|
||||||
let doautoinstall = g:GetLatestVimScripts_allowautoinstall
|
|
||||||
endif
|
|
||||||
else
|
|
||||||
let aicmmnt= cmmnt
|
|
||||||
endif
|
|
||||||
" call Decho("aicmmnt<".aicmmnt.">: doautoinstall=".doautoinstall)
|
|
||||||
|
|
||||||
exe "norm z\<CR>"
|
|
||||||
redraw!
|
|
||||||
" call Decho('considering <'.aicmmnt.'> scriptid='.scriptid.' srcid='.srcid)
|
|
||||||
echomsg 'considering <'.aicmmnt.'> scriptid='.scriptid.' srcid='.srcid
|
|
||||||
|
|
||||||
" grab a copy of the plugin's vim.sf.net webpage
|
|
||||||
let scriptaddr = 'http://vim.sf.net/script.php?script_id='.scriptid
|
|
||||||
let tmpfile = tempname()
|
|
||||||
let v:errmsg = ""
|
|
||||||
|
|
||||||
" make three tries at downloading the description
|
|
||||||
let itry= 1
|
|
||||||
while itry <= 3
|
|
||||||
" call Decho("try#".itry." to download description of <".aicmmnt."> with addr=".scriptaddr)
|
|
||||||
if has("win32") || has("win16") || has("win95")
|
|
||||||
" call Decho("silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".tmpfile.' "'.scriptaddr.'"')
|
|
||||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".tmpfile.' "'.scriptaddr.'"'
|
|
||||||
else
|
|
||||||
" call Decho("silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".tmpfile." '".scriptaddr."'")
|
|
||||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".tmpfile." '".scriptaddr."'"
|
|
||||||
endif
|
|
||||||
if itry == 1
|
|
||||||
exe "silent vsplit ".tmpfile
|
|
||||||
else
|
|
||||||
silent! e %
|
|
||||||
endif
|
|
||||||
|
|
||||||
" find the latest source-id in the plugin's webpage
|
|
||||||
silent! 1
|
|
||||||
let findpkg= search('Click on the package to download','W')
|
|
||||||
if findpkg > 0
|
|
||||||
break
|
|
||||||
endif
|
|
||||||
let itry= itry + 1
|
|
||||||
endwhile
|
|
||||||
" call Decho(" --- end downloading tries while loop --- itry=".itry)
|
|
||||||
|
|
||||||
" testing: did finding /Click on the package.../ fail?
|
|
||||||
if findpkg == 0 || itry >= 4
|
|
||||||
silent q!
|
|
||||||
call delete(tmpfile)
|
|
||||||
" restore options
|
|
||||||
let &t_ti = t_ti
|
|
||||||
let &t_te = t_te
|
|
||||||
let &rs = rs
|
|
||||||
let s:downerrors = s:downerrors + 1
|
|
||||||
" call Decho("***warning*** couldn'".'t find "Click on the package..." in description page for <'.aicmmnt.">")
|
|
||||||
echomsg "***warning*** couldn'".'t find "Click on the package..." in description page for <'.aicmmnt.">"
|
|
||||||
" call Dret("GetOneScript : srch for /Click on the package/ failed")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
" call Decho('found "Click on the package to download"')
|
|
||||||
|
|
||||||
let findsrcid= search('src_id=','W')
|
|
||||||
if findsrcid == 0
|
|
||||||
silent q!
|
|
||||||
call delete(tmpfile)
|
|
||||||
" restore options
|
|
||||||
let &t_ti = t_ti
|
|
||||||
let &t_te = t_te
|
|
||||||
let &rs = rs
|
|
||||||
let s:downerrors = s:downerrors + 1
|
|
||||||
" call Decho("***warning*** couldn'".'t find "src_id=" in description page for <'.aicmmnt.">")
|
|
||||||
echomsg "***warning*** couldn'".'t find "src_id=" in description page for <'.aicmmnt.">"
|
|
||||||
" call Dret("GetOneScript : srch for /src_id/ failed")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
" call Decho('found "src_id=" in description page')
|
|
||||||
|
|
||||||
let srcidpat = '^\s*<td class.*src_id=\(\d\+\)">\([^<]\+\)<.*$'
|
|
||||||
let latestsrcid= substitute(getline("."),srcidpat,'\1','')
|
|
||||||
let fname = substitute(getline("."),srcidpat,'\2','')
|
|
||||||
" call Decho("srcidpat<".srcidpat."> latestsrcid<".latestsrcid."> fname<".fname.">")
|
|
||||||
silent q!
|
|
||||||
call delete(tmpfile)
|
|
||||||
|
|
||||||
" convert the strings-of-numbers into numbers
|
|
||||||
let srcid = srcid + 0
|
|
||||||
let latestsrcid = latestsrcid + 0
|
|
||||||
" call Decho("srcid=".srcid." latestsrcid=".latestsrcid." fname<".fname.">")
|
|
||||||
|
|
||||||
" has the plugin's most-recent srcid increased, which indicates
|
|
||||||
" that it has been updated
|
|
||||||
if latestsrcid > srcid
|
|
||||||
let s:downloads= s:downloads + 1
|
|
||||||
if fname == bufname("%")
|
|
||||||
" GetLatestVimScript has to be careful about downloading itself
|
|
||||||
let fname= "NEW_".fname
|
|
||||||
endif
|
|
||||||
|
|
||||||
" the plugin has been updated since we last obtained it, so download a new copy
|
|
||||||
" call Decho("...downloading new <".fname.">")
|
|
||||||
echomsg "...downloading new <".fname.">"
|
|
||||||
if has("win32") || has("gui_win32") || has("gui_win32s") || has("win16") || has("win64") || has("win32unix") || has("win95")
|
|
||||||
" call Decho("windows: silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".fname.' "'.'http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid.'"')
|
|
||||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".fname.' "'.'http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid.'"'
|
|
||||||
else
|
|
||||||
" call Decho("unix: silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".fname." '".'http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid."'")
|
|
||||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".fname." '".'http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid."'"
|
|
||||||
endif
|
|
||||||
|
|
||||||
" AutoInstall: only if doautoinstall is so indicating
|
|
||||||
if doautoinstall
|
|
||||||
" call Decho("attempting to do autoinstall: getcwd<".getcwd()."> filereadable(".fname.")=".filereadable(fname))
|
|
||||||
if filereadable(fname)
|
|
||||||
" call Decho("move <".fname."> to ".s:autoinstall)
|
|
||||||
" call Decho("DISABLED for testing")
|
|
||||||
exe "silent !"g:GetLatestVimScripts_mv." ".fname." ".s:autoinstall
|
|
||||||
let curdir= escape(substitute(getcwd(),'\','/','ge'),"|[]*'\" #")
|
|
||||||
exe "cd ".s:autoinstall
|
|
||||||
if fname =~ '\.bz2$'
|
|
||||||
" call Decho("attempt to bunzip2 ".fname)
|
|
||||||
exe "silent !bunzip2 ".fname
|
|
||||||
let fname= substitute(fname,'\.bz2$','','')
|
|
||||||
elseif fname =~ '\.gz$'
|
|
||||||
" call Decho("attempt to gunzip ".fname)
|
|
||||||
exe "silent !gunzip ".fname
|
|
||||||
let fname= substitute(fname,'\.gz$','','')
|
|
||||||
endif
|
|
||||||
if fname =~ '\.zip$'
|
|
||||||
" call Decho("attempt to unzip ".fname)
|
|
||||||
exe "silent !unzip -o".fname
|
|
||||||
elseif fname =~ '\.tar$'
|
|
||||||
" call Decho("attempt to untar ".fname)
|
|
||||||
exe "silent !tar -oxvf ".fname
|
|
||||||
endif
|
|
||||||
if fname =~ '.vim$'
|
|
||||||
" call Decho("attempt to simply move ".fname." to plugin")
|
|
||||||
exe "silent !".g:GetLatestVimScripts_mv." ".fname." plugin"
|
|
||||||
endif
|
|
||||||
exe "helptags ../".s:dotvim."/doc"
|
|
||||||
exe "cd ".curdir
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
" update the data in the <GetLatestVimScripts.dat> file
|
|
||||||
let modline=scriptid." ".latestsrcid." ".cmmnt
|
|
||||||
call setline(line("."),modline)
|
|
||||||
" call Decho("modline<".modline."> (updated GetLatestVimScripts.dat file)")
|
|
||||||
endif
|
|
||||||
|
|
||||||
" restore options
|
|
||||||
let &t_ti= t_ti
|
|
||||||
let &t_te= t_te
|
|
||||||
let &rs = rs
|
|
||||||
|
|
||||||
" call Dret("GetOneScript")
|
|
||||||
endfun
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" GetLatestVimScripts: this function gets the latest versions of {{{1
|
|
||||||
" scripts based on the list in
|
|
||||||
"
|
|
||||||
" (first dir in runtimepath)/GetLatest/GetLatestVimScripts.dat
|
|
||||||
fun! <SID>GetLatestVimScripts()
|
|
||||||
" call Dfunc("GetLatestVimScripts() autoinstall<".s:autoinstall.">")
|
|
||||||
|
|
||||||
" insure that wget is executable
|
|
||||||
if executable(g:GetLatestVimScripts_wget) != 1
|
|
||||||
echoerr "GetLatestVimScripts needs ".g:GetLatestVimScripts_wget." which apparently is not available on your system"
|
|
||||||
" call Dret("GetLatestVimScripts : wget not executable/availble")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Find the .../GetLatest sudirectory under the runtimepath
|
|
||||||
let rtplist= &rtp
|
|
||||||
while rtplist != ""
|
|
||||||
let datadir= substitute(rtplist,',.*$','','e')."/GetLatest"
|
|
||||||
if isdirectory(datadir)
|
|
||||||
" call Decho("found directory<".datadir.">")
|
|
||||||
break
|
|
||||||
endif
|
|
||||||
unlet datadir
|
|
||||||
if rtplist =~ ','
|
|
||||||
let rtplist= substitute(rtplist,'^.\{-},','','e')
|
|
||||||
else
|
|
||||||
let rtplist= ""
|
|
||||||
endif
|
|
||||||
endwhile
|
|
||||||
|
|
||||||
" Sanity checks: readability and writability
|
|
||||||
if !exists("datadir")
|
|
||||||
echoerr "Unable to find a GetLatest subdirectory on your runtimepath"
|
|
||||||
" call Dret("GetLatestVimScripts : unable to find a GetLatest subdirectory")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
if filewritable(datadir) != 2
|
|
||||||
echoerr "Your ".datadir." isn't writable"
|
|
||||||
" call Dret("GetLatestVimScripts : non-writable directory<".datadir.">")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
let datafile= datadir."/GetLatestVimScripts.dat"
|
|
||||||
if !filereadable(datafile)
|
|
||||||
echoerr "Your data file<".datafile."> isn't readable"
|
|
||||||
" call Dret("GetLatestVimScripts : non-readable datafile<".datafile.">")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
if !filewritable(datafile)
|
|
||||||
echoerr "Your data file<".datafile."> isn't writable"
|
|
||||||
" call Dret("GetLatestVimScripts : non-writable datafile<".datafile.">")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
" call Decho("datadir <".datadir.">")
|
|
||||||
" call Decho("datafile <".datafile.">")
|
|
||||||
|
|
||||||
" don't let any events interfere (like winmanager's, taglist's, etc)
|
|
||||||
let eikeep= &ei
|
|
||||||
set ei=all
|
|
||||||
|
|
||||||
" record current directory, change to datadir, open split window with
|
|
||||||
" datafile
|
|
||||||
let origdir= getcwd()
|
|
||||||
exe "cd ".escape(substitute(datadir,'\','/','ge'),"|[]*'\" #")
|
|
||||||
split
|
|
||||||
exe "e ".escape(substitute(datafile,'\','/','ge'),"|[]*'\" #")
|
|
||||||
res 1000
|
|
||||||
let s:downloads = 0
|
|
||||||
let s:downerrors= 0
|
|
||||||
|
|
||||||
" Check on dependencies mentioned in plugins
|
|
||||||
" call Decho(" ")
|
|
||||||
" call Decho("searching plugins for GetLatestVimScripts dependencies")
|
|
||||||
let lastline = line("$")
|
|
||||||
let plugins = globpath(&rtp,"plugin/*.vim")
|
|
||||||
let foundscript = 0
|
|
||||||
|
|
||||||
" call Decho("plugins<".plugins."> lastline#".lastline)
|
|
||||||
while plugins != ""
|
|
||||||
let plugin = substitute(plugins,'\n.*$','','e')
|
|
||||||
let plugins= (plugins =~ '\n')? substitute(plugins,'^.\{-}\n\(.*\)$','\1','e') : ""
|
|
||||||
$
|
|
||||||
" call Decho(".dependency checking<".plugin."> line$=".line("$"))
|
|
||||||
exe "silent r ".plugin
|
|
||||||
while search('^"\s\+GetLatestVimScripts:\s\+\d\+\s\+\d\+','W') != 0
|
|
||||||
let newscript= substitute(getline("."),'^"\s\+GetLatestVimScripts:\s\+\d\+\s\+\d\+\s\+\(.*\)$','\1','e')
|
|
||||||
let llp1 = lastline+1
|
|
||||||
|
|
||||||
if newscript !~ '^"'
|
|
||||||
" found a "GetLatestVimScripts: # #" line in the script; check if its already in the datafile
|
|
||||||
let curline = line(".")
|
|
||||||
let noai_script = substitute(newscript,'\s*:AutoInstall:\s*','','e')
|
|
||||||
exe llp1
|
|
||||||
let srchline = search('\<'.noai_script.'\>','bW')
|
|
||||||
" call Decho("..newscript<".newscript."> noai_script<".noai_script."> srch=".srchline." lastline=".lastline)
|
|
||||||
|
|
||||||
if srchline == 0
|
|
||||||
" found a new script to permanently include in the datafile
|
|
||||||
let keep_rega = @a
|
|
||||||
let @a = substitute(getline(curline),'^"\s\+GetLatestVimScripts:\s\+','','')
|
|
||||||
exe lastline."put a"
|
|
||||||
echomsg "Appending <".@a."> to ".datafile." for ".newscript
|
|
||||||
" call Decho("..APPEND (".noai_script.")<".@a."> to GetLatestVimScripts.dat")
|
|
||||||
let @a = keep_rega
|
|
||||||
let lastline = llp1
|
|
||||||
let curline = curline + 1
|
|
||||||
let foundscript = foundscript + 1
|
|
||||||
" else " Decho
|
|
||||||
" call Decho("..found <".noai_script."> (already in datafile at line#".srchline.")")
|
|
||||||
endif
|
|
||||||
|
|
||||||
let curline = curline + 1
|
|
||||||
exe curline
|
|
||||||
endif
|
|
||||||
|
|
||||||
endwhile
|
|
||||||
let llp1= lastline + 1
|
|
||||||
" call Decho(".deleting lines: ".llp1.",$d")
|
|
||||||
exe "silent! ".llp1.",$d"
|
|
||||||
endwhile
|
|
||||||
|
|
||||||
if foundscript == 0
|
|
||||||
set nomod
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Check on out-of-date scripts using GetLatest/GetLatestVimScripts.dat
|
|
||||||
set lz
|
|
||||||
" call Decho(" --- end of dependency checking loop --- ")
|
|
||||||
" call Decho("call GetOneScript on lines at end of datafile<".datafile.">")
|
|
||||||
1
|
|
||||||
/^-----/,$g/^\s*\d/call <SID>GetOneScript()
|
|
||||||
|
|
||||||
" Final report (an echomsg)
|
|
||||||
try
|
|
||||||
silent! ?^-------?
|
|
||||||
catch /^Vim\%((\a\+)\)\=:E114/
|
|
||||||
" call Dret("GetLatestVimScripts : nothing done!")
|
|
||||||
return
|
|
||||||
endtry
|
|
||||||
exe "norm! kz\<CR>"
|
|
||||||
let s:msg = ""
|
|
||||||
if s:downloads == 1
|
|
||||||
let s:msg = "Downloaded one updated script to <".datadir.">"
|
|
||||||
elseif s:downloads == 2
|
|
||||||
let s:msg= "Downloaded two updated scripts to <".datadir.">"
|
|
||||||
elseif s:downloads > 1
|
|
||||||
let s:msg= "Downloaded ".s:downloads." updated scripts to <".datadir.">"
|
|
||||||
else
|
|
||||||
let s:msg= "Everything was already current"
|
|
||||||
endif
|
|
||||||
if s:downerrors > 0
|
|
||||||
let s:msg= s:msg." (".s:downerrors." downloading errors)"
|
|
||||||
endif
|
|
||||||
echomsg s:msg
|
|
||||||
" save the file
|
|
||||||
if &mod
|
|
||||||
wq
|
|
||||||
else
|
|
||||||
q
|
|
||||||
endif
|
|
||||||
|
|
||||||
" restore events and current directory
|
|
||||||
exe "cd ".escape(substitute(origdir,'\','/','ge'),"|[]*'\" #")
|
|
||||||
let &ei= eikeep
|
|
||||||
set nolz
|
|
||||||
" call Dret("GetLatestVimScripts : did ".s:downloads." downloads")
|
|
||||||
endfun
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
" Restore Options: {{{1
|
|
||||||
let &fo = s:keepfo
|
|
||||||
let &cpo= s:keepcpo
|
|
||||||
|
|
||||||
" vim: ts=8 sts=2 fdm=marker nowrap
|
|
@@ -1,5 +1,6 @@
|
|||||||
" tarPlugin.vim -- a Vim plugin for browsing tarfiles
|
" tarPlugin.vim -- a Vim plugin for browsing tarfiles
|
||||||
" Copyright (c) 2002, Michael C. Toren <mct@toren.net>
|
" Original was copyright (c) 2002, Michael C. Toren <mct@toren.net>
|
||||||
|
" Modified by Charles E. Campbell, Jr.
|
||||||
" Distributed under the GNU General Public License.
|
" Distributed under the GNU General Public License.
|
||||||
"
|
"
|
||||||
" Updates are available from <http://michael.toren.net/code/>. If you
|
" Updates are available from <http://michael.toren.net/code/>. If you
|
||||||
@@ -8,7 +9,17 @@
|
|||||||
" Also look there for further comments and documentation.
|
" Also look there for further comments and documentation.
|
||||||
"
|
"
|
||||||
" This part only sets the autocommands. The functions are in autoload/tar.vim.
|
" This part only sets the autocommands. The functions are in autoload/tar.vim.
|
||||||
|
" ---------------------------------------------------------------------
|
||||||
|
" Load Once: {{{1
|
||||||
|
if &cp || exists("g:loaded_tarPlugin")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let g:loaded_tarPlugin = 1
|
||||||
|
let s:keepcpo = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------
|
||||||
|
" Public Interface: {{{1
|
||||||
augroup tar
|
augroup tar
|
||||||
au!
|
au!
|
||||||
au BufReadCmd tarfile:* call tar#Read(expand("<amatch>"), 1)
|
au BufReadCmd tarfile:* call tar#Read(expand("<amatch>"), 1)
|
||||||
@@ -30,4 +41,8 @@ augroup tar
|
|||||||
au BufReadCmd *.tgz call tar#Browse(expand("<amatch>"))
|
au BufReadCmd *.tgz call tar#Browse(expand("<amatch>"))
|
||||||
augroup END
|
augroup END
|
||||||
|
|
||||||
" vim: ts=8
|
" ---------------------------------------------------------------------
|
||||||
|
" Restoration And Modelines: {{{1
|
||||||
|
" vim: fdm=marker
|
||||||
|
let &cpo= s:keepcpo
|
||||||
|
unlet s:keepcpo
|
||||||
|
@@ -249,6 +249,7 @@ syn region mysqlFunction start="strcmp(" end=")" contains=ALL
|
|||||||
syn region mysqlFunction start="subdate(" end=")" contains=ALL
|
syn region mysqlFunction start="subdate(" end=")" contains=ALL
|
||||||
syn region mysqlFunction start="substring(" end=")" contains=ALL
|
syn region mysqlFunction start="substring(" end=")" contains=ALL
|
||||||
syn region mysqlFunction start="substring_index(" end=")" contains=ALL
|
syn region mysqlFunction start="substring_index(" end=")" contains=ALL
|
||||||
|
syn region mysqlFunction start="subtime(" end=")" contains=ALL
|
||||||
syn region mysqlFunction start="sum(" end=")" contains=ALL
|
syn region mysqlFunction start="sum(" end=")" contains=ALL
|
||||||
syn region mysqlFunction start="sysdate(" end=")" contains=ALL
|
syn region mysqlFunction start="sysdate(" end=")" contains=ALL
|
||||||
syn region mysqlFunction start="system_user(" end=")" contains=ALL
|
syn region mysqlFunction start="system_user(" end=")" contains=ALL
|
||||||
|
87
src/po/it.po
87
src/po/it.po
@@ -12,12 +12,13 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: vim 7.0\n"
|
"Project-Id-Version: vim 7.0\n"
|
||||||
"POT-Creation-Date: 2006-04-25 12:03+0200\n"
|
"POT-Creation-Date: 2007-04-29 13:02+0200\n"
|
||||||
"PO-Revision-Date: 2006-05-03 00:02+0200\n"
|
"PO-Revision-Date: 2007-04-29 18:02+0200\n"
|
||||||
"Last-Translator: Vlad Sandrini <vlad.gently@gmail.com>\n"
|
"Last-Translator: Vlad Sandrini <vlad.gently@gmail.com>\n"
|
||||||
"Language-Team: Italian"
|
"Language-Team: Italian"
|
||||||
" Antonio Colombo <azc100@gmail.com>"
|
" Antonio Colombo <azc100@gmail.com>"
|
||||||
" Vlad Sandrini <vlad.gently@gmail.com>\n"
|
" Vlad Sandrini <vlad.gently@gmail.com>"
|
||||||
|
" Luciano Montanaro <mikelima@cirulla.net>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=ISO_8859-1\n"
|
"Content-Type: text/plain; charset=ISO_8859-1\n"
|
||||||
"Content-Transfer-Encoding: 8-bit\n"
|
"Content-Transfer-Encoding: 8-bit\n"
|
||||||
@@ -196,6 +197,9 @@ msgstr "E98: Non riesco a leggere output del comando 'diff'"
|
|||||||
msgid "E99: Current buffer is not in diff mode"
|
msgid "E99: Current buffer is not in diff mode"
|
||||||
msgstr "E99: Buffer corrente non in modalit<69> 'diff'"
|
msgstr "E99: Buffer corrente non in modalit<69> 'diff'"
|
||||||
|
|
||||||
|
msgid "E793: No other buffer in diff mode is modifiable"
|
||||||
|
msgstr "E793: Nessun altro buffer <20> modificabile in modalit<69> 'diff'"
|
||||||
|
|
||||||
msgid "E100: No other buffer in diff mode"
|
msgid "E100: No other buffer in diff mode"
|
||||||
msgstr "E100: Non c'<27> nessun altro buffer in modalit<69> 'diff'"
|
msgstr "E100: Non c'<27> nessun altro buffer in modalit<69> 'diff'"
|
||||||
|
|
||||||
@@ -620,6 +624,10 @@ msgstr "E705: Nome di variabile in conflitto con una funzione esistente: %s"
|
|||||||
msgid "E706: Variable type mismatch for: %s"
|
msgid "E706: Variable type mismatch for: %s"
|
||||||
msgstr "E706: Tipo di variabile non corrispondente per: %s"
|
msgstr "E706: Tipo di variabile non corrispondente per: %s"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "E795: Cannot delete variable %s"
|
||||||
|
msgstr "E795: Non posso cancellare la variabile %s"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "E741: Value is locked: %s"
|
msgid "E741: Value is locked: %s"
|
||||||
msgstr "E741: Valore di %s non modificabile"
|
msgstr "E741: Valore di %s non modificabile"
|
||||||
@@ -754,6 +762,7 @@ msgstr " mark"
|
|||||||
msgid " FAILED"
|
msgid " FAILED"
|
||||||
msgstr " FALLITO"
|
msgstr " FALLITO"
|
||||||
|
|
||||||
|
#. avoid a wait_return for this message, it's annoying
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "E137: Viminfo file is not writable: %s"
|
msgid "E137: Viminfo file is not writable: %s"
|
||||||
msgstr "E137: File viminfo \"%s\" inaccessibile in scrittura"
|
msgstr "E137: File viminfo \"%s\" inaccessibile in scrittura"
|
||||||
@@ -1299,7 +1308,7 @@ msgstr ""
|
|||||||
|
|
||||||
#, no-c-format
|
#, no-c-format
|
||||||
msgid "E499: Empty file name for '%' or '#', only works with \":p:h\""
|
msgid "E499: Empty file name for '%' or '#', only works with \":p:h\""
|
||||||
msgstr "E499: Un nome di file nullo per '%' or '#', va bene solo con \":p:h\""
|
msgstr "E499: Un nome di file nullo per '%' o '#', va bene solo con \":p:h\""
|
||||||
|
|
||||||
msgid "E500: Evaluates to an empty string"
|
msgid "E500: Evaluates to an empty string"
|
||||||
msgstr "E500: Il valore <20> una stringa nulla"
|
msgstr "E500: Il valore <20> una stringa nulla"
|
||||||
@@ -1464,6 +1473,9 @@ msgstr "
|
|||||||
msgid "is not a file"
|
msgid "is not a file"
|
||||||
msgstr "non <20> un file"
|
msgstr "non <20> un file"
|
||||||
|
|
||||||
|
msgid "is a device (disabled with 'opendevice' option"
|
||||||
|
msgstr "<22> una periferica (disabilitata con l'opzione 'opendevice'"
|
||||||
|
|
||||||
msgid "[New File]"
|
msgid "[New File]"
|
||||||
msgstr "[File nuovo]"
|
msgstr "[File nuovo]"
|
||||||
|
|
||||||
@@ -1546,7 +1558,7 @@ msgid "E676: No matching autocommands for acwrite buffer"
|
|||||||
msgstr "E676: Nessun autocomando corrispondente per buffer acwrite"
|
msgstr "E676: Nessun autocomando corrispondente per buffer acwrite"
|
||||||
|
|
||||||
msgid "E203: Autocommands deleted or unloaded buffer to be written"
|
msgid "E203: Autocommands deleted or unloaded buffer to be written"
|
||||||
msgstr "E203: Buffer in scrittuta cancellato o scaricato dagli autocomandi"
|
msgstr "E203: Buffer in scrittura cancellato o scaricato dagli autocomandi"
|
||||||
|
|
||||||
msgid "E204: Autocommand changed number of lines in unexpected way"
|
msgid "E204: Autocommand changed number of lines in unexpected way"
|
||||||
msgstr "E204: L'autocomando ha modificato numero linee in maniera imprevista"
|
msgstr "E204: L'autocomando ha modificato numero linee in maniera imprevista"
|
||||||
@@ -1560,6 +1572,9 @@ msgstr "Scrittura parziale disabilitata per i buffer di NetBeans"
|
|||||||
msgid "is not a file or writable device"
|
msgid "is not a file or writable device"
|
||||||
msgstr "non <20> un file o un dispositivo su cui si possa scrivere"
|
msgstr "non <20> un file o un dispositivo su cui si possa scrivere"
|
||||||
|
|
||||||
|
msgid "writing to device disabled with 'opendevice' option"
|
||||||
|
msgstr "scrittura su periferica disabilitata con l'opzione 'opendevice'"
|
||||||
|
|
||||||
msgid "is read-only (add ! to override)"
|
msgid "is read-only (add ! to override)"
|
||||||
msgstr "<22> in sola letture (aggiungi ! per eseguire comunque)"
|
msgstr "<22> in sola letture (aggiungi ! per eseguire comunque)"
|
||||||
|
|
||||||
@@ -2195,7 +2210,7 @@ msgid "Printed: %s"
|
|||||||
msgstr "Stampato: %s"
|
msgstr "Stampato: %s"
|
||||||
|
|
||||||
msgid "Printing aborted"
|
msgid "Printing aborted"
|
||||||
msgstr "Stampa non completata'"
|
msgstr "Stampa non completata"
|
||||||
|
|
||||||
msgid "E455: Error writing to PostScript output file"
|
msgid "E455: Error writing to PostScript output file"
|
||||||
msgstr "E455: Errore in scrittura a file PostScript di output"
|
msgstr "E455: Errore in scrittura a file PostScript di output"
|
||||||
@@ -2458,19 +2473,6 @@ msgstr "numero linea non nell'intervallo"
|
|||||||
msgid "not allowed in the Vim sandbox"
|
msgid "not allowed in the Vim sandbox"
|
||||||
msgstr "non ammesso in ambiente protetto"
|
msgstr "non ammesso in ambiente protetto"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "E370: Could not load library %s"
|
|
||||||
msgstr "E370: Non posso caricare la libreria %s"
|
|
||||||
|
|
||||||
msgid "Sorry, this command is disabled: the Perl library could not be loaded."
|
|
||||||
msgstr ""
|
|
||||||
"Spiacente, comando non disponibile, non riesco a caricare libreria programmi "
|
|
||||||
"Perl."
|
|
||||||
|
|
||||||
msgid "E299: Perl evaluation forbidden in sandbox without the Safe module"
|
|
||||||
msgstr ""
|
|
||||||
"E299: Valorizzazione Perl vietata in ambiente protetto senza il modulo Safe"
|
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"E263: Sorry, this command is disabled, the Python library could not be "
|
"E263: Sorry, this command is disabled, the Python library could not be "
|
||||||
"loaded."
|
"loaded."
|
||||||
@@ -2488,7 +2490,7 @@ msgid "softspace must be an integer"
|
|||||||
msgstr "softspace deve essere un numero intero"
|
msgstr "softspace deve essere un numero intero"
|
||||||
|
|
||||||
msgid "invalid attribute"
|
msgid "invalid attribute"
|
||||||
msgstr "atrributo non valido"
|
msgstr "attributo non valido"
|
||||||
|
|
||||||
msgid "writelines() requires list of strings"
|
msgid "writelines() requires list of strings"
|
||||||
msgstr "writelines() richiede una lista di stringhe"
|
msgstr "writelines() richiede una lista di stringhe"
|
||||||
@@ -2645,7 +2647,7 @@ msgid "E275: Unknown SNiFF+ request: %s"
|
|||||||
msgstr "E275: Richiesta SNiFF+ sconosciuta: %s"
|
msgstr "E275: Richiesta SNiFF+ sconosciuta: %s"
|
||||||
|
|
||||||
msgid "E276: Error connecting to SNiFF+"
|
msgid "E276: Error connecting to SNiFF+"
|
||||||
msgstr "E276: Errore connettendosi a SNiFF+"
|
msgstr "E276: Errore di connessione a SNiFF+"
|
||||||
|
|
||||||
msgid "E278: SNiFF+ not connected"
|
msgid "E278: SNiFF+ not connected"
|
||||||
msgstr "E278: SNiFF+ non connesso"
|
msgstr "E278: SNiFF+ non connesso"
|
||||||
@@ -2994,17 +2996,17 @@ msgid "--remote <files>\tEdit <files> in a Vim server if possible"
|
|||||||
msgstr "--remote <file>\tApri <file> in un server Vim se possibile"
|
msgstr "--remote <file>\tApri <file> in un server Vim se possibile"
|
||||||
|
|
||||||
msgid "--remote-silent <files> Same, don't complain if there is no server"
|
msgid "--remote-silent <files> Same, don't complain if there is no server"
|
||||||
msgstr "--remote-silent <files> Stessa cosa, ignora se non esiste un server"
|
msgstr "--remote-silent <file> Stessa cosa, ignora se non esiste un server"
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"--remote-wait <files> As --remote but wait for files to have been edited"
|
"--remote-wait <files> As --remote but wait for files to have been edited"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"--remote-wait <file> Come --remote ma aspetta che file siano elaborati"
|
"--remote-wait <file> Come --remote ma aspetta che i file siano elaborati"
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"--remote-wait-silent <files> Same, don't complain if there is no server"
|
"--remote-wait-silent <files> Same, don't complain if there is no server"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"--remote-wait-silent <files> Stessa cosa, ignora se non esiste un server"
|
"--remote-wait-silent <file> Stessa cosa, ignora se non esiste un server"
|
||||||
|
|
||||||
msgid "--remote-tab <files> As --remote but open tab page for each file"
|
msgid "--remote-tab <files> As --remote but open tab page for each file"
|
||||||
msgstr "--remote-tab <file> Come --remote ma apre una linguetta per ogni file"
|
msgstr "--remote-tab <file> Come --remote ma apre una linguetta per ogni file"
|
||||||
@@ -3207,7 +3209,7 @@ msgid ""
|
|||||||
"# History of marks within files (newest to oldest):\n"
|
"# History of marks within files (newest to oldest):\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"\n"
|
"\n"
|
||||||
"# Storia dei mark all'interno dei files (dai pi<70> recenti ai meno recenti):\n"
|
"# Storia dei mark all'interno dei file (dai pi<70> recenti ai meno recenti):\n"
|
||||||
|
|
||||||
msgid "Missing '>'"
|
msgid "Missing '>'"
|
||||||
msgstr "Manca '>'"
|
msgstr "Manca '>'"
|
||||||
@@ -3329,6 +3331,10 @@ msgstr ""
|
|||||||
",\n"
|
",\n"
|
||||||
"o il file <20> stato danneggiato."
|
"o il file <20> stato danneggiato."
|
||||||
|
|
||||||
|
msgid " has been damaged (page size is smaller than minimum value).\n"
|
||||||
|
msgstr ""
|
||||||
|
" <20> stato danneggiato (la dimensione della pagina <20> inferiore al minimo).\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Using swap file \"%s\""
|
msgid "Using swap file \"%s\""
|
||||||
msgstr "Uso swap file \"%s\""
|
msgstr "Uso swap file \"%s\""
|
||||||
@@ -3671,6 +3677,10 @@ msgstr "E328: I Menu esistono solo in un'altra modalit
|
|||||||
msgid "E329: No menu \"%s\""
|
msgid "E329: No menu \"%s\""
|
||||||
msgstr "E329: Nessun Menu \"%s\""
|
msgstr "E329: Nessun Menu \"%s\""
|
||||||
|
|
||||||
|
#. Only a mnemonic or accelerator is not valid.
|
||||||
|
msgid "E792: Empty menu name"
|
||||||
|
msgstr "E792: Nome menu non valido"
|
||||||
|
|
||||||
msgid "E330: Menu path must not lead to a sub-menu"
|
msgid "E330: Menu path must not lead to a sub-menu"
|
||||||
msgstr "E330: Il percorso del Menu non deve condurre a un sotto-Menu"
|
msgstr "E330: Il percorso del Menu non deve condurre a un sotto-Menu"
|
||||||
|
|
||||||
@@ -4558,7 +4568,7 @@ msgid "E66: \\z( not allowed here"
|
|||||||
msgstr "E66: \\z( non consentito qui"
|
msgstr "E66: \\z( non consentito qui"
|
||||||
|
|
||||||
msgid "E67: \\z1 et al. not allowed here"
|
msgid "E67: \\z1 et al. not allowed here"
|
||||||
msgstr "E67: \\z1 et al. non consentiti qui"
|
msgstr "E67: \\z1 ecc. non consentiti qui"
|
||||||
|
|
||||||
msgid "E68: Invalid character after \\z"
|
msgid "E68: Invalid character after \\z"
|
||||||
msgstr "E68: Carattere non ammesso dopo \\z"
|
msgstr "E68: Carattere non ammesso dopo \\z"
|
||||||
@@ -5025,6 +5035,7 @@ msgstr "Spiacente, nessun suggerimento"
|
|||||||
msgid "Sorry, only %ld suggestions"
|
msgid "Sorry, only %ld suggestions"
|
||||||
msgstr "Spiacente, solo %ld suggerimenti"
|
msgstr "Spiacente, solo %ld suggerimenti"
|
||||||
|
|
||||||
|
#. for when 'cmdheight' > 1
|
||||||
#. avoid more prompt
|
#. avoid more prompt
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Change \"%.*s\" to:"
|
msgid "Change \"%.*s\" to:"
|
||||||
@@ -5448,6 +5459,13 @@ msgstr ""
|
|||||||
"\n"
|
"\n"
|
||||||
"versione MS-Windows 16/32 bit GUI"
|
"versione MS-Windows 16/32 bit GUI"
|
||||||
|
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
"MS-Windows 64 bit GUI version"
|
||||||
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"Versione MS-Windows 64 bit GUI"
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"\n"
|
"\n"
|
||||||
"MS-Windows 32 bit GUI version"
|
"MS-Windows 32 bit GUI version"
|
||||||
@@ -5765,6 +5783,19 @@ msgstr "E446: Nessun nome file sotto il cursore"
|
|||||||
msgid "E447: Can't find file \"%s\" in path"
|
msgid "E447: Can't find file \"%s\" in path"
|
||||||
msgstr "E447: Non riesco a trovare il file \"%s\" nel percorso"
|
msgstr "E447: Non riesco a trovare il file \"%s\" nel percorso"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "E370: Could not load library %s"
|
||||||
|
msgstr "E370: Non posso caricare la libreria %s"
|
||||||
|
|
||||||
|
msgid "Sorry, this command is disabled: the Perl library could not be loaded."
|
||||||
|
msgstr ""
|
||||||
|
"Spiacente, comando non disponibile, non riesco a caricare libreria programmi "
|
||||||
|
"Perl."
|
||||||
|
|
||||||
|
msgid "E299: Perl evaluation forbidden in sandbox without the Safe module"
|
||||||
|
msgstr ""
|
||||||
|
"E299: Valorizzazione Perl vietata in ambiente protetto senza il modulo Safe"
|
||||||
|
|
||||||
msgid "Edit with &multiple Vims"
|
msgid "Edit with &multiple Vims"
|
||||||
msgstr "Apri con &molti Vim"
|
msgstr "Apri con &molti Vim"
|
||||||
|
|
||||||
@@ -6033,9 +6064,9 @@ msgid "E46: Cannot change read-only variable \"%s\""
|
|||||||
msgstr "E46: Non posso cambiare la variabile read-only \"%s\""
|
msgstr "E46: Non posso cambiare la variabile read-only \"%s\""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "E46: Cannot set variable in the sandbox: \"%s\""
|
msgid "E794: Cannot set variable in the sandbox: \"%s\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"E46: Non posso impostare la variabile read-only in ambiente protetto: \"%s\""
|
"E794: Non posso impostare la variabile read-only in ambiente protetto: \"%s\""
|
||||||
|
|
||||||
msgid "E47: Error while reading errorfile"
|
msgid "E47: Error while reading errorfile"
|
||||||
msgstr "E47: Errore leggendo il file errori"
|
msgstr "E47: Errore leggendo il file errori"
|
||||||
|
@@ -1,12 +1,12 @@
|
|||||||
/* tag.c */
|
/* tag.c */
|
||||||
extern int do_tag __ARGS((char_u *tag, int type, int count, int forceit, int verbose));
|
int do_tag __ARGS((char_u *tag, int type, int count, int forceit, int verbose));
|
||||||
extern void tag_freematch __ARGS((void));
|
void tag_freematch __ARGS((void));
|
||||||
extern void do_tags __ARGS((exarg_T *eap));
|
void do_tags __ARGS((exarg_T *eap));
|
||||||
extern int find_tags __ARGS((char_u *pat, int *num_matches, char_u ***matchesp, int flags, int mincount, char_u *buf_ffname));
|
int find_tags __ARGS((char_u *pat, int *num_matches, char_u ***matchesp, int flags, int mincount, char_u *buf_ffname));
|
||||||
extern void free_tag_stuff __ARGS((void));
|
void free_tag_stuff __ARGS((void));
|
||||||
extern int get_tagfname __ARGS((tagname_T *tnp, int first, char_u *buf));
|
int get_tagfname __ARGS((tagname_T *tnp, int first, char_u *buf));
|
||||||
extern void tagname_free __ARGS((tagname_T *tnp));
|
void tagname_free __ARGS((tagname_T *tnp));
|
||||||
extern void simplify_filename __ARGS((char_u *filename));
|
void simplify_filename __ARGS((char_u *filename));
|
||||||
extern int expand_tags __ARGS((int tagnames, char_u *pat, int *num_file, char_u ***file));
|
int expand_tags __ARGS((int tagnames, char_u *pat, int *num_file, char_u ***file));
|
||||||
extern int get_tags __ARGS((list_T *list, char_u *pat));
|
int get_tags __ARGS((list_T *list, char_u *pat));
|
||||||
/* vim: set ft=c : */
|
/* vim: set ft=c : */
|
||||||
|
Reference in New Issue
Block a user