1
0
forked from aniani/vim

updated for version 7.0219

This commit is contained in:
Bram Moolenaar
2006-03-09 22:32:39 +00:00
parent 0fd9289de3
commit 4ea8fe1d06
12 changed files with 1199 additions and 288 deletions

View File

@@ -498,6 +498,7 @@ RT_SCRIPTS = \
runtime/filetype.vim \
runtime/scripts.vim \
runtime/menu.vim \
runtime/macmap.vim \
runtime/delmenu.vim \
runtime/synmenu.vim \
runtime/makemenu.vim \

View File

@@ -1,7 +1,7 @@
" netrw.vim: Handles file transfer and remote directory listing across a network
" AUTOLOAD PORTION
" Date: Jan 30, 2006
" Version: 78
" Date: Mar 09, 2006
" Version: 79
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
" Copyright: Copyright (C) 1999-2005 Charles E. Campbell, Jr. {{{1
@@ -23,7 +23,7 @@
if &cp || exists("g:loaded_netrw")
finish
endif
let g:loaded_netrw = "v78"
let g:loaded_netrw = "v79"
if v:version < 700
echohl WarningMsg | echo "***netrw*** you need vim version 7.0 or later for version ".g:loaded_netrw." of netrw" | echohl None
finish
@@ -76,7 +76,7 @@ if !exists("g:netrw_ssh_cmd")
let g:netrw_ssh_cmd= "ssh"
endif
if has("win32") || has("win95") || has("win64") || has("win16")
if (has("win32") || has("win95") || has("win64") || has("win16"))
\ && exists("g:netrw_use_nt_rcp")
\ && g:netrw_use_nt_rcp
\ && executable( $SystemRoot .'/system32/rcp.exe')
@@ -191,6 +191,9 @@ if exists("g:netrw_silent") && g:netrw_silent != 0
else
let g:netrw_silentxfer= ""
endif
if !exists("g:netrw_fastbrowse")
let g:netrw_fastbrowse= 1
endif
if !exists("g:netrw_sort_by")
" alternatives: date size
let g:netrw_sort_by= "name"
@@ -224,6 +227,12 @@ if !exists("s:netrw_cd_escape")
let s:netrw_cd_escape="[]#*$%'\" ?`!&();<>\\"
endif
endif
if !exists("g:netrw_fname_escape")
let g:netrw_fname_escape= ' ?&;'
endif
if !exists("g:netrw_tmpfile_escape")
let g:netrw_tmpfile_escape= ' ?&;'
endif
if !exists("s:netrw_glob_escape")
if has("win32") || has("win95") || has("win64") || has("win16")
let s:netrw_glob_escape= ""
@@ -292,37 +301,36 @@ endfun
" ------------------------------------------------------------------------
" NetRead: responsible for reading a file over the net {{{2
fun! netrw#NetRead(...)
" call Dfunc("NetRead(a:1<".a:1.">)")
fun! netrw#NetRead(mode,...)
" call Dfunc("NetRead(mode=".a:mode.",...) a:0=".a:0)
" save options
call s:NetOptionSave()
" Special Exception: if a file is named "0r", then {{{3
" "0r" will be used to read the
" following files instead of "r"
if a:0 == 0
let readcmd= "r"
let ichoice= 0
elseif a:1 == "0r"
if a:mode == 0 " read remote file before current line
let readcmd = "0r"
let ichoice = 2
else
elseif a:mode == 1 " read file after current line
let readcmd = "r"
elseif a:mode == 2 " replace with remote file
let readcmd = "%r"
else
exe a:mode
let readcmd = "r"
let ichoice = 1
endif
let ichoice = (a:0 == 0)? 0 : 1
" call Decho("readcmd<".readcmd."> ichoice=".ichoice)
" get name of a temporary file and set up shell-quoting character {{{3
let tmpfile= tempname()
let tmpfile= substitute(tmpfile,'\','/','ge')
let tmpfile= escape(substitute(tmpfile,'\','/','ge'),g:netrw_tmpfile_escape)
if !isdirectory(substitute(tmpfile,'[^/]\+$','','e'))
echohl Error | echo "***netrw*** your <".substitute(tmpfile,'[^/]\+$','','e')."> directory is missing!" | echohl None
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
" call Dret("NetRead")
return
endif
" call Decho("tmpfile<".tmpfile.">")
" call Decho("ichoice=".ichoice." readcmd<".readcmd.">")
while ichoice <= a:0
" attempt to repeat with previous host-file-etc
@@ -439,8 +447,8 @@ fun! netrw#NetRead(...)
let uid_machine = g:netrw_machine
endif
endif
" call Decho("executing: !".g:netrw_rcp_cmd." ".s:netrw_rcpmode." ".uid_machine.":".escape(b:netrw_fname,' ?&')." ".tmpfile)
exe g:netrw_silentxfer."!".g:netrw_rcp_cmd." ".s:netrw_rcpmode." ".uid_machine.":".escape(b:netrw_fname,' ?&')." ".tmpfile
" call Decho("executing: !".g:netrw_rcp_cmd." ".s:netrw_rcpmode." ".uid_machine.":".escape(b:netrw_fname,' ?&;')." ".tmpfile)
exe g:netrw_silentxfer."!".g:netrw_rcp_cmd." ".s:netrw_rcpmode." ".uid_machine.":".escape(b:netrw_fname,' ?&;')." ".tmpfile
let result = s:NetGetFile(readcmd, tmpfile, b:netrw_method)
let b:netrw_lastfile = choice
@@ -448,7 +456,7 @@ fun! netrw#NetRead(...)
" ftp + <.netrc>: NetRead Method #2 {{{3
elseif b:netrw_method == 2 " read with ftp + <.netrc>
" call Decho("read via ftp+.netrc (method #2)")
let netrw_fname= b:netrw_fname
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
new
setlocal ff=unix
exe "put ='".g:netrw_ftpmode."'"
@@ -479,7 +487,7 @@ fun! netrw#NetRead(...)
elseif b:netrw_method == 3 " read with ftp + machine, id, passwd, and fname
" Construct execution string (four lines) which will be passed through filter
" call Decho("read via ftp+mipf (method #3)")
let netrw_fname= b:netrw_fname
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
new
setlocal ff=unix
if exists("g:netrw_port") && g:netrw_port != ""
@@ -537,11 +545,11 @@ fun! netrw#NetRead(...)
endif
if g:netrw_cygwin == 1
let cygtmpfile=substitute(tmpfile,'^\(\a\):','/cygdrive/\1/','e')
" call Decho("executing: !".g:netrw_scp_cmd.useport." '".g:netrw_machine.":".escape(b:netrw_fname,' ?&')."' ".cygtmpfile)
exe g:netrw_silentxfer."!".g:netrw_scp_cmd.useport." '".g:netrw_machine.":".escape(b:netrw_fname,' ?&')."' ".cygtmpfile
" call Decho("executing: !".g:netrw_scp_cmd.useport." '".g:netrw_machine.":".escape(b:netrw_fname,g:netrw_fname_escape)."' ".cygtmpfile)
exe g:netrw_silentxfer."!".g:netrw_scp_cmd.useport." '".g:netrw_machine.":".escape(b:netrw_fname,g:netrw_fname_escape)."' ".cygtmpfile
else
" call Decho("executing: !".g:netrw_scp_cmd.useport." '".g:netrw_machine.":".escape(b:netrw_fname,' ?&')."' ".tmpfile)
exe g:netrw_silentxfer."!".g:netrw_scp_cmd.useport." '".g:netrw_machine.":".escape(b:netrw_fname,' ?&')."' ".tmpfile
" call Decho("executing: !".g:netrw_scp_cmd.useport." '".g:netrw_machine.":".escape(b:netrw_fname,g:netrw_fname_escape)."' ".tmpfile)
exe g:netrw_silentxfer."!".g:netrw_scp_cmd.useport." '".g:netrw_machine.":".escape(b:netrw_fname,g:netrw_fname_escape)."' ".tmpfile
endif
let result = s:NetGetFile(readcmd, tmpfile, b:netrw_method)
let b:netrw_lastfile = choice
@@ -561,14 +569,15 @@ fun! netrw#NetRead(...)
if match(b:netrw_fname,"#") == -1
" simple wget
" call Decho("executing: !".g:netrw_http_cmd." ".tmpfile." http://".g:netrw_machine.escape(b:netrw_fname,' ?&'))
exe g:netrw_silentxfer."!".g:netrw_http_cmd." ".tmpfile." http://".g:netrw_machine.escape(b:netrw_fname,' ?&')
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
" call Decho("executing: !".g:netrw_http_cmd." ".tmpfile." http://".g:netrw_machine.netrw_fname)
exe g:netrw_silentxfer."!".g:netrw_http_cmd." ".tmpfile." http://".g:netrw_machine.netrw_fname
let result = s:NetGetFile(readcmd, tmpfile, b:netrw_method)
else
" wget plus a jump to an in-page marker (ie. http://abc/def.html#aMarker)
let netrw_html= substitute(b:netrw_fname,"#.*$","","")
let netrw_tag = substitute(b:netrw_fname,"^.*#","","")
let netrw_html= substitute(netrw_fname,"#.*$","","")
let netrw_tag = substitute(netrw_fname,"^.*#","","")
" call Decho("netrw_html<".netrw_html.">")
" call Decho("netrw_tag <".netrw_tag.">")
" call Decho("executing: !".g:netrw_http_cmd." ".tmpfile." http://".g:netrw_machine.netrw_html)
@@ -585,7 +594,7 @@ fun! netrw#NetRead(...)
" call Decho("read via cadaver (method #6)")
" Construct execution string (four lines) which will be passed through filter
let netrw_fname= b:netrw_fname
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
new
setlocal ff=unix
if exists("g:netrw_port") && g:netrw_port != ""
@@ -615,13 +624,14 @@ fun! netrw#NetRead(...)
" rsync: NetRead Method #7 {{{3
elseif b:netrw_method == 7
" call Decho("read via rsync (method #7)")
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
if g:netrw_cygwin == 1
let cygtmpfile=substitute(tmpfile,'^\(\a\):','/cygdrive/\1/','e')
" call Decho("executing: !".g:netrw_rsync_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".cygtmpfile)
exe g:netrw_silentxfer."!".g:netrw_rsync_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".cygtmpfile
" call Decho("executing: !".g:netrw_rsync_cmd." ".g:netrw_machine.":".netrw_fname." ".cygtmpfile)
exe g:netrw_silentxfer."!".g:netrw_rsync_cmd." ".g:netrw_machine.":".netrw_fname." ".cygtmpfile
else
" call Decho("executing: !".g:netrw_rsync_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".tmpfile)
exe g:netrw_silentxfer."!".g:netrw_rsync_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".tmpfile
" call Decho("executing: !".g:netrw_rsync_cmd." ".g:netrw_machine.":".netrw_fname." ".tmpfile)
exe g:netrw_silentxfer."!".g:netrw_rsync_cmd." ".g:netrw_machine.":".netrw_fname." ".tmpfile
endif
let result = s:NetGetFile(readcmd,tmpfile, b:netrw_method)
let b:netrw_lastfile = choice
@@ -630,6 +640,7 @@ fun! netrw#NetRead(...)
" fetch: NetRead Method #8 {{{3
" fetch://[user@]host[:http]/path
elseif b:netrw_method == 8
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
if g:netrw_fetch_cmd == ""
if !exists("g:netrw_quiet")
echohl Error | echo "***netrw*** fetch command not available" | echohl None
@@ -645,11 +656,11 @@ fun! netrw#NetRead(...)
" call Decho("read via fetch for ".netrw_option)
if exists("g:netrw_uid") && g:netrw_uid != "" && exists("g:netrw_passwd") && g:netrw_passwd != ""
" call Decho("executing: !".g:netrw_fetch_cmd." ".tmpfile." ".netrw_option."://".g:netrw_uid.':'.g:netrw_passwd.'@'.g:netrw_machine."/".escape(b:netrw_fname,' ?&'))
exe g:netrw_silentxfer."!".g:netrw_fetch_cmd." ".tmpfile." ".netrw_option."://".g:netrw_uid.':'.g:netrw_passwd.'@'.g:netrw_machine."/".escape(b:netrw_fname,' ?&')
" call Decho("executing: !".g:netrw_fetch_cmd." ".tmpfile." ".netrw_option."://".g:netrw_uid.':'.g:netrw_passwd.'@'.g:netrw_machine."/".netrw_fname)
exe g:netrw_silentxfer."!".g:netrw_fetch_cmd." ".tmpfile." ".netrw_option."://".g:netrw_uid.':'.g:netrw_passwd.'@'.g:netrw_machine."/".netrw_fname
else
" call Decho("executing: !".g:netrw_fetch_cmd." ".tmpfile." ".netrw_option."://".g:netrw_machine."/".escape(b:netrw_fname,' ?&'))
exe g:netrw_silentxfer."!".g:netrw_fetch_cmd." ".tmpfile." ".netrw_option."://".g:netrw_machine."/".escape(b:netrw_fname,' ?&')
" call Decho("executing: !".g:netrw_fetch_cmd." ".tmpfile." ".netrw_option."://".g:netrw_machine."/".netrw_fname)
exe g:netrw_silentxfer."!".g:netrw_fetch_cmd." ".tmpfile." ".netrw_option."://".g:netrw_machine."/".netrw_fname
endif
let result = s:NetGetFile(readcmd,tmpfile, b:netrw_method)
@@ -659,14 +670,15 @@ fun! netrw#NetRead(...)
" sftp: NetRead Method #9 {{{3
elseif b:netrw_method == 9
" call Decho("read via sftp (method #4)")
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
if g:netrw_cygwin == 1
let cygtmpfile=substitute(tmpfile,'^\(\a\):','/cygdrive/\1/','e')
" call Decho("!".g:netrw_sftp_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".cygtmpfile)
" call Decho("executing: !".g:netrw_sftp_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".cygtmpfile)
exe "!".g:netrw_sftp_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".cygtmpfile
" call Decho("!".g:netrw_sftp_cmd." ".g:netrw_machine.":".netrw_fname." ".cygtmpfile)
" call Decho("executing: !".g:netrw_sftp_cmd." ".g:netrw_machine.":".netrw_fname." ".cygtmpfile)
exe "!".g:netrw_sftp_cmd." ".g:netrw_machine.":".netrw_fname." ".cygtmpfile
else
" call Decho("executing: !".g:netrw_sftp_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".tmpfile)
exe g:netrw_silentxfer."!".g:netrw_sftp_cmd." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')." ".tmpfile
" call Decho("executing: !".g:netrw_sftp_cmd." ".g:netrw_machine.":".netrw_fname." ".tmpfile)
exe g:netrw_silentxfer."!".g:netrw_sftp_cmd." ".g:netrw_machine.":".netrw_fname." ".tmpfile
endif
let result = s:NetGetFile(readcmd, tmpfile, b:netrw_method)
let b:netrw_lastfile = choice
@@ -691,8 +703,11 @@ endfun
" ------------------------------------------------------------------------
" NetGetFile: Function to read temporary file "tfile" with command "readcmd". {{{2
" readcmd == %r : replace buffer with newly read file
" == 0r : read file at top of buffer
" == r : read file after current line
fun! s:NetGetFile(readcmd, tfile, method)
" call Dfunc("NetGetFile(readcmd<".a:readcmd.">,tfile<".a:tfile."> method<".a:method.">)")
" call Dfunc("NetGetFile(readcmd<".a:readcmd.">,tfile<".a:tfile."> method<".a:method.">)")
" get name of remote filename (ie. url and all)
let rfile= bufname("%")
@@ -717,7 +732,7 @@ fun! s:NetGetFile(readcmd, tfile, method)
" call Decho("tfile=a:tfile<".tfile.">")
endif
if a:readcmd[0] == '0'
if a:readcmd[0] == '%'
" get file into buffer
" call Dredir("ls!","starting buffer list")
@@ -749,12 +764,11 @@ fun! s:NetGetFile(readcmd, tfile, method)
let lastline= line("$")
" call Decho("exe<".a:readcmd." ".v:cmdarg." ".tfile."> line#".curline)
exe a:readcmd." ".v:cmdarg." ".tfile
let line1 = curline + 1
let line2 = line("$") - lastline + 1
let line1= curline + 1
let line2= line("$") - lastline + 1
else
" not readable
" call Dfunc("NetGetFile(readcmd<".a:readcmd.">,tfile<".a:tfile."> method<".a:method.">)")
echohl WarningMsg | echo "***netrw*** file <".tfile."> not readable"| echohl None
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
" call Dret("NetGetFile : tfile<".tfile."> not readable")
@@ -791,7 +805,7 @@ fun! netrw#NetWrite(...) range
call s:NetOptionSave()
" Get Temporary Filename {{{3
let tmpfile= tempname()
let tmpfile= escape(tempname(),g:netrw_tmpfile_escape)
if !isdirectory(substitute(tmpfile,'[^/]\+$','','e'))
echohl Error | echo "***netrw*** your ".substitute(tmpfile,'[^/]\+$','','e')." directory is missing!"
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
@@ -906,14 +920,15 @@ fun! netrw#NetWrite(...) range
let uid_machine = g:netrw_machine
endif
endif
" call Decho("executing: !".g:netrw_rcp_cmd." ".s:netrw_rcpmode." ".tmpfile." ".uid_machine.":".escape(b:netrw_fname,' ?&'))
exe g:netrw_silentxfer."!".g:netrw_rcp_cmd." ".s:netrw_rcpmode." ".tmpfile." ".uid_machine.":".escape(b:netrw_fname,' ?&')
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
" call Decho("executing: !".g:netrw_rcp_cmd." ".s:netrw_rcpmode." ".tmpfile." ".uid_machine.":".netrw_fname)
exe g:netrw_silentxfer."!".g:netrw_rcp_cmd." ".s:netrw_rcpmode." ".tmpfile." ".uid_machine.":".netrw_fname
let b:netrw_lastfile = choice
".........................................
" ftp + <.netrc>: NetWrite Method #2 {{{3
elseif b:netrw_method == 2
let netrw_fname = b:netrw_fname
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
new
setlocal ff=unix
exe "put ='".g:netrw_ftpmode."'"
@@ -941,7 +956,7 @@ fun! netrw#NetWrite(...) range
".........................................
" ftp + machine, id, passwd, filename: NetWrite Method #3 {{{3
elseif b:netrw_method == 3
let netrw_fname= b:netrw_fname
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
new
setlocal ff=unix
if exists("g:netrw_port") && g:netrw_port != ""
@@ -985,6 +1000,7 @@ fun! netrw#NetWrite(...) range
".........................................
" scp: NetWrite Method #4 {{{3
elseif b:netrw_method == 4
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
if exists("g:netrw_port") && g:netrw_port != ""
let useport= " -P ".g:netrw_port
else
@@ -992,11 +1008,11 @@ fun! netrw#NetWrite(...) range
endif
if g:netrw_cygwin == 1
let cygtmpfile=substitute(tmpfile,'^\(\a\):','/cygdrive/\1/','e')
" call Decho("executing: !".g:netrw_scp_cmd.useport." ".cygtmpfile." '".g:netrw_machine.":".escape(b:netrw_fname,' ?&')."'")
exe g:netrw_silentxfer."!".g:netrw_scp_cmd.useport." ".cygtmpfile." '".g:netrw_machine.":".escape(b:netrw_fname,' ?&')."'"
" call Decho("executing: !".g:netrw_scp_cmd.useport." ".cygtmpfile." '".g:netrw_machine.":".netrw_fname."'")
exe g:netrw_silentxfer."!".g:netrw_scp_cmd.useport." ".cygtmpfile." '".g:netrw_machine.":".netrw_fname."'"
else
" call Decho("executing: !".g:netrw_scp_cmd.useport." ".tmpfile." '".g:netrw_machine.":".escape(b:netrw_fname,' ?&')."'")
exe g:netrw_silentxfer."!".g:netrw_scp_cmd.useport." ".tmpfile." '".g:netrw_machine.":".escape(b:netrw_fname,' ?&')."'"
" call Decho("executing: !".g:netrw_scp_cmd.useport." ".tmpfile." '".g:netrw_machine.":".netrw_fname."'")
exe g:netrw_silentxfer."!".g:netrw_scp_cmd.useport." ".tmpfile." '".g:netrw_machine.":".netrw_fname."'"
endif
let b:netrw_lastfile = choice
@@ -1014,7 +1030,7 @@ fun! netrw#NetWrite(...) range
" call Decho("write via cadaver (method #6)")
" Construct execution string (four lines) which will be passed through filter
let netrw_fname= b:netrw_fname
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
new
setlocal ff=unix
if exists("g:netrw_port") && g:netrw_port != ""
@@ -1041,20 +1057,21 @@ fun! netrw#NetWrite(...) range
".........................................
" rsync: NetWrite Method #7 {{{3
elseif b:netrw_method == 7
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
if g:netrw_cygwin == 1
let cygtmpfile=substitute(tmpfile,'^\(\a\):','/cygdrive/\1/','e')
" call Decho("executing: !".g:netrw_rsync_cmd." ".cygtmpfile." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&'))
exe g:netrw_silentxfer."!".g:netrw_rsync_cmd." ".cygtmpfile." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')
" call Decho("executing: !".g:netrw_rsync_cmd." ".cygtmpfile." ".g:netrw_machine.":".netrw_fname)
exe g:netrw_silentxfer."!".g:netrw_rsync_cmd." ".cygtmpfile." ".g:netrw_machine.":".netrw_fname
else
" call Decho("executing: !".g:netrw_rsync_cmd." ".tmpfile." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&'))
exe g:netrw_silentxfer."!".g:netrw_rsync_cmd." ".tmpfile." ".g:netrw_machine.":".escape(b:netrw_fname,' ?&')
" call Decho("executing: !".g:netrw_rsync_cmd." ".tmpfile." ".g:netrw_machine.":".netrw_fname)
exe g:netrw_silentxfer."!".g:netrw_rsync_cmd." ".tmpfile." ".g:netrw_machine.":".netrw_fname
endif
let b:netrw_lastfile = choice
".........................................
" sftp: NetWrite Method #9 {{{3
elseif b:netrw_method == 9
let netrw_fname= b:netrw_fname
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
if exists("g:netrw_uid") && ( g:netrw_uid != "" )
let uid_machine = g:netrw_uid .'@'. g:netrw_machine
else
@@ -1135,6 +1152,10 @@ fun! s:NetBrowse(dirname)
" use buffer-oriented WinVars if buffer ones exist but window ones don't
call s:UseBufWinVars()
" set up menus
let b:netrw_browser_active= 1
call s:NetMenu()
" make this buffer modifiable
setlocal ma nonu nowrap
@@ -1216,14 +1237,14 @@ fun! s:NetBrowse(dirname)
" call Decho("exe file ".method."://".user.machine."/".escape(path,s:netrw_cd_escape))
exe "file ".method."://".user.machine."/".escape(path,s:netrw_cd_escape)
exe "silent doau BufReadPre ".fname
silent call netrw#NetRead(method."://".user.machine."/".path)
silent call netrw#NetRead(2,method."://".user.machine."/".path)
exe "silent doau BufReadPost ".fname
keepjumps 1d
" save certain window-oriented variables into buffer-oriented variables
call s:SetBufWinVars()
call s:NetOptionRestore()
setlocal nomod
setlocal nomod nowrap
" call Dret("NetBrowse : file<".fname.">")
return
@@ -1256,7 +1277,10 @@ fun! s:NetBrowse(dirname)
" call Decho("exe file ".escape(bufname,s:netrw_cd_escape))
exe 'file '.escape(bufname,s:netrw_cd_escape)
" call Decho("renaming file to bufname<".bufname.">")
setlocal bh=hide bt=nofile nobl nonu noswf
setlocal bt=nofile nobl nonu noswf
if g:netrw_fastbrowse >= 1
setlocal bh=hide
endif
" save current directory on directory history list
call s:NetBookmarkDir(3,expand("%"))
@@ -1276,7 +1300,7 @@ fun! s:NetBrowse(dirname)
nnoremap <buffer> <silent> <c-h> :call <SID>NetHideEdit(0)<cr>
nnoremap <buffer> <silent> i :call <SID>NetLongList(0)<cr>
nnoremap <buffer> <silent> o :call <SID>NetSplit(0)<cr>
nnoremap <buffer> <silent> O :call <SID>NetObtain()<cr>
nnoremap <buffer> <silent> O :call netrw#NetObtain()<cr>
nnoremap <buffer> <silent> P :call <SID>NetPrevWinOpen(0)<cr>
nnoremap <buffer> <silent> q :<c-u>call <SID>NetBookmarkDir(2,expand("%"))<cr>
nnoremap <buffer> <silent> r :let g:netrw_sort_direction= (g:netrw_sort_direction =~ 'n')? 'r' : 'n'<bar>exe "norm! 0"<bar>call <SID>NetBrowse(<SID>NetBrowseChgDir(expand("%"),'./'))<cr>
@@ -1475,12 +1499,16 @@ fun! s:NetBrowseChgDir(dirname,newdir)
rightb vert new
wincmd |
endif
call s:NetMenu()
" call Decho("handling a file: dirname<".dirname.">")
elseif newdir == './'
" refresh the directory list
" call Decho("refresh directory listing")
setlocal ma nobl bh=hide
setlocal ma nobl
if g:netrw_fastbrowse >= 1
setlocal bh=hide
endif
%d
elseif newdir == '../'
@@ -1795,25 +1823,23 @@ fun! netrw#NetBrowseX(fname,remote)
" seems kde systems often have gnome-open due to dependencies, even though
" gnome-open's subsidiary display tools are largely absent. Kde systems
" usually have "kicker" running, though... (tnx Mikolaj Machowski)
if !exists("s:haskicker")
" usually have "kdeinit" running, though... (tnx Mikolaj Machowski)
if !exists("s:haskdeinit")
if has("unix")
let v:shell_error=0
silent! let s:haskicker= system('ps -e') =~ 'kicker'
silent! let s:haskdeinit= system('ps -e') =~ 'kdeinit'
if v:shell_error
let s:haskicker = 0
let v:shell_error = 0
let s:haskdeinit = 0
endif
else
let s:haskicker= 0
let s:haskdeinit= 0
endif
" call Decho("setting s:haskicker=".s:haskicker)
" call Decho("setting s:haskdeinit=".s:haskdeinit)
endif
if a:remote == 1
" create a local copy
let fname= tempname().".".exten
" call Decho("create a local copy of <".a:fname."> as <".fname.">")
" call Decho("a:remote==1: create a local copy of <".a:fname."> as <".fname.">")
exe "silent keepjumps bot 1new ".a:fname
set bh=delete
exe "w! ".fname
@@ -1827,15 +1853,12 @@ fun! netrw#NetBrowseX(fname,remote)
else
let redir= &srr . "/dev/null"
endif
" call Decho("redir:".redir.":")
" call Decho("redir{".redir."} srr{".&srr."}")
if exists("g:netrw_browsex_viewer") && executable(g:netrw_browsex_viewer)
" call Decho("g:netrw_browsex_viewer<".g:netrw_browsex_viewer.">")
if g:netrw_browsex_viewer == '-'
call netrwFileHandlers#Init()
if exten != "" && exists("*netrwFileHandlers#NFH_".exten)
" call Decho("let ret= netrwFileHandlers#NFH_".exten.'("'.fname.'")')
exe "let ret= netrwFileHandlers#NFH_".exten.'("'.fname.'")'
endif
let ret= netrwFileHandlers#Invoke(exten,fname)
else
" call Decho("exe silent !".g:netrw_browsex_viewer." '".escape(fname,'%#')."' ".redir)
exe "silent !".g:netrw_browsex_viewer." '".escape(fname,'%#')."'".redir
@@ -1848,23 +1871,26 @@ fun! netrw#NetBrowseX(fname,remote)
exe 'silent !start rundll32 url.dll,FileProtocolHandler "'.escape(fname, '%#').'"'
let ret= v:shell_error
elseif has("unix") && executable("gnome-open") && !s:haskicker
elseif has("unix") && executable("gnome-open") && !s:haskdeinit
" call Decho("exe silent !gnome-open '".escape(fname,'%#')."' ".redir)
exe "silent !gnome-open '".escape(fname,'%#')."'".redir
let ret= v:shell_error
elseif has("unix") && executable("kfmclient") && s:haskicker
elseif has("unix") && executable("kfmclient") && s:haskdeinit
" call Decho("exe silent !kfmclient exec '".escape(fname,'%#')."' ".redir)
exe "silent !kfmclient exec '".escape(fname,'%#')."' ".redir
let ret= v:shell_error
else
call netrwFileHandlers#Init()
if exten != "" && exists("*netrwFileHandlers#NFH_".exten)
" call Decho("let ret= netrwFileHandlers#NFH_".exten.'("'.fname.'")')
exe "let ret= netrwFileHandlers#NFH_".exten.'("'.fname.'")'
endif
" netrwFileHandlers#Invoke() always returns 0
let ret= netrwFileHandlers#Invoke(exten,fname)
endif
" if unsuccessful, attempt netrwFileHandlers#Invoke()
if ret
let ret= netrwFileHandlers#Invoke(exten,fname)
endif
redraw!
" cleanup: remove temporary file,
@@ -2123,6 +2149,9 @@ fun! s:NetrwWideListing()
" determine qty files per line (fpl)
let w:netrw_fpl= winwidth(0)/b:netrw_cpf
if w:netrw_fpl <= 0
let w:netrw_fpl= 1
endif
" call Decho("fpl= ".winwidth(0)."/[b:netrw_cpf=".b:netrw_cpf.']='.w:netrw_fpl)
" make wide display
@@ -2376,13 +2405,40 @@ endfun
" ---------------------------------------------------------------------
" NetObtain: obtain file under cursor (for remote browsing support) {{{2
fun! s:NetObtain()
let fname= expand("<cWORD>")
fun! netrw#NetObtain(...)
" call Dfunc("NetObtain() a:0=".a:0)
if a:0==0
" no arguments -- use word under cursor
let fname= expand("<cWORD>")
" call Decho("no arguments, use <".fname.">")
elseif a:0 > 1
" more than one argument, recurse with each argument separately
" call Decho("more than 1 argument, use recursion")
let i=1
while i <= a:0
call netrw#NetObtain(a:{i})
let i=i+1
endwhile
return
else
" one argument provided
let fname = a:1
let keep_netrw_choice = exists("b:netrw_choice")? b:netrw_choice : ""
let keep_netrw_fname = exists("b:netrw_fname")? b:netrw_fname : ""
let keep_netrw_wmethod = exists("w:netrw_method")? w:netrw_method : ""
call s:NetMethod(fname)
let w:netrw_method= b:netrw_method
let fname = b:netrw_fname
" call Decho("g:netrw_scp_cmd<".g:netrw_scp_cmd.">")
" call Decho("g:netrw_machine<".g:netrw_machine.">")
" call Decho("fname<".fname.">")
endif
" NetrwStatusLine support - for obtaining support
call s:SetupNetrwStatusLine('%f %h%m%r%=%9*Obtaining '.fname)
" call Dfunc("NetObtain() method=".w:netrw_method)
" call Decho("method=".w:netrw_method)
if exists("w:netrw_method") && w:netrw_method =~ '[235]'
if executable("ftp")
let curdir = expand("%")
@@ -2419,7 +2475,7 @@ fun! s:NetObtain()
" call Decho('ftp: open '.g:netrw_machine.' '.g:netrw_port)
else
put ='open '.g:netrw_machine
" call Decho('ftp: open '.g:netrw_machine
" call Decho('ftp: open '.g:netrw_machine)
endif
if exists("g:netrw_ftp") && g:netrw_ftp == 1
@@ -2459,8 +2515,14 @@ fun! s:NetObtain()
echohl Error | echo "***netrw*** this system doesn't support ftp" | echohl None
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
endif
" restore status line
let &stl = s:netrw_users_stl
let &laststatus = s:netrw_users_ls
" restore NetMethod
if exists("keep_netrw_method")
call s:NetMethod(keep_netrw_choice)
let w:netrw_method = keep_netrw_wmethod
endif
" call Dret("NetObtain")
return
endif
@@ -2470,6 +2532,7 @@ fun! s:NetObtain()
" scp: Method#4
let curdir = expand("%")
let path = substitute(curdir,'scp://[^/]\+/','','e')
" call Decho("path<".path.">")
if exists("g:netrw_port") && g:netrw_port != ""
let useport= " -P ".g:netrw_port
else
@@ -2490,6 +2553,12 @@ fun! s:NetObtain()
let &laststatus = s:netrw_users_ls
redraw!
" restore NetMethod
if exists("keep_netrw_method")
call s:NetMethod(keep_netrw_choice)
let w:netrw_method = keep_netrw_wmethod
endif
" call Dret("NetObtain")
endfun
@@ -2569,6 +2638,77 @@ fun! s:NetPrevWinOpen(islocal)
" call Dret("NetPrevWinOpen")
endfun
" ---------------------------------------------------------------------
" NetMenu: generates the menu for gvim and netrw {{{2
fun! s:NetMenu()
if has("menu") && has("gui_running") && &go =~ 'm'
" call Dfunc("NetMenu()")
if !exists("s:netrw_menu_enabled")
let s:netrw_menu_enabled= 1
if !exists("g:DrChipTopLvlMenu")
let g:DrChipTopLvlMenu= "DrChip."
endif
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Help<tab>? ?'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Apply\ Special\ Viewer<tab>x x'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Bookmark\ Current\ Directory<tab>b Nb'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Go\ Up\ Directory<tab>- -'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Goto\ Bookmarked\ Directory<tab>B NB'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Change\ To\ Recently\ Used\ Directory<tab>u u'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Change\ To\ Subsequently\ Used\ Directory<tab>U U'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Delete\ File/Directory<tab>D D'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File\ Hiding\ List<tab>'."<ctrl-h> \<c-h>"
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File/Directory<tab><cr> '."\<cr>"
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File/Directory,\ New\ Window<tab>o o'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File/Directory,\ New\ Vertical\ Window\ <tab>v v'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.List\ Bookmarks\ and\ History<tab>q q'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Listing\ Style\ (thin-long-wide)<tab>i i'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Make\ Subdirectory<tab>d d'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Normal-Hide-Show<tab>a a'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Obtain\ File<tab>O O'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Preview\ File/Directory<tab>p p'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Previous\ Window\ Browser<tab>P P'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Refresh\ Listing<tab>'."<ctrl-l> \<c-l>"
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Rename\ File/Directory<tab>R R'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Reverse\ Sorting\ Order<tab>'."r r"
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Select\ Sorting\ Style<tab>s s'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Sorting\ Sequence\ Edit<tab>S S'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Set\ Current\ Directory<tab>c c'
exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Settings/Options<tab>:NetrwSettings '.":NetrwSettings\<cr>"
else
" call Decho("clear menus")
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Help'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Apply\ Special\ Viewer'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Bookmark\ Current\ Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Go\ Up\ Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Goto\ Bookmarked\ Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Change\ To\ Recently\ Used\ Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Change\ To\ Subsequently\ Used\ Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Delete\ File/Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File\ Hiding\ List'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Enter\ File/Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Enter\ File/Directory\ (vertical\ split)'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.List\ Bookmarks\ and\ History'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Listing\ Style\ (thin-long-wide)'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Make\ Subdirectory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Normal-Hide-Show'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Obtain\ File'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Preview\ File'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Previous\ Window\ Browser'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Refresh\ Listing'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Rename\ File/Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Reverse\ Sorting\ Order'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Select\ Sorting\ Style'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Sorting\ Sequence\ Edit'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Set\ Current\ Directory'
exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Settings/Options'
endif
" call Dret("NetMenu")
endif
endfun
" ==========================================
" Local Directory Browsing Support: {{{1
" ==========================================
@@ -2597,6 +2737,13 @@ fun! netrw#DirBrowse(dirname)
" call Dret("DirBrowse")
return
endif
if &fo =~ '[ta]'
set fo-=t
set fo-=a
echohl Warning
echo '***warning*** directory browsing and formatoptions "ta" are incompatible'
echohl None
endif
call s:NetOptionSave()
@@ -2613,6 +2760,10 @@ fun! netrw#DirBrowse(dirname)
" use buffer-oriented WinVars if buffer ones exist but window ones don't
call s:UseBufWinVars()
" set up menus
let b:netrw_browser_active= 1
call s:NetMenu()
" find buffer number of buffer named precisely the same as a:dirname
let bufnum= bufnr(escape(a:dirname,'\'))
" call Decho("findbuf: bufnum=".bufnum)
@@ -2692,7 +2843,10 @@ fun! netrw#DirBrowse(dirname)
exe 'silent! file '.escape(b:netrw_curdir,s:netrw_cd_escape)
" make this buffer not-a-file, modifiable, not line-numbered, etc
setlocal bh=hide bt=nofile nobl ma nonu noswf
setlocal bt=nofile nobl ma nonu noswf nowrap
if g:netrw_fastbrowse >= 2
setlocal bh=hide
endif
keepalt silent! %d
" ---------------------------
@@ -2845,7 +2999,10 @@ fun! netrw#DirBrowse(dirname)
" save certain window-oriented variables into buffer-oriented variables
call s:SetBufWinVars()
call s:NetOptionRestore()
setlocal noma nomod nonu bh=hide nobl
setlocal noma nomod nonu nobl nowrap
if g:netrw_fastbrowse >= 2
setlocal bh=hide
endif
" call Dret("DirBrowse : file<".expand("%:p")."> bufname<".bufname("%").">")
endfun
@@ -2981,6 +3138,7 @@ fun! s:LocalBrowseChgDir(dirname,newdir,...)
wincmd |
endif
exe "e! ".escape(dirname,s:netrw_cd_escape)
call s:NetMenu()
set ma nomod
endif
@@ -3440,6 +3598,7 @@ fun! s:NetMethod(choice) " globals: method machine id passwd fname
let g:netrw_machine = ""
let b:netrw_fname = ""
let g:netrw_port = ""
let g:netrw_choice = a:choice
" Patterns:
" mipf : a:machine a:id password filename Use ftp
@@ -3618,7 +3777,7 @@ fun! s:NetMethod(choice) " globals: method machine id passwd fname
" call Decho("g:netrw_passwd <".g:netrw_passwd.">")
" endif "Decho
" call Decho("b:netrw_fname <".b:netrw_fname.">")
" call Dret("NetMethod")
" call Dret("NetMethod : b:netrw_method=".b:netrw_method)
endfun
" ------------------------------------------------------------------------
@@ -3666,14 +3825,18 @@ fun! s:NetOptionSave()
" Get Temporary Filename
let w:aikeep = &ai
" record autochdir setting and then insure its unset (tnx to David Fishburn)
if has("netbeans_intg") || has("sun_workshop")
let w:acdkeep = &autochdir
set noautochdir
if &acd && (has("netbeans_intg") || has("sun_workshop"))
set noacd
echohl Warning | echomsg "***warning*** directory browsing and the acd setting are incompatible" |echohl None
endif
let w:fokeep = &fo
let w:aikeep = &ai
let w:cikeep = &ci
let w:cinkeep = &cin
let w:cinokeep = &cino
let w:comkeep = &com
let w:cpokeep = &cpo
let w:magickeep = &magic
if !g:netrw_keepdir
let w:dirkeep = getcwd()
endif
@@ -3684,7 +3847,7 @@ fun! s:NetOptionSave()
setlocal cino =
setlocal com =
setlocal cpo -=aA
setlocal nocin noai nospell
setlocal nocin noai noci magic nospell fo=nroql2
setlocal tw =0
setlocal report=10000
if has("win32") && !has("win95")
@@ -3707,16 +3870,16 @@ fun! s:NetOptionRestore()
unlet w:netoptionsave
if exists("w:aikeep")| let &ai= w:aikeep|endif
if (has("netbeans_intg") || has("sun_workshop")) && exists("w:acdkeep")
let &acd= w:acdkeep
unlet w:acdkeep
endif
if exists("w:aikeep") |let &ai = w:aikeep |unlet w:aikeep |endif
if exists("w:cikeep") |let &ci = w:cikeep |unlet w:cikeep |endif
if exists("w:cinkeep") |let &cin = w:cinkeep |unlet w:cinkeep |endif
if exists("w:cinokeep") |let &cino = w:cinokeep |unlet w:cinokeep |endif
if exists("w:comkeep") |let &com = w:comkeep |unlet w:comkeep |endif
if exists("w:cpokeep") |let &cpo = w:cpokeep |unlet w:cpokeep |endif
if exists("w:dirkeep") |exe "lcd ".w:dirkeep |unlet w:dirkeep |endif
if exists("w:fokeep") |let &fo = w:fokeep |unlet w:fokeep |endif
if exists("w:gdkeep") |let &gd = w:gdkeep |unlet w:gdkeep |endif
if exists("w:magic") |let &magic = w:magic |unlet w:magic |endif
if exists("w:repkeep") |let &report = w:repkeep |unlet w:repkeep |endif
if exists("w:spellkeep")|let &spell = w:spellkeep |unlet w:spellkeep|endif
if exists("w:twkeep") |let &tw = w:twkeep |unlet w:twkeep |endif

View File

@@ -96,6 +96,7 @@ fun! netrwSettings#NetrwSettings()
put = 'let g:netrw_browsex_viewer = (not defined)'
endif
put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax
put = 'let g:netrw_fastbrowse = '.g:netrw_fastbrowse
put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject
put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd
put = 'let g:netrw_hide = '.g:netrw_hide

View File

@@ -1,4 +1,4 @@
*os_mac.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
*os_mac.txt* For Vim version 7.0aa. Last change: 2006 Mar 09
VIM REFERENCE MANUAL by Bram Moolenaar et al.
@@ -33,9 +33,10 @@ Indianapolis IN 46220 USA
==============================================================================
1. Filename Convention *mac-filename*
You can use either the unix or mac path separator or a mix of both. In order
to determine if the specified filename is relative to the current folder or
absolute (i.e. relative to the "Desktop"), the following algorithm is used:
Starting with Vim version 7 you can just use the unix path separators with
Vim. In order to determine if the specified filename is relative to the
current folder or absolute (i.e. relative to the "Desktop"), the following
algorithm is used:
If the path start by a "/", the path is absolute
If the path start by a ":", the path is relative
@@ -58,10 +59,16 @@ You can use the |$VIM| and |$VIMRUNTIME| variable. >
==============================================================================
2. .vimrc and .vim files *mac-vimfile*
On the Mac files starting with a dot "." are discouraged, thus the rc files
are named "vimrc" or "_vimrc" and "gvimrc" or "_gvimrc". These files can be in
any format (mac, dos or unix). Vim can handle any file format when the
|'nocompatible'| option is set, otherwise it will only handle mac format
It is recommended to use Unix style line separators for Vim scripts, thus a
single newline character.
When starting up Vim will load the $VIMRUNTIME/macmap.vim script to define
default command-key mappings.
On older systems files starting with a dot "." are discouraged, thus the rc
files are named "vimrc" or "_vimrc" and "gvimrc" or "_gvimrc". These files
can be in any format (mac, dos or unix). Vim can handle any file format when
the |'nocompatible'| option is set, otherwise it will only handle mac format
files.
==============================================================================
@@ -80,14 +87,6 @@ A: Assuming that Vim.app is located in /Applications:
==============================================================================
4. Mac Lack *mac-lack*
The filenames containing both ":" and "/" are sometimes misinterpreted. (just
re-execute the command)
Scrollbar are not scrolling live, and when only the arrow or scroll area, a
limit of 32 line or page is scrolled.
Syntax highlighting works on 68k Macs but is _really_ slow.
In a terminal CTRL-^ needs to be entered as Shift-Control-6. CTRL-@ as
Shift-Control-2.

View File

@@ -1,4 +1,4 @@
*pi_netrw.txt* For Vim version 7.0. Last change: Jan 27, 2006
*pi_netrw.txt* For Vim version 7.0. Last change: Mar 09, 2006
VIM REFERENCE MANUAL by Charles E. Campbell, Jr.
@@ -12,7 +12,7 @@
1. Starting With Netrw.................................|netrw-start|
2. Netrw Reference......................................|netrw-ref|
CONTROLLING EXTERNAL APPLICTIONS...................|netrw-externapp|
CONTROLLING EXTERNAL APPLICATIONS..................|netrw-externapp|
READING............................................|netrw-read|
WRITING............................................|netrw-write|
DIRECTORY LISTING..................................|netrw-dirlist|
@@ -32,6 +32,7 @@
Quick Reference Commands Table.....................|netrw-browse-cmds|
Netrw Browser Variables............................|netrw-browse-var|
Introduction To Directory Browsing.................|netrw-browse-intro|
Netrw Browsing And Option Incompatibilities........|netrw-incompatible|
Directory Exploring Commands.......................|netrw-explore|
Refreshing The Listing.............................|netrw-ctrl-l|
Going Up...........................................|netrw--|
@@ -39,7 +40,7 @@
Obtaining A File...................................|netrw-O|
Thin, Long, and Wide Listings......................|netrw-i|
Making A New Directory.............................|netrw-d|
Deleting Files Or Directories......................|netrw-delete|
Deleting Files Or Directories......................|netrw-D|
Renaming Files Or Directories......................|netrw-move|
Hiding Files Or Directories........................|netrw-a|
Edit File Or Directory Hiding List.................|netrw-ctrl-h|
@@ -132,7 +133,7 @@ section, |netrw-externapp|.
==============================================================================
2. Netrw Reference *netrw-ref*
CONTROLLING EXTERNAL APPLICTIONS *netrw-externapp*
CONTROLLING EXTERNAL APPLICATIONS *netrw-externapp*
Protocol Variable Default Value
-------- ---------------- -------------
@@ -719,6 +720,7 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
=0: re-using the same window
=1: horizontally splitting the window first
=2: vertically splitting the window first
*g:netrw_browsex_viewer* specify user's preference for a viewer: >
"kfmclient exec"
"gnome-open"
@@ -727,7 +729,27 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
< is used, then netrwFileHandler() will look for
a script/function to handle the given
extension. (see |netrw_filehandler|).
<
*g:netrw_fastbrowse* =0: slow speed browsing, never re-use
directory listings; always obtain
directory listings.
=1: medium speed browsing, re-use directory
listings only when remote browsing.
(default value)
=2: fast browsing, only obtains directory
listings when the directory hasn't been
seen before (or |netrw-ctrl-l| is used).
Fast browsing retains old directory listing
buffers so that they don't need to be
re-acquired. This feature is especially
important for remote browsing. However, if
a file is introduced or deleted into or from
such directories, the old directory buffer
becomes out-of-date. One may always refresh
such a directory listing with |netrw-ctrl-l|.
This option gives the choice of the trade-off
between accuracy and speed to the user.
*g:netrw_ftp_browse_reject* ftp can produce a number of errors and warnings
that can show up as "directories" and "files"
in the listing. This pattern is used to
@@ -819,6 +841,12 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
*g:netrw_winsize* specify initial size of new o/v windows
default: ""
*g:DrChipTopLvlMenu* This variable specifies the top level
submenu name; by default, its "DrChip.".
If you wish to change this, do so in your
.vimrc. It affects all of my plugins which
have menus.
INTRODUCTION TO DIRECTORY BROWSING *netrw-browse-intro*
Netrw supports the browsing of directories on the local system and on remote
@@ -843,6 +871,18 @@ For local directories, the trailing slash is not required.
If you'd like to avoid entering the password in for remote directory listings
with ssh or scp, see |netrw-listhack|.
NETRW BROWSING AND OPTION INCOMPATIBILITIES *netrw-incompatible*
Netrw will not work properly with >
:set acd
:set fo=...ta...
<
If either of these options are present when browsing is attempted, netrw
will change them by using noacd and removing the ta suboptions from the
|formatoptions|.
*netrw-explore* *netrw-pexplore*
*netrw-hexplore* *netrw-sexplore*
DIRECTORY EXPLORING COMMANDS *netrw-nexplore* *netrw-vexplore*
@@ -1094,9 +1134,9 @@ One may use a preview window (currently only for local browsing) by using the
PREVIOUS WINDOW *netrw-P* *netrw-prvwin*
To edit a file or directory in the previously used window (see :he |CTRL-W_P|),
To edit a file or directory in the previously used window (see :he |ctrl-w_p|),
press a "P". If there's only one window, then the one window will be
horizontally split (above/below splitting is controlled by |g:netrw_alto|,
horizontally split (above/below splitting is controlled by |g:netrw-alto|,
and its initial size is controlled by |g:netrw_winsize|).
If there's more than one window, the previous window will be re-used on
@@ -1399,6 +1439,11 @@ which is loaded automatically at startup (assuming :set nocp).
==============================================================================
11. History *netrw-history* {{{1
v79: * directories are now displayed with nowrap
* (bugfix) if the column width was smaller than the largest
file's name, then netrw would hang when using wide-listing
mode - fixed
* g:netrw_fastbrowse introduced
v78: * progress has been made on allowing spaces inside directory
names for remote work (reading, writing, browsing). (scp)
v77: * Mikolaj Machowski fixed a bug in a substitute command

View File

@@ -4117,6 +4117,7 @@ Ruby if_ruby.txt /*Ruby*
Russian russian.txt /*Russian*
S change.txt /*S*
SHELL starting.txt /*SHELL*
SQLSetType sql.txt /*SQLSetType*
Select visual.txt /*Select*
Select-mode visual.txt /*Select-mode*
Select-mode-mapping visual.txt /*Select-mode-mapping*
@@ -4132,6 +4133,7 @@ Syntax autocmd.txt /*Syntax*
T motion.txt /*T*
TCL if_tcl.txt /*TCL*
TERM starting.txt /*TERM*
TSQL sql.txt /*TSQL*
TTpro-telnet syntax.txt /*TTpro-telnet*
Tab intro.txt /*Tab*
TabEnter autocmd.txt /*TabEnter*
@@ -4139,6 +4141,7 @@ TabLeave autocmd.txt /*TabLeave*
Tcl if_tcl.txt /*Tcl*
TermChanged autocmd.txt /*TermChanged*
TermResponse autocmd.txt /*TermResponse*
Transact-SQL sql.txt /*Transact-SQL*
U undo.txt /*U*
UTF-8 mbyte.txt /*UTF-8*
UTF8-xterm mbyte.txt /*UTF8-xterm*
@@ -5217,7 +5220,9 @@ ft-sgml-syntax syntax.txt /*ft-sgml-syntax*
ft-sh-syntax syntax.txt /*ft-sh-syntax*
ft-spec-plugin filetype.txt /*ft-spec-plugin*
ft-spup-syntax syntax.txt /*ft-spup-syntax*
ft-sql filetype.txt /*ft-sql*
ft-sql-syntax syntax.txt /*ft-sql-syntax*
ft-sqlanywhere-syntax syntax.txt /*ft-sqlanywhere-syntax*
ft-sqlinformix-syntax syntax.txt /*ft-sqlinformix-syntax*
ft-syntax-omni insert.txt /*ft-syntax-omni*
ft-tcsh-syntax syntax.txt /*ft-tcsh-syntax*
@@ -5260,12 +5265,14 @@ g'a motion.txt /*g'a*
g, motion.txt /*g,*
g0 motion.txt /*g0*
g8 various.txt /*g8*
g:DrChipTopLvlMenu pi_netrw.txt /*g:DrChipTopLvlMenu*
g:netrw_alto pi_netrw.txt /*g:netrw_alto*
g:netrw_altv pi_netrw.txt /*g:netrw_altv*
g:netrw_browse_split pi_netrw.txt /*g:netrw_browse_split*
g:netrw_browsex_viewer pi_netrw.txt /*g:netrw_browsex_viewer*
g:netrw_cygwin pi_netrw.txt /*g:netrw_cygwin*
g:netrw_dav_cmd pi_netrw.txt /*g:netrw_dav_cmd*
g:netrw_fastbrowse pi_netrw.txt /*g:netrw_fastbrowse*
g:netrw_fetch_cmd pi_netrw.txt /*g:netrw_fetch_cmd*
g:netrw_ftp pi_netrw.txt /*g:netrw_ftp*
g:netrw_ftp_browse_reject pi_netrw.txt /*g:netrw_ftp_browse_reject*
@@ -5484,7 +5491,6 @@ hebrew hebrew.txt /*hebrew*
hebrew.txt hebrew.txt /*hebrew.txt*
help various.txt /*help*
help-context help.txt /*help-context*
help-tags tags 1
help-translated various.txt /*help-translated*
help-xterm-window various.txt /*help-xterm-window*
help.txt help.txt /*help.txt*
@@ -5734,6 +5740,7 @@ index() eval.txt /*index()*
index.txt index.txt /*index.txt*
info-message starting.txt /*info-message*
inform.vim syntax.txt /*inform.vim*
informix sql.txt /*informix*
initialization starting.txt /*initialization*
input() eval.txt /*input()*
inputdialog() eval.txt /*inputdialog()*
@@ -6019,6 +6026,7 @@ multilang-messages mlang.txt /*multilang-messages*
multilang-scripts mlang.txt /*multilang-scripts*
myfiletypefile syntax.txt /*myfiletypefile*
myscriptsfile syntax.txt /*myscriptsfile*
mysql sql.txt /*mysql*
mysyntaxfile syntax.txt /*mysyntaxfile*
mysyntaxfile-add syntax.txt /*mysyntaxfile-add*
mysyntaxfile-replace syntax.txt /*mysyntaxfile-replace*
@@ -6107,6 +6115,7 @@ netrw-hexplore pi_netrw.txt /*netrw-hexplore*
netrw-history pi_netrw.txt /*netrw-history*
netrw-horiz pi_netrw.txt /*netrw-horiz*
netrw-i pi_netrw.txt /*netrw-i*
netrw-incompatible pi_netrw.txt /*netrw-incompatible*
netrw-list pi_netrw.txt /*netrw-list*
netrw-listbookmark pi_netrw.txt /*netrw-listbookmark*
netrw-listhack pi_netrw.txt /*netrw-listhack*
@@ -6269,6 +6278,7 @@ option-summary options.txt /*option-summary*
options options.txt /*options*
options-changed version5.txt /*options-changed*
options.txt options.txt /*options.txt*
oracle sql.txt /*oracle*
os2 os_os2.txt /*os2*
os2ansi os_os2.txt /*os2ansi*
os390 os_390.txt /*os390*
@@ -6341,6 +6351,7 @@ 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*
plsql sql.txt /*plsql*
plugin usr_05.txt /*plugin*
plugin-details filetype.txt /*plugin-details*
plugin-filetype usr_41.txt /*plugin-filetype*
@@ -6356,6 +6367,7 @@ ports-6 version6.txt /*ports-6*
posix vi_diff.txt /*posix*
posix-compliance vi_diff.txt /*posix-compliance*
posix-screen-size vi_diff.txt /*posix-screen-size*
postgress sql.txt /*postgress*
postscr.vim syntax.txt /*postscr.vim*
postscript-cjk-printing print.txt /*postscript-cjk-printing*
postscript-print-encoding print.txt /*postscript-print-encoding*
@@ -6379,6 +6391,7 @@ profiling repeat.txt /*profiling*
profiling-variable eval.txt /*profiling-variable*
progname-variable eval.txt /*progname-variable*
progress.vim syntax.txt /*progress.vim*
psql sql.txt /*psql*
ptcap.vim syntax.txt /*ptcap.vim*
pterm-mouse options.txt /*pterm-mouse*
pumvisible() eval.txt /*pumvisible()*
@@ -6769,8 +6782,23 @@ sponsor-faq sponsor.txt /*sponsor-faq*
sponsor.txt sponsor.txt /*sponsor.txt*
spoon os_unix.txt /*spoon*
spup.vim syntax.txt /*spup.vim*
sql-adding-dialects sql.txt /*sql-adding-dialects*
sql-dialects sql.txt /*sql-dialects*
sql-macros sql.txt /*sql-macros*
sql-matchit sql.txt /*sql-matchit*
sql-navigation sql.txt /*sql-navigation*
sql-object-motions sql.txt /*sql-object-motions*
sql-predefined-objects sql.txt /*sql-predefined-objects*
sql-type-default sql.txt /*sql-type-default*
sql-types sql.txt /*sql-types*
sql.txt sql.txt /*sql.txt*
sql.vim syntax.txt /*sql.vim*
sqlanywhere sql.txt /*sqlanywhere*
sqlanywhere.vim syntax.txt /*sqlanywhere.vim*
sqlinformix.vim syntax.txt /*sqlinformix.vim*
sqlj sql.txt /*sqlj*
sqlserver sql.txt /*sqlserver*
sqlsettype sql.txt /*sqlsettype*
sscanf eval.txt /*sscanf*
standard-plugin usr_05.txt /*standard-plugin*
standard-plugin-list help.txt /*standard-plugin-list*
@@ -6824,6 +6852,7 @@ swapchoice-variable eval.txt /*swapchoice-variable*
swapcommand-variable eval.txt /*swapcommand-variable*
swapfile-changed version4.txt /*swapfile-changed*
swapname-variable eval.txt /*swapname-variable*
sybase sql.txt /*sybase*
syn-sync-grouphere syntax.txt /*syn-sync-grouphere*
syn-sync-groupthere syntax.txt /*syn-sync-groupthere*
syn-sync-linecont syntax.txt /*syn-sync-linecont*

View File

@@ -2,7 +2,7 @@
" You can also use this as a start for your own set of menus.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2006 Mar 05
" Last Change: 2006 Mar 09
" Note that ":an" (short for ":anoremenu") is often used to make a menu work
" in all modes and avoid side effects from mappings defined by the user.
@@ -131,41 +131,6 @@ an 10.600 &File.-SEP4- <Nop>
an 10.610 &File.Sa&ve-Exit<Tab>:wqa :confirm wqa<CR>
an 10.620 &File.E&xit<Tab>:qa :confirm qa<CR>
" Pasting blockwise and linewise selections is not possible in Insert and
" Visual mode without the +virtualedit feature. They are pasted as if they
" were characterwise instead. Add to that some tricks to leave the cursor in
" the right position, also for "gi".
" Note: the same stuff appears in mswin.vim.
if has("virtualedit")
let s:paste_cmd = ":call <SID>Paste()<CR>"
func! <SID>Paste()
let ove = &ve
set ve=all
normal! `^
if @+ != ''
normal! "+gP
endif
let c = col(".")
normal! i
if col(".") < c " compensate for i<ESC> moving the cursor left
normal! l
endif
let &ve = ove
endfunc
else
let s:paste_cmd = "\"=@+.'xy'<CR>gPFx\"_2x"
endif
" Define the string to use for items that are present both in Edit, Popup and
" Toolbar menu.
if has("virtualedit")
let s:paste_v_cmd = '"-c<Esc>' . s:paste_cmd
let s:paste_i_cmd = '<Esc>' . s:paste_cmd . 'gi'
else
let s:paste_v_cmd = '"-c<Esc>gix<Esc>' . s:paste_cmd . '"_x'
let s:paste_i_cmd = 'x<Esc>' . s:paste_cmd . '"_s'
endif
func! <SID>SelectAll()
exe "norm gg" . (&slm == "" ? "VG" : "gH\<C-O>G")
endfunc
@@ -182,8 +147,8 @@ vnoremenu 20.350 &Edit.&Copy<Tab>"+y "+y
cnoremenu 20.350 &Edit.&Copy<Tab>"+y <C-Y>
nnoremenu 20.360 &Edit.&Paste<Tab>"+gP "+gP
cnoremenu &Edit.&Paste<Tab>"+gP <C-R>+
exe 'vnoremenu <script> &Edit.&Paste<Tab>"+gP ' . s:paste_v_cmd
exe 'inoremenu <script> &Edit.&Paste<Tab>"+gP ' . s:paste_i_cmd
exe 'vnoremenu <script> &Edit.&Paste<Tab>"+gP ' . paste#paste_cmd['v']
exe 'inoremenu <script> &Edit.&Paste<Tab>"+gP ' . paste#paste_cmd['i']
nnoremenu 20.370 &Edit.Put\ &Before<Tab>[p [p
inoremenu &Edit.Put\ &Before<Tab>[p <C-O>[p
nnoremenu 20.380 &Edit.Put\ &After<Tab>]p ]p
@@ -199,10 +164,10 @@ an 20.405 &Edit.-SEP2- <Nop>
if has("win32") || has("win16") || has("gui_gtk") || has("gui_kde") || has("gui_motif")
an 20.410 &Edit.&Find\.\.\. :promptfind<CR>
vunmenu &Edit.&Find\.\.\.
vnoremenu <silent> &Edit.&Find\.\.\. y:call <SID>FixFText()<CR>:promptfind <C-R>"<CR>
vnoremenu <silent> &Edit.&Find\.\.\. y:promptfind <C-R>=<SID>FixFText()<CR><CR>
an 20.420 &Edit.Find\ and\ Rep&lace\.\.\. :promptrepl<CR>
vunmenu &Edit.Find\ and\ Rep&lace\.\.\.
vnoremenu <silent> &Edit.Find\ and\ Rep&lace\.\.\. y:call <SID>FixFText()<CR>:promptrepl <C-R>"<CR>
vnoremenu <silent> &Edit.Find\ and\ Rep&lace\.\.\. y:promptrepl <C-R>=<SID>FixFText()<CR><CR>
else
an 20.410 &Edit.&Find<Tab>/ /
an 20.420 &Edit.Find\ and\ Rep&lace<Tab>:%s :%s/
@@ -215,7 +180,7 @@ an 20.430 &Edit.Settings\ &Window :options<CR>
fun! s:FixFText()
" Fix text in nameless register to be used with :promptfind.
let @" = substitute(@", "[\r\n]", '\\n', 'g')
return substitute(@", "[\r\n]", '\\n', 'g')
endfun
" Edit/Global Settings
@@ -851,8 +816,8 @@ vnoremenu 1.30 PopUp.&Copy "+y
cnoremenu 1.30 PopUp.&Copy <C-Y>
nnoremenu 1.40 PopUp.&Paste "+gP
cnoremenu 1.40 PopUp.&Paste <C-R>+
exe 'vnoremenu <script> 1.40 PopUp.&Paste ' . s:paste_v_cmd
exe 'inoremenu <script> 1.40 PopUp.&Paste ' . s:paste_i_cmd
exe 'vnoremenu <script> 1.40 PopUp.&Paste ' . paste#paste_cmd['v']
exe 'inoremenu <script> 1.40 PopUp.&Paste ' . paste#paste_cmd['i']
vnoremenu 1.50 PopUp.&Delete x
an 1.55 PopUp.-SEP2- <Nop>
vnoremenu 1.60 PopUp.Select\ Blockwise <C-V>
@@ -976,14 +941,14 @@ if has("toolbar")
cnoremenu 1.80 ToolBar.Copy <C-Y>
nnoremenu 1.90 ToolBar.Paste "+gP
cnoremenu ToolBar.Paste <C-R>+
exe 'vnoremenu <script> ToolBar.Paste ' . s:paste_v_cmd
exe 'inoremenu <script> ToolBar.Paste ' . s:paste_i_cmd
exe 'vnoremenu <script> ToolBar.Paste ' . paste#paste_cmd['v']
exe 'inoremenu <script> ToolBar.Paste ' . paste#paste_cmd['i']
if !has("gui_athena")
an 1.95 ToolBar.-sep3- <Nop>
an 1.100 ToolBar.Replace :promptrepl<CR>
vunmenu ToolBar.Replace
vnoremenu ToolBar.Replace y:promptrepl <C-R>"<CR>
vnoremenu ToolBar.Replace y:promptrepl <C-R>=<SID>FixFText()<CR><CR>
an 1.110 ToolBar.FindNext n
an 1.120 ToolBar.FindPrev N
endif
@@ -1099,8 +1064,6 @@ an 50.730 &Syntax.&Convert\ to\ HTML :runtime syntax/2html.vim<CR>
endif " !exists("did_install_syntax_menu")
unlet! s:paste_i_cmd s:paste_v_cmd s:paste_cmd
" Restore the previous value of 'cpoptions'.
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,706 @@
" Vim syntax file
" Language: SQL, Adaptive Server Anywhere
" Maintainer: David Fishburn <fishburn at ianywhere dot com>
" Last Change: Thu Sep 15 2005 10:30:09 AM
" Version: 9.0.2
" Description: Updated to Adaptive Server Anywhere 9.0.2
" Updated to Adaptive Server Anywhere 9.0.1
" Updated to Adaptive Server Anywhere 9.0.0
"
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
syn case ignore
" The SQL reserved words, defined as keywords.
syn keyword sqlSpecial false null true
" common functions
syn keyword sqlFunction count sum avg min max debug_eng isnull
syn keyword sqlFunction greater lesser argn string ymd todate
syn keyword sqlFunction totimestamp date today now utc_now
syn keyword sqlFunction number identity years months weeks days
syn keyword sqlFunction hours minutes seconds second minute hour
syn keyword sqlFunction day month year dow date_format substr
syn keyword sqlFunction substring byte_substr length byte_length
syn keyword sqlFunction datalength ifnull evaluate list
syn keyword sqlFunction soundex similar difference like_start
syn keyword sqlFunction like_end regexp_compile
syn keyword sqlFunction regexp_compile_patindex remainder abs
syn keyword sqlFunction graphical_plan plan explanation ulplan
syn keyword sqlFunction graphical_ulplan long_ulplan
syn keyword sqlFunction short_ulplan rewrite watcomsql
syn keyword sqlFunction transactsql dialect estimate
syn keyword sqlFunction estimate_source index_estimate
syn keyword sqlFunction experience_estimate traceback wsql_state
syn keyword sqlFunction lang_message dateadd datediff datepart
syn keyword sqlFunction datename dayname monthname quarter
syn keyword sqlFunction tsequal hextoint inttohex rand textptr
syn keyword sqlFunction rowid grouping stddev variance rank
syn keyword sqlFunction dense_rank density percent_rank user_name
syn keyword sqlFunction user_id str stuff char_length nullif
syn keyword sqlFunction sortkey compare ts_index_statistics
syn keyword sqlFunction ts_table_statistics isdate isnumeric
syn keyword sqlFunction get_identity lookup newid uuidtostr
syn keyword sqlFunction strtouuid varexists
" 9.0.1 functions
syn keyword sqlFunction acos asin atan atn2 cast ceiling convert cos cot
syn keyword sqlFunction char_length coalesce dateformat datetime degrees exp
syn keyword sqlFunction floor getdate insertstr
syn keyword sqlFunction log log10 lower mod pi power
syn keyword sqlFunction property radians replicate round sign sin
syn keyword sqlFunction sqldialect tan truncate truncnum
syn keyword sqlFunction base64_encode base64_decode
syn keyword sqlFunction hash compress decompress encrypt decrypt
" string functions
syn keyword sqlFunction ascii char left ltrim repeat
syn keyword sqlFunction space right rtrim trim lcase ucase
syn keyword sqlFunction locate charindex patindex replace
syn keyword sqlFunction errormsg csconvert
" property functions
syn keyword sqlFunction db_id db_name property_name
syn keyword sqlFunction property_description property_number
syn keyword sqlFunction next_connection next_database property
syn keyword sqlFunction connection_property db_property db_extended_property
syn keyword sqlFunction event_parmeter event_condition event_condition_name
" sa_ procedures
syn keyword sqlFunction sa_add_index_consultant_analysis
syn keyword sqlFunction sa_add_workload_query
syn keyword sqlFunction sa_app_deregister
syn keyword sqlFunction sa_app_get_infoStr
syn keyword sqlFunction sa_app_get_status
syn keyword sqlFunction sa_app_register
syn keyword sqlFunction sa_app_registration_unlock
syn keyword sqlFunction sa_app_set_infoStr
syn keyword sqlFunction sa_audit_string
syn keyword sqlFunction sa_check_commit
syn keyword sqlFunction sa_checkpoint_execute
syn keyword sqlFunction sa_conn_activity
syn keyword sqlFunction sa_conn_compression_info
syn keyword sqlFunction sa_conn_deregister
syn keyword sqlFunction sa_conn_info
syn keyword sqlFunction sa_conn_properties
syn keyword sqlFunction sa_conn_properties_by_conn
syn keyword sqlFunction sa_conn_properties_by_name
syn keyword sqlFunction sa_conn_register
syn keyword sqlFunction sa_conn_set_status
syn keyword sqlFunction sa_create_analysis_from_query
syn keyword sqlFunction sa_db_info
syn keyword sqlFunction sa_db_properties
syn keyword sqlFunction sa_disable_auditing_type
syn keyword sqlFunction sa_disable_index
syn keyword sqlFunction sa_disk_free_space
syn keyword sqlFunction sa_enable_auditing_type
syn keyword sqlFunction sa_enable_index
syn keyword sqlFunction sa_end_forward_to
syn keyword sqlFunction sa_eng_properties
syn keyword sqlFunction sa_event_schedules
syn keyword sqlFunction sa_exec_script
syn keyword sqlFunction sa_flush_cache
syn keyword sqlFunction sa_flush_statistics
syn keyword sqlFunction sa_forward_to
syn keyword sqlFunction sa_get_dtt
syn keyword sqlFunction sa_get_histogram
syn keyword sqlFunction sa_get_request_profile
syn keyword sqlFunction sa_get_request_profile_sub
syn keyword sqlFunction sa_get_request_times
syn keyword sqlFunction sa_get_server_messages
syn keyword sqlFunction sa_get_simulated_scale_factors
syn keyword sqlFunction sa_get_workload_capture_status
syn keyword sqlFunction sa_index_density
syn keyword sqlFunction sa_index_levels
syn keyword sqlFunction sa_index_statistics
syn keyword sqlFunction sa_internal_alter_index_ability
syn keyword sqlFunction sa_internal_create_analysis_from_query
syn keyword sqlFunction sa_internal_disk_free_space
syn keyword sqlFunction sa_internal_get_dtt
syn keyword sqlFunction sa_internal_get_histogram
syn keyword sqlFunction sa_internal_get_request_times
syn keyword sqlFunction sa_internal_get_simulated_scale_factors
syn keyword sqlFunction sa_internal_get_workload_capture_status
syn keyword sqlFunction sa_internal_index_density
syn keyword sqlFunction sa_internal_index_levels
syn keyword sqlFunction sa_internal_index_statistics
syn keyword sqlFunction sa_internal_java_loaded_classes
syn keyword sqlFunction sa_internal_locks
syn keyword sqlFunction sa_internal_pause_workload_capture
syn keyword sqlFunction sa_internal_procedure_profile
syn keyword sqlFunction sa_internal_procedure_profile_summary
syn keyword sqlFunction sa_internal_read_backup_history
syn keyword sqlFunction sa_internal_recommend_indexes
syn keyword sqlFunction sa_internal_reset_identity
syn keyword sqlFunction sa_internal_resume_workload_capture
syn keyword sqlFunction sa_internal_start_workload_capture
syn keyword sqlFunction sa_internal_stop_index_consultant
syn keyword sqlFunction sa_internal_stop_workload_capture
syn keyword sqlFunction sa_internal_table_fragmentation
syn keyword sqlFunction sa_internal_table_page_usage
syn keyword sqlFunction sa_internal_table_stats
syn keyword sqlFunction sa_internal_virtual_sysindex
syn keyword sqlFunction sa_internal_virtual_sysixcol
syn keyword sqlFunction sa_java_loaded_classes
syn keyword sqlFunction sa_jdk_version
syn keyword sqlFunction sa_locks
syn keyword sqlFunction sa_make_object
syn keyword sqlFunction sa_pause_workload_capture
syn keyword sqlFunction sa_proc_debug_attach_to_connection
syn keyword sqlFunction sa_proc_debug_connect
syn keyword sqlFunction sa_proc_debug_detach_from_connection
syn keyword sqlFunction sa_proc_debug_disconnect
syn keyword sqlFunction sa_proc_debug_get_connection_name
syn keyword sqlFunction sa_proc_debug_release_connection
syn keyword sqlFunction sa_proc_debug_request
syn keyword sqlFunction sa_proc_debug_version
syn keyword sqlFunction sa_proc_debug_wait_for_connection
syn keyword sqlFunction sa_procedure_profile
syn keyword sqlFunction sa_procedure_profile_summary
syn keyword sqlFunction sa_read_backup_history
syn keyword sqlFunction sa_recommend_indexes
syn keyword sqlFunction sa_recompile_views
syn keyword sqlFunction sa_remove_index_consultant_analysis
syn keyword sqlFunction sa_remove_index_consultant_workload
syn keyword sqlFunction sa_reset_identity
syn keyword sqlFunction sa_resume_workload_capture
syn keyword sqlFunction sa_server_option
syn keyword sqlFunction sa_set_simulated_scale_factor
syn keyword sqlFunction sa_setremoteuser
syn keyword sqlFunction sa_setsubscription
syn keyword sqlFunction sa_start_recording_commits
syn keyword sqlFunction sa_start_workload_capture
syn keyword sqlFunction sa_statement_text
syn keyword sqlFunction sa_stop_index_consultant
syn keyword sqlFunction sa_stop_recording_commits
syn keyword sqlFunction sa_stop_workload_capture
syn keyword sqlFunction sa_sync
syn keyword sqlFunction sa_sync_sub
syn keyword sqlFunction sa_table_fragmentation
syn keyword sqlFunction sa_table_page_usage
syn keyword sqlFunction sa_table_stats
syn keyword sqlFunction sa_update_index_consultant_workload
syn keyword sqlFunction sa_validate
syn keyword sqlFunction sa_virtual_sysindex
syn keyword sqlFunction sa_virtual_sysixcol
" sp_ procedures
syn keyword sqlFunction sp_addalias
syn keyword sqlFunction sp_addauditrecord
syn keyword sqlFunction sp_adddumpdevice
syn keyword sqlFunction sp_addgroup
syn keyword sqlFunction sp_addlanguage
syn keyword sqlFunction sp_addlogin
syn keyword sqlFunction sp_addmessage
syn keyword sqlFunction sp_addremotelogin
syn keyword sqlFunction sp_addsegment
syn keyword sqlFunction sp_addserver
syn keyword sqlFunction sp_addthreshold
syn keyword sqlFunction sp_addtype
syn keyword sqlFunction sp_adduser
syn keyword sqlFunction sp_auditdatabase
syn keyword sqlFunction sp_auditlogin
syn keyword sqlFunction sp_auditobject
syn keyword sqlFunction sp_auditoption
syn keyword sqlFunction sp_auditsproc
syn keyword sqlFunction sp_bindefault
syn keyword sqlFunction sp_bindmsg
syn keyword sqlFunction sp_bindrule
syn keyword sqlFunction sp_changedbowner
syn keyword sqlFunction sp_changegroup
syn keyword sqlFunction sp_checknames
syn keyword sqlFunction sp_checkperms
syn keyword sqlFunction sp_checkreswords
syn keyword sqlFunction sp_clearstats
syn keyword sqlFunction sp_column_privileges
syn keyword sqlFunction sp_columns
syn keyword sqlFunction sp_commonkey
syn keyword sqlFunction sp_configure
syn keyword sqlFunction sp_cursorinfo
syn keyword sqlFunction sp_databases
syn keyword sqlFunction sp_datatype_info
syn keyword sqlFunction sp_dboption
syn keyword sqlFunction sp_dbremap
syn keyword sqlFunction sp_depends
syn keyword sqlFunction sp_diskdefault
syn keyword sqlFunction sp_displaylogin
syn keyword sqlFunction sp_dropalias
syn keyword sqlFunction sp_dropdevice
syn keyword sqlFunction sp_dropgroup
syn keyword sqlFunction sp_dropkey
syn keyword sqlFunction sp_droplanguage
syn keyword sqlFunction sp_droplogin
syn keyword sqlFunction sp_dropmessage
syn keyword sqlFunction sp_dropremotelogin
syn keyword sqlFunction sp_dropsegment
syn keyword sqlFunction sp_dropserver
syn keyword sqlFunction sp_dropthreshold
syn keyword sqlFunction sp_droptype
syn keyword sqlFunction sp_dropuser
syn keyword sqlFunction sp_estspace
syn keyword sqlFunction sp_extendsegment
syn keyword sqlFunction sp_fkeys
syn keyword sqlFunction sp_foreignkey
syn keyword sqlFunction sp_getmessage
syn keyword sqlFunction sp_help
syn keyword sqlFunction sp_helpconstraint
syn keyword sqlFunction sp_helpdb
syn keyword sqlFunction sp_helpdevice
syn keyword sqlFunction sp_helpgroup
syn keyword sqlFunction sp_helpindex
syn keyword sqlFunction sp_helpjoins
syn keyword sqlFunction sp_helpkey
syn keyword sqlFunction sp_helplanguage
syn keyword sqlFunction sp_helplog
syn keyword sqlFunction sp_helpprotect
syn keyword sqlFunction sp_helpremotelogin
syn keyword sqlFunction sp_helpsegment
syn keyword sqlFunction sp_helpserver
syn keyword sqlFunction sp_helpsort
syn keyword sqlFunction sp_helptext
syn keyword sqlFunction sp_helpthreshold
syn keyword sqlFunction sp_helpuser
syn keyword sqlFunction sp_indsuspect
syn keyword sqlFunction sp_lock
syn keyword sqlFunction sp_locklogin
syn keyword sqlFunction sp_logdevice
syn keyword sqlFunction sp_login_environment
syn keyword sqlFunction sp_modifylogin
syn keyword sqlFunction sp_modifythreshold
syn keyword sqlFunction sp_monitor
syn keyword sqlFunction sp_password
syn keyword sqlFunction sp_pkeys
syn keyword sqlFunction sp_placeobject
syn keyword sqlFunction sp_primarykey
syn keyword sqlFunction sp_procxmode
syn keyword sqlFunction sp_recompile
syn keyword sqlFunction sp_remap
syn keyword sqlFunction sp_remote_columns
syn keyword sqlFunction sp_remote_exported_keys
syn keyword sqlFunction sp_remote_imported_keys
syn keyword sqlFunction sp_remote_pcols
syn keyword sqlFunction sp_remote_primary_keys
syn keyword sqlFunction sp_remote_procedures
syn keyword sqlFunction sp_remote_tables
syn keyword sqlFunction sp_remoteoption
syn keyword sqlFunction sp_rename
syn keyword sqlFunction sp_renamedb
syn keyword sqlFunction sp_reportstats
syn keyword sqlFunction sp_reset_tsql_environment
syn keyword sqlFunction sp_role
syn keyword sqlFunction sp_server_info
syn keyword sqlFunction sp_servercaps
syn keyword sqlFunction sp_serverinfo
syn keyword sqlFunction sp_serveroption
syn keyword sqlFunction sp_setlangalias
syn keyword sqlFunction sp_setreplicate
syn keyword sqlFunction sp_setrepproc
syn keyword sqlFunction sp_setreptable
syn keyword sqlFunction sp_spaceused
syn keyword sqlFunction sp_special_columns
syn keyword sqlFunction sp_sproc_columns
syn keyword sqlFunction sp_statistics
syn keyword sqlFunction sp_stored_procedures
syn keyword sqlFunction sp_syntax
syn keyword sqlFunction sp_table_privileges
syn keyword sqlFunction sp_tables
syn keyword sqlFunction sp_tsql_environment
syn keyword sqlFunction sp_tsql_feature_not_supported
syn keyword sqlFunction sp_unbindefault
syn keyword sqlFunction sp_unbindmsg
syn keyword sqlFunction sp_unbindrule
syn keyword sqlFunction sp_volchanged
syn keyword sqlFunction sp_who
syn keyword sqlFunction xp_scanf
syn keyword sqlFunction xp_sprintf
" server functions
syn keyword sqlFunction col_length
syn keyword sqlFunction col_name
syn keyword sqlFunction index_col
syn keyword sqlFunction object_id
syn keyword sqlFunction object_name
syn keyword sqlFunction proc_role
syn keyword sqlFunction show_role
syn keyword sqlFunction xp_cmdshell
syn keyword sqlFunction xp_msver
syn keyword sqlFunction xp_read_file
syn keyword sqlFunction xp_real_cmdshell
syn keyword sqlFunction xp_real_read_file
syn keyword sqlFunction xp_real_sendmail
syn keyword sqlFunction xp_real_startmail
syn keyword sqlFunction xp_real_startsmtp
syn keyword sqlFunction xp_real_stopmail
syn keyword sqlFunction xp_real_stopsmtp
syn keyword sqlFunction xp_real_write_file
syn keyword sqlFunction xp_scanf
syn keyword sqlFunction xp_sendmail
syn keyword sqlFunction xp_sprintf
syn keyword sqlFunction xp_startmail
syn keyword sqlFunction xp_startsmtp
syn keyword sqlFunction xp_stopmail
syn keyword sqlFunction xp_stopsmtp
syn keyword sqlFunction xp_write_file
" http functions
syn keyword sqlFunction http_header http_variable
syn keyword sqlFunction next_http_header next_http_variable
syn keyword sqlFunction sa_set_http_header sa_set_http_option
syn keyword sqlFunction sa_http_variable_info sa_http_header_info
" http functions 9.0.1
syn keyword sqlFunction http_encode http_decode
syn keyword sqlFunction html_encode html_decode
" keywords
syn keyword sqlKeyword absolute action activ add address after
syn keyword sqlKeyword algorithm allow_dup_row
syn keyword sqlKeyword alter and any as asc ascii ase at atomic
syn keyword sqlKeyword attended audit authorization
syn keyword sqlKeyword autoincrement autostop bcp before
syn keyword sqlKeyword between blank
syn keyword sqlKeyword blanks block bottom unbounded break bufferpool
syn keyword sqlKeyword bulk by byte cache calibrate calibration
syn keyword sqlKeyword capability cascade cast
syn keyword sqlKeyword catalog changes char char_convert check
syn keyword sqlKeyword class classes client
syn keyword sqlKeyword cluster clustered collation column
syn keyword sqlKeyword command comment comparisons
syn keyword sqlKeyword compatible component compressed compute
syn keyword sqlKeyword concat confirm connection
syn keyword sqlKeyword console consolidate consolidated
syn keyword sqlKeyword constraint constraints continue
syn keyword sqlKeyword convert count crc cross cube
syn keyword sqlKeyword current cursor data data database
syn keyword sqlKeyword current_timestamp current_user
syn keyword sqlKeyword datatype dba dbfile
syn keyword sqlKeyword dbspace debug
syn keyword sqlKeyword decrypted default defaults definition
syn keyword sqlKeyword delay deleting delimited desc
syn keyword sqlKeyword description deterministic directory
syn keyword sqlKeyword disable distinct do domain
syn keyword sqlKeyword dsetpass dttm dynamic each editproc ejb
syn keyword sqlKeyword else elseif enable encrypted end endif
syn keyword sqlKeyword engine erase error escape escapes event
syn keyword sqlKeyword every exception exclusive exec
syn keyword sqlKeyword existing exists expanded express
syn keyword sqlKeyword external externlogin factor false
syn keyword sqlKeyword fastfirstrow fieldproc file filler
syn keyword sqlKeyword fillfactor finish first first_keyword
syn keyword sqlKeyword following force foreign format
syn keyword sqlKeyword freepage full function go global
syn keyword sqlKeyword group handler hash having hexadecimal
syn keyword sqlKeyword hidden high hng hold holdlock
syn keyword sqlKeyword hours id identified identity ignore
syn keyword sqlKeyword ignore_dup_key ignore_dup_row immediate
syn keyword sqlKeyword in inactive incremental index info inner
syn keyword sqlKeyword inout insensitive inserting
syn keyword sqlKeyword instead integrated
syn keyword sqlKeyword internal into iq is isolation jar java
syn keyword sqlKeyword jconnect jdk join kb key language last
syn keyword sqlKeyword last_keyword lateral left level like
syn keyword sqlKeyword limit local location log
syn keyword sqlKeyword logging login long low main
syn keyword sqlKeyword match max maximum membership
syn keyword sqlKeyword minutes mirror mode modify monitor
syn keyword sqlKeyword name named native natural new next no
syn keyword sqlKeyword noholdlock nolock nonclustered none not
syn keyword sqlKeyword notify null nulls of off old on
syn keyword sqlKeyword only optimization optimizer option
syn keyword sqlKeyword or order others out outer over
syn keyword sqlKeyword package packetsize padding page pages
syn keyword sqlKeyword paglock parallel part partition path
syn keyword sqlKeyword pctfree plan preceding precision prefetch prefix
syn keyword sqlKeyword preserve preview primary
syn keyword sqlKeyword prior priqty private privileges
syn keyword sqlKeyword procedure public publication publish publisher
syn keyword sqlKeyword quotes range readcommitted
syn keyword sqlKeyword readpast readuncommitted
syn keyword sqlKeyword received recompile recursive references
syn keyword sqlKeyword referencing relative
syn keyword sqlKeyword rename repeatableread
syn keyword sqlKeyword replicate rereceive resend reset
syn keyword sqlKeyword resolve resource respect
syn keyword sqlKeyword restrict result retain
syn keyword sqlKeyword returns right
syn keyword sqlKeyword rollup row rowlock rows save
syn keyword sqlKeyword schedule schema scroll seconds secqty
syn keyword sqlKeyword send sensitive sent serializable
syn keyword sqlKeyword server server session sets
syn keyword sqlKeyword share since site size skip
syn keyword sqlKeyword some sorted_data sqlcode sqlid
syn keyword sqlKeyword sqlstate stacker statement
syn keyword sqlKeyword statistics status stogroup store
syn keyword sqlKeyword strip subpages subscribe subscription
syn keyword sqlKeyword subtransaction synchronization
syn keyword sqlKeyword syntax_error table tablock
syn keyword sqlKeyword tablockx tb temp template temporary then
syn keyword sqlKeyword timezone to top
syn keyword sqlKeyword transaction transactional tries true
syn keyword sqlKeyword tsequal type unconditionally unenforced
syn keyword sqlKeyword unique union unknown unload
syn keyword sqlKeyword updating updlock upgrade use user
syn keyword sqlKeyword using utc utilities validproc
syn keyword sqlKeyword value values varchar variable
syn keyword sqlKeyword varying vcat verify view virtual wait
syn keyword sqlKeyword warning wd when where window with within
syn keyword sqlKeyword with_lparen work writefile
syn keyword sqlKeyword xlock zeros
" XML function support
syn keyword sqlFunction openxml xmlelement xmlforest xmlgen xmlconcat xmlagg
syn keyword sqlFunction xmlattributes
syn keyword sqlKeyword raw auto elements explicit
" HTTP support
syn keyword sqlKeyword authorization secure url service
" HTTP 9.0.2 new procedure keywords
syn keyword sqlKeyword namespace certificate clientport proxy
" OLAP support 9.0.0
syn keyword sqlKeyword covar_pop covar_samp corr regr_slope regr_intercept
syn keyword sqlKeyword regr_count regr_r2 regr_avgx regr_avgy
syn keyword sqlKeyword regr_sxx regr_syy regr_sxy
" Alternate keywords
syn keyword sqlKeyword character dec options proc reference
syn keyword sqlKeyword subtrans tran syn keyword
syn keyword sqlOperator in any some all between exists
syn keyword sqlOperator like escape not is and or
syn keyword sqlOperator intersect minus
syn keyword sqlOperator prior distinct
syn keyword sqlStatement allocate alter backup begin call case
syn keyword sqlStatement checkpoint clear close commit configure connect
syn keyword sqlStatement create deallocate declare delete describe
syn keyword sqlStatement disconnect drop execute exit explain fetch
syn keyword sqlStatement for forward from get goto grant help if include
syn keyword sqlStatement input insert install leave load lock loop
syn keyword sqlStatement message open output parameter parameters passthrough
syn keyword sqlStatement prepare print put raiserror read readtext release
syn keyword sqlStatement remote remove reorganize resignal restore resume
syn keyword sqlStatement return revoke rollback savepoint select
syn keyword sqlStatement set setuser signal start stop synchronize
syn keyword sqlStatement system trigger truncate unload update
syn keyword sqlStatement validate waitfor whenever while writetext
syn keyword sqlType char long varchar text
syn keyword sqlType bigint decimal double float int integer numeric
syn keyword sqlType smallint tinyint real
syn keyword sqlType money smallmoney
syn keyword sqlType bit
syn keyword sqlType date datetime smalldate time timestamp
syn keyword sqlType binary image varbinary uniqueidentifier
syn keyword sqlType xml unsigned
syn keyword sqlOption Allow_nulls_by_default
syn keyword sqlOption Ansi_blanks
syn keyword sqlOption Ansi_close_cursors_on_rollback
syn keyword sqlOption Ansi_integer_overflow
syn keyword sqlOption Ansi_permissions
syn keyword sqlOption Ansi_update_constraints
syn keyword sqlOption Ansinull
syn keyword sqlOption Assume_distinct_servers
syn keyword sqlOption Auditing
syn keyword sqlOption Auditing_options
syn keyword sqlOption Auto_commit
syn keyword sqlOption Auto_refetch
syn keyword sqlOption Automatic_timestamp
syn keyword sqlOption Background_priority
syn keyword sqlOption Bell
syn keyword sqlOption Blob_threshold
syn keyword sqlOption Blocking
syn keyword sqlOption Blocking_timeout
syn keyword sqlOption Chained
syn keyword sqlOption Char_OEM_Translation
syn keyword sqlOption Checkpoint_time
syn keyword sqlOption Cis_option
syn keyword sqlOption Cis_rowset_size
syn keyword sqlOption Close_on_endtrans
syn keyword sqlOption Command_delimiter
syn keyword sqlOption Commit_on_exit
syn keyword sqlOption Compression
syn keyword sqlOption Connection_authentication
syn keyword sqlOption Continue_after_raiserror
syn keyword sqlOption Conversion_error
syn keyword sqlOption Cooperative_commit_timeout
syn keyword sqlOption Cooperative_commits
syn keyword sqlOption Database_authentication
syn keyword sqlOption Date_format
syn keyword sqlOption Date_order
syn keyword sqlOption Debug_messages
syn keyword sqlOption Dedicated_task
syn keyword sqlOption Default_timestamp_increment
syn keyword sqlOption Delayed_commit_timeout
syn keyword sqlOption Delayed_commits
syn keyword sqlOption Delete_old_logs
syn keyword sqlOption Describe_Java_Format
syn keyword sqlOption Divide_by_zero_error
syn keyword sqlOption Echo
syn keyword sqlOption Escape_character
syn keyword sqlOption Exclude_operators
syn keyword sqlOption Extended_join_syntax
syn keyword sqlOption External_remote_options
syn keyword sqlOption Fire_triggers
syn keyword sqlOption First_day_of_week
syn keyword sqlOption Float_as_double
syn keyword sqlOption For_xml_null_treatment
syn keyword sqlOption Force_view_creation
syn keyword sqlOption Global_database_id
syn keyword sqlOption Headings
syn keyword sqlOption Input_format
syn keyword sqlOption Integrated_server_name
syn keyword sqlOption Isolation_level
syn keyword sqlOption ISQL_command_timing
syn keyword sqlOption ISQL_escape_character
syn keyword sqlOption ISQL_field_separator
syn keyword sqlOption ISQL_log
syn keyword sqlOption ISQL_plan
syn keyword sqlOption ISQL_plan_cursor_sensitivity
syn keyword sqlOption ISQL_plan_cursor_writability
syn keyword sqlOption ISQL_quote
syn keyword sqlOption Java_heap_size
syn keyword sqlOption Java_input_output
syn keyword sqlOption Java_namespace_size
syn keyword sqlOption Java_page_buffer_size
syn keyword sqlOption Lock_rejected_rows
syn keyword sqlOption Log_deadlocks
syn keyword sqlOption Log_detailed_plans
syn keyword sqlOption Log_max_requests
syn keyword sqlOption Login_mode
syn keyword sqlOption Login_procedure
syn keyword sqlOption Max_cursor_count
syn keyword sqlOption Max_hash_size
syn keyword sqlOption Max_plans_cached
syn keyword sqlOption Max_recursive_iterations
syn keyword sqlOption Max_statement_count
syn keyword sqlOption Max_work_table_hash_size
syn keyword sqlOption Min_password_length
syn keyword sqlOption Nearest_century
syn keyword sqlOption Non_keywords
syn keyword sqlOption NULLS
syn keyword sqlOption ODBC_describe_binary_as_varbinary
syn keyword sqlOption ODBC_distinguish_char_and_varchar
syn keyword sqlOption On_Charset_conversion_failure
syn keyword sqlOption On_error
syn keyword sqlOption On_tsql_error
syn keyword sqlOption Optimistic_wait_for_commit
syn keyword sqlOption Optimization_goal
syn keyword sqlOption Optimization_level
syn keyword sqlOption Optimization_logging
syn keyword sqlOption Optimization_workload
syn keyword sqlOption Output_format
syn keyword sqlOption Output_length
syn keyword sqlOption Output_nulls
syn keyword sqlOption Percent_as_comment
syn keyword sqlOption Pinned_cursor_percent_of_cache
syn keyword sqlOption Precision
syn keyword sqlOption Prefetch
syn keyword sqlOption Preserve_source_format
syn keyword sqlOption Prevent_article_pkey_update
syn keyword sqlOption Qualify_owners
syn keyword sqlOption Query_plan_on_open
syn keyword sqlOption Quiet
syn keyword sqlOption Quote_all_identifiers
syn keyword sqlOption Quoted_identifier
syn keyword sqlOption Read_past_deleted
syn keyword sqlOption Recovery_time
syn keyword sqlOption Remote_idle_timeout
syn keyword sqlOption Replicate_all
syn keyword sqlOption Replication_error
syn keyword sqlOption Replication_error_piece
syn keyword sqlOption Return_date_time_as_string
syn keyword sqlOption Return_java_as_string
syn keyword sqlOption RI_Trigger_time
syn keyword sqlOption Rollback_on_deadlock
syn keyword sqlOption Row_counts
syn keyword sqlOption Save_remote_passwords
syn keyword sqlOption Scale
syn keyword sqlOption Screen_format
syn keyword sqlOption Sort_Collation
syn keyword sqlOption SQL_flagger_error_level
syn keyword sqlOption SQL_flagger_warning_level
syn keyword sqlOption SQLConnect
syn keyword sqlOption SQLStart
syn keyword sqlOption SR_Date_Format
syn keyword sqlOption SR_Time_Format
syn keyword sqlOption SR_TimeStamp_Format
syn keyword sqlOption Statistics
syn keyword sqlOption String_rtruncation
syn keyword sqlOption Subscribe_by_remote
syn keyword sqlOption Subsume_row_locks
syn keyword sqlOption Suppress_TDS_debugging
syn keyword sqlOption TDS_Empty_string_is_null
syn keyword sqlOption Temp_space_limit_check
syn keyword sqlOption Thread_count
syn keyword sqlOption Thread_stack
syn keyword sqlOption Thread_swaps
syn keyword sqlOption Time_format
syn keyword sqlOption Time_zone_adjustment
syn keyword sqlOption Timestamp_format
syn keyword sqlOption Truncate_date_values
syn keyword sqlOption Truncate_timestamp_values
syn keyword sqlOption Truncate_with_auto_commit
syn keyword sqlOption Truncation_length
syn keyword sqlOption Tsql_hex_constant
syn keyword sqlOption Tsql_variables
syn keyword sqlOption Update_statistics
syn keyword sqlOption User_estimates
syn keyword sqlOption Verify_all_columns
syn keyword sqlOption Verify_threshold
syn keyword sqlOption Wait_for_commit
" Strings and characters:
syn region sqlString start=+"+ end=+"+ contains=@Spell
syn region sqlString start=+'+ end=+'+ contains=@Spell
" Numbers:
syn match sqlNumber "-\=\<\d*\.\=[0-9_]\>"
" Comments:
syn region sqlDashComment start=/--/ end=/$/ contains=@Spell
syn region sqlSlashComment start=/\/\// end=/$/ contains=@Spell
syn region sqlMultiComment start="/\*" end="\*/" contains=sqlMultiComment,@Spell
syn cluster sqlComment contains=sqlDashComment,sqlSlashComment,sqlMultiComment,@Spell
syn sync ccomment sqlComment
syn sync ccomment sqlDashComment
syn sync ccomment sqlSlashComment
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_sql_syn_inits")
if version < 508
let did_sql_syn_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi link <args>
endif
HiLink sqlDashComment Comment
HiLink sqlSlashComment Comment
HiLink sqlMultiComment Comment
HiLink sqlNumber Number
HiLink sqlOperator Operator
HiLink sqlSpecial Special
HiLink sqlKeyword Keyword
HiLink sqlStatement Statement
HiLink sqlString String
HiLink sqlType Type
HiLink sqlFunction Function
HiLink sqlOption PreProc
delcommand HiLink
endif
let b:current_syntax = "sqlanywhere"
" vim:sw=4:ff=unix:

View File

@@ -2465,7 +2465,7 @@ draw_cmdline(start, len)
int j;
int newlen = 0;
int mb_l;
int pc, pc1;
int pc, pc1 = 0;
int prev_c = 0;
int prev_c1 = 0;
int u8c;
@@ -3480,7 +3480,7 @@ ExpandEscape(xp, str, numfiles, files, options)
{
vim_free(files[i]);
files[i] = p;
#if defined(BACKSLASH_IN_FILENAME) || defined(COLON_AS_PATHSEP)
#if defined(BACKSLASH_IN_FILENAME)
p = vim_strsave_escaped(files[i], (char_u *)" ");
if (p != NULL)
{

View File

@@ -3698,11 +3698,7 @@ gui_mch_get_color(char_u *name)
char line[LINE_LEN];
char_u *fname;
#ifdef COLON_AS_PATHSEP
fname = expand_env_save((char_u *)"$VIMRUNTIME:rgb.txt");
#else
fname = expand_env_save((char_u *)"$VIMRUNTIME/rgb.txt");
#endif
if (fname == NULL)
return INVALCOLOR;

View File

@@ -416,6 +416,14 @@ struct vimoption
#define ISK_LATIN1 (char_u *)"@,48-57,_,192-255"
/* 'isprint' for latin1 is also used for MS-Windows, where 0x80 is used for
* the currency sign. Thus this isn't really latin1... */
#if defined(MSDOS) || defined(MSWIN) || defined(OS2)
# define ISP_LATIN1 (char_u *)"@,128,161-255"
#else
# define ISP_LATIN1 (char_u *)"@,161-255"
#endif
/*
* options[] is initialized here.
* The order of the options MUST be alphabetic for ":set all" and findoption().
@@ -1440,7 +1448,7 @@ static struct vimoption
/* all chars above 63 are printable */
(char_u *)"63-255",
# else
(char_u *)"@,161-255",
ISP_LATIN1,
# endif
#endif
(char_u *)0L}},
@@ -3210,11 +3218,11 @@ set_init_1()
* latin1. Also set the defaults for when 'nocompatible' is
* set. */
set_string_option_direct((char_u *)"isp", -1,
(char_u *)"@,161-255", OPT_FREE, SID_NONE);
ISP_LATIN1, OPT_FREE, SID_NONE);
set_string_option_direct((char_u *)"isk", -1,
ISK_LATIN1, OPT_FREE, SID_NONE);
opt_idx = findoption((char_u *)"isp");
options[opt_idx].def_val[VIM_DEFAULT] = (char_u *)"@,161-255";
options[opt_idx].def_val[VIM_DEFAULT] = ISP_LATIN1;
opt_idx = findoption((char_u *)"isk");
options[opt_idx].def_val[VIM_DEFAULT] = ISK_LATIN1;
(void)init_chartab();

View File

@@ -36,5 +36,5 @@
#define VIM_VERSION_NODOT "vim70aa"
#define VIM_VERSION_SHORT "7.0aa"
#define VIM_VERSION_MEDIUM "7.0aa ALPHA"
#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 8)"
#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 8, compiled "
#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 9)"
#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 9, compiled "