updated for version 7.0e06
This commit is contained in:
@ -10,6 +10,7 @@
|
||||
" Ruby IRB/Complete author: Keiju ISHITSUKA(keiju@ishitsuka.com)
|
||||
" ----------------------------------------------------------------------------
|
||||
|
||||
" {{{ requirement checks
|
||||
if !has('ruby')
|
||||
echohl ErrorMsg
|
||||
echo "Error: Required vim compiled with +ruby"
|
||||
@ -23,8 +24,17 @@ if version < 700
|
||||
echohl None
|
||||
finish
|
||||
endif
|
||||
" }}} requirement checks
|
||||
|
||||
if !exists("g:rubycomplete_rails")
|
||||
let g:rubycomplete_rails = 0
|
||||
endif
|
||||
|
||||
if !exists("g:rubycomplete_classes_in_global")
|
||||
let g:rubycomplete_classes_in_global = 0
|
||||
endif
|
||||
|
||||
" {{{ vim-side support functions
|
||||
function! GetBufferRubyModule(name)
|
||||
let [snum,enum] = GetBufferRubyEntity(a:name, "module")
|
||||
return snum . '..' . enum
|
||||
@ -103,6 +113,8 @@ function! GetRubyVarType(v)
|
||||
return ''
|
||||
endfunction
|
||||
|
||||
"}}} vim-side support functions
|
||||
|
||||
function! rubycomplete#Complete(findstart, base)
|
||||
"findstart = 1 when we need to get the text length
|
||||
if a:findstart
|
||||
@ -133,6 +145,7 @@ endfunction
|
||||
|
||||
function! s:DefRuby()
|
||||
ruby << RUBYEOF
|
||||
# {{{ ruby completion
|
||||
RailsWords = [
|
||||
"has_many", "has_one",
|
||||
"belongs_to",
|
||||
@ -164,11 +177,11 @@ Operators = [ "%", "&", "*", "**", "+", "-", "/",
|
||||
|
||||
|
||||
def load_requires
|
||||
@buf = VIM::Buffer.current
|
||||
enum = @buf.line_number
|
||||
buf = VIM::Buffer.current
|
||||
enum = buf.line_number
|
||||
nums = Range.new( 1, enum )
|
||||
nums.each do |x|
|
||||
ln = @buf[x]
|
||||
ln = buf[x]
|
||||
begin
|
||||
eval( "require %s" % $1 ) if /.*require\s*(.*)$/.match( ln )
|
||||
rescue Exception
|
||||
@ -198,7 +211,7 @@ def load_buffer_module(name)
|
||||
end
|
||||
|
||||
def get_buffer_entity(name, vimfun)
|
||||
@buf = VIM::Buffer.current
|
||||
buf = VIM::Buffer.current
|
||||
nums = eval( VIM::evaluate( vimfun % name ) )
|
||||
return nil if nums == nil
|
||||
return nil if nums.min == nums.max && nums.min == 0
|
||||
@ -207,7 +220,7 @@ def get_buffer_entity(name, vimfun)
|
||||
classdef = ""
|
||||
nums.each do |x|
|
||||
if x != cur_line
|
||||
ln = @buf[x]
|
||||
ln = buf[x]
|
||||
classdef += "%s\n" % ln
|
||||
end
|
||||
end
|
||||
@ -215,6 +228,25 @@ def get_buffer_entity(name, vimfun)
|
||||
return classdef
|
||||
end
|
||||
|
||||
def get_buffer_classes()
|
||||
# this will be a little expensive.
|
||||
allow_aggressive_load = VIM::evaluate('g:rubycomplete_classes_in_global')
|
||||
return [] if allow_aggressive_load != '1'
|
||||
|
||||
buf = VIM::Buffer.current
|
||||
eob = buf.length
|
||||
ret = []
|
||||
rg = 1..eob
|
||||
|
||||
rg.each do |x|
|
||||
if /^\s*class\s*([A-Za-z0-9_-]*)(\s*<\s*([A-Za-z0-9_:-]*))?\s*/.match( buf[x] )
|
||||
ret.push $1
|
||||
end
|
||||
end
|
||||
|
||||
return ret
|
||||
end
|
||||
|
||||
def load_rails()
|
||||
allow_rails = VIM::evaluate('g:rubycomplete_rails')
|
||||
return if allow_rails != '1'
|
||||
@ -233,13 +265,19 @@ def load_rails()
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
return if pok == nil
|
||||
bootfile = pok + "/boot.rb"
|
||||
require bootfile if pok != nil && File.exists?( bootfile )
|
||||
if File.exists?( bootfile )
|
||||
require bootfile
|
||||
VIM::evaluate('let g:rubycomplete_rails_loaded = 1')
|
||||
end
|
||||
end
|
||||
|
||||
def get_rails_helpers
|
||||
allow_rails = VIM::evaluate('g:rubycomplete_rails')
|
||||
return [] if allow_rails != '1'
|
||||
rails_loaded = VIM::evaluate('g:rubycomplete_rails_loaded')
|
||||
return [] if allow_rails != '1' || rails_loaded != '1'
|
||||
return RailsWords
|
||||
end
|
||||
|
||||
@ -404,14 +442,21 @@ def get_completions(base)
|
||||
receiver = $1
|
||||
message = input
|
||||
load_buffer_class( receiver )
|
||||
candidates = eval( "#{receiver}.instance_methods" )
|
||||
candidates += get_rails_helpers
|
||||
select_message(receiver, message, candidates)
|
||||
begin
|
||||
candidates = eval( "#{receiver}.instance_methods" )
|
||||
candidates += get_rails_helpers
|
||||
select_message(receiver, message, candidates)
|
||||
rescue Exception
|
||||
found = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if inclass == nil || found == nil
|
||||
candidates = eval("self.class.constants")
|
||||
candidates += get_buffer_classes
|
||||
candidates.uniq!
|
||||
candidates.sort!
|
||||
(candidates|ReservedWords).grep(/^#{Regexp.quote(input)}/)
|
||||
end
|
||||
end
|
||||
@ -459,10 +504,12 @@ def select_message(receiver, message, candidates)
|
||||
candidates.uniq!
|
||||
candidates.sort!
|
||||
end
|
||||
|
||||
# }}} ruby completion
|
||||
RUBYEOF
|
||||
endfunction
|
||||
|
||||
let g:rubycomplete_rails_loaded = 0
|
||||
|
||||
let g:rubycomplete_rails = 0
|
||||
call s:DefRuby()
|
||||
" vim: set et ts=4:
|
||||
" vim:tw=78:sw=4:ts=8:ft=vim:norl:
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
" Vim completion script
|
||||
" Language: SQL
|
||||
" Maintainer: David Fishburn <fishburn@ianywhere.com>
|
||||
" Version: 2.0
|
||||
" Last Change: Mon Apr 03 2006 10:21:36 PM
|
||||
" Version: 3.0
|
||||
" Last Change: Thu Apr 20 2006 8:47:12 PM
|
||||
|
||||
" Set completion with CTRL-X CTRL-O to autoloaded function.
|
||||
" This check is in place in case this script is
|
||||
@ -18,7 +18,7 @@ endif
|
||||
if exists('g:loaded_sql_completion')
|
||||
finish
|
||||
endif
|
||||
let g:loaded_sql_completion = 1
|
||||
let g:loaded_sql_completion = 30
|
||||
|
||||
" Maintains filename of dictionary
|
||||
let s:sql_file_table = ""
|
||||
@ -60,6 +60,24 @@ if !exists('g:omni_sql_precache_syntax_groups')
|
||||
\ 'sqlStatement'
|
||||
\ ]
|
||||
endif
|
||||
" Set ignorecase to the ftplugin standard
|
||||
if !exists('g:omni_sql_ignorecase')
|
||||
let g:omni_sql_ignorecase = &ignorecase
|
||||
endif
|
||||
" During table completion, should the table list also
|
||||
" include the owner name
|
||||
if !exists('g:omni_sql_include_owner')
|
||||
let g:omni_sql_include_owner = 0
|
||||
if exists('g:loaded_dbext')
|
||||
if g:loaded_dbext >= 300
|
||||
" New to dbext 3.00, by default the table lists include the owner
|
||||
" name of the table. This is used when determining how much of
|
||||
" whatever has been typed should be replaced as part of the
|
||||
" code replacement.
|
||||
let g:omni_sql_include_owner = 1
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
" This function is used for the 'omnifunc' option.
|
||||
function! sqlcomplete#Complete(findstart, base)
|
||||
@ -81,15 +99,27 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
while start > 0
|
||||
if line[start - 1] =~ '\w'
|
||||
let start -= 1
|
||||
elseif line[start - 1] =~ '\.' && compl_type =~ 'column'
|
||||
" If the completion type is column then assume we are looking
|
||||
" for column completion column_type can be either
|
||||
" 'column' or 'column_csv'
|
||||
if lastword == -1 && compl_type == 'column'
|
||||
" Do not replace the table name prefix or alias
|
||||
" if completing only a single column name
|
||||
elseif line[start - 1] =~ '\.' &&
|
||||
\ compl_type =~ 'column\|table\|view\|procedure'
|
||||
" If lastword has already been set for column completion
|
||||
" break from the loop, since we do not also want to pickup
|
||||
" a table name if it was also supplied.
|
||||
if lastword != -1 && compl_type =~ 'column'
|
||||
break
|
||||
endif
|
||||
" Assume we are looking for column completion
|
||||
" column_type can be either 'column' or 'column_csv'
|
||||
if lastword == -1 && compl_type =~ 'column'
|
||||
let lastword = start
|
||||
endif
|
||||
" If omni_sql_include_owner = 0, do not include the table
|
||||
" name as part of the substitution, so break here
|
||||
if lastword == -1 &&
|
||||
\ compl_type =~ 'table\|view\|procedure' &&
|
||||
\ g:omni_sql_include_owner == 0
|
||||
let lastword = start
|
||||
break
|
||||
endif
|
||||
let start -= 1
|
||||
else
|
||||
break
|
||||
@ -144,6 +174,14 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
if s:sql_file_{compl_type} != ""
|
||||
if filereadable(s:sql_file_{compl_type})
|
||||
let compl_list = readfile(s:sql_file_{compl_type})
|
||||
" let dic_list = readfile(s:sql_file_{compl_type})
|
||||
" if !empty(dic_list)
|
||||
" for elem in dic_list
|
||||
" let kind = (compl_type=='table'?'m':(compl_type=='procedure'?'f':'v'))
|
||||
" let item = {'word':elem, 'menu':elem, 'kind':kind, 'info':compl_type}
|
||||
" let compl_list += [item]
|
||||
" endfor
|
||||
" endif
|
||||
endif
|
||||
endif
|
||||
elseif compl_type == 'column'
|
||||
@ -203,8 +241,8 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
if base != ''
|
||||
" Filter the list based on the first few characters the user
|
||||
" entered
|
||||
let expr = 'v:val =~ "^'.base.'"'
|
||||
let compl_list = filter(copy(compl_list), expr)
|
||||
let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "^'.base.'"'
|
||||
let compl_list = filter(deepcopy(compl_list), expr)
|
||||
endif
|
||||
|
||||
if exists('b:sql_compl_savefunc') && b:sql_compl_savefunc != ""
|
||||
@ -297,8 +335,8 @@ function! s:SQLCCheck4dbext()
|
||||
" Leave time for the user to read the error message
|
||||
:sleep 2
|
||||
return -1
|
||||
elseif g:loaded_dbext < 210
|
||||
let msg = "The dbext plugin must be at least version 2.10 " .
|
||||
elseif g:loaded_dbext < 300
|
||||
let msg = "The dbext plugin must be at least version 3.00 " .
|
||||
\ " for dynamic SQL completion"
|
||||
call s:SQLCErrorMsg(msg)
|
||||
" Leave time for the user to read the error message
|
||||
@ -363,7 +401,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
let table_alias = ''
|
||||
let move_to_top = 1
|
||||
|
||||
if g:loaded_dbext >= 210
|
||||
if g:loaded_dbext >= 300
|
||||
let saveSettingAlias = DB_listOption('use_tbl_alias')
|
||||
exec 'DBSetOption use_tbl_alias=n'
|
||||
endif
|
||||
@ -479,7 +517,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
call cursor(curline, curcol)
|
||||
|
||||
if found == 0
|
||||
if g:loaded_dbext > 201
|
||||
if g:loaded_dbext > 300
|
||||
exec 'DBSetOption use_tbl_alias='.saveSettingAlias
|
||||
endif
|
||||
|
||||
@ -502,7 +540,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
|
||||
endif
|
||||
|
||||
if g:loaded_dbext > 201
|
||||
if g:loaded_dbext > 300
|
||||
exec 'DBSetOption use_tbl_alias='.saveSettingAlias
|
||||
endif
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 7.0e. Last change: 2006 Apr 18
|
||||
*motion.txt* For Vim version 7.0e. Last change: 2006 Apr 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -769,6 +769,7 @@ g'{mark} g`{mark}
|
||||
*:marks*
|
||||
:marks List all the current marks (not a motion command).
|
||||
The |'(|, |')|, |'{| and |'}| marks are not listed.
|
||||
The first column is number zero.
|
||||
{not in Vi}
|
||||
*E283*
|
||||
:marks {arg} List the marks that are mentioned in {arg} (not a
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 7.0e. Last change: 2006 Apr 02
|
||||
*pattern.txt* For Vim version 7.0e. Last change: 2006 Apr 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -341,6 +341,50 @@ For starters, read chapter 27 of the user manual |usr_27.txt|.
|
||||
or \z( pattern \) |/\z(|
|
||||
|
||||
|
||||
==============================================================================
|
||||
3. Magic */magic*
|
||||
|
||||
Some characters in the pattern are taken literally. They match with the same
|
||||
character in the text. When preceded with a backslash however, these
|
||||
characters get a special meaning.
|
||||
|
||||
Other characters have a special meaning without a backslash. They need to be
|
||||
preceded with a backslash to match literally.
|
||||
|
||||
If a character is taken literally or not depends on the 'magic' option and the
|
||||
items mentioned next.
|
||||
*/\m* */\M*
|
||||
Use of "\m" makes the pattern after it be interpreted as if 'magic' is set,
|
||||
ignoring the actual value of the 'magic' option.
|
||||
Use of "\M" makes the pattern after it be interpreted as if 'nomagic' is used.
|
||||
*/\v* */\V*
|
||||
Use of "\v" means that in the pattern after it all ASCII characters except
|
||||
'0'-'9', 'a'-'z', 'A'-'Z' and '_' have a special meaning. "very magic"
|
||||
|
||||
Use of "\V" means that in the pattern after it only the backslash has a
|
||||
special meaning. "very nomagic"
|
||||
|
||||
Examples:
|
||||
after: \v \m \M \V matches ~
|
||||
'magic' 'nomagic'
|
||||
$ $ $ \$ matches end-of-line
|
||||
. . \. \. matches any character
|
||||
* * \* \* any number of the previous atom
|
||||
() \(\) \(\) \(\) grouping into an atom
|
||||
| \| \| \| separating alternatives
|
||||
\a \a \a \a alphabetic character
|
||||
\\ \\ \\ \\ literal backslash
|
||||
\. \. . . literal dot
|
||||
\{ { { { literal '{'
|
||||
a a a a literal 'a'
|
||||
|
||||
{only Vim supports \m, \M, \v and \V}
|
||||
|
||||
It is recommended to always keep the 'magic' option at the default setting,
|
||||
which is 'magic'. This avoids portability problems. To make a pattern immune
|
||||
to the 'magic' option being set or not, put "\m" or "\M" at the start of the
|
||||
pattern.
|
||||
|
||||
==============================================================================
|
||||
4. Overview of pattern items *pattern-overview*
|
||||
|
||||
@ -485,51 +529,6 @@ cat\Z Both "cat" and "càt" ("a" followed by 0x0300)
|
||||
though it may look the same.
|
||||
|
||||
|
||||
==============================================================================
|
||||
3. Magic */magic*
|
||||
|
||||
Some characters in the pattern are taken literally. They match with the same
|
||||
character in the text. When preceded with a backslash however, these
|
||||
characters get a special meaning.
|
||||
|
||||
Other characters have a special meaning without a backslash. They need to be
|
||||
preceded with a backslash to match literally.
|
||||
|
||||
If a character is taken literally or not depends on the 'magic' option and the
|
||||
items mentioned next.
|
||||
*/\m* */\M*
|
||||
Use of "\m" makes the pattern after it be interpreted as if 'magic' is set,
|
||||
ignoring the actual value of the 'magic' option.
|
||||
Use of "\M" makes the pattern after it be interpreted as if 'nomagic' is used.
|
||||
*/\v* */\V*
|
||||
Use of "\v" means that in the pattern after it all ASCII characters except
|
||||
'0'-'9', 'a'-'z', 'A'-'Z' and '_' have a special meaning. "very magic"
|
||||
|
||||
Use of "\V" means that in the pattern after it only the backslash has a
|
||||
special meaning. "very nomagic"
|
||||
|
||||
Examples:
|
||||
after: \v \m \M \V matches ~
|
||||
'magic' 'nomagic'
|
||||
$ $ $ \$ matches end-of-line
|
||||
. . \. \. matches any character
|
||||
* * \* \* any number of the previous atom
|
||||
() \(\) \(\) \(\) grouping into an atom
|
||||
| \| \| \| separating alternatives
|
||||
\a \a \a \a alphabetic character
|
||||
\\ \\ \\ \\ literal backslash
|
||||
\. \. . . literal dot
|
||||
\{ { { { literal '{'
|
||||
a a a a literal 'a'
|
||||
|
||||
{only Vim supports \m, \M, \v and \V}
|
||||
|
||||
It is recommended to always keep the 'magic' option at the default setting,
|
||||
which is 'magic'. This avoids portability problems. To make a pattern immune
|
||||
to the 'magic' option being set or not, put "\m" or "\M" at the start of the
|
||||
pattern.
|
||||
|
||||
|
||||
==============================================================================
|
||||
5. Multi items *pattern-multi-items*
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*tar.txt* For Vim version 7.0e. Last change: 2006 Mar 24
|
||||
*pi_tar.txt* For Vim version 7.0e. Last change: 2006 Apr 22
|
||||
|
||||
+====================+
|
||||
| Tar File Interface |
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*zip.txt* For Vim version 7.0e. Last change: 2006 Apr 10
|
||||
*pi_zip.txt* For Vim version 7.0e. Last change: 2006 Apr 22
|
||||
|
||||
+====================+
|
||||
| Zip File Interface |
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*sql.txt* For Vim version 7.0e. Last change: Mon Apr 03 2006 10:34:00 PM
|
||||
*sql.txt* For Vim version 7.0e. Last change: Fri Apr 21 2006 10:39:11 PM
|
||||
|
||||
by David Fishburn
|
||||
|
||||
@ -82,7 +82,7 @@ The following keywords are supported: >
|
||||
|
||||
create[ or replace] procedure|function|event
|
||||
returns
|
||||
<
|
||||
|
||||
|
||||
1.2 Text Object Motions *sql-object-motions*
|
||||
-----------------------
|
||||
@ -96,7 +96,7 @@ file): >
|
||||
[[ move backwards to the previous 'begin'
|
||||
][ move forward to the next 'end'
|
||||
[] move backwards to the previous 'end'
|
||||
<
|
||||
|
||||
|
||||
1.3 Predefined Object Motions *sql-predefined-objects*
|
||||
-----------------------------
|
||||
@ -111,7 +111,7 @@ flexible as possible, you can override the list of objects from within your
|
||||
let g:ftplugin_sql_objects = 'function,procedure,event,table,trigger' .
|
||||
\ ',schema,service,publication,database,datatype,domain' .
|
||||
\ ',index,subscription,synchronization,view,variable'
|
||||
<
|
||||
|
||||
The following |Normal| mode and |Visual| mode maps have been created which use
|
||||
the above list: >
|
||||
]} move forward to the next 'create <object name>'
|
||||
@ -128,14 +128,14 @@ Repeatedly pressing ]} will cycle through each of these create statements: >
|
||||
end;
|
||||
|
||||
create index i1 on t1 (c1);
|
||||
<
|
||||
|
||||
The default setting for g:ftplugin_sql_objects is: >
|
||||
let g:ftplugin_sql_objects = 'function,procedure,event,' .
|
||||
\ '\\(existing\\\\|global\\s\\+temporary\\s\\+\\)\\\{,1}' .
|
||||
\ 'table,trigger' .
|
||||
\ ',schema,service,publication,database,datatype,domain' .
|
||||
\ ',index,subscription,synchronization,view,variable'
|
||||
<
|
||||
|
||||
The above will also handle these cases: >
|
||||
create table t1 (
|
||||
...
|
||||
@ -146,7 +146,7 @@ The above will also handle these cases: >
|
||||
create global temporary table t3 (
|
||||
...
|
||||
);
|
||||
<
|
||||
|
||||
By default, the ftplugin only searches for CREATE statements. You can also
|
||||
override this via your |vimrc| with the following: >
|
||||
let g:ftplugin_sql_statements = 'create,alter'
|
||||
@ -157,7 +157,7 @@ The filetype plugin defines three types of comments: >
|
||||
3. /*
|
||||
*
|
||||
*/
|
||||
<
|
||||
|
||||
The following |Normal| mode and |Visual| mode maps have been created to work
|
||||
with comments: >
|
||||
]" move forward to the beginning of a comment
|
||||
@ -170,7 +170,7 @@ with comments: >
|
||||
Vim's feature to find macro definitions, |'define'|, is supported using this
|
||||
regular expression: >
|
||||
\c\<\(VARIABLE\|DECLARE\|IN\|OUT\|INOUT\)\>
|
||||
<
|
||||
|
||||
This addresses the following code: >
|
||||
CREATE VARIABLE myVar1 INTEGER;
|
||||
|
||||
@ -187,11 +187,11 @@ This addresses the following code: >
|
||||
FROM T1
|
||||
WHERE c4 = myVar1;
|
||||
END;
|
||||
<
|
||||
|
||||
Place your cursor on "myVar1" on this line: >
|
||||
WHERE c4 = myVar1;
|
||||
^
|
||||
<
|
||||
|
||||
Press any of the following keys: >
|
||||
[d
|
||||
[D
|
||||
@ -235,7 +235,7 @@ For the people that work with many different databases, it would be nice to be
|
||||
able to flip between the various vendors rules (indent, syntax) on a per
|
||||
buffer basis, at any time. The ftplugin/sql.vim file defines this function: >
|
||||
SQLSetType
|
||||
<
|
||||
|
||||
Executing this function without any parameters will set the indent and syntax
|
||||
scripts back to their defaults, see |sql-type-default|. If you have turned
|
||||
off Vi's compatibility mode, |'compatible'|, you can use the <Tab> key to
|
||||
@ -252,12 +252,12 @@ examples: >
|
||||
:SQLSetType sqlanywhere
|
||||
:SQLSetType sqlinformix
|
||||
:SQLSetType mysql
|
||||
<
|
||||
|
||||
The easiest approach is to the use <Tab> character which will first complete
|
||||
the command name (SQLSetType), after a space and another <Tab>, display a list
|
||||
of available Vim script names: >
|
||||
:SQL<Tab><space><Tab>
|
||||
<
|
||||
|
||||
|
||||
2.2 SQL Dialect Default *sql-type-default*
|
||||
-----------------------
|
||||
@ -267,10 +267,10 @@ your |vimrc|: >
|
||||
let g:sql_type_default = 'sqlanywhere'
|
||||
let g:sql_type_default = 'sqlinformix'
|
||||
let g:sql_type_default = 'mysql'
|
||||
<
|
||||
|
||||
If you added the following to your |vimrc|: >
|
||||
let g:sql_type_default = 'sqlinformix'
|
||||
<
|
||||
|
||||
The next time edit a SQL file the following scripts will be automatically
|
||||
loaded by Vim: >
|
||||
ftplugin/sql.vim
|
||||
@ -299,7 +299,7 @@ can create any of the following: >
|
||||
Windows
|
||||
$VIM/vimfiles/syntax/sqlite.vim
|
||||
$VIM/vimfiles/indent/sqlite.vim
|
||||
<
|
||||
|
||||
No changes are necessary to the SQLSetType function. It will automatically
|
||||
pickup the new SQL files and load them when you issue the SQLSetType command.
|
||||
|
||||
@ -330,11 +330,11 @@ The defaults static maps are: >
|
||||
imap <buffer> <C-C>o <C-\><C-O>:call sqlcomplete#Map('sqlOption')<CR><C-X><C-O>
|
||||
imap <buffer> <C-C>T <C-\><C-O>:call sqlcomplete#Map('sqlType')<CR><C-X><C-O>
|
||||
imap <buffer> <C-C>s <C-\><C-O>:call sqlcomplete#Map('sqlStatement')<CR><C-X><C-O>
|
||||
<
|
||||
|
||||
The static maps (which are based on the syntax highlight groups) follow this
|
||||
format: >
|
||||
imap <buffer> <C-C>k <C-\><C-O>:call sqlcomplete#Map('sqlKeyword')<CR><C-X><C-O>
|
||||
<
|
||||
|
||||
This command breaks down as: >
|
||||
imap - Create an insert map
|
||||
<buffer> - Only for this buffer
|
||||
@ -362,7 +362,7 @@ This command breaks down as: >
|
||||
plugin will also cache this result until Vim is
|
||||
restarted. The syntax list is retrieved using
|
||||
the syntaxcomplete plugin.
|
||||
<
|
||||
|
||||
Using the 'syntax' keyword is a special case. This instructs the
|
||||
syntaxcomplete plugin to retrieve all syntax items. So this will effectively
|
||||
work for any of Vim's SQL syntax files. At the time of writing this includes
|
||||
@ -382,7 +382,7 @@ Here are some examples of the entries which are pulled from the syntax files: >
|
||||
- Isolation_level, On_error, Qualify_owners, Fire_triggers, ...
|
||||
Types
|
||||
- Integer, Char, Varchar, Date, DateTime, Timestamp, ...
|
||||
<
|
||||
|
||||
|
||||
4.2 Dynamic Mode *sql-completion-dynamic*
|
||||
----------------
|
||||
@ -402,7 +402,7 @@ to display a list of tables, procedures, views and columns. >
|
||||
- All stored procedures for all schema owners
|
||||
Column List
|
||||
- For the selected table, the columns that are part of the table
|
||||
<
|
||||
|
||||
To enable the popup, while in INSERT mode, use the following key combinations
|
||||
for each group (where <C-C> means hold the CTRL key down while pressing
|
||||
the space bar):
|
||||
@ -425,7 +425,7 @@ the popup window. This makes the re-displaying of these lists very
|
||||
fast. If new tables or columns are added to the database it may become
|
||||
necessary to clear the plugins cache. The default map for this is: >
|
||||
imap <buffer> <C-C>R <C-\><C-O>:call sqlcomplete#Map('ResetCache')<CR><C-X><C-O>
|
||||
<
|
||||
|
||||
|
||||
4.3 SQL Tutorial *sql-completion-tutorial*
|
||||
----------------
|
||||
@ -436,10 +436,10 @@ completion plugin so that: >
|
||||
b) You are introduced to some of the more common features
|
||||
c) Show how to customize it to your preferences
|
||||
d) Demonstrate "Best of Use" of the plugin (easiest way to configure).
|
||||
<
|
||||
|
||||
First, create a new buffer: >
|
||||
:e tutorial.sql
|
||||
<
|
||||
|
||||
|
||||
Static features
|
||||
---------------
|
||||
@ -461,7 +461,7 @@ depending on the syntax file you are using. The SQL Anywhere syntax file
|
||||
(sqlanywhere.vim) has support for this: >
|
||||
BEGIN
|
||||
DECLARE customer_id <C-C>T <-- Choose a type from the list
|
||||
<
|
||||
|
||||
|
||||
Dynamic features
|
||||
----------------
|
||||
@ -484,7 +484,7 @@ list. After the list is displayed press <C-W>. This will remove both the
|
||||
popup window and the table name already chosen when the list became active. >
|
||||
|
||||
4.3.1 Table Completion: *sql-completion-tables*
|
||||
<
|
||||
|
||||
Press <C-C>t to display a list of tables from within the database you
|
||||
have connected via the dbext plugin.
|
||||
NOTE: All of the SQL completion popups support typing a prefix before pressing
|
||||
@ -492,7 +492,7 @@ the key map. This will limit the contents of the popup window to just items
|
||||
beginning with those characters. >
|
||||
|
||||
4.3.2 Column Completion: *sql-completion-columns*
|
||||
<
|
||||
|
||||
The SQL completion plugin can also display a list of columns for particular
|
||||
tables. The column completion is trigger via <C-C>c.
|
||||
|
||||
@ -503,7 +503,7 @@ together. If you wish to enable this functionality on a *nix platform choose
|
||||
a key and create this mapping (see |sql-completion-maps| for further
|
||||
details on where to create this imap): >
|
||||
imap <buffer> <your_keystroke> <CR><C-\><C-O>:call sqlcomplete#Map('column')<CR><C-X><C-O>
|
||||
<
|
||||
|
||||
Example of using column completion:
|
||||
- Press <C-C>t again to display the list of tables.
|
||||
- When the list is displayed in the completion window, press <C-Right>,
|
||||
@ -561,7 +561,7 @@ following statement: >
|
||||
employee e,
|
||||
site_options so
|
||||
where c.
|
||||
<
|
||||
|
||||
In INSERT mode after typing the final "c." which is an alias for the
|
||||
"customer" table, you can press either <C-C>c or <C-X><C-O>. This will
|
||||
popup a list of columns for the customer table. It does this by looking back
|
||||
@ -572,12 +572,12 @@ keyword is also supported, "customer AS c". >
|
||||
|
||||
|
||||
4.3.3 Procedure Completion: *sql-completion-procedures*
|
||||
<
|
||||
|
||||
Similar to the table list, <C-C>p, will display a list of stored
|
||||
procedures stored within the database. >
|
||||
|
||||
4.3.4 View Completion: *sql-completion-views*
|
||||
<
|
||||
|
||||
Similar to the table list, <C-C>v, will display a list of views in the
|
||||
database.
|
||||
|
||||
@ -615,7 +615,32 @@ your |vimrc|: >
|
||||
use mixed case then the first letter of the table is used: >
|
||||
mytablename --> m
|
||||
MYTABLENAME --> M
|
||||
<
|
||||
|
||||
omni_sql_ignorecase
|
||||
< - Default: Current setting for|ignorecase|
|
||||
- Valid settings are 0 or 1.
|
||||
- When entering a few letters before initiating completion, the list
|
||||
will be filtered to display only the entries which begin with the
|
||||
list of characters. When this option is set to 0, the list will be
|
||||
filtered using case sensitivity. >
|
||||
|
||||
omni_sql_include_owner
|
||||
< - Default: 0, unless dbext.vim 3.00 has been installed
|
||||
- Valid settings are 0 or 1.
|
||||
- When completing tables, procedure or views and using dbext.vim 3.00
|
||||
or higher the list of objects will also include the owner name.
|
||||
When completing these objects and omni_sql_include_owner is enabled
|
||||
the owner name will be be replaced. >
|
||||
|
||||
omni_sql_precache_syntax_groups
|
||||
< - Default:
|
||||
['syntax','sqlKeyword','sqlFunction','sqlOption','sqlType','sqlStatement']
|
||||
- sqlcomplete can be used in conjunction with other completion
|
||||
plugins. This is outlined at |sql-completion-filetypes|. When the
|
||||
filetype is changed temporarily to SQL, the sqlcompletion plugin
|
||||
will cache the syntax groups listed in the List specified in this
|
||||
option.
|
||||
>
|
||||
|
||||
4.5 SQL Maps *sql-completion-maps*
|
||||
------------
|
||||
@ -642,7 +667,8 @@ highlighting rules. >
|
||||
|
||||
Dynamic Maps
|
||||
------------
|
||||
These are maps which use populate the completion list using the dbext.vim plugin. >
|
||||
These are maps which use populate the completion list using the dbext.vim
|
||||
plugin. >
|
||||
<C-C>t
|
||||
< - Displays a list of tables. >
|
||||
<C-C>p
|
||||
@ -683,7 +709,7 @@ If you do not wish the default maps created or the key choices do not work on
|
||||
your platform (often a case on *nix) you define the following variable in
|
||||
your |vimrc|: >
|
||||
let g:omni_sql_no_default_maps = 1
|
||||
<
|
||||
|
||||
Do no edit ftplugin/sql.vim directly! If you change this file your changes
|
||||
will be over written on future updates. Vim has a special directory structure
|
||||
which allows you to make customizations without changing the files that are
|
||||
|
||||
@ -259,6 +259,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'grepformat' options.txt /*'grepformat'*
|
||||
'grepprg' options.txt /*'grepprg'*
|
||||
'gtl' options.txt /*'gtl'*
|
||||
'gtt' options.txt /*'gtt'*
|
||||
'guicursor' options.txt /*'guicursor'*
|
||||
'guifont' options.txt /*'guifont'*
|
||||
'guifontset' options.txt /*'guifontset'*
|
||||
@ -267,6 +268,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'guioptions' options.txt /*'guioptions'*
|
||||
'guipty' options.txt /*'guipty'*
|
||||
'guitablabel' options.txt /*'guitablabel'*
|
||||
'guitabtooltip' options.txt /*'guitabtooltip'*
|
||||
'hardtabs' vi_diff.txt /*'hardtabs'*
|
||||
'helpfile' options.txt /*'helpfile'*
|
||||
'helpheight' options.txt /*'helpheight'*
|
||||
@ -3198,6 +3200,7 @@ CTRL-W_bar windows.txt /*CTRL-W_bar*
|
||||
CTRL-W_c windows.txt /*CTRL-W_c*
|
||||
CTRL-W_d tagsrch.txt /*CTRL-W_d*
|
||||
CTRL-W_f windows.txt /*CTRL-W_f*
|
||||
CTRL-W_gF windows.txt /*CTRL-W_gF*
|
||||
CTRL-W_g] windows.txt /*CTRL-W_g]*
|
||||
CTRL-W_g_CTRL-] windows.txt /*CTRL-W_g_CTRL-]*
|
||||
CTRL-W_gf windows.txt /*CTRL-W_gf*
|
||||
@ -4006,6 +4009,8 @@ E787 diff.txt /*E787*
|
||||
E788 autocmd.txt /*E788*
|
||||
E789 syntax.txt /*E789*
|
||||
E79 message.txt /*E79*
|
||||
E790 undo.txt /*E790*
|
||||
E791 mbyte.txt /*E791*
|
||||
E80 message.txt /*E80*
|
||||
E800 arabic.txt /*E800*
|
||||
E81 map.txt /*E81*
|
||||
@ -6298,6 +6303,7 @@ netrw-settings pi_netrw.txt /*netrw-settings*
|
||||
netrw-sexplore pi_netrw.txt /*netrw-sexplore*
|
||||
netrw-sort pi_netrw.txt /*netrw-sort*
|
||||
netrw-sortsequence pi_netrw.txt /*netrw-sortsequence*
|
||||
netrw-starpat pi_netrw.txt /*netrw-starpat*
|
||||
netrw-starstar pi_netrw.txt /*netrw-starstar*
|
||||
netrw-start pi_netrw.txt /*netrw-start*
|
||||
netrw-transparent pi_netrw.txt /*netrw-transparent*
|
||||
@ -6504,6 +6510,8 @@ pi_gzip.txt pi_gzip.txt /*pi_gzip.txt*
|
||||
pi_netrw.txt pi_netrw.txt /*pi_netrw.txt*
|
||||
pi_paren.txt pi_paren.txt /*pi_paren.txt*
|
||||
pi_spec.txt pi_spec.txt /*pi_spec.txt*
|
||||
pi_tar.txt pi_tar.txt /*pi_tar.txt*
|
||||
pi_zip.txt pi_zip.txt /*pi_zip.txt*
|
||||
plaintex.vim syntax.txt /*plaintex.vim*
|
||||
plsql sql.txt /*plsql*
|
||||
plugin usr_05.txt /*plugin*
|
||||
@ -7246,7 +7254,6 @@ tar-history pi_tar.txt /*tar-history*
|
||||
tar-manual pi_tar.txt /*tar-manual*
|
||||
tar-options pi_tar.txt /*tar-options*
|
||||
tar-usage pi_tar.txt /*tar-usage*
|
||||
tar.txt pi_tar.txt /*tar.txt*
|
||||
tcl if_tcl.txt /*tcl*
|
||||
tcl-beep if_tcl.txt /*tcl-beep*
|
||||
tcl-buffer if_tcl.txt /*tcl-buffer*
|
||||
@ -7858,7 +7865,6 @@ zip-copyright pi_zip.txt /*zip-copyright*
|
||||
zip-history pi_zip.txt /*zip-history*
|
||||
zip-manual pi_zip.txt /*zip-manual*
|
||||
zip-usage pi_zip.txt /*zip-usage*
|
||||
zip.txt pi_zip.txt /*zip.txt*
|
||||
zj fold.txt /*zj*
|
||||
zk fold.txt /*zk*
|
||||
zl scroll.txt /*zl*
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.0e. Last change: 2006 Apr 21
|
||||
*todo.txt* For Vim version 7.0e. Last change: 2006 Apr 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -30,16 +30,11 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Win32: Crash when adding many menu entries. (Karl Waedt)
|
||||
|
||||
Crash in "z=" when the change triggers checking out the file, FileChangedRO
|
||||
event. Problem in move_lines()? FileChangedShell also involved? (Neil Bird)
|
||||
Added a few checks for valid buffer, did that help?
|
||||
|
||||
Fix coverity false positives?
|
||||
|
||||
Add more tests for all new functionality in Vim 7. Especially new functions.
|
||||
:undojoin
|
||||
|
||||
Win32: Describe how to do debugging. (George Reilly)
|
||||
|
||||
@ -209,6 +204,10 @@ GTK+ GUI known bugs:
|
||||
8 GTK 2: Combining UTF-8 characters not displayed properly in menus (Mikolaj
|
||||
Machowski) They are displayed as separate characters. Problem in
|
||||
creating a label?
|
||||
8 GTK2: selecting button in confirm dialog with keys and hitting Enter
|
||||
doesn't select that button. (Steve Hall)
|
||||
It's possible to set the default button but it's not clear how to obtain
|
||||
the currently selected (highlighted) button.
|
||||
8 GTK 2: Combining UTF-8 characters are sometimes not drawn properly.
|
||||
Depends on the font size, "monospace 13" has the problem. Vim seems to do
|
||||
everything right, must be a GTK bug. Is there a way to work around it?
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.0e. Last change: 2006 Mar 25
|
||||
*various.txt* For Vim version 7.0e. Last change: 2006 Apr 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -819,7 +819,7 @@ Hints for translators:
|
||||
languages in the specified directory.
|
||||
|
||||
==============================================================================
|
||||
4. Using Vim like less or more *less*
|
||||
3. Using Vim like less or more *less*
|
||||
|
||||
If you use the less or more program to view a file, you don't get syntax
|
||||
highlighting. Thus you would like to use Vim instead. You can do this by
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*version7.txt* For Vim version 7.0e. Last change: 2006 Apr 21
|
||||
*version7.txt* For Vim version 7.0e. Last change: 2006 Apr 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -2572,7 +2572,7 @@ Completion could hang when 'lines' is 6 and a preview window was opened.
|
||||
|
||||
Added CTRL-W gF: open file under cursor in new tab page and jump to the line
|
||||
number following the file name.
|
||||
Added 'guitabtooltip', but it's not implemented anywhere yet.
|
||||
Added 'guitabtooltip'. Implemented for Win32 (Yegappan Lakshmanan).
|
||||
|
||||
Added "throw" to 'debug' option: thow an exception for error messages even
|
||||
whey they would otherwise be ignored.
|
||||
@ -2582,5 +2582,17 @@ mapping found" warning instead of a proper error message.
|
||||
|
||||
Motif: default to using XpmAttributes instead of XpmAttributes_21.
|
||||
|
||||
A few more changes for 64 bit MS-Windows. (George Reilly)
|
||||
|
||||
Got ml_get errors when doing "o" and selecting in other window where there are
|
||||
less line shorter than the cursor position in the other window. ins_mouse()
|
||||
was using position in wrong window.
|
||||
|
||||
Win32 GUI: Crash when giving a lot of messages during startup. Allocate twice
|
||||
as much memory for the dialog template.
|
||||
|
||||
Fixed a few leaks and wrong pointer use reported by coverity.
|
||||
|
||||
When showing menus the mode character was sometimes wrong.
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
" Vim indent file
|
||||
" Language: Fortran95 (and Fortran90, Fortran77, F and elf90)
|
||||
" Version: 0.36
|
||||
" Version: 0.37
|
||||
" URL: http://www.unb.ca/chem/ajit/indent/fortran.vim
|
||||
" Last Change: 2006 Apr. 02
|
||||
" Last Change: 2006 Apr. 22
|
||||
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www.unb.ca/chem/ajit/>
|
||||
" Usage: Do :help fortran-indent from Vim
|
||||
|
||||
@ -14,6 +14,7 @@ let b:did_indent = 1
|
||||
|
||||
setlocal indentkeys+==~end,=~case,=~if,=~else,=~do,=~where,=~elsewhere,=~select
|
||||
setlocal indentkeys+==~endif,=~enddo,=~endwhere,=~endselect
|
||||
setlocal indentkeys+==~type,=~interface
|
||||
|
||||
" Determine whether this is a fixed or free format source file
|
||||
" if this hasn't been done yet
|
||||
@ -81,20 +82,25 @@ function FortranGetIndent(lnum)
|
||||
endif
|
||||
|
||||
"Add a shiftwidth to statements following if, else, case,
|
||||
"where and elsewhere statements
|
||||
"where, elsewhere, type and interface statements
|
||||
if prevstat =~? '^\s*\(\d\+\s\)\=\s*\(else\|case\|where\|elsewhere\)\>'
|
||||
\ ||prevstat =~? '^\s*\(\d\+\s\)\=\s*\(type\|interface\)\>'
|
||||
\ || prevstat =~? '^\s*\(\d\+\s\)\=\s*\(\a\w*\s*:\)\=\s*if\>'
|
||||
let ind = ind + &sw
|
||||
" Remove unwanted indent after logical and arithmetic ifs
|
||||
if prevstat =~? '\<if\>' && prevstat !~? '\<then\>'
|
||||
let ind = ind - &sw
|
||||
endif
|
||||
" Remove unwanted indent after type( statements
|
||||
if prevstat =~? '\<type\s*('
|
||||
let ind = ind - &sw
|
||||
endif
|
||||
endif
|
||||
|
||||
"Subtract a shiftwidth from else, elsewhere, case, end if,
|
||||
" end where and end select statements
|
||||
" end where, end select, end interface and end type statements
|
||||
if getline(v:lnum) =~? '^\s*\(\d\+\s\)\=\s*'
|
||||
\. '\(else\|elsewhere\|case\|end\s*\(if\|where\|select\)\)\>'
|
||||
\. '\(else\|elsewhere\|case\|end\s*\(if\|where\|select\|interface\|type\)\)\>'
|
||||
let ind = ind - &sw
|
||||
" Fix indent for case statement immediately after select
|
||||
if prevstat =~? '\<select\>'
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
" Language: Python
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Original Author: David Bustos <bustos@caltech.edu>
|
||||
" Last Change: 2006 Apr 21
|
||||
" Last Change: 2006 Apr 22
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
|
||||
@ -185,11 +185,20 @@ try
|
||||
syn region doxygenVerbatimRegion contained matchgroup=doxygenOther start=+\<verbatim\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endverbatim\>+ contains=doxygenVerbatimRegionSpecial,doxygenContinueComment,doxygenErrorComment
|
||||
syn match doxygenVerbatimRegionSpecial contained +[\\@]\(endverbatim\>\)\@=+
|
||||
|
||||
let b:doxygen_syntax_save=b:current_syntax
|
||||
unlet b:current_syntax
|
||||
if exists('b:current_syntax')
|
||||
let b:doxygen_syntax_save=b:current_syntax
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
|
||||
syn include @Dotx syntax/dot.vim
|
||||
let b:current_syntax=b:doxygen_syntax_save
|
||||
unlet b:doxygen_syntax_save
|
||||
|
||||
if exists('b:doxygen_syntax_save')
|
||||
let b:current_syntax=b:doxygen_syntax_save
|
||||
unlet b:doxygen_syntax_save
|
||||
else
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
|
||||
syn region doxygenDotRegion contained matchgroup=doxygenOther start=+\<dot\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<enddot\>+ contains=doxygenDotRegionSpecial,doxygenErrorComment,doxygenContinueComment,@Dotx
|
||||
syn match doxygenDotRegionSpecial contained +[\\@]\(enddot\>\)\@=+
|
||||
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: Fortran95 (and Fortran90, Fortran77, F and elf90)
|
||||
" Version: 0.87
|
||||
" Version: 0.88
|
||||
" URL: http://www.unb.ca/chem/ajit/syntax/fortran.vim
|
||||
" Last Change: 2006 Apr. 04
|
||||
" Last Change: 2006 Apr. 22
|
||||
" Maintainer: Ajit J. Thakkar (ajit AT unb.ca); <http://www.unb.ca/chem/ajit/>
|
||||
" Usage: Do :help fortran-syntax from Vim
|
||||
" Credits:
|
||||
@ -279,7 +279,7 @@ syn keyword fortran77IntrinsicR dble dprod
|
||||
syn match fortran77OperatorR "\.\s*[gl][et]\s*\."
|
||||
syn match fortran77OperatorR "\.\s*\(eq\|ne\)\s*\."
|
||||
|
||||
if b:fortran_dialect == "f95"
|
||||
if b:fortran_dialect == "f95" || b:fortran_dialect == "F"
|
||||
syn keyword fortranRepeat forall
|
||||
syn match fortranRepeat "\<end\s*forall"
|
||||
syn keyword fortran95Intrinsic null cpu_time
|
||||
|
||||
Reference in New Issue
Block a user