Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

updated for version 7.2a

  • Loading branch information...
commit 97186bab3bba94ca59a43a2127738af2b9be351b 1 parent 0554c4a
vimboss authored
Showing with 9,655 additions and 13,667 deletions.
  1. +23 −2 runtime/autoload/ccomplete.vim
  2. +8 −3 runtime/autoload/spellfile.vim
  3. +37 −35 runtime/autoload/sqlcomplete.vim
  4. +125 −57 runtime/autoload/tar.vim
  5. +0 −1  runtime/autoload/xml/html32.vim
  6. +0 −1  runtime/autoload/xml/html401s.vim
  7. +0 −1  runtime/autoload/xml/xhtml10s.vim
  8. +0 −1  runtime/autoload/xml/xhtml10t.vim
  9. +1 −1  runtime/compiler/rubyunit.vim
  10. +1 −1  runtime/doc/farsi.txt
  11. +24 −3 runtime/doc/filetype.txt
  12. +515 −0 runtime/doc/ft_ada.txt
  13. +1 −1  runtime/doc/howto.txt
  14. +17 −22 runtime/doc/intro.txt
  15. +1 −1  runtime/doc/os_amiga.txt
  16. +1 −1  runtime/doc/os_dos.txt
  17. +2 −2 runtime/doc/os_win32.txt
  18. +1 −1  runtime/doc/pi_spec.txt
  19. +60 −9 runtime/doc/quickfix.txt
  20. +5 −2 runtime/doc/remote.txt
  21. +1 −1  runtime/doc/scroll.txt
  22. +99 −62 runtime/doc/syntax.txt
  23. +1 −1  runtime/doc/tagsrch.txt
  24. +343 −180 runtime/doc/todo.txt
  25. +1 −1  runtime/doc/usr_04.txt
  26. +1 −1  runtime/doc/usr_05.txt
  27. +1 −1  runtime/doc/usr_06.txt
  28. +1 −1  runtime/doc/usr_07.txt
  29. +1 −1  runtime/doc/usr_12.txt
  30. +1 −1  runtime/doc/usr_20.txt
  31. +8 −8 runtime/doc/usr_30.txt
  32. +17 −8 runtime/doc/various.txt
  33. +2,157 −2 runtime/doc/version7.txt
  34. +4 −4 runtime/doc/vim-fr.1
  35. +4 −4 runtime/doc/vim-fr.UTF-8.1
  36. +1 −1  runtime/doc/workshop.txt
  37. +18 −0 runtime/ftplugin/cdrdaoconf.vim
  38. +70 −0 runtime/ftplugin/debcontrol.vim
  39. +13 −0 runtime/ftplugin/dosini.vim
  40. +15 −0 runtime/ftplugin/gitconfig.vim
  41. +41 −0 runtime/ftplugin/gitrebase.vim
  42. +2 −2 runtime/indent/tcsh.vim
  43. +72 −0 runtime/indent/tf.vim
  44. +16 −0 runtime/keymap/croatian.vim
  45. +65 −0 runtime/keymap/croatian_cp1250.vim
  46. +27 −7 runtime/lang/menu_ca_es.latin1.vim
  47. +3 −0  runtime/lang/menu_fi.latin1.vim
  48. +473 −0 runtime/lang/menu_fi_fi.latin1.vim
  49. +4 −4 runtime/plugin/getscriptPlugin.vim
  50. +11 −10 runtime/plugin/tarPlugin.vim
  51. +169 −115 runtime/spell/fr/fr_FR.diff
  52. +27 −5 runtime/spell/pt/pt_BR.diff
  53. +139 −0 runtime/syntax/cdrdaoconf.vim
  54. +1 −1  runtime/syntax/cmake.vim
  55. +33 −0 runtime/syntax/coco.vim
  56. +2 −2 runtime/syntax/css.vim
  57. +36 −8 runtime/syntax/debcontrol.vim
  58. +289 −0 runtime/syntax/denyhosts.vim
  59. +67 −0 runtime/syntax/git.vim
  60. +65 −0 runtime/syntax/gitcommit.vim
  61. +147 −0 runtime/syntax/hostconf.vim
  62. +520 −439 runtime/syntax/lisp.vim
  63. +272 −0 runtime/syntax/lsl.vim
  64. +2 −2 runtime/syntax/modconf.vim
  65. +14 −15 runtime/syntax/mrxvtrc.vim
  66. +223 −223 runtime/syntax/mysql.vim
  67. +3 −241 runtime/syntax/phtml.vim
  68. +2 −2 runtime/syntax/quake.vim
  69. +165 −73 runtime/syntax/rexx.vim
  70. +59 −35 runtime/syntax/snobol4.vim
  71. +1 −1  runtime/syntax/sql.vim
  72. +38 −16 runtime/syntax/yacc.vim
  73. +2 −2 runtime/syntax/zsh.vim
  74. +23 −0 runtime/tutor/Contents
  75. +0 −24 runtime/tutor/README.gr.cp737.txt
  76. +0 −24 runtime/tutor/README.gr.txt
  77. +11 −0 runtime/tutor/README_amisrc.txt
  78. BIN  runtime/tutor/README_amisrc.txt.info
  79. +58 −0 runtime/tutor/README_os2.txt
  80. +10 −0 runtime/tutor/README_src.txt
  81. +48 −0 runtime/tutor/README_vms.txt
  82. +15 −0 runtime/tutor/README_w32s.txt
  83. BIN  runtime/tutor/Vim.info
  84. BIN  runtime/tutor/Xxd.info
  85. +6 −0 runtime/tutor/configure
  86. BIN  runtime/tutor/csdpmi4b.zip
  87. +88 −0 runtime/tutor/runtime/bugreport.vim
  88. BIN  runtime/tutor/runtime/hi22-action-make.png
  89. +11 −0 runtime/tutor/runtime/indoff.vim
  90. +106 −0 runtime/tutor/runtime/mswin.vim
  91. +135 −0 runtime/tutor/runtime/termcap
  92. +27 −0 runtime/tutor/runtime/vim16x16.xpm
  93. BIN  runtime/tutor/runtime/vimlogo.cdr
  94. BIN  runtime/tutor/runtime/vimlogo.gif
  95. BIN  runtime/tutor/runtime/vimlogo.pdf
  96. +0 −807 runtime/tutor/tutor.ca
  97. +807 −0 runtime/tutor/tutor.ca.utf-8
  98. +0 −812 runtime/tutor/tutor.cs
  99. +0 −812 runtime/tutor/tutor.cs.cp1250
  100. +0 −812 runtime/tutor/tutor.cs.utf-8
  101. +0 −980 runtime/tutor/tutor.de
  102. 0  runtime/tutor/{tutor.gr → tutor.el}
  103. +0 −769 runtime/tutor/tutor.es
  104. +769 −0 runtime/tutor/tutor.es.utf-8
  105. +0 −809 runtime/tutor/tutor.fr
  106. +0 −815 runtime/tutor/tutor.gr.cp737
  107. +0 −815 runtime/tutor/tutor.gr.utf-8
  108. +972 −0 runtime/tutor/tutor.hr.utf-8
  109. +0 −823 runtime/tutor/tutor.hu
  110. +0 −823 runtime/tutor/tutor.hu.utf-8
  111. BIN  runtime/tutor/tutor.info
  112. +0 −967 runtime/tutor/tutor.it
  113. +0 −975 runtime/tutor/tutor.ja.euc
  114. +0 −975 runtime/tutor/tutor.ja.sjis
Sorry, we could not display the entire diff because it was too big.
View
25 runtime/autoload/ccomplete.vim
@@ -1,7 +1,7 @@
" Vim completion script
" Language: C
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2006 May 08
+" Last Change: 2007 Aug 30
" This function is used for the 'omnifunc' option.
@@ -119,6 +119,27 @@ function! ccomplete#Complete(findstart, base)
" TODO: join previous line if it makes sense
let line = getline('.')
let col = col('.')
+ if stridx(strpart(line, 0, col), ';') != -1
+ " Handle multiple declarations on the same line.
+ let col2 = col - 1
+ while line[col2] != ';'
+ let col2 -= 1
+ endwhile
+ let line = strpart(line, col2 + 1)
+ let col -= col2
+ endif
+ if stridx(strpart(line, 0, col), ',') != -1
+ " Handle multiple declarations on the same line in a function
+ " declaration.
+ let col2 = col - 1
+ while line[col2] != ','
+ let col2 -= 1
+ endwhile
+ if strpart(line, col2 + 1, col - col2 - 1) =~ ' *[^ ][^ ]* *[^ ]'
+ let line = strpart(line, col2 + 1)
+ let col -= col2
+ endif
+ endif
if len(items) == 1
" Completing one word and it's a local variable: May add '[', '.' or
" '->'.
@@ -140,7 +161,7 @@ function! ccomplete#Complete(findstart, base)
let res = [{'match': match, 'tagline' : '', 'kind' : kind, 'info' : line}]
else
" Completing "var.", "var.something", etc.
- let res = s:Nextitem(strpart(line, 0, col), items[1:], 0, 1)
+ let res = s:Nextitem(strpart(line, 0, col), items[-1], 0, 1)
endif
endif
View
11 runtime/autoload/spellfile.vim
@@ -1,6 +1,6 @@
" Vim script to download a missing spell file
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2007 May 08
+" Last Change: 2008 May 29
if !exists('g:spellfile_URL')
let g:spellfile_URL = 'ftp://ftp.vim.org/pub/vim/runtime/spell'
@@ -106,7 +106,12 @@ function! spellfile#LoadFile(lang)
endfor
let dirchoice = confirm(msg, dirchoices) - 2
if dirchoice >= 0
- exe "write " . escape(dirlist[dirchoice], ' ') . '/' . fname
+ if exists('*fnameescape')
+ let dirname = fnameescape(dirlist[dirchoice])
+ else
+ let dirname = escape(dirlist[dirchoice], ' ')
+ endif
+ exe "write " . dirname . '/' . fname
" Also download the .sug file, if the user wants to.
let msg = "Do you want me to try getting the .sug file?\n"
@@ -119,7 +124,7 @@ function! spellfile#LoadFile(lang)
call spellfile#Nread(fname)
if getline(2) =~ 'VIMsug'
1d
- exe "write " . escape(dirlist[dirchoice], ' ') . '/' . fname
+ exe "write " . dirname . '/' . fname
set nomod
else
echo 'Sorry, downloading failed'
View
72 runtime/autoload/sqlcomplete.vim
@@ -1,8 +1,8 @@
" Vim OMNI completion script for SQL
" Language: SQL
" Maintainer: David Fishburn <fishburn@ianywhere.com>
-" Version: 5.0
-" Last Change: Mon Jun 05 2006 3:30:04 PM
+" Version: 6.0
+" Last Change: Thu 03 Apr 2008 10:37:54 PM Eastern Daylight Time
" Usage: For detailed help
" ":help sql.txt"
" or ":help ft-sql-omni"
@@ -106,7 +106,7 @@ function! sqlcomplete#Complete(findstart, base)
let begindot = 1
endif
while start > 0
- if line[start - 1] =~ '\w'
+ if line[start - 1] =~ '\(\w\|\s\+\)'
let start -= 1
elseif line[start - 1] =~ '\.' &&
\ compl_type =~ 'column\|table\|view\|procedure'
@@ -178,11 +178,10 @@ function! sqlcomplete#Complete(findstart, base)
" Allow the user to override the dbext plugin to specify whether
" the owner/creator should be included in the list
- let saved_dbext_show_owner = 1
- if exists('g:dbext_default_dict_show_owner')
- let saved_dbext_show_owner = g:dbext_default_dict_show_owner
+ if g:loaded_dbext >= 300
+ let saveSetting = DB_listOption('dict_show_owner')
+ exec 'DBSetOption dict_show_owner='.(g:omni_sql_include_owner==1?'1':'0')
endif
- let g:dbext_default_dict_show_owner = g:omni_sql_include_owner
let compl_type_uc = substitute(compl_type, '\w\+', '\u&', '')
if s:sql_file_{compl_type} == ""
@@ -192,18 +191,12 @@ 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
- let g:dbext_default_dict_show_owner = saved_dbext_show_owner
+ if g:loaded_dbext > 300
+ exec 'DBSetOption dict_show_owner='.saveSetting
+ endif
elseif compl_type =~? 'column'
" This type of completion relies upon the dbext.vim plugin
@@ -450,8 +443,8 @@ function! s:SQLCCheck4dbext()
" Leave time for the user to read the error message
:sleep 2
return -1
- elseif g:loaded_dbext < 300
- let msg = "The dbext plugin must be at least version 3.00 " .
+ elseif g:loaded_dbext < 600
+ let msg = "The dbext plugin must be at least version 5.30 " .
\ " for dynamic SQL completion"
call s:SQLCErrorMsg(msg)
" Leave time for the user to read the error message
@@ -514,34 +507,42 @@ endfunction
function! s:SQLCGetObjectOwner(object)
" The owner regex matches a word at the start of the string which is
" followed by a dot, but doesn't include the dot in the result.
- " ^ - from beginning of line
- " "\? - ignore any quotes
- " \zs - start the match now
- " \w\+ - get owner name
- " \ze - end the match
- " "\? - ignore any quotes
- " \. - must by followed by a .
- let owner = matchstr( a:object, '^"\?\zs\w\+\ze"\?\.' )
+ " ^ - from beginning of line
+ " \("\|\[\)\? - ignore any quotes
+ " \zs - start the match now
+ " .\{-} - get owner name
+ " \ze - end the match
+ " \("\|\[\)\? - ignore any quotes
+ " \. - must by followed by a .
+ " let owner = matchstr( a:object, '^\s*\zs.*\ze\.' )
+ let owner = matchstr( a:object, '^\("\|\[\)\?\zs\.\{-}\ze\("\|\]\)\?\.' )
return owner
endfunction
function! s:SQLCGetColumns(table_name, list_type)
" Check if the table name was provided as part of the column name
- let table_name = matchstr(a:table_name, '^[a-zA-Z0-9_]\+\ze\.\?')
+ let table_name = matchstr(a:table_name, '^["\[\]a-zA-Z0-9_ ]\+\ze\.\?')
let table_cols = []
let table_alias = ''
let move_to_top = 1
+ let table_name = substitute(table_name, '\s*\(.\{-}\)\s*$', '\1', 'g')
+
+ " If the table name was given as:
+ " where c.
+ let table_name = substitute(table_name, '^\c\(WHERE\|AND\|OR\)\s\+', '', '')
if g:loaded_dbext >= 300
let saveSettingAlias = DB_listOption('use_tbl_alias')
exec 'DBSetOption use_tbl_alias=n'
endif
+ let table_name_stripped = substitute(table_name, '["\[\]]*', '', 'g')
+
" Check if we have already cached the column list for this table
" by its name
- let list_idx = index(s:tbl_name, table_name, 0, &ignorecase)
+ let list_idx = index(s:tbl_name, table_name_stripped, 0, &ignorecase)
if list_idx > -1
- let table_cols = split(s:tbl_cols[list_idx])
+ let table_cols = split(s:tbl_cols[list_idx], '\n')
else
" Check if we have already cached the column list for this table
" by its alias, assuming the table_name provided was actually
@@ -549,11 +550,11 @@ function! s:SQLCGetColumns(table_name, list_type)
" select *
" from area a
" where a.
- let list_idx = index(s:tbl_alias, table_name, 0, &ignorecase)
+ let list_idx = index(s:tbl_alias, table_name_stripped, 0, &ignorecase)
if list_idx > -1
- let table_alias = table_name
+ let table_alias = table_name_stripped
let table_name = s:tbl_name[list_idx]
- let table_cols = split(s:tbl_cols[list_idx])
+ let table_cols = split(s:tbl_cols[list_idx], '\n')
endif
endif
@@ -609,8 +610,8 @@ function! s:SQLCGetColumns(table_name, list_type)
" '.*' - Exclude the rest of the line in the match
let table_name_new = matchstr(@y,
\ 'from.\{-}'.
- \ '\zs\(\(\<\w\+\>\)\.\)\?'.
- \ '\<\w\+\>\ze'.
+ \ '\zs\(\("\|\[\)\?.\{-}\("\|\]\)\.\)\?'.
+ \ '\("\|\[\)\?.\{-}\("\|\]\)\ze'.
\ '\s\+\%(as\s\+\)\?\<'.
\ matchstr(table_name, '.\{-}\ze\.\?$').
\ '\>'.
@@ -618,6 +619,7 @@ function! s:SQLCGetColumns(table_name, list_type)
\ '\(\<where\>\|$\)'.
\ '.*'
\ )
+
if table_name_new != ''
let table_alias = table_name
let table_name = table_name_new
@@ -668,7 +670,7 @@ function! s:SQLCGetColumns(table_name, list_type)
let s:tbl_name = add( s:tbl_name, table_name )
let s:tbl_alias = add( s:tbl_alias, table_alias )
let s:tbl_cols = add( s:tbl_cols, table_cols_str )
- let table_cols = split(table_cols_str)
+ let table_cols = split(table_cols_str, '\n')
endif
endif
View
182 runtime/autoload/tar.vim
@@ -1,21 +1,21 @@
" tar.vim: Handles browsing tarfiles
" AUTOLOAD PORTION
-" Date: Sep 29, 2006
-" Version: 11
+" Date: Jun 12, 2008
+" Version: 16
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
" License: Vim License (see vim's :help license)
"
" Contains many ideas from Michael Toren's <tar.vim>
"
-" Copyright: Copyright (C) 2005 Charles E. Campbell, Jr. {{{1
+" Copyright: Copyright (C) 2005-2008 Charles E. Campbell, Jr. {{{1
" Permission is hereby granted to use and distribute this code,
" with or without modifications, provided that this copyright
" notice is copied with it. Like anything else that's free,
-" tarPlugin.vim is provided *as is* and comes with no warranty
-" of any kind, either expressed or implied. By using this
-" plugin, you agree that in no event will the copyright
-" holder be liable for any damages resulting from the use
-" of this software.
+" tar.vim and tarPlugin.vim are provided *as is* and comes
+" with no warranty of any kind, either expressed or implied.
+" By using this plugin, you agree that in no event will the
+" copyright holder be liable for any damages resulting from
+" the use of this software.
" ---------------------------------------------------------------------
" Load Once: {{{1
@@ -24,8 +24,11 @@ set cpo&vim
if &cp || exists("g:loaded_tar") || v:version < 700
finish
endif
-let g:loaded_tar= "v11"
+let g:loaded_tar= "v16"
"call Decho("loading autoload/tar.vim")
+if v:version < 701 || (v:version == 701 && !has("patch299"))
+ echoerr "(autoload/tar.vim) need vim v7.1 with patchlevel 299"
+endif
" ---------------------------------------------------------------------
" Default Settings: {{{1
@@ -41,12 +44,33 @@ endif
if !exists("g:tar_writeoptions")
let g:tar_writeoptions= "uf"
endif
+
+if !exists("g:netrw_cygwin")
+ if has("win32") || has("win95") || has("win64") || has("win16")
+ if &shell =~ '\%(\<bash\>\|\<zsh\>\)\%(\.exe\)\=$'
+ let g:netrw_cygwin= 1
+ else
+ let g:netrw_cygwin= 0
+ endif
+ else
+ let g:netrw_cygwin= 0
+ endif
+endif
+
+" set up shell quoting character
if !exists("g:tar_shq")
- if has("unix")
- let g:tar_shq= "'"
+ if exists("&shq") && &shq != ""
+ let g:tar_shq= &shq
+ elseif has("win32") || has("win95") || has("win64") || has("win16")
+ if exists("g:netrw_cygwin") && g:netrw_cygwin
+ let g:tar_shq= "'"
+ else
+ let g:tar_shq= '"'
+ endif
else
- let g:tar_shq= '"'
+ let g:tar_shq= "'"
endif
+" call Decho("g:tar_shq<".g:tar_shq.">")
endif
" ----------------
@@ -95,27 +119,32 @@ fun! tar#Browse(tarfile)
" give header
" call Decho("printing header")
- exe "$put ='".'\"'." tar.vim version ".g:loaded_tar."'"
- exe "$put ='".'\"'." Browsing tarfile ".a:tarfile."'"
- exe "$put ='".'\"'." Select a file with cursor and press ENTER"."'"
+ let lastline= line("$")
+ call setline(lastline+1,'" tar.vim version '.g:loaded_tar)
+ call setline(lastline+2,'" Browsing tarfile '.a:tarfile)
+ call setline(lastline+3,'" Select a file with cursor and press ENTER')
+ $put =''
0d
$
let tarfile= a:tarfile
if has("win32") && executable("cygpath")
" assuming cygwin
- let tarfile=substitute(system("cygpath -u ".tarfile),'\n$','','e')
+ let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
endif
let curlast= line("$")
if tarfile =~# '\.\(gz\|tgz\)$'
-" call Decho("exe silent r! gzip -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_browseoptions." - ")
- exe "silent r! gzip -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_browseoptions." - "
+" call Decho("1: exe silent r! gzip -d -c ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
+ exe "silent r! gzip -d -c -- ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
+ elseif tarfile =~# '\.lrp'
+" call Decho("2: exe silent r! cat -- ".s:Escape(tarfile)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - ")
+ exe "silent r! cat -- ".s:Escape(tarfile)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - "
elseif tarfile =~# '\.bz2$'
-" call Decho("exe silent r! bzip2 -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_browseoptions." - ")
- exe "silent r! bzip2 -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_browseoptions." - "
+" call Decho("3: exe silent r! bzip2 -d -c ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
+ exe "silent r! bzip2 -d -c -- ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
else
-" call Decho("exe silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".g:tar_shq.tarfile.g:tar_shq)
- exe "silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".g:tar_shq.tarfile.g:tar_shq
+" call Decho("4: exe silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".s:Escape(tarfile))
+ exe "silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".s:Escape(tarfile)
endif
if v:shell_error != 0
redraw!
@@ -166,13 +195,15 @@ fun! s:TarBrowseSelect()
let curfile= expand("%")
if has("win32") && executable("cygpath")
" assuming cygwin
- let tarfile=substitute(system("cygpath -u ".tarfile),'\n$','','e')
+ let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
endif
new
- wincmd _
+ if !exists("g:tar_nomax") || g:tar_nomax == 0
+ wincmd _
+ endif
let s:tblfile_{winnr()}= curfile
- call tar#Read("tarfile:".tarfile.':'.fname,1)
+ call tar#Read("tarfile:".tarfile.'::'.fname,1)
filetype detect
let &report= repkeep
@@ -185,27 +216,50 @@ fun! tar#Read(fname,mode)
" call Dfunc("tar#Read(fname<".a:fname.">,mode=".a:mode.")")
let repkeep= &report
set report=10
- let tarfile = substitute(a:fname,'tarfile:\(.\{-}\):.*$','\1','')
- let fname = substitute(a:fname,'tarfile:.\{-}:\(.*\)$','\1','')
+ let tarfile = substitute(a:fname,'tarfile:\(.\{-}\)::.*$','\1','')
+ let fname = substitute(a:fname,'tarfile:.\{-}::\(.*\)$','\1','')
if has("win32") && executable("cygpath")
" assuming cygwin
- let tarfile=substitute(system("cygpath -u ".tarfile),'\n$','','e')
+ let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
endif
" call Decho("tarfile<".tarfile.">")
" call Decho("fname<".fname.">")
+ if fname =~ '\.gz$' && executable("zcat")
+ let decmp= "|zcat"
+ let doro = 1
+ elseif fname =~ '\.bz2$' && executable("bzcat")
+ let decmp= "|bzcat"
+ let doro = 1
+ else
+ let decmp=""
+ let doro = 0
+ if fname =~ '\.gz$\|\.bz2$\|\.Z$\|\.zip$'
+ setlocal bin
+ endif
+ endif
+
if tarfile =~# '\.\(gz\|tgz\)$'
-" call Decho("exe silent r! gzip -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -OPxf - '".fname."'")
- exe "silent r! gzip -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_readoptions." - '".fname."'"
+" call Decho("5: exe silent r! gzip -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd.' -'.g:tar_readoptions.' - '.s:Escape(fname))
+ exe "silent r! gzip -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
+ elseif tarfile =~# '\.lrp$'
+" call Decho("6: exe silent r! cat ".s:Escape(tarfile)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp)
+ exe "silent r! cat -- ".s:Escape(tarfile)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
elseif tarfile =~# '\.bz2$'
-" call Decho("exe silent r! bzip2 -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_readoptions." - '".fname."'")
- exe "silent r! bzip2 -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_readoptions." - '".fname."'"
+" call Decho("7: exe silent r! bzip2 -d -c ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp)
+ exe "silent r! bzip2 -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
else
-" call Decho("exe silent r! ".g:tar_cmd." -".g:tar_readoptions." ".g:tar_shq.tarfile.g:tar_shq." ".g:tar_shq.fname.g:tar_shq)
- exe "silent r! ".g:tar_cmd." -".g:tar_readoptions." ".g:tar_shq.tarfile.g:tar_shq." ".g:tar_shq.fname.g:tar_shq
+" call Decho("8: exe silent r! ".g:tar_cmd." -".g:tar_readoptions." -- ".s:Escape(tarfile)." ".s:Escape(fname))
+ exe "silent r! ".g:tar_cmd." -".g:tar_readoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname).decmp
endif
+
+ if doro
+ " because the reverse process of compressing changed files back into the tarball is not currently supported
+ setlocal ro
+ endif
+
let w:tarfile= a:fname
- exe "file tarfile:".fname
+ exe "file tarfile::".fname
" cleanup
0d
@@ -251,7 +305,7 @@ fun! tar#Write(fname)
" attempt to change to the indicated directory
try
- exe "cd ".escape(tmpdir,' \')
+ exe "cd ".fnameescape(tmpdir)
catch /^Vim\%((\a\+)\)\=:E344/
redraw!
echohl Error | echo "***error*** (tar#Write) cannot cd to temporary directory" | Echohl None
@@ -270,24 +324,26 @@ fun! tar#Write(fname)
cd _ZIPVIM_
" call Decho("current directory now: ".getcwd())
- let tarfile = substitute(w:tarfile,'tarfile:\(.\{-}\):.*$','\1','')
- let fname = substitute(w:tarfile,'tarfile:.\{-}:\(.*\)$','\1','')
+ let tarfile = substitute(w:tarfile,'tarfile:\(.\{-}\)::.*$','\1','')
+ let fname = substitute(w:tarfile,'tarfile:.\{-}::\(.*\)$','\1','')
" handle compressed archives
if tarfile =~# '\.gz'
- call system("gzip -d ".tarfile)
+ call system("gzip -d -- ".tarfile)
let tarfile = substitute(tarfile,'\.gz','','e')
- let compress= "gzip '".tarfile."'"
+ let compress= "gzip ".s:Escape(tarfile)
elseif tarfile =~# '\.tgz'
- call system("gzip -d ".tarfile)
+ call system("gzip -d -- ".s:Escape(tarfile))
let tarfile = substitute(tarfile,'\.tgz','.tar','e')
- let compress= "gzip '".tarfile."'"
+ let compress= "gzip -- ".s:Escape(tarfile)
let tgz = 1
elseif tarfile =~# '\.bz2'
- call system("bzip2 -d ".tarfile)
+ call system("bzip2 -d -- ".s:Escape(tarfile))
let tarfile = substitute(tarfile,'\.bz2','','e')
- let compress= "bzip2 '".tarfile."'"
+ let compress= "bzip2 -- ".s:Escape(tarfile)
endif
+" call Decho("tarfile<".tarfile.">")
+" call Decho("compress<".compress.">")
if v:shell_error != 0
redraw!
@@ -309,26 +365,26 @@ fun! tar#Write(fname)
endif
" call Decho("tarfile<".tarfile."> fname<".fname.">")
- exe "w! ".fname
+ exe "w! ".fnameescape(fname)
if executable("cygpath")
- let tarfile = substitute(system("cygpath ".tarfile),'\n','','e')
+ let tarfile = substitute(system("cygpath ".s:Escape(tarfile)),'\n','','e')
endif
" delete old file from tarfile
-" call Decho("tar --delete -f '".tarfile."' '".fname."'")
- call system("tar --delete -f '".tarfile."' '".fname."'")
+" call Decho("system(tar --delete -f ".s:Escape(tarfile)." -- ".s:Escape(fname).")")
+ call system("tar --delete -f ".s:Escape(tarfile)." -- ".s:Escape(fname))
if v:shell_error != 0
redraw!
- echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".tarfile." with ".fname | echohl None
+ echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".fnameescape(tarfile)." with ".fnameescape(fname) | echohl None
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
else
" update tarfile with new file
-" call Decho("tar -".g:tar_writeoptions." '".tarfile."' '".fname."'")
- call system("tar -".g:tar_writeoptions." '".tarfile."' '".fname."'")
+" call Decho("tar -".g:tar_writeoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname))
+ call system("tar -".g:tar_writeoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname))
if v:shell_error != 0
redraw!
- echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".tarfile." with ".fname | echohl None
+ echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".fnameescape(tarfile)." with ".fnameescape(fname) | echohl None
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
elseif exists("compress")
" call Decho("call system(".compress.")")
@@ -372,19 +428,31 @@ endfun
fun! s:Rmdir(fname)
" call Dfunc("Rmdir(fname<".a:fname.">)")
if has("unix")
- call system("/bin/rm -rf ".a:fname)
+ call system("/bin/rm -rf -- ".s:Escape(a:fname))
elseif has("win32") || has("win95") || has("win64") || has("win16")
if &shell =~? "sh$"
- call system("/bin/rm -rf ".a:fname)
+ call system("/bin/rm -rf -- ".s:Escape(a:fname))
else
- call system("del /S ".a:fname)
+ call system("del /S ".s:Escape(a:fname))
endif
endif
" call Dret("Rmdir")
endfun
-" ------------------------------------------------------------------------
+" ---------------------------------------------------------------------
+" s:Escape: {{{2
+fun s:Escape(name)
+ " shellescape() was added by patch 7.0.111
+ if exists("*shellescape")
+ let qnameq= shellescape(a:name)
+ else
+ let qnameq= g:tar_shq . a:name . g:tar_shq
+ endif
+ return qnameq
+endfun
+
+" ---------------------------------------------------------------------
" Modelines And Restoration: {{{1
let &cpo= s:keepcpo
unlet s:keepcpo
-" vim:ts=8 fdm=marker
+" vim:ts=8 fdm=marker
View
1  runtime/autoload/xml/html32.vim
@@ -381,4 +381,3 @@ let g:xmldata_html32 = {
\ 'param': ['/>', ''],
\ }
\ }
-" vim:ft=vim:ff=unix
View
1  runtime/autoload/xml/html401s.vim
@@ -408,4 +408,3 @@ let g:xmldata_html401s = {
\ 'param': ['/>', ''],
\ }
\ }
-" vim:ft=vim:ff=unix
View
1  runtime/autoload/xml/xhtml10s.vim
@@ -408,4 +408,3 @@ let g:xmldata_xhtml10s = {
\ 'param': ['/>', ''],
\ }
\ }
-" vim:ft=vim:ff=unix
View
1  runtime/autoload/xml/xhtml10t.vim
@@ -458,4 +458,3 @@ let g:xmldata_xhtml10t = {
\ 'param': ['/>', ''],
\ }
\ }
-" vim:ft=vim:ff=unix
View
2  runtime/compiler/rubyunit.vim
@@ -32,4 +32,4 @@ CompilerSet errorformat=\%W\ %\\+%\\d%\\+)\ Failure:,
let &cpo = s:cpo_save
unlet s:cpo_save
-" vim: nowrap sw=2 sts=2 ts=8 ff=unix:
+" vim: nowrap sw=2 sts=2 ts=8:
View
2  runtime/doc/farsi.txt
@@ -1,4 +1,4 @@
-*farsi.txt* For Vim version 7.1. Last change: 2005 Mar 29
+*farsi.txt* For Vim version 7.2a. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
View
27 runtime/doc/filetype.txt
@@ -1,4 +1,4 @@
-*filetype.txt* For Vim version 7.1. Last change: 2007 May 10
+*filetype.txt* For Vim version 7.2a. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -122,7 +122,7 @@ The file types are also used for syntax highlighting. If the ":syntax on"
command is used, the file type detection is installed too. There is no need
to do ":filetype on" after ":syntax on".
-To disable one of the file types, add a line in the your filetype file, see
+To disable one of the file types, add a line in your filetype file, see
|remove-filetype|.
*filetype-detect*
@@ -502,6 +502,13 @@ For further discussion of fortran_have_tabs and the method used for the
detection of source format see |ft-fortran-syntax|.
+GIT COMMIT *ft-gitcommit-plugin*
+
+One command, :DiffGitCached, is provided to show a diff of the current commit
+in the preview window. It is equivalent to calling "git diff --cached" plus
+any arguments given to the command.
+
+
MAIL *ft-mail-plugin*
Options:
@@ -546,6 +553,20 @@ CTRL-] Jump to the manual page for the word under the cursor.
CTRL-T Jump back to the previous manual page.
+PDF *ft-pdf-plugin*
+
+Two maps, <C-]> and <C-T>, are provided to simulate a tag stack for navigating
+the PDF. The following are treated as tags:
+
+- The byte offset after "startxref" to the xref table
+- The byte offset after the /Prev key in the trailer to an earlier xref table
+- A line of the form "0123456789 00000 n" in the xref table
+- An object reference like "1 0 R" anywhere in the PDF
+
+These maps can be disabled with >
+ :let g:no_pdf_maps = 1
+<
+
RPM SPEC *ft-spec-plugin*
Since the text for this plugin is rather long it has been put in a separate
@@ -555,7 +576,7 @@ file: |pi_spec.txt|.
SQL *ft-sql*
Since the text for this plugin is rather long it has been put in a separate
-file: |sql.txt|.
+file: |ft_sql.txt|.
TEX *ft-tex-plugin*
View
515 runtime/doc/ft_ada.txt
@@ -0,0 +1,515 @@
+*ft_ada.txt* For Vim version 7.2a. Last change: 2008 Jun 21
+
+
+ ADA FILE TYPE PLUG-INS REFERENCE MANUAL~
+
+ADA *ada.vim*
+
+1. Syntax Highlighting |ft-ada-syntax|
+2. Plug-in |ft-ada-plugin|
+3. Omni Completion |ft-ada-omni|
+ 3.1 Omni Completion with "gnat xref" |gnat-xref|
+ 3.2 Omni Completion with "ctags" |ada-ctags|
+4. Compiler Support |ada-compiler|
+ 4.1 GNAT |compiler-gnat|
+ 4.1 Dec Ada |compiler-decada|
+5. References |ada-reference|
+ 5.1 Options |ft-ada-options|
+ 5.2 Functions |ft-ada-functions|
+ 5.3 Commands |ft-ada-commands|
+ 5.4 Variables |ft-ada-variables|
+ 5.5 Constants |ft-ada-constants|
+8. Extra Plug-ins |ada-extra-plugins|
+
+==============================================================================
+1. Syntax Highlighting ~
+ *ft-ada-syntax*
+
+This mode is designed for the 2005 edition of Ada ("Ada 2005"), which includes
+support for objected-programming, protected types, and so on. It handles code
+written for the original Ada language ("Ada83", "Ada87", "Ada95") as well,
+though code which uses Ada 2005-only keywords will be wrongly colored (such
+code should be fixed anyway). For more information about Ada, see
+http://www.adapower.com.
+
+The Ada mode handles a number of situations cleanly.
+
+For example, it knows that the "-" in "-5" is a number, but the same character
+in "A-5" is an operator. Normally, a "with" or "use" clause referencing
+another compilation unit is coloured the same way as C's "#include" is coloured.
+If you have "Conditional" or "Repeat" groups coloured differently, then "end
+if" and "end loop" will be coloured as part of those respective groups.
+
+You can set these to different colours using vim's "highlight" command (e.g.,
+to change how loops are displayed, enter the command ":hi Repeat" followed by
+the colour specification; on simple terminals the colour specification
+ctermfg=White often shows well).
+
+There are several options you can select in this Ada mode. See|ft-ada-options|
+for a complete list.
+
+To enable them, assign a value to the option. For example, to turn one on:
+ >
+ > let g:ada_standard_types = 1
+>
+To disable them use ":unlet". Example:
+>
+ > unlet g:ada_standard_types
+
+You can just use ":" and type these into the command line to set these
+temporarily before loading an Ada file. You can make these option settings
+permanent by adding the "let" command(s), without a colon, to your "~/.vimrc"
+file.
+
+Even on a slow (90Mhz) PC this mode works quickly, but if you find the
+performance unacceptable, turn on |g:ada_withuse_ordinary|.
+
+Syntax folding instructions (|fold-syntax|) are added when |g:ada_folding| is
+set.
+
+==============================================================================
+2. File type Plug-in ~
+ *ft-ada-indent* *ft-ada-plugin*
+
+The Ada plug-in provides support for:
+
+ - auto indenting (|indent.txt|)
+ - insert completion (|i_CTRL-N|)
+ - user completion (|i_CTRL-X_CTRL-U|)
+ - tag searches (|tagsrch.txt|)
+ - Quick Fix (|quickfix.txt|)
+ - backspace handling (|'backspace'|)
+ - comment handling (|'comments'|, |'commentstring'|)
+
+The plug-in only activates the features of the Ada mode whenever an Ada
+files is opened and add adds Ada related entries to the main and pop-up menu.
+
+==============================================================================
+3. Omni Completion ~
+ *ft-ada-omni*
+
+The Ada omni-completions (|i_CTRL-X_CTRL-O|) uses tags database created either
+by "gnat xref -v" or the "exuberant Ctags (http://ctags.sourceforge.net). The
+complete function will automatically detect which tool was used to create the
+tags file.
+
+------------------------------------------------------------------------------
+3.1 Omni Completion with "gnat xref" ~
+ *gnat-xref*
+
+GNAT XREF uses the compiler internal information (ali-files) to produce the
+tags file. This has the advantage to be 100% correct and the option of deep
+nested analysis. However the code must compile, the generator is quite
+slow and the created tags file contains only the basic Ctags information for
+each entry - not enough for some of the more advanced Vim code browser
+plug-ins.
+
+NOTE: "gnat xref -v" is very tricky to use as it has almost no diagnostic
+ output - If nothing is printed then usually the parameters are wrong.
+ Here some important tips:
+
+1) You need to compile your code first and use the "-aO" option to point to
+ your .ali files.
+2) "gnat xref -v ../Include/adacl.ads" won't work - use the "gnat xref -v
+ -aI../Include adacl.ads" instead.
+3) "gnat xref -v -aI../Include *.ad?" won't work - use "cd ../Include" and
+ then "gnat xref -v *.ad?"
+4) Project manager support is completely broken - don't even try "gnat xref
+ -Padacl.gpr".
+5) VIM is faster when the tags file is sorted - use "sort --unique
+ --ignore-case --output=tags tags" .
+6) Remember to insert "!_TAG_FILE_SORTED 2 %sort ui" as first line to mark
+ the file assorted.
+
+------------------------------------------------------------------------------
+3.2 Omni Completion with "ctags"~
+ *ada-ctags*
+
+Exuberant Ctags uses its own multi-language code parser. The parser is quite
+fast, produces a lot of extra information (hence the name "Exuberant Ctags")
+and can run on files which currently do not compile.
+
+There are also lots of other Vim-tools which use exuberant Ctags.
+
+You will need to install a version of the Exuberant Ctags which has Ada
+support patched in. Such a version is available from the GNU Ada Project
+(http://gnuada.sourceforge.net).
+
+The Ada parser for Exuberant Ctags is fairly new - don't expect complete
+support yet.
+
+==============================================================================
+4. Compiler Support ~
+ *ada-compiler*
+
+The Ada mode supports more then one Ada compiler and will automatically load the
+compiler set in|g:ada_default_compiler|whenever an Ada source is opened. The
+provided compiler plug-ins are split into the actual compiler plug-in and a
+collection of support functions and variables. This allows the easy
+development of specialized compiler plug-ins fine tuned to your development
+environment.
+
+------------------------------------------------------------------------------
+4.1 GNAT ~
+ *compiler-gnat*
+
+GNAT is the only free (beer and speech) Ada compiler available. There are
+several version available which differentiate in the licence terms used.
+
+The GNAT compiler plug-in will perform a compile on pressing <F7> and then
+immediately shows the result. You can set the project file to be used by
+setting:
+ >
+ > call g:gnat.Set_Project_File ('my_project.gpr')
+
+Setting a project file will also create a Vim session (|views-sessions|) so -
+like with the GPS - opened files, window positions etc. will remembered
+separately for all projects.
+
+ *gnat_members*
+GNAT OBJECT ~
+
+ *g:gnat.Make()*
+g:gnat.Make()
+ Calls|g:gnat.Make_Command|and displays the result inside a
+ |quickfix| window.
+
+ *g:gnat.Pretty()*
+g:gnat.Pretty()
+ Calls|g:gnat.Pretty_Command|
+
+ *g:gnat.Find()*
+g:gnat.Find()
+ Calls|g:gnat.Find_Command|
+
+ *g:gnat.Tags()*
+g:gnat.Tags()
+ Calls|g:gnat.Tags_Command|
+
+ *g:gnat.Set_Project_File()*
+g:gnat.Set_Project_File([{file}])
+ Set gnat project file and load associated session. An open
+ project will be closed and the session written. If called
+ without file name the file selector opens for selection of a
+ project file. If called with an empty string then the project
+ and associated session are closed.
+
+ *g:gnat.Project_File*
+g:gnat.Project_File string
+ Current project file.
+
+ *g:gnat.Make_Command*
+g:gnat.Make_Command string
+ External command used for|g:gnat.Make()| (|'makeprg'|).
+
+ *g:gnat.Pretty_Program*
+g:gnat.Pretty_Program string
+ External command used for|g:gnat.Pretty()|
+
+ *g:gnat.Find_Program*
+g:gnat.Find_Program string
+ External command used for|g:gnat.Find()|
+
+ *g:gnat.Tags_Command*
+g:gnat.Tags_Command string
+ External command used for|g:gnat.Tags()|
+
+ *g:gnat.Error_Format*
+g:gnat.Error_Format string
+ Error format (|'errorformat'|)
+
+------------------------------------------------------------------------------
+4.2 Dec Ada ~
+ *compiler-hpada* *compiler-decada*
+ *compiler-vaxada* *compiler-compaqada*
+
+Dec Ada (also known by - in chronological order - VAX Ada, Dec Ada, Compaq Ada
+and HP Ada) is a fairly dated Ada 83 compiler. Support is basic: <F7> will
+compile the current unit.
+
+The Dec Ada compiler expects the package name and not the file name to be
+passed a parameter. The compiler plug-in supports the usual file name
+convention to convert the file into a unit name. For separates both '-' and
+'__' are allowed.
+
+ *decada_members*
+DEC ADA OBJECT ~
+
+ *g:decada.Make()*
+g:decada.Make() function
+ Calls|g:decada.Make_Command|and displays the result inside a
+ |quickfix| window.
+
+ *g:decada.Unit_Name()*
+g:decada.Unit_Name() function
+ Get the Unit name for the current file.
+
+ *g:decada.Make_Command*
+g:decada.Make_Command string
+ External command used for|g:decadat.Make()| (|'makeprg'|).
+
+ *g:decada.Error_Format*
+g:decada.Error_Format| string
+ Error format (|'errorformat'|).
+
+==============================================================================
+5. References ~
+ *ada-reference*
+
+------------------------------------------------------------------------------
+5.1 Options ~
+ *ft-ada-options*
+
+ *g:ada_standard_types*
+g:ada_standard_types bool (true when exists)
+ Highlight types in package Standard (e.g., "Float")
+
+ *g:ada_space_errors*
+ *g:ada_no_trail_space_error*
+ *g:ada_no_tab_space_error*
+ *g:ada_all_tab_usage*
+g:ada_space_errors bool (true when exists)
+ Highlight extraneous errors in spaces ...
+ g:ada_no_trail_space_error
+ - but ignore trailing spaces at the end of a line
+ g:ada_no_tab_space_error
+ - but ignore tabs after spaces
+ g:ada_all_tab_usage
+ - highlight all tab use
+
+ *g:ada_line_errors*
+g:ada_line_errors bool (true when exists)
+ Highlight lines which are to long. Note: This highlighting
+ option is quite CPU intensive.
+
+ *g:ada_rainbow_color*
+g:ada_rainbow_color bool (true when exists)
+ Use rainbow colours for '(' and ')'. You need the
+ rainbow_parenthesis for this to work
+
+ *g:ada_folding*
+g:ada_folding set ('sigpft')
+ Use folding for Ada sources.
+ 's': activate syntax folding on load
+ 'p': fold packages
+ 'f': fold functions and procedures
+ 't': fold types
+ 'c': fold conditionals
+ 'g': activate gnat pretty print folding on load
+ 'i': lone 'is' folded with line above
+ 'b': lone 'begin' folded with line above
+ 'p': lone 'private' folded with line above
+ 'x': lone 'exception' folded with line above
+ 'i': activate indent folding on load
+
+ Note: Syntax folding is in an early (unusable) stage and
+ indent or gnat pretty folding is suggested.
+
+ For gnat pretty folding to work the following settings are
+ suggested: -cl3 -M79 -c2 -c3 -c4 -A1 -A2 -A3 -A4 -A5
+
+ For indent folding to work the following settings are
+ suggested: shiftwidth=3 softtabstop=3
+
+ *g:ada_abbrev*
+g:ada_abbrev bool (true when exists)
+ Add some abbreviations. This feature more or less superseded
+ by the various completion methods.
+
+ *g:ada_withuse_ordinary*
+g:ada_withuse_ordinary bool (true when exists)
+ Show "with" and "use" as ordinary keywords (when used to
+ reference other compilation units they're normally highlighted
+ specially).
+
+ *g:ada_begin_preproc*
+g:ada_begin_preproc bool (true when exists)
+ Show all begin-like keywords using the colouring of C
+ preprocessor commands.
+
+ *g:ada_omni_with_keywords*
+g:ada_omni_with_keywords
+ Add Keywords, Pragmas, Attributes to omni-completions
+ (|compl-omni|). Note: You can always complete then with user
+ completion (|i_CTRL-X_CTRL-U|).
+
+ *g:ada_extended_tagging*
+g:ada_extended_tagging enum ('jump', 'list')
+ use extended tagging, two options are available
+ 'jump': use tjump to jump.
+ 'list': add tags quick fix list.
+ Normal tagging does not support function or operator
+ overloading as these features are not available in C and
+ tagging was originally developed for C.
+
+ *g:ada_extended_completion*
+g:ada_extended_completion
+ Uses extended completion for <C-N> and <C-R> completions
+ (|i_CTRL-N|). In this mode the '.' is used as part of the
+ identifier so that 'Object.Method' or 'Package.Procedure' are
+ completed together.
+
+ *g:ada_gnat_extensions*
+g:ada_gnat_extensions bool (true when exists)
+ Support GNAT extensions.
+
+ *g:ada_with_gnat_project_files*
+g:ada_with_gnat_project_files bool (true when exists)
+ Add gnat project file keywords and Attributes.
+
+ *g:ada_default_compiler*
+g:ada_default_compiler string
+ set default compiler. Currently supported is 'gnat' and
+ 'decada'.
+
+An "exists" type is a boolean is considered true when the variable is defined
+and false when the variable is undefined. The value which the variable is
+set makes no difference.
+
+------------------------------------------------------------------------------
+5.3 Commands ~
+ *ft-ada-commands*
+
+:AdaRainbow *:AdaRainbow*
+ Toggles rainbow colour (|g:ada_rainbow_color|) mode for
+ '(' and ')'
+
+:AdaLines *:AdaLines*
+ Toggles line error (|g:ada_line_errors|) display
+
+:AdaSpaces *:AdaSpaces*
+ Toggles space error (|g:ada_space_errors|) display.
+
+:AdaTagDir *:AdaTagDir*
+ Creates tags file for the directory of the current file.
+
+:AdaTagFile *:AdaTagFile*
+ Creates tags file for the current file.
+
+:AdaTypes *:AdaTypes*
+ Toggles standard types (|g:ada_standard_types|) colour.
+
+:GnatFind *:GnatFind*
+ Calls |g:gnat.Find()|
+
+:GnatPretty *:GnatPretty*
+ Calls |g:gnat.Pretty()|
+
+:GnatTags *:GnatTags*
+ Calls |g:gnat.Tags()|
+
+------------------------------------------------------------------------------
+5.3 Variables ~
+ *ft-ada-variables*
+
+ *g:gnat*
+g:gnat object
+ Control object which manages GNAT compiles. The object
+ is created when the first Ada source code is loaded provided
+ that |g:ada_default_compiler|is set to 'gnat'. See|gnat_members|
+ for details.
+
+ *g:decada*
+g:decada object
+ Control object which manages Dec Ada compiles. The object
+ is created when the first Ada source code is loaded provided
+ that |g:ada_default_compiler|is set to 'decada'. See
+ |decada_members|for details.
+
+------------------------------------------------------------------------------
+5.4 Constants ~
+ *ft-ada-constants*
+
+All constants are locked. See |:lockvar| for details.
+
+ *g:ada#WordRegex*
+g:ada#WordRegex string
+ Regular expression to search for Ada words
+
+ *g:ada#DotWordRegex*
+g:ada#DotWordRegex string
+ Regular expression to search for Ada words separated by dots.
+
+ *g:ada#Comment*
+g:ada#Comment string
+ Regular expression to search for Ada comments
+
+ *g:ada#Keywords*
+g:ada#Keywords list of dictionaries
+ List of keywords, attributes etc. pp. in the format used by
+ omni completion. See |complete-items| for details.
+
+ *g:ada#Ctags_Kinds*
+g:ada#Ctags_Kinds dictionary of lists
+ Dictionary of the various kinds of items which the Ada support
+ for Ctags generates.
+
+------------------------------------------------------------------------------
+5.2 Functions ~
+ *ft-ada-functions*
+
+ada#Word([{line}, {col}]) *ada#Word()*
+ Return full name of Ada entity under the cursor (or at given
+ line/column), stripping white space/newlines as necessary.
+
+ada#List_Tag([{line}, {col}]) *ada#Listtags()*
+ List all occurrences of the Ada entity under the cursor (or at
+ given line/column) inside the quick-fix window
+
+ada#Jump_Tag ({ident}, {mode}) *ada#Jump_Tag()*
+ List all occurrences of the Ada entity under the cursor (or at
+ given line/column) in the tag jump list. Mode can either be
+ 'tjump' or 'stjump'.
+
+ada#Create_Tags ({option}) *ada#Create_Tags()*
+ Creates tag file using Ctags. The option can either be 'file'
+ for the current file, 'dir' for the directory of the current
+ file or a file name.
+
+gnat#Insert_Tags_Header() *gnat#Insert_Tags_Header()*
+ Adds the tag file header (!_TAG_) information to the current
+ file which are missing from the GNAT XREF output.
+
+ada#Switch_Syntax_Option ({option}) *ada#Switch_Syntax_Option()*
+ Toggles highlighting options on or off. Used for the Ada menu.
+
+ *gnat#New()*
+gnat#New ()
+ Create a new gnat object. See |g:gnat| for details.
+
+
+==============================================================================
+8. Extra Plugins ~
+ *ada-extra-plugins*
+
+You can optionally install the following extra plug-in. They work well with Ada
+and enhance the ability of the Ada mode.:
+
+backup.vim
+ http://www.vim.org/scripts/script.php?script_id=1537
+ Keeps as many backups as you like so you don't have to.
+
+rainbow_parenthsis.vim
+ http://www.vim.org/scripts/script.php?script_id=1561
+ Very helpful since Ada uses only '(' and ')'.
+
+nerd_comments.vim
+ http://www.vim.org/scripts/script.php?script_id=1218
+ Excellent commenting and uncommenting support for almost any
+ programming language.
+
+matchit.vim
+ http://www.vim.org/scripts/script.php?script_id=39
+ '%' jumping for any language. The normal '%' jump only works for '{}'
+ style languages. The Ada mode will set the needed search patters.
+
+taglist.vim
+ http://www.vim.org/scripts/script.php?script_id=273
+ Source code explorer sidebar. There is a patch for Ada available.
+
+The GNU Ada Project distribution (http://gnuada.sourceforge.net) of Vim
+contains all of the above.
+
+==============================================================================
+vim: textwidth=78 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab
+vim: filetype=help
View
2  runtime/doc/howto.txt
@@ -1,4 +1,4 @@
-*howto.txt* For Vim version 7.1. Last change: 2006 Apr 02
+*howto.txt* For Vim version 7.2a. Last change: 2006 Apr 02
VIM REFERENCE MANUAL by Bram Moolenaar
View
39 runtime/doc/intro.txt
@@ -1,4 +1,4 @@
-*intro.txt* For Vim version 7.1. Last change: 2007 May 07
+*intro.txt* For Vim version 7.2a. Last change: 2008 Jun 24
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -120,27 +120,13 @@ NOTE:
*subscribe-maillist*
If you want to join, send a message to
- <vim-help@vim.org>
+ <vim-subscribe@vim.org>
Make sure that your "From:" address is correct. Then the list server will
give you help on how to subscribe.
-You can retrieve old messages from the maillist software, and an index of
-messages. Ask vim-help for instructions.
-
-Archives are kept at: *maillist-archive*
-http://groups.yahoo.com/group/vim
-http://groups.yahoo.com/group/vimdev
-http://groups.yahoo.com/group/vimannounce
-http://groups.yahoo.com/group/vim-multibyte
-http://groups.yahoo.com/group/vim-mac
-
-
-Additional maillists:
-
-<vim-fr@club.voila.fr> *french-maillist*
- Vim list in the French language. Subscribe by sending a message to
- <vim-fr-subscribe@club.voila.fr>
- Or go to http://groups.yahoo.com/group/vim-fr.
+ *maillist-archive*
+For more information and archives look on the Vim maillist page:
+http://www.vim.org/maillist.php
Bug reports: *bugs* *bug-reports* *bugreport.vim*
@@ -220,6 +206,7 @@ Vim would never have become what it is now, without the help of these people!
Eric Fischer Mac port, 'cindent', and other improvements
Benji Fisher Answering lots of user questions
Bill Foster Athena GUI port
+ Google Lets me work on Vim one day a week
Loic Grenie xvim (ideas for multi windows version)
Sven Guckes Vim promotor and previous WWW page maintainer
Darren Hiebert Exuberant ctags
@@ -231,7 +218,7 @@ Vim would never have become what it is now, without the help of these people!
Steve Kirkendall Elvis
Roger Knobbe original port to Windows NT
Sergey Laskavy Vim's help from Moscow
- Felix von Leitner Maintainer of Vim Mailing Lists
+ Felix von Leitner Previous maintainer of Vim Mailing Lists
David Leonard Port of Python extensions to Unix
Avner Lottem Edit in right-to-left windows
Flemming Madsen X11 client-server, various features and patches
@@ -241,6 +228,8 @@ Vim would never have become what it is now, without the help of these people!
Sung-Hyun Nam Work on multi-byte versions
Vince Negri Win32 GUI and generic console enhancements
Steve Oualline Author of the first Vim book |frombook|
+ Dominique Pelle figuring out valgrind reports and fixes
+ A.Politz Many bug reports and some fixes
George V. Reilly Win32 port, Win32 GUI start-off
Stephen Riehm bug collector
Stefan Roemer various patches and help to users
@@ -560,7 +549,7 @@ Ex mode Like Command-line mode, but after entering a command
you remain in Ex mode. Very limited editing of the
command line. |Ex-mode|
-There are five ADDITIONAL modes. These are variants of the BASIC modes:
+There are six ADDITIONAL modes. These are variants of the BASIC modes:
*Operator-pending* *Operator-pending-mode*
Operator-pending mode This is like Normal mode, but after an operator
@@ -574,6 +563,12 @@ Replace mode Replace mode is a special case of Insert mode. You
If the 'showmode' option is on "-- REPLACE --" is
shown at the bottom of the window.
+Virtual Replace mode Virtual Replace mode is similar to Replace mode, but
+ instead of file characters you are replacing screen
+ real estate. See |Virtual-Replace-mode|.
+ If the 'showmode' option is on "-- VREPLACE --" is
+ shown at the bottom of the window.
+
Insert Normal mode Entered when CTRL-O given in Insert mode. This is
like Normal mode, but after executing one command Vim
returns to Insert mode.
@@ -608,7 +603,7 @@ CTRL-O in Insert mode you get a beep but you are still in Insert mode, type
TO mode ~
Normal Visual Select Insert Replace Cmd-line Ex ~
FROM mode ~
-Normal v V ^V *4 *1 R : / ? ! Q
+Normal v V ^V *4 *1 R gR : / ? ! Q
Visual *2 ^G c C -- : --
Select *5 ^O ^G *6 -- -- --
Insert <Esc> -- -- <Insert> -- --
View
2  runtime/doc/os_amiga.txt
@@ -1,4 +1,4 @@
-*os_amiga.txt* For Vim version 7.1. Last change: 2005 Mar 29
+*os_amiga.txt* For Vim version 7.2a. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar
View
2  runtime/doc/os_dos.txt
@@ -1,4 +1,4 @@
-*os_dos.txt* For Vim version 7.1. Last change: 2006 Mar 30
+*os_dos.txt* For Vim version 7.2a. Last change: 2006 Mar 30
VIM REFERENCE MANUAL by Bram Moolenaar
View
4 runtime/doc/os_win32.txt
@@ -1,4 +1,4 @@
-*os_win32.txt* For Vim version 7.1. Last change: 2007 Apr 22
+*os_win32.txt* For Vim version 7.2a. Last change: 2008 May 02
VIM REFERENCE MANUAL by George Reilly
@@ -306,7 +306,7 @@ A. When using :! to run an external command, you can run it with "start": >
:!start winfile.exe<CR>
< Using "start" stops Vim switching to another screen, opening a new console,
or waiting for the program to complete; it indicates that you are running a
- program that does not effect the files you are editing. Programs begun
+ program that does not affect the files you are editing. Programs begun
with :!start do not get passed Vim's open file handles, which means they do
not have to be closed before Vim.
To avoid this special treatment, use ":! start".
View
2  runtime/doc/pi_spec.txt
@@ -1,4 +1,4 @@
-*pi_spec.txt* For Vim version 7.1. Last change: 2006 Apr 24
+*pi_spec.txt* For Vim version 7.2a. Last change: 2006 Apr 24
by Gustavo Niemeyer ~
View
69 runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt* For Vim version 7.1. Last change: 2007 May 10
+*quickfix.txt* For Vim version 7.2a. Last change: 2008 Mar 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -141,8 +141,11 @@ command with 'l'.
current window is used instead of the quickfix list.
*:cq* *:cquit*
-:cq[uit] Quit Vim with an error code, so that the compiler
+:cq[uit][!] Quit Vim with an error code, so that the compiler
will not compile the same file again.
+ WARNING: All changes in files are lost! Also when the
+ [!] is not used. It works like ":qall!" |:qall|,
+ except that Vim returns a non-zero exit code.
*:cf* *:cfile*
:cf[ile][!] [errorfile] Read the error file and jump to the first error.
@@ -159,12 +162,12 @@ command with 'l'.
the location list.
-:cg[etfile][!] [errorfile] *:cg* *:cgetfile*
+:cg[etfile] [errorfile] *:cg* *:cgetfile*
Read the error file. Just like ":cfile" but don't
jump to the first error.
-:lg[etfile][!] [errorfile] *:lg* *:lgetfile*
+:lg[etfile] [errorfile] *:lg* *:lgetfile*
Same as ":cgetfile", except the location list for the
current window is used instead of the quickfix list.
@@ -229,15 +232,15 @@ command with 'l'.
current window is used instead of the quickfix list.
*:cgete* *:cgetexpr*
-:cgete[xpr][!] {expr} Create a quickfix list using the result of {expr}.
+:cgete[xpr] {expr} Create a quickfix list using the result of {expr}.
Just like ":cexpr", but don't jump to the first error.
*:lgete* *:lgetexpr*
-:lgete[xpr][!] {expr} Same as ":cgetexpr", except the location list for the
+:lgete[xpr] {expr} Same as ":cgetexpr", except the location list for the
current window is used instead of the quickfix list.
*:cad* *:caddexpr*
-:cad[dexpr][!] {expr} Evaluate {expr} and add the resulting lines to the
+:cad[dexpr] {expr} Evaluate {expr} and add the resulting lines to the
current quickfix list. If a quickfix list is not
present, then a new list is created. The current
cursor position will not be changed. See |:cexpr| for
@@ -246,7 +249,7 @@ command with 'l'.
:g/mypattern/caddexpr expand("%") . ":" . line(".") . ":" . getline(".")
<
*:lad* *:laddexpr*
-:lad[dexpr][!] {expr} Same as ":caddexpr", except the location list for the
+:lad[dexpr] {expr} Same as ":caddexpr", except the location list for the
current window is used instead of the quickfix list.
*:cl* *:clist*
@@ -280,6 +283,21 @@ If vim is built with |+autocmd| support, two autocommands are available for
running commands before and after a quickfix command (':make', ':grep' and so
on) is executed. See |QuickFixCmdPre| and |QuickFixCmdPost| for details.
+ *QuickFixCmdPost-example*
+When 'encoding' differs from the locale, the error messages may have a
+different encoding from what Vim is using. To convert the messages you can
+use this code: >
+ function QfMakeConv()
+ let qflist = getqflist()
+ for i in qflist
+ let i.text = iconv(i.text, "cp936", "utf-8")
+ endfor
+ call setqflist(qflist)
+ endfunction
+
+ au QuickfixCmdPost make call QfMakeConv()
+
+
=============================================================================
2. The error window *quickfix-window*
@@ -434,6 +452,7 @@ lists, use ":cnewer 99" first.
5. The errorfile is read using 'errorformat'.
6. If vim was built with |+autocmd|, all relevant
|QuickFixCmdPost| autocommands are executed.
+ See example below.
7. If [!] is not given the first error is jumped to.
8. The errorfile is deleted.
9. You can now move through the errors with commands
@@ -481,6 +500,25 @@ the screen and saved in a file the same time. Depending on the shell used
If 'shellpipe' is empty, the {errorfile} part will be omitted. This is useful
for compilers that write to an errorfile themselves (e.g., Manx's Amiga C).
+
+Using QuickFixCmdPost to fix the encoding ~
+
+It may be that 'encoding' is set to an encoding that differs from the messages
+your build program produces. This example shows how to fix this after Vim has
+read the error messages: >
+
+ function QfMakeConv()
+ let qflist = getqflist()
+ for i in qflist
+ let i.text = iconv(i.text, "cp936", "utf-8")
+ endfor
+ call setqflist(qflist)
+ endfunction
+
+ au QuickfixCmdPost make call QfMakeConv()
+
+(Example by Faque Cheng)
+
==============================================================================
5. Using :vimgrep and :grep *grep* *lid*
@@ -751,6 +789,18 @@ work, because Vim is then running in the same process as the compiler and
stdin (standard input) will not be interactive.
+PERL *quickfix-perl* *compiler-perl*
+
+The Perl compiler plugin doesn't actually compile, but invokes Perl's internal
+syntax checking feature and parses the output for possible errors so you can
+correct them in quick-fix mode.
+
+Warnings are forced regardless of "no warnings" or "$^W = 0" within the file
+being checked. To disable this set g:perl_compiler_force_warnings to a zero
+value. For example: >
+ let g:perl_compiler_force_warnings = 0
+
+
PYUNIT COMPILER *compiler-pyunit*
This is not actually a compiler, but a unit testing framework for the
@@ -1379,7 +1429,8 @@ by Vim.
*errorformat-Perl*
In $VIMRUNTIME/tools you can find the efm_perl.pl script, which filters Perl
error messages into a format that quickfix mode will understand. See the
-start of the file about how to use it.
+start of the file about how to use it. (This script is deprecated, see
+|compiler-perl|.)
View
7 runtime/doc/remote.txt
@@ -1,4 +1,4 @@
-*remote.txt* For Vim version 7.1. Last change: 2006 Apr 30
+*remote.txt* For Vim version 7.2a. Last change: 2008 May 24
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -64,7 +64,10 @@ The following command line arguments are available:
server {name} instead of the default (see
below).
*--remote-send*
- --remote-send {keys} Send {keys} to server and exit.
+ --remote-send {keys} Send {keys} to server and exit. The {keys}
+ are not mapped. Special key names are
+ recognized, e.g., "<CR>" results in a CR
+ character.
*--remote-expr*
--remote-expr {expr} Evaluate {expr} in server and print the result
on stdout.
View
2  runtime/doc/scroll.txt
@@ -1,4 +1,4 @@
-*scroll.txt* For Vim version 7.1. Last change: 2006 Aug 27
+*scroll.txt* For Vim version 7.2a. Last change: 2006 Aug 27
VIM REFERENCE MANUAL by Bram Moolenaar
View
161 runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt* For Vim version 7.1. Last change: 2007 May 11
+*syntax.txt* For Vim version 7.2a. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -103,7 +103,7 @@ To put this into a mapping, you can use: >
\ endif <CR>
[using the |<>| notation, type this literally]
-Details
+Details:
The ":syntax" commands are implemented by sourcing a file. To see exactly how
this works, look in the file:
command file ~
@@ -531,12 +531,12 @@ one of the first five lines in the file.
The syntax type can always be overruled for a specific buffer by setting the
b:asmsyntax variable: >
- :let b:asmsyntax=nasm
+ :let b:asmsyntax = "nasm"
If b:asmsyntax is not set, either automatically or by hand, then the value of
the global variable asmsyntax is used. This can be seen as a default assembly
language: >
- :let asmsyntax=nasm
+ :let asmsyntax = "nasm"
As a last resort, if nothing is defined, the "asm" syntax is used.
@@ -613,7 +613,7 @@ C *c.vim* *ft-c-syntax*
A few things in C highlighting are optional. To enable them assign any value
to the respective variable. Example: >
- :let c_comment_strings=1
+ :let c_comment_strings = 1
To disable them use ":unlet". Example: >
:unlet c_comment_strings
@@ -626,6 +626,8 @@ c_no_tab_space_error ... but no spaces before a <Tab>
c_no_bracket_error don't highlight {}; inside [] as errors
c_no_curly_error don't highlight {}; inside [] and () as errors;
except { and } in first column
+c_curly_error highlight a missing }; this forces syncing from the
+ start of the file, can be slow
c_no_ansi don't do standard ANSI types and constants
c_ansi_typedefs ... but do standard ANSI types
c_ansi_constants ... but do standard ANSI constants
@@ -674,7 +676,6 @@ highlighting for cErrInParen and cErrInBracket.
If you want to use folding in your C files, you can add these lines in a file
an the "after" directory in 'runtimepath'. For Unix this would be
~/.vim/after/syntax/c.vim. >
- syn region myFold start="{" end="}" transparent fold
syn sync fromstart
set foldmethod=syntax
@@ -1475,11 +1476,10 @@ which are used for the statement itself, special characters used in debug
strings, strings, boolean constants and types (this, super) respectively. I
have opted to chose another background for those statements.
-In order to help you to write code that can be easily ported between
-Java and C++, all C++ keywords are marked as error in a Java program.
-However, if you use them regularly, you may want to define the following
-variable in your .vimrc file: >
- :let java_allow_cpp_keywords=1
+In order to help you write code that can be easily ported between Java and
+C++, all C++ keywords can be marked as an error in a Java program. To
+have this add this line in your .vimrc file: >
+ :let java_allow_cpp_keywords = 0
Javadoc is a program that takes special comments out of Java program files and
creates HTML pages. The standard configuration will highlight this HTML code
@@ -2402,7 +2402,7 @@ vimrc file: >
SH *sh.vim* *ft-sh-syntax* *ft-bash-syntax* *ft-ksh-syntax*
-This covers the "normal" Unix (Borne) sh, bash and the Korn shell.
+This covers the "normal" Unix (Bourne) sh, bash and the Korn shell.
Vim attempts to determine which shell type is in use by specifying that
various filenames are of specific types: >
@@ -2425,23 +2425,30 @@ variables in your <.vimrc>:
let g:is_posix = 1
< bash: >
let g:is_bash = 1
-< sh: (default) Borne shell >
+< sh: (default) Bourne shell >
let g:is_sh = 1
If there's no "#! ..." line, and the user hasn't availed himself/herself of a
default sh.vim syntax setting as just shown, then syntax/sh.vim will assume
-the Borne shell syntax. No need to quote RFCs or market penetration
-statistics in error reports, please -- just select the default version of
-the sh your system uses in your <.vimrc>.
+the Bourne shell syntax. No need to quote RFCs or market penetration
+statistics in error reports, please -- just select the default version of the
+sh your system uses in your <.vimrc>.
-If, in your <.vimrc>, you set >
- let g:sh_fold_enabled= 1
+The syntax/sh.vim file provides several levels of syntax-based folding: >
+
+ let g:sh_fold_enabled= 0 (default, no syntax folding)
+ let g:sh_fold_enabled= 1 (enable function folding)
+ let g:sh_fold_enabled= 2 (enable heredoc folding)
+ let g:sh_fold_enabled= 4 (enable if/do/for folding)
>
then various syntax items (HereDocuments and function bodies) become
-syntax-foldable (see |:syn-fold|).
+syntax-foldable (see |:syn-fold|). You also may add these together
+to get multiple types of folding: >
-If you notice highlighting errors while scrolling backwards, which are fixed
-when redrawing with CTRL-L, try setting the "sh_minlines" internal variable
+ let g:sh_fold_enabled= 3 (enables function and heredoc folding)
+
+If you notice highlighting errors while scrolling backwards which are fixed
+when one redraws with CTRL-L, try setting the "sh_minlines" internal variable
to a larger number. Example: >
let sh_minlines = 500
@@ -2504,7 +2511,7 @@ scripts. You can change Vim's default from Oracle to any of the current SQL
supported types. You can also easily alter the SQL dialect being used on a
buffer by buffer basis.
-For more detailed instructions see |sql.txt|.
+For more detailed instructions see |ft_sql.txt|.
TCSH *tcsh.vim* *ft-tcsh-syntax*
@@ -2531,7 +2538,7 @@ number is that redrawing can become slow.
TEX *tex.vim* *ft-tex-syntax*
-*tex-folding*
+ *tex-folding*
Want Syntax Folding? ~
As of version 28 of <syntax/tex.vim>, syntax-based folding of parts, chapters,
@@ -2541,7 +2548,15 @@ in your <.vimrc>, and :set fdm=syntax. I suggest doing the latter via a
modeline at the end of your LaTeX file: >
% vim: fdm=syntax
<
-*tex-runon*
+ *tex-nospell*
+Don't Want Spell Checking In Comments? ~
+
+Some folks like to include things like source code in comments and so would
+prefer that spell checking be disabled in comments in LaTeX files. To do
+this, put the following in your <.vimrc>: >
+ let g:tex_comment_nospell= 1
+<
+ *tex-runon*
Run-on Comments/Math? ~
The <syntax/tex.vim> highlighting supports TeX, LaTeX, and some AmsTeX. The
@@ -2554,7 +2569,7 @@ special "TeX comment" has been provided >
which will forcibly terminate the highlighting of either a texZone or a
texMathZone.
-*tex-slow*
+ *tex-slow*
Slow Syntax Highlighting? ~
If you have a slow computer, you may wish to reduce the values for >
@@ -2564,8 +2579,8 @@ If you have a slow computer, you may wish to reduce the values for >
increase them. This primarily affects synchronizing (i.e. just what group,
if any, is the text at the top of the screen supposed to be in?).
-*tex-morecommands* *tex-package*
-Wish To Highlight More Commmands? ~
+ *tex-morecommands* *tex-package*
+Want To Highlight More Commands? ~
LaTeX is a programmable language, and so there are thousands of packages full
of specialized LaTeX commands, syntax, and fonts. If you're using such a
@@ -2574,7 +2589,7 @@ it. However, clearly this is impractical. So please consider using the
techniques in |mysyntaxfile-add| to extend or modify the highlighting provided
by syntax/tex.vim.
-*tex-error*
+ *tex-error*
Excessive Error Highlighting? ~
The <tex.vim> supports lexical error checking of various sorts. Thus,
@@ -2584,7 +2599,7 @@ you may put in your <.vimrc> the following statement: >
let tex_no_error=1
and all error checking by <syntax/tex.vim> will be suppressed.
-*tex-math*
+ *tex-math*
Need a new Math Group? ~
If you want to include a new math group in your LaTeX, the following
@@ -2599,7 +2614,7 @@ and then to the call to it in .vim/after/syntax/tex.vim.
The "starform" variable, if true, implies that your new math group
has a starred form (ie. eqnarray*).
-*tex-style*
+ *tex-style*
Starting a New Style? ~
One may use "\makeatletter" in *.tex files, thereby making the use of "@" in
@@ -2624,36 +2639,56 @@ set "tf_minlines" to the value you desire. Example: >
:let tf_minlines = your choice
-VIM *vim.vim* *ft-vim-syntax*
-
-There is a tradeoff between more accurate syntax highlighting versus
-screen updating speed. To improve accuracy, you may wish to increase
-the g:vim_minlines variable. The g:vim_maxlines variable may be used
-to improve screen updating rates (see |:syn-sync| for more on this).
-
- g:vim_minlines : used to set synchronization minlines
- g:vim_maxlines : used to set synchronization maxlines
-
-The g:vimembedscript option allows for somewhat faster loading of syntax
-highlighting for vim scripts at the expense of supporting syntax highlighting
-for external scripting languages (currently perl, python, ruby, and tcl).
-
- g:vimembedscript == 1 (default) <vim.vim> will allow highlighting
- g:vimembedscript doesn't exist of supported embedded scripting
- languages: perl, python, ruby and
- tcl.
-
- g:vimembedscript == 0 Syntax highlighting for embedded
- scripting languages will not be
- loaded.
+VIM *vim.vim* *ft-vim-syntax*
+ *g:vimsyn_minlines* *g:vimsyn_maxlines*
+There is a tradeoff between more accurate syntax highlighting versus screen
+updating speed. To improve accuracy, you may wish to increase the
+g:vimsyn_minlines variable. The g:vimsyn_maxlines variable may be used to
+improve screen updating rates (see |:syn-sync| for more on this). >
+ g:vimsyn_minlines : used to set synchronization minlines
+ g:vimsyn_maxlines : used to set synchronization maxlines
+<
+ (g:vim_minlines and g:vim_maxlines are deprecated variants of
+ these two options)
+
+ *g:vimsyn_embed*
+The g:vimsyn_embed option allows users to select what, if any, types of
+embedded script highlighting they wish to have. >
+
+ g:vimsyn_embed == 0 : don't embed any scripts
+ g:vimsyn_embed =~ 'm' : embed mzscheme (but only if vim supports it)
+ g:vimsyn_embed =~ 'p' : embed perl (but only if vim supports it)
+ g:vimsyn_embed =~ 'P' : embed python (but only if vim supports it)
+ g:vimsyn_embed =~ 'r' : embed ruby (but only if vim supports it)
+ g:vimsyn_embed =~ 't' : embed tcl (but only if vim supports it)
+<
+By default, g:vimsyn_embed is "mpPr"; ie. syntax/vim.vim will support
+highlighting mzscheme, perl, python, and ruby by default. Vim's has("tcl")
+test appears to hang vim when tcl is not truly available. Thus, by default,
+tcl is not supported for embedding (but those of you who like tcl embedded in
+their vim syntax highlighting can simply include it in the g:vimembedscript
+option).
+ *g:vimsyn_folding*
+
+Some folding is now supported with syntax/vim.vim: >
+
+ g:vimsyn_folding == 0 or doesn't exist: no syntax-based folding
+ g:vimsyn_folding =~ 'a' : augroups
+ g:vimsyn_folding =~ 'f' : fold functions
+ g:vimsyn_folding =~ 'm' : fold mzscheme script
+ g:vimsyn_folding =~ 'p' : fold perl script
+ g:vimsyn_folding =~ 'P' : fold python script
+ g:vimsyn_folding =~ 'r' : fold ruby script
+ g:vimsyn_folding =~ 't' : fold tcl script
+
+ *g:vimsyn_noerror*
Not all error highlighting that syntax/vim.vim does may be correct; VimL is a
difficult language to highlight correctly. A way to suppress error
-highlighting is to put: >
-
- let g:vimsyntax_noerror = 1
+highlighting is to put the following line in your |vimrc|: >
-in your |vimrc|.
+ let g:vimsyn_noerror = 1
+<
XF86CONFIG *xf86conf.vim* *ft-xf86conf-syntax*
@@ -3158,7 +3193,7 @@ line break.
fold *:syn-fold*
-The "fold" argument makes the fold level increased by one for this item.
+The "fold" argument makes the fold level increase by one for this item.
Example: >
:syn region myFold start="{" end="}" transparent fold
:syn sync fromstart
@@ -3320,7 +3355,7 @@ use another character that is not used in the pattern. Examples: >
:syntax region String start=+"+ end=+"+ skip=+\\"+
See |pattern| for the explanation of what a pattern is. Syntax patterns are
-always interpreted like the 'magic' options is set, no matter what the actual
+always interpreted like the 'magic' option is set, no matter what the actual
value of 'magic' is. And the patterns are interpreted like the 'l' flag is
not included in 'cpoptions'. This was done to make syntax files portable and
independent of 'compatible' and 'magic' settings.
@@ -3379,6 +3414,8 @@ Notes:
- The highlighted area will never be outside of the matched text.
- A negative offset for an end pattern may not always work, because the end
pattern may be detected when the highlighting should already have stopped.
+- Until Vim 7.2 the offsets were counted in bytes instead of characters. This
+ didn't work well for multi-byte characters.
- The start of a match cannot be in a line other than where the pattern
matched. This doesn't work: "a\nb"ms=e. You can make the highlighting
start in another line, this does work: "a\nb"hs=e.
@@ -3500,9 +3537,9 @@ single name.
remove={group-name}..
The specified groups are removed from the cluster.
-A cluster so defined may be referred to in a contains=.., nextgroup=.., add=..
-or remove=.. list with a "@" prefix. You can also use this notation to
-implicitly declare a cluster before specifying its contents.
+A cluster so defined may be referred to in a contains=.., containedin=..,
+nextgroup=.., add=.. or remove=.. list with a "@" prefix. You can also use
+this notation to implicitly declare a cluster before specifying its contents.
Example: >
:syntax match Thing "# [^#]\+ #" contains=@ThingMembers
@@ -4194,7 +4231,7 @@ WildMenu current match in 'wildmenu' completion
The 'statusline' syntax allows the use of 9 different highlights in the
statusline and ruler (via 'rulerformat'). The names are User1 to User9.
-For the GUI you can use these groups to set the colors for the menu,
+For the GUI you can use the following groups to set the colors for the menu,
scrollbars and tooltips. They don't have defaults. This doesn't work for the
Win32 GUI. Only three highlight arguments have any effect here: font, guibg,
and guifg.
View
2  runtime/doc/tagsrch.txt
@@ -1,4 +1,4 @@
-*tagsrch.txt* For Vim version 7.1. Last change: 2006 Apr 24
+*tagsrch.txt* For Vim version 7.2a. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Bram Moolenaar
View
523 runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.1. Last change: 2007 May 12
+*todo.txt* For Vim version 7.2a. Last change: 2008 Jun 24
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,50 +30,125 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Patch to make virtcol([123, '$']) do the right thing. (Michael Schaap)
+Have a look at patch for utf-8 line breaking. (Yongwei Wu, 2008 Mar 1, Mar 23)
-Insert mode completion: CTRL-N and CTRL-P work differently and they both don't
-work as expected. (Bernhard Walle, 2007 Feb 27)
+Drawing popup menu isn't quite right when there are double-wide characters.
+Yukihiro Nakadaira is working on a solution (2008 Jun 22). Use mb_fix_col().
-When 'rightleft' is set the completion menu is positioned wrong. (Baha-Eddine
-MOKADEM)
+When reallocating cmdline xp_pattern becomes invalid. Move expand_T xpc into
+ccline? (Dominique Pelle)
-glob() doesn't work correctly with single quotes and 'shell' set to /bin/sh.
-(Adri Verhoef, Charles Campbell 2007 Mar 26)
+Wildmenu not deleted: "gvim -u NONE", ":set nocp wildmenu cmdheight=3
+laststatus=2", CTRL-D CTRL-H CTRL-H CTRL-H. (A.Politz, 2008 April 1)
+Works OK with Vim in an xterm.
-Splitting quickfix window messes up window layout. (Marius Gedminas, 2007 Apr
-25)
+Fix for matchparen HL doesn't work. beep.
-Replace ccomplete.vim by cppcomplete.vim from www.vim.org? script 1520
-(Martin Stubenschrott)
- ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .
+Crash with dragn-n-drop of file combined with netrw (Marius Gedminas, 2008 Jun
+11) I can't reproduce it.
+
+Win32: associating a type with Vim doesn't take care of space after a
+backslash? (Robert Vibrant, 2008 Jun 5)
+
+":let &g:tw = 44" sets the local option value. (Cyril Slobin, 2008 Apr 25)
+
+After using <Tab> for command line completion after ":ta blah" and getting E33
+(no tags file), further editing the command to e.g., ":echo 'blah'", the
+command is not executed.
+
+When 'bomb' is changed the window title is updated to show/hide a "+", but the
+tab page label isn't. (Patrick Texier, 2008 Jun 24)
+
+Despite adding save_subexpr() this still doesn't work properly:
+Regexp: matchlist('12a4aaa', '^\(.\{-}\)\(\%5c\@<=a\+\)\(.\+\)\?')
+Returns ['12a4', 'aaa', '4aaa'], should be ['12a4', 'aaa', '']
+Backreference not cleared when retrying after \@<= fails?
+(Brett Stahlman, 2008 March 8)
+
+Win32: remote editing fails when the current directory name contains "[".
+(Ivan Tishchenko, Liu Yubao) Suggested patch by Chris Lubinski: Avoid
+escaping characters where the backslash is not removed later. Asked Chris for
+an alternate solution, also for src/ex_getln.c.
+
+When adding path to 'tags' with a wildcard, it appears only a first match is
+used. (Erik Falor, 2008 April 18) Or is it that a wildcard in the file name
+is not supported, only in the path?
+
+The str2special() function doesn't handle multi-byte characters properly.
+Patch from Vladimir Vichniakov, 2007 Apr 24.
+Should clean up the whole function. Also allow modifiers like <S-Char-32>?
+find_special_key() also has this problem.
+
+Problem with 'langmap' parsing. (James Vega, 2008 Jan 27)
+Problem with 'langmap' being used on the rhs of a mapping. (Nikolai Weibull,
+2008 May 14)
+
+Problem with CTRL-F. (Charles Campbell, 2008 March 21)
+Only happens with "gvim -geometry "160x26+4+27" -u NONE -U NONE prop.c".
+'lines' is 54. (2008 March 27)
-Making the German sharp s uppercase doesn't work properly: one character less
-is uppercased in "gUe".
-Also: latin2 has the same character but it isn't uppercased there.
+Unexpectedly inserting a double quote. (Anton Woellert, 2008 Mar 23)
+Works OK when 'cmdheight' is 2.
+
+The utf class table is missing some entries:
+ 0x2212, minus sign
+ 0x2217, star
+ 0x2500, bar
+ 0x26ab, circle
+
+Visual line mode doesn't highlight properly when 'showbreak' is used and the
+line doesn't fit. (Dasn, 2008 May 1)
+
+GUI: In Normal mode can't yank the modeless selection. Make "gy" do this?
+Works like CTRL-Y in Command line mode.
+
+Mac: patch for mouse wheel scroll under Leopard. (Eckehard Berns, 2007 Dec 7)
Mac: After a ":vsplit" the left scrollbar doesn't appear until 'columns' is
changed or the window is resized.
-Mac: Patch for Mac GUI tabline. (Nicolas Weber, 2006 Jul 18, Update 2007 Feb)
- New update v6 ~/tmp/guitab.v6.diff (Kyle Wheeler)
+Mac: Patch for configure: remove arch from ruby link args. (Knezevic, 2008
+Mar 5) Alternative: Kazuki Sakamoto, Mar 7.
+
+":emenu" works with the translated menu name. Should also work with the
+untranslated name. Would need to store both the English and the translated
+name. Patch by Bjorn Winckler, 2008 Mar 30.
+
+C't: On utf-8 system, editing file with umlaut through Gnome results in URL
+with %nn%nn, which is taken as two characters instead of one.
+Try to reproduce at work.
+
+Patch for redo register. (Ben Schmidt, 2007 Oct 19)
+Await response to question to make the register writable.
-When 'virtualedit' is set a "p" of a block just past the end of the line
-inserts before the cursor. (Engelke)
+Problem with 'ts' set to 9 and 'showbreak' to ">>>". (Matthew Winn, 2007 Oct
+1)
+
+"vim -O aa aa" gives only one window. (Zdenek Sekera, 2008 Apr 16)
+
+Including NFA regexp code:
+Use "\%#= to set the engine: 0 = automatic, 1 = backtracking, 2 = new.
+Useful in tests.
+Performance tests:
+- ~/vim/test/veryslow.js (file from Daniel Fetchinson)
+- ~/vim/test/slowsearch
+- ~/vim/test/rgb.vim
+- search for a.*e*exn in the vim executable. Go to last line to use
+ 'hlsearch'.
Using Aap to build Vim: add remarks about how to set personal preferences.
Example on http://www.calmar.ws/tmp/aap.html
-GTK: 'bsdir' doesn't work. Sometimes get a "gtk critical error".
-Moved some code to append file name to further down in gui_gtk.c
-gui_mch_browse(), but "last" value of 'bsdir' still doesn't work.
-
-C syntax: "#define x {" The macro should terminate at the end of the line,
-not continue in the next line. (Kelvin Lee, 2006 May 24)
+Syntax highlighting wrong for transparent region. (Doug Kearns, 2007 Feb 26)
+Bug in using a transparent syntax region. (Hanlen in vim-dev maillist, 2007
+Jul 31)
C syntax: {} inside () causes following {} to be highlighted as error.
(Michalis Giannakidis, 2006 Jun 1)
+When 'diffopt' has "context:0" a single deleted line causes two folds to merge
+and mess up syncing. (Austin Jennings, 2008 Jan 31)
+
Gnome improvements: Edward Catmur, 2007 Jan 7
Also use Save/Discard for other GUIs
@@ -82,53 +157,62 @@ New PHP syntax file, use it? (Peter Hodge)
'foldcolumn' in modeline applied to wrong window when using a session. (Teemu
Likonen, March 19)
-Syntax highlighting wrong for transparent region. (Doug Kearns, 2007 Feb 26)
+Replace ccomplete.vim by cppcomplete.vim from www.vim.org? script 1520
+by Vissale Neang. (Martin Stubenschrott)
+Asked Vissale to make the scripts more friendly for the Vim distribution.
+New version received 2008 Jan 6.
+
+Cheng Fang made javacomplete. (2007 Aug 11)
+Asked about latest version: 0.77.1 is on www.vim.org.
More AmigaOS4 patches. (Peter Bengtsson, Nov 9)
-Add v:searchforward variable. Patch by Yakov Lerner, 2006 Nov 18.
+globpath() doesn't work as expected. The example shows using 'path', but the
+"**8" form and upwards search are not supported.
+
+Error when cancelling completion menu and auto-formatting. (Tim Weber, 2008
+Apr 17)
-Redraw problem in loop. (Yakov Lerner, 2006 Sep 7)
+Problem with compound words? (Bert, 2008 May 6)
+No warning for when flags are defined after they are used in an affix.
+
+With Visual selection, "r" and then CTRL-C Visual mode is stopped but the
+highlighting is not removed.
+
+Screen redrawing when continuously updating the buffer and resizing the
+terminal. (Yakov Lerner, 2006 Sept 7)
Add option settings to help ftplugin. (David Eggum, 2006 Dec 18)
-Use new dutch wordlist for spelling? http://www.opentaal.org/
-See remarks from Adri, 2007 Feb 9.
+Autoconf problem: when checking for iconv library we may add -L/usr/local/lib,
+but when compiling further tests -liconv is added without the -L argument,
+that may fail (e.g., sizeof(int)). (Blaine, 2007 Aug 21)
When opening quickfix window, disable spell checking?
+Popup menu redraw: Instead of first redrawing the text and then drawing the
+popup menu over it, first draw the new popup menu, remember its position and
+size and then redraw the text, skipping the characters under the popup menu.
+This should avoid flicker. Other solution by A.Politz, 2007 Aug 22.
+
+Spell checking: Add a way to specify punctuation characters. Add the
+superscript numbers by default: 0x2070, 0xb9, 0xb2, 0xb3, 0x2074 - 0x2079.
+
Windows 98: pasting from the clipboard with text from another application has
a trailing NUL. (Joachim Hofmann) Perhaps the length specified for CF_TEXT
isn't right?
-Win32: When 'encoding' is "latin1" 'ignorecase' doesn't work for characters
-with umlaut. (Joachim Hofmann) toupper_tab[] and tolower_tab[] are not filled
-properly?
-