# HG changeset patch # User vimboss # Date 1143240413 0 # Node ID d8f905020502b0f35d810f27b4d5d28689bb7764 # Parent 6beb2c667935501b9f9ce6e7c3c9ccccea98fcd4 updated for version 7.0b diff --git a/Contents b/Contents --- a/Contents +++ b/Contents @@ -9,10 +9,10 @@ Vim Vi IMproved. A clone of the UNIX t messages, shows current file name in window title, on-line help, rectangular cut/paste, etc., etc., etc... - Version 7.0aa. Also runs under UNIX, MSDOS and other systems. - vim70aart.tgz contains the documentation and syntax files. - vim70aabin.tgz contains the binaries. - vim70aasrc.tgz contains the sources. + Version 7.0b. Also runs under UNIX, MSDOS and other systems. + vim70brt.tgz contains the documentation and syntax files. + vim70bbin.tgz contains the binaries. + vim70bsrc.tgz contains the sources. Author: Bram Moolenaar et al. diff --git a/Filelist b/Filelist --- a/Filelist +++ b/Filelist @@ -31,7 +31,7 @@ SRC_ALL = \ src/gui_beval.c \ src/gui_beval.h \ src/hardcopy.c \ - src/hashtable.c \ + src/hashtab.c \ src/keymap.h \ src/macros.h \ src/main.c \ @@ -52,7 +52,7 @@ SRC_ALL = \ src/ops.c \ src/option.c \ src/option.h \ - src/popupmenu.c \ + src/popupmnu.c \ src/quickfix.c \ src/regexp.c \ src/regexp.h \ @@ -96,7 +96,7 @@ SRC_ALL = \ src/proto/gui.pro \ src/proto/gui_beval.pro \ src/proto/hardcopy.pro \ - src/proto/hashtable.pro \ + src/proto/hashtab.pro \ src/proto/main.pro \ src/proto/mark.pro \ src/proto/mbyte.pro \ @@ -111,7 +111,7 @@ SRC_ALL = \ src/proto/normal.pro \ src/proto/ops.pro \ src/proto/option.pro \ - src/proto/popupmenu.pro \ + src/proto/popupmnu.pro \ src/proto/quickfix.pro \ src/proto/regexp.pro \ src/proto/screen.pro \ diff --git a/README_amisrc.txt b/README_amisrc.txt --- a/README_amisrc.txt +++ b/README_amisrc.txt @@ -1,4 +1,4 @@ -README_amisrc.txt for version 7.0aa of Vim: Vi IMproved. +README_amisrc.txt for version 7.0b of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_ami.txt" for installation instructions for the Amiga. diff --git a/README_bindos.txt b/README_bindos.txt --- a/README_bindos.txt +++ b/README_bindos.txt @@ -1,4 +1,4 @@ -README_bindos.txt for version 7.0aa of Vim: Vi IMproved. +README_bindos.txt for version 7.0b of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows. diff --git a/README_lang.txt b/README_lang.txt --- a/README_lang.txt +++ b/README_lang.txt @@ -1,4 +1,4 @@ -README_lang.txt for version 7.0aa of Vim: Vi IMproved. +README_lang.txt for version 7.0b of Vim: Vi IMproved. This file contains files for non-English languages: - Translated messages. diff --git a/README_os2.txt b/README_os2.txt --- a/README_os2.txt +++ b/README_os2.txt @@ -1,4 +1,4 @@ -README_os2.txt for version 7.0aa of Vim: Vi IMproved. +README_os2.txt for version 7.0b of Vim: Vi IMproved. This file explains the installation of Vim on OS/2 systems. See "README.txt" for general information about Vim. diff --git a/README_src.txt b/README_src.txt --- a/README_src.txt +++ b/README_src.txt @@ -1,4 +1,4 @@ -README_src.txt for version 7.0aa of Vim: Vi IMproved. +README_src.txt for version 7.0b of Vim: Vi IMproved. The source archive contains the files needed to compile Vim on Unix systems. It is packed for Unix systems (NL line separator). It is also used for other diff --git a/README_srcdos.txt b/README_srcdos.txt --- a/README_srcdos.txt +++ b/README_srcdos.txt @@ -1,4 +1,4 @@ -README_srcdos.txt for version 7.0aa of Vim: Vi IMproved. +README_srcdos.txt for version 7.0b of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows. diff --git a/README_unix.txt b/README_unix.txt --- a/README_unix.txt +++ b/README_unix.txt @@ -1,4 +1,4 @@ -README_unix.txt for version 7.0aa of Vim: Vi IMproved. +README_unix.txt for version 7.0b of Vim: Vi IMproved. This file explains the installation of Vim on Unix systems. See "README.txt" for general information about Vim. diff --git a/README_vms.txt b/README_vms.txt --- a/README_vms.txt +++ b/README_vms.txt @@ -1,4 +1,4 @@ -README_vms.txt for version 7.0aa of Vim: Vi IMproved. +README_vms.txt for version 7.0b of Vim: Vi IMproved. This file explains the installation of Vim on VMS systems. See "README.txt" in the runtime archive for information about Vim. diff --git a/runtime/autoload/ccomplete.vim b/runtime/autoload/ccomplete.vim --- a/runtime/autoload/ccomplete.vim +++ b/runtime/autoload/ccomplete.vim @@ -1,7 +1,7 @@ " Vim completion script " Language: C " Maintainer: Bram Moolenaar -" Last Change: 2006 Mar 19 +" Last Change: 2006 Mar 24 " This function is used for the 'omnifunc' option. @@ -166,9 +166,11 @@ function! ccomplete#Complete(findstart, let res = [] for i in range(len(diclist)) - " New ctags has the "typename" field. + " New ctags has the "typeref" field. Patched version has "typename". if has_key(diclist[i], 'typename') call extend(res, s:StructMembers(diclist[i]['typename'], items[1:], 1)) + elseif has_key(diclist[i], 'typeref') + call extend(res, s:StructMembers(diclist[i]['typeref'], items[1:], 1)) endif " For a variable use the command, which must be a search pattern that @@ -232,10 +234,9 @@ function! s:Tag2item(val) let res['extra'] = s:Tagcmd2extra(a:val['cmd'], a:val['name'], a:val['filename']) - " Use the whole search command as the "info" entry. - let s = matchstr(a:val['cmd'], '/^\s*\zs.*\ze$/') + let s = s:Dict2info(a:val) if s != '' - let res['info'] = substitute(s, '\\\(.\)', '\1', 'g') + let res['info'] = s endif let res['tagline'] = '' @@ -253,6 +254,51 @@ function! s:Tag2item(val) return res endfunction +" Use all the items in dictionary for the "info" entry. +function! s:Dict2info(dict) + let info = '' + for k in sort(keys(a:dict)) + let info .= k . repeat(' ', 10 - len(k)) + if k == 'cmd' + let info .= substitute(matchstr(a:dict['cmd'], '/^\s*\zs.*\ze$/'), '\\\(.\)', '\1', 'g') + else + let info .= a:dict[k] + endif + let info .= "\n" + endfor + return info +endfunc + +" Parse a tag line and return a dictionary with items like taglist() +function! s:ParseTagline(line) + let l = split(a:line, "\t") + let d = {} + if len(l) >= 3 + let d['name'] = l[0] + let d['filename'] = l[1] + let d['cmd'] = l[2] + let n = 2 + if l[2] =~ '^/' + " Find end of cmd, it may contain Tabs. + while n < len(l) && l[n] !~ '/;"$' + let n += 1 + let d['cmd'] .= " " . l[n] + endwhile + endif + for i in range(n + 1, len(l) - 1) + if l[i] == 'file:' + let d['static'] = 1 + elseif l[i] !~ ':' + let d['kind'] = l[i] + else + let d[matchstr(l[i], '[^:]*')] = matchstr(l[i], ':\zs.*') + endif + endfor + endif + + return d +endfunction + " Turn a match item "val" into an item for completion. " "val['match']" is the matching item. " "val['tagline']" is the tagline in which the last part was found. @@ -265,10 +311,10 @@ function! s:Tagline2item(val, brackets) " Use info from Tag2item(). let res['info'] = a:val['info'] else - " Use the whole search command as the "info" entry. - let s = matchstr(line, '\t/^\s*\zs.*\ze$/') + " Parse the tag line and add each part to the "info" entry. + let s = s:Dict2info(s:ParseTagline(line)) if s != '' - let res['info'] = substitute(s, '\\\(.\)', '\1', 'g') + let res['info'] = s endif endif @@ -348,7 +394,11 @@ function! s:Nextitem(lead, items, depth, for tagidx in range(len(diclist)) let item = diclist[tagidx] - " New ctags has the "typename" field. + " New ctags has the "typeref" field. Patched version has "typename". + if has_key(item, 'typeref') + call extend(res, s:StructMembers(item['typeref'], a:items, a:all)) + continue + endif if has_key(item, 'typename') call extend(res, s:StructMembers(item['typename'], a:items, a:all)) continue @@ -496,11 +546,16 @@ function! s:SearchMembers(matches, items if has_key(a:matches[i], 'dict') if has_key(a:matches[i].dict, 'typename') let typename = a:matches[i].dict['typename'] + elseif has_key(a:matches[i].dict, 'typeref') + let typename = a:matches[i].dict['typeref'] endif let line = "\t" . a:matches[i].dict['cmd'] else let line = a:matches[i]['tagline'] let e = matchend(line, '\ttypename:') + if e < 0 + let e = matchend(line, '\ttyperef:') + endif if e > 0 " Use typename field let typename = matchstr(line, '[^\t]*', e) diff --git a/runtime/doc/arabic.txt b/runtime/doc/arabic.txt --- a/runtime/doc/arabic.txt +++ b/runtime/doc/arabic.txt @@ -1,4 +1,4 @@ -*arabic.txt* For Vim version 7.0aa. Last change: 2005 Mar 29 +*arabic.txt* For Vim version 7.0b. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Nadim Shaikli diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.0aa. Last change: 2006 Mar 22 +*eval.txt* For Vim version 7.0b. Last change: 2006 Mar 22 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/farsi.txt b/runtime/doc/farsi.txt --- a/runtime/doc/farsi.txt +++ b/runtime/doc/farsi.txt @@ -1,4 +1,4 @@ -*farsi.txt* For Vim version 7.0aa. Last change: 2005 Mar 29 +*farsi.txt* For Vim version 7.0b. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Mortaza Ghassab Shiran diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt --- a/runtime/doc/filetype.txt +++ b/runtime/doc/filetype.txt @@ -1,4 +1,4 @@ -*filetype.txt* For Vim version 7.0aa. Last change: 2006 Mar 21 +*filetype.txt* For Vim version 7.0b. Last change: 2006 Mar 24 VIM REFERENCE MANUAL by Bram Moolenaar @@ -549,10 +549,10 @@ If the first line of a *.tex file has th %& then this determined the file type: plaintex (for plain TeX), context (for ConTeXt), or tex (for LaTeX). Otherwise, the file is searched for keywords to -choose context or tex. If no keywords are found, it defaults to tex. You can -change the default by defining the variable g:tex_flavor to the format (not -the file type) you use most: plain or context or latex. (Currently no other -formats are recognized.) +choose context or tex. If no keywords are found, it defaults to plaintex. +You can change the default by defining the variable g:tex_flavor to the format +(not the file type) you use most: plain or context or latex. (Currently no +other formats are recognized.) vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/getscript.txt b/runtime/doc/getscript.txt --- a/runtime/doc/getscript.txt +++ b/runtime/doc/getscript.txt @@ -1,4 +1,6 @@ -*getscript.txt* Get the Latest VimScripts Dec 23, 2005 +*getscript.txt* For Vim version 7.0b. Last change: 2006 Mar 24 + + Get the Latest VimScripts Authors: Charles E. Campbell, Jr. (remove NOSPAM from the email address) @@ -23,7 +25,7 @@ 1. Contents *glvs-contents* ============================================================================== -2. GetLatestVimScripts Usage *getlatestvimscripts* *getscript* *glvs* +2. GetLatestVimScripts Usage *getlatestvimscripts* *getscript* *glvs* While in vim, type > diff --git a/runtime/doc/hebrew.txt b/runtime/doc/hebrew.txt --- a/runtime/doc/hebrew.txt +++ b/runtime/doc/hebrew.txt @@ -1,4 +1,4 @@ -*hebrew.txt* For Vim version 7.0aa. Last change: 2003 May 11 +*hebrew.txt* For Vim version 7.0b. Last change: 2003 May 11 VIM REFERENCE MANUAL by Ron Aaron (and Avner Lottem) diff --git a/runtime/doc/howto.txt b/runtime/doc/howto.txt --- a/runtime/doc/howto.txt +++ b/runtime/doc/howto.txt @@ -1,4 +1,4 @@ -*howto.txt* For Vim version 7.0aa. Last change: 2001 Sep 03 +*howto.txt* For Vim version 7.0b. Last change: 2001 Sep 03 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt --- a/runtime/doc/intro.txt +++ b/runtime/doc/intro.txt @@ -1,4 +1,4 @@ -*intro.txt* For Vim version 7.0aa. Last change: 2005 Sep 01 +*intro.txt* For Vim version 7.0b. Last change: 2005 Sep 01 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/os_amiga.txt b/runtime/doc/os_amiga.txt --- a/runtime/doc/os_amiga.txt +++ b/runtime/doc/os_amiga.txt @@ -1,4 +1,4 @@ -*os_amiga.txt* For Vim version 7.0aa. Last change: 2005 Mar 29 +*os_amiga.txt* For Vim version 7.0b. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/os_dos.txt b/runtime/doc/os_dos.txt --- a/runtime/doc/os_dos.txt +++ b/runtime/doc/os_dos.txt @@ -1,4 +1,4 @@ -*os_dos.txt* For Vim version 7.0aa. Last change: 2006 Feb 14 +*os_dos.txt* For Vim version 7.0b. Last change: 2006 Feb 14 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/os_win32.txt b/runtime/doc/os_win32.txt --- a/runtime/doc/os_win32.txt +++ b/runtime/doc/os_win32.txt @@ -1,4 +1,4 @@ -*os_win32.txt* For Vim version 7.0aa. Last change: 2005 Mar 29 +*os_win32.txt* For Vim version 7.0b. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by George Reilly diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -1,4 +1,4 @@ -*pattern.txt* For Vim version 7.0aa. Last change: 2006 Mar 06 +*pattern.txt* For Vim version 7.0b. Last change: 2006 Mar 06 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/pi_spec.txt b/runtime/doc/pi_spec.txt --- a/runtime/doc/pi_spec.txt +++ b/runtime/doc/pi_spec.txt @@ -1,4 +1,4 @@ -*pi_spec.txt* For Vim version 7.0aa. Last change: 2005 Oct 03 +*pi_spec.txt* For Vim version 7.0b. Last change: 2005 Oct 03 by Gustavo Niemeyer ~ diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt --- a/runtime/doc/quickfix.txt +++ b/runtime/doc/quickfix.txt @@ -1,4 +1,4 @@ -*quickfix.txt* For Vim version 7.0aa. Last change: 2006 Mar 23 +*quickfix.txt* For Vim version 7.0b. Last change: 2006 Mar 24 VIM REFERENCE MANUAL by Bram Moolenaar @@ -227,6 +227,14 @@ command with 'l'. :lex[pr][!] {expr} Same as ":cexpr", except the location list for the current window is used instead of the quickfix list. + *:cgete* *:cgetexpr* +: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 + current window is used instead of the quickfix list. + *:cad* *:caddexpr* :cad[dexpr][!] {expr} Evaluate {expr} and add the resulting lines to the current quickfix list. If a quickfix list is not @@ -240,14 +248,6 @@ command with 'l'. :lad[dexpr][!] {expr} Same as ":caddexpr", except the location list for the current window is used instead of the quickfix list. - *:cgete* *:cgetexpr* -: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 - current window is used instead of the quickfix list. - *:cl* *:clist* :cl[ist] [from] [, [to]] List all errors that are valid |quickfix-valid|. diff --git a/runtime/doc/quotes.txt b/runtime/doc/quotes.txt --- a/runtime/doc/quotes.txt +++ b/runtime/doc/quotes.txt @@ -1,4 +1,4 @@ -*quotes.txt* For Vim version 7.0aa. Last change: 2005 Apr 04 +*quotes.txt* For Vim version 7.0b. Last change: 2005 Apr 04 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/remote.txt b/runtime/doc/remote.txt --- a/runtime/doc/remote.txt +++ b/runtime/doc/remote.txt @@ -1,4 +1,4 @@ -*remote.txt* For Vim version 7.0aa. Last change: 2006 Mar 11 +*remote.txt* For Vim version 7.0b. Last change: 2006 Mar 11 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt --- a/runtime/doc/repeat.txt +++ b/runtime/doc/repeat.txt @@ -1,4 +1,4 @@ -*repeat.txt* For Vim version 7.0aa. Last change: 2006 Mar 21 +*repeat.txt* For Vim version 7.0b. Last change: 2006 Mar 21 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/scroll.txt b/runtime/doc/scroll.txt --- a/runtime/doc/scroll.txt +++ b/runtime/doc/scroll.txt @@ -1,4 +1,4 @@ -*scroll.txt* For Vim version 7.0aa. Last change: 2005 Dec 16 +*scroll.txt* For Vim version 7.0b. Last change: 2005 Dec 16 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt --- a/runtime/doc/spell.txt +++ b/runtime/doc/spell.txt @@ -1,4 +1,4 @@ -*spell.txt* For Vim version 7.0aa. Last change: 2006 Mar 10 +*spell.txt* For Vim version 7.0b. Last change: 2006 Mar 10 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/sql.txt b/runtime/doc/sql.txt --- a/runtime/doc/sql.txt +++ b/runtime/doc/sql.txt @@ -1,4 +1,4 @@ -*sql.txt* For Vim version 7.0aa. Last change: Fri Jan 06 2006 8:09:25 AM +*sql.txt* For Vim version 7.0b. Last change: Fri Jan 06 2006 8:09:25 AM by David Fishburn diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt --- a/runtime/doc/starting.txt +++ b/runtime/doc/starting.txt @@ -1,4 +1,4 @@ -*starting.txt* For Vim version 7.0aa. Last change: 2006 Mar 05 +*starting.txt* For Vim version 7.0b. Last change: 2006 Mar 05 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.0aa. Last change: 2006 Mar 12 +*syntax.txt* For Vim version 7.0b. Last change: 2006 Mar 12 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/tagsrch.txt b/runtime/doc/tagsrch.txt --- a/runtime/doc/tagsrch.txt +++ b/runtime/doc/tagsrch.txt @@ -1,4 +1,4 @@ -*tagsrch.txt* For Vim version 7.0aa. Last change: 2006 Feb 24 +*tagsrch.txt* For Vim version 7.0b. Last change: 2006 Feb 24 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.0aa. Last change: 2006 Mar 23 +*todo.txt* For Vim version 7.0b. Last change: 2006 Mar 24 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,8 +30,18 @@ be worked on, but only if you sponsor Vi *known-bugs* -------------------- Known bugs and current work ----------------------- -Include patch for recognizing TeX flavor. (Benji Fisher) -And new tex.vim and plaintex.vim. +The 16 bit DOS version doesn't link because too much static memory is used. +Drop it? + +test61 sometimes fails, probably because of timing variations. + +Check version7.txt for: +- new syntax files and other runtime files. +- new functions +- new options +- etc. + +Add more tests for all new functionality in Vim 7. Especially new functions. Win32: Describe how to do debugging. (George Reilly) @@ -44,24 +54,12 @@ 8 Add patch from Muraoka Taro (Mar 16) - With 'nopaste' pasting is wrong, with 'paste' Command-V doesn't work. (Alan Schmitt) -Darren is including the patch in ctags. Test it when it's ready. Change -"typename" to "typeref" in C complete code. - -HTML indenting can be slow. Caused by using searchpair(). Can search() be -used instead? - -ccomplete: use "signature:" field from tags file when it's present. -Or list all the fields? (Martin Stubenschrott) - -Add more tests for all new functionality in Vim 7. Especially new functions. - -Add text in user manual for using the undo tree. Example with finding the -text of a previous change. - -Links in docs to GetLatestVimScripts (getscript) plugin. +Darren is including the patch in ctags. Test it when it's ready. Awaiting updated patches: +9 HTML indenting can be slow. Caused by using searchpair(). Can search() + be used instead? 8 Add ":n" to fnamemodify(): normalize path, remove "../" when possible. Aric Blumer has a patch for this. He will update the patch for 6.3. diff --git a/runtime/doc/usr_01.txt b/runtime/doc/usr_01.txt --- a/runtime/doc/usr_01.txt +++ b/runtime/doc/usr_01.txt @@ -1,4 +1,4 @@ -*usr_01.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*usr_01.txt* For Vim version 7.0b. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_04.txt b/runtime/doc/usr_04.txt --- a/runtime/doc/usr_04.txt +++ b/runtime/doc/usr_04.txt @@ -1,4 +1,4 @@ -*usr_04.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*usr_04.txt* For Vim version 7.0b. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_05.txt b/runtime/doc/usr_05.txt --- a/runtime/doc/usr_05.txt +++ b/runtime/doc/usr_05.txt @@ -1,4 +1,4 @@ -*usr_05.txt* For Vim version 7.0aa. Last change: 2005 Oct 04 +*usr_05.txt* For Vim version 7.0b. Last change: 2006 Mar 24 VIM USER MANUAL - by Bram Moolenaar @@ -300,10 +300,13 @@ GETTING A GLOBAL PLUGIN Where can you find plugins? - Some come with Vim. You can find them in the directory $VIMRUNTIME/macros and its sub-directories. -- Download from the net, check out http://vim.sf.net. +- Download from the net. There is a large collection on http://www.vim.org. - They are sometimes posted in a Vim |maillist|. - You could write one yourself, see |write-plugin|. +Some plugins come as a vimball archive, see |vimball|. +Some plugins can be updated automatically, see |getscript|. + USING A GLOBAL PLUGIN diff --git a/runtime/doc/usr_06.txt b/runtime/doc/usr_06.txt --- a/runtime/doc/usr_06.txt +++ b/runtime/doc/usr_06.txt @@ -1,4 +1,4 @@ -*usr_06.txt* For Vim version 7.0aa. Last change: 2006 Feb 16 +*usr_06.txt* For Vim version 7.0b. Last change: 2006 Feb 16 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_07.txt b/runtime/doc/usr_07.txt --- a/runtime/doc/usr_07.txt +++ b/runtime/doc/usr_07.txt @@ -1,4 +1,4 @@ -*usr_07.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*usr_07.txt* For Vim version 7.0b. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_11.txt b/runtime/doc/usr_11.txt --- a/runtime/doc/usr_11.txt +++ b/runtime/doc/usr_11.txt @@ -1,4 +1,4 @@ -*usr_11.txt* For Vim version 7.0aa. Last change: 2005 Jun 09 +*usr_11.txt* For Vim version 7.0b. Last change: 2005 Jun 09 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_12.txt b/runtime/doc/usr_12.txt --- a/runtime/doc/usr_12.txt +++ b/runtime/doc/usr_12.txt @@ -1,4 +1,4 @@ -*usr_12.txt* For Vim version 7.0aa. Last change: 2006 Feb 26 +*usr_12.txt* For Vim version 7.0b. Last change: 2006 Feb 26 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_20.txt b/runtime/doc/usr_20.txt --- a/runtime/doc/usr_20.txt +++ b/runtime/doc/usr_20.txt @@ -1,4 +1,4 @@ -*usr_20.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*usr_20.txt* For Vim version 7.0b. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_23.txt b/runtime/doc/usr_23.txt --- a/runtime/doc/usr_23.txt +++ b/runtime/doc/usr_23.txt @@ -1,4 +1,4 @@ -*usr_23.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*usr_23.txt* For Vim version 7.0b. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_27.txt b/runtime/doc/usr_27.txt --- a/runtime/doc/usr_27.txt +++ b/runtime/doc/usr_27.txt @@ -1,4 +1,4 @@ -*usr_27.txt* For Vim version 7.0aa. Last change: 2005 Feb 08 +*usr_27.txt* For Vim version 7.0b. Last change: 2005 Feb 08 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_28.txt b/runtime/doc/usr_28.txt --- a/runtime/doc/usr_28.txt +++ b/runtime/doc/usr_28.txt @@ -1,4 +1,4 @@ -*usr_28.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*usr_28.txt* For Vim version 7.0b. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_30.txt b/runtime/doc/usr_30.txt --- a/runtime/doc/usr_30.txt +++ b/runtime/doc/usr_30.txt @@ -1,4 +1,4 @@ -*usr_30.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*usr_30.txt* For Vim version 7.0b. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_31.txt b/runtime/doc/usr_31.txt --- a/runtime/doc/usr_31.txt +++ b/runtime/doc/usr_31.txt @@ -1,4 +1,4 @@ -*usr_31.txt* For Vim version 7.0aa. Last change: 2006 Feb 28 +*usr_31.txt* For Vim version 7.0b. Last change: 2006 Mar 24 VIM USER MANUAL - by Bram Moolenaar @@ -15,7 +15,7 @@ between alternatives. Use keyboard shor |31.4| Vim window position and size |31.5| Various - Next chapter: |usr_40.txt| Make new commands + Next chapter: |usr_32.txt| The undo tree Previous chapter: |usr_30.txt| Editing programs Table of contents: |usr_toc.txt| @@ -262,6 +262,6 @@ another font size, for example. ============================================================================== -Next chapter: |usr_40.txt| Make new commands +Next chapter: |usr_32.txt| The undo tree Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/usr_40.txt b/runtime/doc/usr_40.txt --- a/runtime/doc/usr_40.txt +++ b/runtime/doc/usr_40.txt @@ -1,4 +1,4 @@ -*usr_40.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*usr_40.txt* For Vim version 7.0b. Last change: 2006 Mar 24 VIM USER MANUAL - by Bram Moolenaar @@ -14,7 +14,7 @@ Autocommands make it possible to execute |40.3| Autocommands Next chapter: |usr_41.txt| Write a Vim script - Previous chapter: |usr_31.txt| Exploiting the GUI + Previous chapter: |usr_32.txt| The undo tree Table of contents: |usr_toc.txt| ============================================================================== diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 7.0aa. Last change: 2006 Mar 21 +*various.txt* For Vim version 7.0b. Last change: 2006 Mar 21 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt --- a/runtime/doc/version7.txt +++ b/runtime/doc/version7.txt @@ -1,4 +1,4 @@ -*version7.txt* For Vim version 7.0aa. Last change: 2006 Mar 23 +*version7.txt* For Vim version 7.0b. Last change: 2006 Mar 24 VIM REFERENCE MANUAL by Bram Moolenaar @@ -628,13 +628,13 @@ Win32: The ":winpos" command now also wo don't jump to the first error. (Yegappan Lakshmanan). |:lfile| Like |:cfile| but use the location list. -|:lgetbuffer| Like |:cgetbuffer| but use the location list. -|:lgetexpr| Like |:cgetexpr| but use the location list. |:lgetfile| Like |:cgetfile| but use the location list. |:laddfile| Like |:caddfile| but use the location list. |:lbuffer| Like |:cbuffer| but use the location list. +|:lgetbuffer| Like |:cgetbuffer| but use the location list. |:laddbuffer| Like |:caddbuffer| but use the location list. |:lexpr| Like |:cexpr| but use the location list. +|:lgetexpr| Like |:cgetexpr| but use the location list. |:laddexpr| Like |:caddexpr| but use the location list. |:ll| Like |:cc| but use the location list. |:llist| Like |:clist| but use the location list. diff --git a/runtime/doc/vimball.txt b/runtime/doc/vimball.txt --- a/runtime/doc/vimball.txt +++ b/runtime/doc/vimball.txt @@ -1,4 +1,7 @@ -*vimball.txt* Vimball Archiver Mar 20, 2006 +*vimball.txt* For Vim version 7.0b. Last change: 2006 Mar 24 + + Vimball Archiver + Author: Charles E. Campbell, Jr. (remove NOSPAM from Campbell's email first) Copyright: (c) 2004-2006 by Charles E. Campbell, Jr. *Vimball-copyright* diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -1,4 +1,4 @@ -*windows.txt* For Vim version 7.0aa. Last change: 2006 Mar 11 +*windows.txt* For Vim version 7.0b. Last change: 2006 Mar 11 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/workshop.txt b/runtime/doc/workshop.txt --- a/runtime/doc/workshop.txt +++ b/runtime/doc/workshop.txt @@ -1,4 +1,4 @@ -*workshop.txt* For Vim version 7.0aa. Last change: 2005 Mar 29 +*workshop.txt* For Vim version 7.0b. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Gordon Prieur diff --git a/runtime/filetype.vim b/runtime/filetype.vim --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar -" Last Change: 2006 Mar 23 +" Last Change: 2006 Mar 24 " Listen very carefully, I will say this only once if exists("did_load_filetypes") @@ -1664,30 +1664,56 @@ au BufNewFile,BufRead *.ti setf termin au BufNewFile,BufRead *.latex,*.sty,*.dtx,*.ltx,*.bbl setf tex au BufNewFile,BufRead *.tex call s:FTtex() +" Choose context, plaintex, or tex (LaTeX) based on these rules: +" 1. Check the first line of the file for "%&". +" 2. Check the first 1000 non-comment lines for LaTeX or ConTeXt keywords. +" 3. Default to "latex" or to g:tex_flavor, can be set in user's vimrc. fun! s:FTtex() - let lnum = 1 - let checked = 0 - while checked < 25 && lnum < line("$") - let line = getline(lnum) - if line !~ '^\s*%' - if line =~ '^\s*\\\%(documentclass\>\|usepackage\>\|begin{\|newcommand\>\|renewcommand\>\)' - setf tex - return - elseif line =~ '^\s*\\\%(start\a\+\|setup\a\+\|usemodule\|enablemode\|enableregime\|setvariables\|useencoding\|usesymbols\|stelle\a\+\|verwende\a\+\|stel\a\+\|gebruik\a\+\|usa\a\+\|imposta\a\+\|regle\a\+\|utilisemodule\)\>' - setf context - return - endif - let checked = checked + 1 + let firstline = getline(1) + if firstline =~ '^%&\s*\a\+' + let format = tolower(matchstr(firstline, '\a\+')) + let format = substitute(format, 'pdf', '', '') + if format == 'tex' + let format = 'plain' endif - let lnum = lnum + 1 - endwhile + else + " Default value, may be changed later: + let format = exists("g:tex_flavor") ? g:tex_flavor : 'plain' + " Save position, go to the top of the file, find first non-comment line. + let save_cursor = getpos('.') + call cursor(1,1) + let firstNC = search('^\s*[^[:space:]%]', 'c', 1000) + if firstNC " Check the next thousand lines for a LaTeX or ConTeXt keyword. + let lpat = 'documentclass\>\|usepackage\>\|begin{\|newcommand\>\|renewcommand\>' + let cpat = 'start\a\+\|setup\a\+\|usemodule\|enablemode\|enableregime\|setvariables\|useencoding\|usesymbols\|stelle\a\+\|verwende\a\+\|stel\a\+\|gebruik\a\+\|usa\a\+\|imposta\a\+\|regle\a\+\|utilisemodule\>' + let kwline = search('^\s*\\\%(' . lpat . '\)\|^\s*\\\(' . cpat . '\)', + \ 'cnp', firstNC + 1000) + if kwline == 1 " lpat matched + let format = 'latex' + elseif kwline == 2 " cpat matched + let format = 'context' + endif " If neither matched, keep default set above. + " let lline = search('^\s*\\\%(' . lpat . '\)', 'cn', firstNC + 1000) + " let cline = search('^\s*\\\%(' . cpat . '\)', 'cn', firstNC + 1000) + " if cline > 0 + " let format = 'context' + " endif + " if lline > 0 && (cline == 0 || cline > lline) + " let format = 'tex' + " endif + endif " firstNC + call setpos('.', save_cursor) + endif " firstline =~ '^%&\s*\a\+' - " Didn't recognize anything, guess. - if exists("g:tex_flavour") && g:tex_flavour == "context" + " Translation from formats to file types. TODO: add AMSTeX, RevTex, others? + if format == 'plain' + setf plaintex + elseif format == 'context' setf context - else + else " probably LaTeX setf tex endif + return endfun " Context diff --git a/runtime/macros/matchit.vim b/runtime/macros/matchit.vim --- a/runtime/macros/matchit.vim +++ b/runtime/macros/matchit.vim @@ -1,7 +1,7 @@ " matchit.vim: (global plugin) Extended "%" matching -" Last Change: Sat May 15 11:00 AM 2004 EDT +" Last Change: Sun Feb 26 10:00 AM 2006 EST " Maintainer: Benji Fisher PhD -" Version: 1.9, for Vim 6.3 +" Version: 1.10, for Vim 6.3 " URL: http://www.vim.org/script.php?script_id=39 " Documentation: @@ -220,6 +220,10 @@ function! s:Match_wrapper(word, forward, let ini = strpart(group, 0, i-1) let mid = substitute(strpart(group, i,j-i-1), s:notslash.'\zs:', '\\|', 'g') let fin = strpart(group, j) + "Un-escape the remaining , and : characters. + let ini = substitute(ini, s:notslash . '\zs\\\(:\|,\)', '\1', 'g') + let mid = substitute(mid, s:notslash . '\zs\\\(:\|,\)', '\1', 'g') + let fin = substitute(fin, s:notslash . '\zs\\\(:\|,\)', '\1', 'g') " searchpair() requires that these patterns avoid \(\) groups. let ini = substitute(ini, s:notslash . '\zs\\(', '\\%(', 'g') let mid = substitute(mid, s:notslash . '\zs\\(', '\\%(', 'g') @@ -565,7 +569,7 @@ fun! s:Choose(patterns, string, comma, b if a:branch == "" let currpat = current else - let currpat = substitute(current, a:branch, '\\|', 'g') + let currpat = substitute(current, s:notslash . a:branch, '\\|', 'g') endif while a:string !~ a:prefix . currpat . a:suffix let tail = strpart(tail, i) @@ -577,7 +581,7 @@ fun! s:Choose(patterns, string, comma, b if a:branch == "" let currpat = current else - let currpat = substitute(current, a:branch, '\\|', 'g') + let currpat = substitute(current, s:notslash . a:branch, '\\|', 'g') endif if a:0 let alttail = strpart(alttail, j) diff --git a/src/Make_cyg.mak b/src/Make_cyg.mak --- a/src/Make_cyg.mak +++ b/src/Make_cyg.mak @@ -1,6 +1,6 @@ # # Makefile for VIM on Win32, using Cygnus gcc -# Last updated by Dan Sharp. Last Change: 2005 Oct 01 +# Last updated by Dan Sharp. Last Change: 2006 Mar 24 # # Also read INSTALLpc.txt! # @@ -404,7 +404,7 @@ OBJ = \ $(OUTDIR)/fold.o \ $(OUTDIR)/getchar.o \ $(OUTDIR)/hardcopy.o \ - $(OUTDIR)/hashtable.o \ + $(OUTDIR)/hashtab.o \ $(OUTDIR)/main.o \ $(OUTDIR)/mark.o \ $(OUTDIR)/memfile.o \ @@ -421,7 +421,7 @@ OBJ = \ $(OUTDIR)/os_win32.o \ $(OUTDIR)/os_mswin.o \ $(OUTDIR)/pathdef.o \ - $(OUTDIR)/popupmenu.o \ + $(OUTDIR)/popupmnu.o \ $(OUTDIR)/quickfix.o \ $(OUTDIR)/regexp.o \ $(OUTDIR)/screen.o \ diff --git a/src/Make_dice.mak b/src/Make_dice.mak --- a/src/Make_dice.mak +++ b/src/Make_dice.mak @@ -41,7 +41,7 @@ SRC = \ fold.c \ getchar.c \ hardcopy.c \ - hashtable.c \ + hashtab.c \ main.c \ mark.c \ memfile.c \ @@ -56,7 +56,7 @@ SRC = \ ops.c \ option.c \ os_amiga.c \ - popupmenu.c \ + popupmnu.c \ quickfix.c \ regexp.c \ screen.c \ @@ -85,7 +85,7 @@ OBJ = o/buffer.o \ o/fold.o \ o/getchar.o \ o/hardcopy.o \ - o/hashtable.o \ + o/hashtab.o \ o/main.o \ o/mark.o \ o/memfile.o \ @@ -100,7 +100,7 @@ OBJ = o/buffer.o \ o/ops.o \ o/option.o \ o/os_amiga.o \ - o/popupmenu.o \ + o/popupmnu.o \ o/quickfix.o \ o/regexp.o \ o/screen.o \ @@ -163,7 +163,7 @@ o/getchar.o: getchar.c $(SYMS) o/hardcopy.o: hardcopy.c $(SYMS) -o/hashtable.o: hashtable.c $(SYMS) +o/hashtab.o: hashtab.c $(SYMS) o/main.o: main.c $(SYMS) @@ -198,7 +198,7 @@ o/option.o: option.c $(SYMS) o/os_amiga.o: os_amiga.c $(SYMS) os_amiga.h -o/popupmenu.o: popupmenu.c $(SYMS) +o/popupmnu.o: popupmnu.c $(SYMS) o/quickfix.o: quickfix.c $(SYMS) diff --git a/src/Make_djg.mak b/src/Make_djg.mak --- a/src/Make_djg.mak +++ b/src/Make_djg.mak @@ -34,7 +34,7 @@ OBJ = \ obj/fold.o \ obj/getchar.o \ obj/hardcopy.o \ - obj/hashtable.o \ + obj/hashtab.o \ obj/main.o \ obj/mark.o \ obj/memfile.o \ @@ -49,7 +49,7 @@ OBJ = \ obj/ops.o \ obj/option.o \ obj/os_msdos.o \ - obj/popupmenu.o \ + obj/popupmnu.o \ obj/quickfix.o \ obj/regexp.o \ obj/screen.o \ diff --git a/src/Make_morph.mak b/src/Make_morph.mak --- a/src/Make_morph.mak +++ b/src/Make_morph.mak @@ -39,7 +39,7 @@ SRC = buffer.c \ fold.c \ getchar.c \ hardcopy.c \ - hashtable.c \ + hashtab.c \ main.c \ mark.c \ mbyte.c \ @@ -54,7 +54,7 @@ SRC = buffer.c \ ops.c \ option.c \ os_amiga.c \ - popupmenu.c \ + popupmnu.c \ quickfix.c \ regexp.c \ screen.c \ diff --git a/src/Make_vms.mms b/src/Make_vms.mms --- a/src/Make_vms.mms +++ b/src/Make_vms.mms @@ -2,7 +2,7 @@ # Makefile for Vim on OpenVMS # # Maintainer: Zoltan Arpadffy -# Last change: 2006 Feb 23 +# Last change: 2006 Mar 24 # # This has script been tested on VMS 6.2 to 8.2 on DEC Alpha, VAX and IA64 # with MMS and MMK @@ -287,8 +287,8 @@ ALL_LIBS = $(LIBS) $(GUI_LIB_DIR) $(GUI_ SRC = buffer.c charset.c diff.c digraph.c edit.c eval.c ex_cmds.c ex_cmds2.c \ ex_docmd.c ex_eval.c ex_getln.c if_xcmdsrv.c fileio.c fold.c getchar.c \ - hardcopy.c hashtable.c main.c mark.c menu.c mbyte.c memfile.c memline.c message.c misc1.c \ - misc2.c move.c normal.c ops.c option.c popupmenu.c quickfix.c regexp.c search.c \ + hardcopy.c hashtab.c main.c mark.c menu.c mbyte.c memfile.c memline.c message.c misc1.c \ + misc2.c move.c normal.c ops.c option.c popupmnu.c quickfix.c regexp.c search.c \ spell.c syntax.c tag.c term.c termlib.c ui.c undo.c version.c screen.c \ window.c os_unix.c os_vms.c pathdef.c \ $(GUI_SRC) $(PERL_SRC) $(PYTHON_SRC) $(TCL_SRC) $(SNIFF_SRC) \ @@ -296,9 +296,9 @@ SRC = buffer.c charset.c diff.c digraph. OBJ = buffer.obj charset.obj diff.obj digraph.obj edit.obj eval.obj \ ex_cmds.obj ex_cmds2.obj ex_docmd.obj ex_eval.obj ex_getln.obj \ - if_xcmdsrv.obj fileio.obj fold.obj getchar.obj hardcopy.obj hashtable.obj main.obj mark.obj \ + if_xcmdsrv.obj fileio.obj fold.obj getchar.obj hardcopy.obj hashtab.obj main.obj mark.obj \ menu.obj memfile.obj memline.obj message.obj misc1.obj misc2.obj \ - move.obj mbyte.obj normal.obj ops.obj option.obj popupmenu.obj quickfix.obj \ + move.obj mbyte.obj normal.obj ops.obj option.obj popupmnu.obj quickfix.obj \ regexp.obj search.obj spell.obj syntax.obj tag.obj term.obj termlib.obj \ ui.obj undo.obj screen.obj version.obj window.obj os_unix.obj \ os_vms.obj pathdef.obj \ @@ -531,7 +531,7 @@ hardcopy.obj : hardcopy.c vim.h [.auto]c ascii.h keymap.h term.h macros.h structs.h regexp.h \ gui.h gui_beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \ globals.h farsi.h arabic.h -hashtable.obj : hashtable.c vim.h [.auto]config.h feature.h os_unix.h \ +hashtab.obj : hashtab.c vim.h [.auto]config.h feature.h os_unix.h \ ascii.h keymap.h term.h macros.h structs.h regexp.h \ gui.h gui_beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \ globals.h farsi.h arabic.h @@ -607,7 +607,7 @@ pathdef.obj : pathdef.c vim.h [.auto]con ascii.h keymap.h term.h macros.h structs.h regexp.h \ gui.h gui_beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \ globals.h farsi.h arabic.h -popupmenu.obj : popupmenu.c vim.h [.auto]config.h feature.h os_unix.h \ +popupmnu.obj : popupmnu.c vim.h [.auto]config.h feature.h os_unix.h \ ascii.h keymap.h term.h macros.h structs.h regexp.h \ gui.h gui_beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \ globals.h farsi.h arabic.h diff --git a/src/Make_w16.mak b/src/Make_w16.mak --- a/src/Make_w16.mak +++ b/src/Make_w16.mak @@ -88,7 +88,7 @@ ObjFiles = \ $(INTDIR)\fold.obj\ $(INTDIR)\getchar.obj\ $(INTDIR)\hardcopy.obj\ - $(INTDIR)\hashtable.obj\ + $(INTDIR)\hashtab.obj\ $(INTDIR)\gui.obj\ $(INTDIR)\gui_w16.obj\ $(INTDIR)\main.obj\ @@ -107,7 +107,7 @@ ObjFiles = \ $(INTDIR)\os_win16.obj\ $(INTDIR)\os_msdos.obj\ $(INTDIR)\os_mswin.obj\ - $(INTDIR)\popupmenu.obj\ + $(INTDIR)\popupmnu.obj\ $(INTDIR)\quickfix.obj\ $(INTDIR)\regexp.obj\ $(INTDIR)\screen.obj\ diff --git a/src/dosinst.c b/src/dosinst.c --- a/src/dosinst.c +++ b/src/dosinst.c @@ -1132,7 +1132,6 @@ install_vimrc(int idx) { FILE *fd, *tfd; char *fname; - char *p; /* If an old vimrc file exists, overwrite it. * Otherwise create a new one. */ diff --git a/src/eval.c b/src/eval.c --- a/src/eval.c +++ b/src/eval.c @@ -1666,6 +1666,8 @@ ex_let(eap) argend = skip_var_list(arg, &var_count, &semicolon); if (argend == NULL) return; + if (argend > arg && argend[-1] == '.') /* for var.='str' */ + --argend; expr = vim_strchr(argend, '='); if (expr == NULL) { @@ -19360,9 +19362,11 @@ call_user_func(fp, argcount, argvars, re init_var_dict(&fc.l_vars, &fc.l_vars_var); if (selfdict != NULL) { - /* Set l:self to "selfdict". */ + /* Set l:self to "selfdict". Use "name" to avoid a warning from + * some compiler that checks the destination size. */ v = &fc.fixvar[fixvar_idx++].var; - STRCPY(v->di_key, "self"); + name = v->di_key; + STRCPY(name, "self"); v->di_flags = DI_FLAGS_RO + DI_FLAGS_FIX; hash_add(&fc.l_vars.dv_hashtab, DI2HIKEY(v)); v->di_tv.v_type = VAR_DICT; diff --git a/src/ex_cmds.h b/src/ex_cmds.h --- a/src/ex_cmds.h +++ b/src/ex_cmds.h @@ -213,10 +213,10 @@ EX(CMD_cfile, "cfile", ex_cfile, TRLBAR|FILE1|BANG), EX(CMD_cfirst, "cfirst", ex_cc, RANGE|NOTADR|COUNT|TRLBAR|BANG), +EX(CMD_cgetfile, "cgetfile", ex_cfile, + TRLBAR|FILE1|BANG), EX(CMD_cgetbuffer, "cgetbuffer", ex_cbuffer, RANGE|NOTADR|WORD1|TRLBAR), -EX(CMD_cgetfile, "cgetfile", ex_cfile, - TRLBAR|FILE1|BANG), EX(CMD_cgetexpr, "cgetexpr", ex_cexpr, NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG), EX(CMD_chdir, "chdir", ex_cd, diff --git a/src/hashtable.c b/src/hashtable.c deleted file mode 100644 --- a/src/hashtable.c +++ /dev/null @@ -1,518 +0,0 @@ -/* vi:set ts=8 sts=4 sw=4: - * - * VIM - Vi IMproved by Bram Moolenaar - * - * Do ":help uganda" in Vim to read copying and usage conditions. - * Do ":help credits" in Vim to see a list of people who contributed. - * See README.txt for an overview of the Vim source code. - */ - -/* - * hashtable.c: Handling of a hashtable with Vim-specific properties. - * - * Each item in a hashtable has a NUL terminated string key. A key can appear - * only once in the table. - * - * A hash number is computed from the key for quick lookup. When the hashes - * of two different keys point to the same entry an algorithm is used to - * iterate over other entries in the table until the right one is found. - * To make the iteration work removed keys are different from entries where a - * key was never present. - * - * The mechanism has been partly based on how Python Dictionaries are - * implemented. The algorithm is from Knuth Vol. 3, Sec. 6.4. - * - * The hashtable grows to accommodate more entries when needed. At least 1/3 - * of the entries is empty to keep the lookup efficient (at the cost of extra - * memory). - */ - -#include "vim.h" - -#if defined(FEAT_EVAL) || defined(FEAT_SYN_HL) || defined(PROTO) - -#if 0 -# define HT_DEBUG /* extra checks for table consistency and statistics */ - -static long hash_count_lookup = 0; /* count number of hashtab lookups */ -static long hash_count_perturb = 0; /* count number of "misses" */ -#endif - -/* Magic value for algorithm that walks through the array. */ -#define PERTURB_SHIFT 5 - -static int hash_may_resize __ARGS((hashtab_T *ht, int minitems)); - -#if 0 /* currently not used */ -/* - * Create an empty hash table. - * Returns NULL when out of memory. - */ - hashtab_T * -hash_create() -{ - hashtab_T *ht; - - ht = (hashtab_T *)alloc(sizeof(hashtab_T)); - if (ht != NULL) - hash_init(ht); - return ht; -} -#endif - -/* - * Initialize an empty hash table. - */ - void -hash_init(ht) - hashtab_T *ht; -{ - /* This zeroes all "ht_" entries and all the "hi_key" in "ht_smallarray". */ - vim_memset(ht, 0, sizeof(hashtab_T)); - ht->ht_array = ht->ht_smallarray; - ht->ht_mask = HT_INIT_SIZE - 1; -} - -/* - * Free the array of a hash table. Does not free the items it contains! - * If "ht" is not freed then you should call hash_init() next! - */ - void -hash_clear(ht) - hashtab_T *ht; -{ - if (ht->ht_array != ht->ht_smallarray) - vim_free(ht->ht_array); -} - -/* - * Free the array of a hash table and all the keys it contains. The keys must - * have been allocated. "off" is the offset from the start of the allocate - * memory to the location of the key (it's always positive). - */ - void -hash_clear_all(ht, off) - hashtab_T *ht; - int off; -{ - int todo; - hashitem_T *hi; - - todo = ht->ht_used; - for (hi = ht->ht_array; todo > 0; ++hi) - { - if (!HASHITEM_EMPTY(hi)) - { - vim_free(hi->hi_key - off); - --todo; - } - } - hash_clear(ht); -} - -/* - * Find "key" in hashtable "ht". "key" must not be NULL. - * Always returns a pointer to a hashitem. If the item was not found then - * HASHITEM_EMPTY() is TRUE. The pointer is then the place where the key - * would be added. - * WARNING: The returned pointer becomes invalid when the hashtable is changed - * (adding, setting or removing an item)! - */ - hashitem_T * -hash_find(ht, key) - hashtab_T *ht; - char_u *key; -{ - return hash_lookup(ht, key, hash_hash(key)); -} - -/* - * Like hash_find(), but caller computes "hash". - */ - hashitem_T * -hash_lookup(ht, key, hash) - hashtab_T *ht; - char_u *key; - hash_T hash; -{ - hash_T perturb; - hashitem_T *freeitem; - hashitem_T *hi; - int idx; - -#ifdef HT_DEBUG - ++hash_count_lookup; -#endif - - /* - * Quickly handle the most common situations: - * - return if there is no item at all - * - skip over a removed item - * - return if the item matches - */ - idx = hash & ht->ht_mask; - hi = &ht->ht_array[idx]; - - if (hi->hi_key == NULL) - return hi; - if (hi->hi_key == HI_KEY_REMOVED) - freeitem = hi; - else if (hi->hi_hash == hash && STRCMP(hi->hi_key, key) == 0) - return hi; - else - freeitem = NULL; - - /* - * Need to search through the table to find the key. The algorithm - * to step through the table starts with large steps, gradually becoming - * smaller down to (1/4 table size + 1). This means it goes through all - * table entries in the end. - * When we run into a NULL key it's clear that the key isn't there. - * Return the first available slot found (can be a slot of a removed - * item). - */ - for (perturb = hash; ; perturb >>= PERTURB_SHIFT) - { -#ifdef HT_DEBUG - ++hash_count_perturb; /* count a "miss" for hashtab lookup */ -#endif - idx = (idx << 2) + idx + perturb + 1; - hi = &ht->ht_array[idx & ht->ht_mask]; - if (hi->hi_key == NULL) - return freeitem == NULL ? hi : freeitem; - if (hi->hi_hash == hash - && hi->hi_key != HI_KEY_REMOVED - && STRCMP(hi->hi_key, key) == 0) - return hi; - if (hi->hi_key == HI_KEY_REMOVED && freeitem == NULL) - freeitem = hi; - } -} - -/* - * Print the efficiency of hashtable lookups. - * Useful when trying different hash algorithms. - * Called when exiting. - */ - void -hash_debug_results() -{ -#ifdef HT_DEBUG - fprintf(stderr, "\r\n\r\n\r\n\r\n"); - fprintf(stderr, "Number of hashtable lookups: %ld\r\n", hash_count_lookup); - fprintf(stderr, "Number of perturb loops: %ld\r\n", hash_count_perturb); - fprintf(stderr, "Percentage of perturb loops: %ld%%\r\n", - hash_count_perturb * 100 / hash_count_lookup); -#endif -} - -/* - * Add item with key "key" to hashtable "ht". - * Returns FAIL when out of memory or the key is already present. - */ - int -hash_add(ht, key) - hashtab_T *ht; - char_u *key; -{ - hash_T hash = hash_hash(key); - hashitem_T *hi; - - hi = hash_lookup(ht, key, hash); - if (!HASHITEM_EMPTY(hi)) - { - EMSG2(_(e_intern2), "hash_add()"); - return FAIL; - } - return hash_add_item(ht, hi, key, hash); -} - -/* - * Add item "hi" with "key" to hashtable "ht". "key" must not be NULL and - * "hi" must have been obtained with hash_lookup() and point to an empty item. - * "hi" is invalid after this! - * Returns OK or FAIL (out of memory). - */ - int -hash_add_item(ht, hi, key, hash) - hashtab_T *ht; - hashitem_T *hi; - char_u *key; - hash_T hash; -{ - /* If resizing failed before and it fails again we can't add an item. */ - if (ht->ht_error && hash_may_resize(ht, 0) == FAIL) - return FAIL; - - ++ht->ht_used; - if (hi->hi_key == NULL) - ++ht->ht_filled; - hi->hi_key = key; - hi->hi_hash = hash; - - /* When the space gets low may resize the array. */ - return hash_may_resize(ht, 0); -} - -#if 0 /* not used */ -/* - * Overwrite hashtable item "hi" with "key". "hi" must point to the item that - * is to be overwritten. Thus the number of items in the hashtable doesn't - * change. - * Although the key must be identical, the pointer may be different, thus it's - * set anyway (the key is part of an item with that key). - * The caller must take care of freeing the old item. - * "hi" is invalid after this! - */ - void -hash_set(hi, key) - hashitem_T *hi; - char_u *key; -{ - hi->hi_key = key; -} -#endif - -/* - * Remove item "hi" from hashtable "ht". "hi" must have been obtained with - * hash_lookup(). - * The caller must take care of freeing the item itself. - */ - void -hash_remove(ht, hi) - hashtab_T *ht; - hashitem_T *hi; -{ - --ht->ht_used; - hi->hi_key = HI_KEY_REMOVED; - hash_may_resize(ht, 0); -} - -/* - * Lock a hashtable: prevent that ht_array changes. - * Don't use this when items are to be added! - * Must call hash_unlock() later. - */ - void -hash_lock(ht) - hashtab_T *ht; -{ - ++ht->ht_locked; -} - -#if 0 /* currently not used */ -/* - * Lock a hashtable at the specified number of entries. - * Caller must make sure no more than "size" entries will be added. - * Must call hash_unlock() later. - */ - void -hash_lock_size(ht, size) - hashtab_T *ht; - int size; -{ - (void)hash_may_resize(ht, size); - ++ht->ht_locked; -} -#endif - -/* - * Unlock a hashtable: allow ht_array changes again. - * Table will be resized (shrink) when necessary. - * This must balance a call to hash_lock(). - */ - void -hash_unlock(ht) - hashtab_T *ht; -{ - --ht->ht_locked; - (void)hash_may_resize(ht, 0); -} - -/* - * Shrink a hashtable when there is too much empty space. - * Grow a hashtable when there is not enough empty space. - * Returns OK or FAIL (out of memory). - */ - static int -hash_may_resize(ht, minitems) - hashtab_T *ht; - int minitems; /* minimal number of items */ -{ - hashitem_T temparray[HT_INIT_SIZE]; - hashitem_T *oldarray, *newarray; - hashitem_T *olditem, *newitem; - int newi; - int todo; - long_u oldsize, newsize; - long_u minsize; - long_u newmask; - hash_T perturb; - - /* Don't resize a locked table. */ - if (ht->ht_locked > 0) - return OK; - -#ifdef HT_DEBUG - if (ht->ht_used > ht->ht_filled) - EMSG("hash_may_resize(): more used than filled"); - if (ht->ht_filled >= ht->ht_mask + 1) - EMSG("hash_may_resize(): table completely filled"); -#endif - - if (minitems == 0) - { - /* Return quickly for small tables with at least two NULL items. NULL - * items are required for the lookup to decide a key isn't there. */ - if (ht->ht_filled < HT_INIT_SIZE - 1 - && ht->ht_array == ht->ht_smallarray) - return OK; - - /* - * Grow or refill the array when it's more than 2/3 full (including - * removed items, so that they get cleaned up). - * Shrink the array when it's less than 1/5 full. When growing it is - * at least 1/4 full (avoids repeated grow-shrink operations) - */ - oldsize = ht->ht_mask + 1; - if (ht->ht_filled * 3 < oldsize * 2 && ht->ht_used > oldsize / 5) - return OK; - - if (ht->ht_used > 1000) - minsize = ht->ht_used * 2; /* it's big, don't make too much room */ - else - minsize = ht->ht_used * 4; /* make plenty of room */ - } - else - { - /* Use specified size. */ - if ((long_u)minitems < ht->ht_used) /* just in case... */ - minitems = ht->ht_used; - minsize = minitems * 3 / 2; /* array is up to 2/3 full */ - } - - newsize = HT_INIT_SIZE; - while (newsize < minsize) - { - newsize <<= 1; /* make sure it's always a power of 2 */ - if (newsize == 0) - return FAIL; /* overflow */ - } - - if (newsize == HT_INIT_SIZE) - { - /* Use the small array inside the hashdict structure. */ - newarray = ht->ht_smallarray; - if (ht->ht_array == newarray) - { - /* Moving from ht_smallarray to ht_smallarray! Happens when there - * are many removed items. Copy the items to be able to clean up - * removed items. */ - mch_memmove(temparray, newarray, sizeof(temparray)); - oldarray = temparray; - } - else - oldarray = ht->ht_array; - } - else - { - /* Allocate an array. */ - newarray = (hashitem_T *)alloc((unsigned) - (sizeof(hashitem_T) * newsize)); - if (newarray == NULL) - { - /* Out of memory. When there are NULL items still return OK. - * Otherwise set ht_error, because lookup may result in a hang if - * we add another item. */ - if (ht->ht_filled < ht->ht_mask) - return OK; - ht->ht_error = TRUE; - return FAIL; - } - oldarray = ht->ht_array; - } - vim_memset(newarray, 0, (size_t)(sizeof(hashitem_T) * newsize)); - - /* - * Move all the items from the old array to the new one, placing them in - * the right spot. The new array won't have any removed items, thus this - * is also a cleanup action. - */ - newmask = newsize - 1; - todo = ht->ht_used; - for (olditem = oldarray; todo > 0; ++olditem) - if (!HASHITEM_EMPTY(olditem)) - { - /* - * The algorithm to find the spot to add the item is identical to - * the algorithm to find an item in hash_lookup(). But we only - * need to search for a NULL key, thus it's simpler. - */ - newi = olditem->hi_hash & newmask; - newitem = &newarray[newi]; - - if (newitem->hi_key != NULL) - for (perturb = olditem->hi_hash; ; perturb >>= PERTURB_SHIFT) - { - newi = (newi << 2) + newi + perturb + 1; - newitem = &newarray[newi & newmask]; - if (newitem->hi_key == NULL) - break; - } - *newitem = *olditem; - --todo; - } - - if (ht->ht_array != ht->ht_smallarray) - vim_free(ht->ht_array); - ht->ht_array = newarray; - ht->ht_mask = newmask; - ht->ht_filled = ht->ht_used; - ht->ht_error = FALSE; - - return OK; -} - -/* - * Get the hash number for a key. - * If you think you know a better hash function: Compile with HT_DEBUG set and - * run a script that uses hashtables a lot. Vim will then print statistics - * when exiting. Try that with the current hash algorithm and yours. The - * lower the percentage the better. - */ - hash_T -hash_hash(key) - char_u *key; -{ - hash_T hash; - char_u *p; - - if ((hash = *key) == 0) - return (hash_T)0; /* Empty keys are not allowed, but we don't - want to crash if we get one. */ - p = key + 1; - -#if 0 - /* ElfHash algorithm, which is supposed to have an even distribution. - * Suggested by Charles Campbell. */ - hash_T g; - - while (*p != NUL) - { - hash = (hash << 4) + *p++; /* clear low 4 bits of hash, add char */ - g = hash & 0xf0000000L; /* g has high 4 bits of hash only */ - if (g != 0) - hash ^= g >> 24; /* xor g's high 4 bits into hash */ - } -#else - - /* A simplistic algorithm that appears to do very well. - * Suggested by George Reilly. */ - while (*p != NUL) - hash = hash * 101 + *p++; -#endif - - return hash; -} - -#endif diff --git a/src/if_mzsch.c b/src/if_mzsch.c --- a/src/if_mzsch.c +++ b/src/if_mzsch.c @@ -24,6 +24,10 @@ #include "vim.h" #include "if_mzsch.h" +/* Only do the following when the feature is enabled. Needed for "make + * depend". */ +#if defined(FEAT_MZSCHEME) || defined(PROTO) + /* Base data structures */ #define SCHEME_VIMBUFFERP(obj) SAME_TYPE(SCHEME_TYPE(obj), mz_buffer_type) #define SCHEME_VIMWINDOWP(obj) SAME_TYPE(SCHEME_TYPE(obj), mz_window_type) @@ -2709,3 +2713,5 @@ sandbox_network_guard(int argc, Scheme_O return scheme_void; } #endif + +#endif diff --git a/src/if_mzsch.h b/src/if_mzsch.h --- a/src/if_mzsch.h +++ b/src/if_mzsch.h @@ -9,7 +9,10 @@ # define __CYGWIN32__ #endif -#include +/* #ifdef needed for "make depend" */ +#ifdef FEAT_MZSCHEME +# include +#endif #ifdef __MINGW32__ # undef __CYGWIN32__ diff --git a/src/memline.c b/src/memline.c --- a/src/memline.c +++ b/src/memline.c @@ -323,7 +323,9 @@ ml_open(buf) STRNCPY(b0p->b0_version + 4, Version, 6); long_to_char((long)mfp->mf_page_size, b0p->b0_page_size); - if (!B_SPELL(buf)) +#ifdef FEAT_SPELL + if (!buf->b_spell) +#endif { b0p->b0_dirty = buf->b_changed ? B0_DIRTY : 0; b0p->b0_flags = get_fileformat(buf) + 1; diff --git a/src/popupmenu.c b/src/popupmenu.c deleted file mode 100644 --- a/src/popupmenu.c +++ /dev/null @@ -1,565 +0,0 @@ -/* vi:set ts=8 sts=4 sw=4: - * - * VIM - Vi IMproved by Bram Moolenaar - * - * Do ":help uganda" in Vim to read copying and usage conditions. - * Do ":help credits" in Vim to see a list of people who contributed. - * See README.txt for an overview of the Vim source code. - */ - -/* - * popupmenu.c: Popup menu (PUM) - */ -#include "vim.h" - -#if defined(FEAT_INS_EXPAND) || defined(PROTO) - -static pumitem_T *pum_array = NULL; /* items of displayed pum */ -static int pum_size; /* nr of items in "pum_array" */ -static int pum_selected; /* index of selected item or -1 */ -static int pum_first = 0; /* index of top item */ - -static int pum_height; /* nr of displayed pum items */ -static int pum_width; /* width of displayed pum items */ -static int pum_base_width; /* width of pum items base */ -static int pum_kind_width; /* width of pum items kind column */ -static int pum_scrollbar; /* TRUE when scrollbar present */ - -static int pum_row; /* top row of pum */ -static int pum_col; /* left column of pum */ - -static int pum_do_redraw = FALSE; /* do redraw anyway */ - -static int pum_set_selected __ARGS((int n)); - -#define PUM_DEF_HEIGHT 10 -#define PUM_DEF_WIDTH 15 - -/* - * Show the popup menu with items "array[size]". - * "array" must remain valid until pum_undisplay() is called! - * When possible the leftmost character is aligned with screen column "col". - * The menu appears above the screen line "row" or at "row" + "height" - 1. - */ - void -pum_display(array, size, selected) - pumitem_T *array; - int size; - int selected; /* index of initially selected item, none if - out of range */ -{ - int w; - int def_width; - int max_width; - int kind_width; - int extra_width; - int i; - int top_clear; - int row; - int height; - int col; - int above_row = cmdline_row; - -redo: - def_width = PUM_DEF_WIDTH; - max_width = 0; - kind_width = 0; - extra_width = 0; - - /* Pretend the pum is already there to avoid that must_redraw is set when - * 'cuc' is on. */ - pum_array = (pumitem_T *)1; - validate_cursor_col(); - pum_array = NULL; - - row = curwin->w_cline_row + W_WINROW(curwin); - height = curwin->w_cline_height; - col = curwin->w_wcol + W_WINCOL(curwin) - curwin->w_leftcol; - - if (firstwin->w_p_pvw) - top_clear = firstwin->w_height; - else - top_clear = 0; - - /* When the preview window is at the bottom stop just above it. Also - * avoid drawing over the status line so that it's clear there is a window - * boundary. */ - if (lastwin->w_p_pvw) - above_row -= lastwin->w_height + lastwin->w_status_height + 1; - - /* - * Figure out the size and position of the pum. - */ - if (size < PUM_DEF_HEIGHT) - pum_height = size; - else - pum_height = PUM_DEF_HEIGHT; - if (p_ph > 0 && pum_height > p_ph) - pum_height = p_ph; - - /* Put the pum below "row" if possible. If there are few lines decide on - * where there is more room. */ - if (row >= above_row - pum_height - && row > (above_row - top_clear - height) / 2) - { - /* pum above "row" */ - if (row >= size) - { - pum_row = row - size; - pum_height = size; - } - else - { - pum_row = 0; - pum_height = row; - } - if (p_ph > 0 && pum_height > p_ph) - { - pum_row += pum_height - p_ph; - pum_height = p_ph; - } - } - else - { - /* pum below "row" */ - pum_row = row + height; - if (size > above_row - pum_row) - pum_height = above_row - pum_row; - else - pum_height = size; - if (p_ph > 0 && pum_height > p_ph) - pum_height = p_ph; - } - - /* don't display when we only have room for one line */ - if (pum_height < 1 || (pum_height == 1 && size > 1)) - return; - - /* If there is a preview window at the top avoid drawing over it. */ - if (firstwin->w_p_pvw - && pum_row < firstwin->w_height - && pum_height > firstwin->w_height + 4) - { - pum_row += firstwin->w_height; - pum_height -= firstwin->w_height; - } - - /* Compute the width of the widest match and the widest extra. */ - for (i = 0; i < size; ++i) - { - w = vim_strsize(array[i].pum_text); - if (max_width < w) - max_width = w; - if (array[i].pum_kind != NULL) - { - w = vim_strsize(array[i].pum_kind) + 1; - if (kind_width < w) - kind_width = w; - } - if (array[i].pum_extra != NULL) - { - w = vim_strsize(array[i].pum_extra) + 1; - if (extra_width < w) - extra_width = w; - } - } - pum_base_width = max_width; - pum_kind_width = kind_width; - - /* if there are more items than room we need a scrollbar */ - if (pum_height < size) - { - pum_scrollbar = 1; - ++max_width; - } - else - pum_scrollbar = 0; - - if (def_width < max_width) - def_width = max_width; - - if (col < Columns - PUM_DEF_WIDTH || col < Columns - max_width) - { - /* align pum column with "col" */ - pum_col = col; - pum_width = Columns - pum_col - pum_scrollbar; - if (pum_width > max_width + kind_width + extra_width + 1 - && pum_width > PUM_DEF_WIDTH) - { - pum_width = max_width + kind_width + extra_width + 1; - if (pum_width < PUM_DEF_WIDTH) - pum_width = PUM_DEF_WIDTH; - } - } - else if (Columns < def_width) - { - /* not enough room, will use what we have */ - pum_col = 0; - pum_width = Columns - 1; - } - else - { - if (max_width > PUM_DEF_WIDTH) - max_width = PUM_DEF_WIDTH; /* truncate */ - pum_col = Columns - max_width; - pum_width = max_width - pum_scrollbar; - } - - pum_array = array; - pum_size = size; - - /* Set selected item and redraw. If the window size changed need to redo - * the positioning. */ - if (pum_set_selected(selected)) - goto redo; -} - -/* - * Redraw the popup menu, using "pum_first" and "pum_selected". - */ - void -pum_redraw() -{ - int row = pum_row; - int col; - int attr_norm = highlight_attr[HLF_PNI]; - int attr_select = highlight_attr[HLF_PSI]; - int attr_scroll = highlight_attr[HLF_PSB]; - int attr_thumb = highlight_attr[HLF_PST]; - int attr; - int i; - int idx; - char_u *s; - char_u *p = NULL; - int totwidth, width, w; - int thumb_pos = 0; - int thumb_heigth = 1; - int round; - int n; - - if (pum_scrollbar) - { - thumb_heigth = pum_height * pum_height / pum_size; - if (thumb_heigth == 0) - thumb_heigth = 1; - thumb_pos = (pum_first * (pum_height - thumb_heigth) - + (pum_size - pum_height) / 2) - / (pum_size - pum_height); - } - - for (i = 0; i < pum_height; ++i) - { - idx = i + pum_first; - attr = (idx == pum_selected) ? attr_select : attr_norm; - - /* prepend a space if there is room */ - if (pum_col > 0) - screen_putchar(' ', row, pum_col - 1, attr); - - /* Display each entry, use two spaces for a Tab. - * Do this 3 times: For the main text, kind and extra info */ - col = pum_col; - totwidth = 0; - for (round = 1; round <= 3; ++round) - { - width = 0; - s = NULL; - switch (round) - { - case 1: p = pum_array[idx].pum_text; break; - case 2: p = pum_array[idx].pum_kind; break; - case 3: p = pum_array[idx].pum_extra; break; - } - if (p != NULL) - for ( ; ; mb_ptr_adv(p)) - { - if (s == NULL) - s = p; - w = ptr2cells(p); - if (*p == NUL || *p == TAB || totwidth + w > pum_width) - { - /* Display the text that fits or comes before a Tab. */ - screen_puts_len(s, p - s, row, col, attr); - col += width; - - if (*p != TAB) - break; - - /* Display two spaces for a Tab. */ - screen_puts_len((char_u *)" ", 2, row, col, attr); - col += 2; - totwidth += 2; - s = NULL; /* start text at next char */ - width = 0; - } - else - width += w; - } - - if (round > 1) - n = pum_kind_width + 1; - else - n = 1; - - /* Stop when there is nothing more to display. */ - if (round == 3 - || (round == 2 && pum_array[idx].pum_extra == NULL) - || (round == 1 && pum_array[idx].pum_kind == NULL - && pum_array[idx].pum_extra == NULL) - || pum_base_width + n >= pum_width) - break; - screen_fill(row, row + 1, col, pum_col + pum_base_width + n, - ' ', ' ', attr); - col = pum_col + pum_base_width + n; - totwidth = pum_base_width + n; - } - - screen_fill(row, row + 1, col, pum_col + pum_width, ' ', ' ', attr); - if (pum_scrollbar > 0) - screen_putchar(' ', row, pum_col + pum_width, - i >= thumb_pos && i < thumb_pos + thumb_heigth - ? attr_thumb : attr_scroll); - - ++row; - } -} - -#if 0 /* not used yet */ -/* - * Return the index of the currently selected item. - */ - int -pum_get_selected() -{ - return pum_selected; -} -#endif - -/* - * Set the index of the currently selected item. The menu will scroll when - * necessary. When "n" is out of range don't scroll. - * Returns TRUE when the window was resized and the location of the popup menu - * must be recomputed. - */ - static int -pum_set_selected(n) - int n; -{ - int resized = FALSE; - int context = pum_height / 2; - - pum_selected = n; - - if (pum_selected >= 0 && pum_selected < pum_size) - { - if (pum_first > pum_selected - 4) - { - /* scroll down; when we did a jump it's probably a PageUp then - * scroll a whole page */ - if (pum_first > pum_selected - 2) - { - pum_first -= pum_height - 2; - if (pum_first < 0) - pum_first = 0; - else if (pum_first > pum_selected) - pum_first = pum_selected; - } - else - pum_first = pum_selected; - } - else if (pum_first < pum_selected - pum_height + 5) - { - /* scroll up; when we did a jump it's probably a PageDown then - * scroll a whole page */ - if (pum_first < pum_selected - pum_height + 1 + 2) - { - pum_first += pum_height - 2; - if (pum_first < pum_selected - pum_height + 1) - pum_first = pum_selected - pum_height + 1; - } - else - pum_first = pum_selected - pum_height + 1; - } - - /* Give a few lines of context when possible. */ - if (context > 3) - context = 3; - if (pum_height > 2) - { - if (pum_first > pum_selected - context) - { - /* scroll down */ - pum_first = pum_selected - context; - if (pum_first < 0) - pum_first = 0; - } - else if (pum_first < pum_selected + context - pum_height + 1) - { - /* scroll up */ - pum_first = pum_selected + context - pum_height + 1; - } - } - -#if defined(FEAT_WINDOWS) && defined(FEAT_QUICKFIX) - /* Show extra info in the preview window if there is something and - * 'completeopt' contains "preview". */ - if (pum_array[pum_selected].pum_info != NULL - && vim_strchr(p_cot, 'p') != NULL) - { - win_T *curwin_save = curwin; - int res = OK; - - /* Open a preview window. 3 lines by default. */ - g_do_tagpreview = 3; - resized = prepare_tagpreview(); - g_do_tagpreview = 0; - - if (curwin->w_p_pvw) - { - if (curbuf->b_fname == NULL - && curbuf->b_p_bt[0] == 'n' && curbuf->b_p_bt[2] == 'f' - && curbuf->b_p_bh[0] == 'w') - { - /* Already a "wipeout" buffer, make it empty. */ - while (!bufempty()) - ml_delete((linenr_T)1, FALSE); - } - else if ((res = do_ecmd(0, NULL, NULL, NULL, ECMD_ONE, 0)) - == OK) - { - /* Edit a new, empty buffer. Set options for a "wipeout" - * buffer. */ - set_option_value((char_u *)"swf", 0L, NULL, OPT_LOCAL); - set_option_value((char_u *)"bt", 0L, (char_u *)"nofile", - OPT_LOCAL); - set_option_value((char_u *)"bh", 0L, (char_u *)"wipe", - OPT_LOCAL); - set_option_value((char_u *)"diff", 0L, (char_u *)"", - OPT_LOCAL); - } - if (res == OK) - { - char_u *p, *e; - linenr_T lnum = 0; - - for (p = pum_array[pum_selected].pum_info; *p != NUL; ) - { - e = vim_strchr(p, '\n'); - if (e == NULL) - { - ml_append(lnum++, p, 0, FALSE); - break; - } - else - { - *e = NUL; - ml_append(lnum++, p, e - p + 1, FALSE); - *e = '\n'; - p = e + 1; - } - } - - /* Increase the height of the preview window to show the - * text, but no more than 'previewheight' lines. */ - if (lnum > p_pvh) - lnum = p_pvh; - if (curwin->w_height < lnum) - { - win_setheight((int)lnum); - resized = TRUE; - } - - curbuf->b_changed = 0; - curbuf->b_p_ma = FALSE; - curwin->w_cursor.lnum = 0; - curwin->w_cursor.col = 0; - - if (curwin != curwin_save && win_valid(curwin_save)) - { - /* Return cursor to where we were */ - validate_cursor(); - redraw_later(SOME_VALID); - - /* When the preview window was resized we need to - * update the view on the buffer. Only go back to - * the window when needed, otherwise it will always be - * redraw. */ - if (resized) - { - win_enter(curwin_save, TRUE); - update_topline(); - } - - /* Update the screen before drawing the popup menu. - * Enable updating the status lines. */ - pum_do_redraw = TRUE; - update_screen(0); - pum_do_redraw = FALSE; - - if (win_valid(curwin_save)) - win_enter(curwin_save, TRUE); - - /* May need to update the screen again when there are - * autocommands involved. */ - pum_do_redraw = TRUE; - update_screen(0); - pum_do_redraw = FALSE; - } - } - } - } -#endif - } - - /* Never display more than we have */ - if (pum_first > pum_size - pum_height) - pum_first = pum_size - pum_height; - - if (!resized) - pum_redraw(); - - return resized; -} - -/* - * Undisplay the popup menu (later). - */ - void -pum_undisplay() -{ - pum_array = NULL; - redraw_all_later(SOME_VALID); - status_redraw_all(); -} - -/* - * Clear the popup menu. Currently only resets the offset to the first - * displayed item. - */ - void -pum_clear() -{ - pum_first = 0; -} - -/* - * Return TRUE if the popup menu is displayed. - * Overruled when "pum_do_redraw" is set, used to redraw the status lines. - */ - int -pum_visible() -{ - return !pum_do_redraw && pum_array != NULL; -} - -/* - * Return the height of the popup menu, the number of entries visible. - * Only valid when pum_visible() returns TRUE! - */ - int -pum_get_height() -{ - return pum_height; -} - -#endif diff --git a/src/popupmnu.c b/src/popupmnu.c new file mode 100644 --- /dev/null +++ b/src/popupmnu.c @@ -0,0 +1,565 @@ +/* vi:set ts=8 sts=4 sw=4: + * + * VIM - Vi IMproved by Bram Moolenaar + * + * Do ":help uganda" in Vim to read copying and usage conditions. + * Do ":help credits" in Vim to see a list of people who contributed. + * See README.txt for an overview of the Vim source code. + */ + +/* + * popupmnu.c: Popup menu (PUM) + */ +#include "vim.h" + +#if defined(FEAT_INS_EXPAND) || defined(PROTO) + +static pumitem_T *pum_array = NULL; /* items of displayed pum */ +static int pum_size; /* nr of items in "pum_array" */ +static int pum_selected; /* index of selected item or -1 */ +static int pum_first = 0; /* index of top item */ + +static int pum_height; /* nr of displayed pum items */ +static int pum_width; /* width of displayed pum items */ +static int pum_base_width; /* width of pum items base */ +static int pum_kind_width; /* width of pum items kind column */ +static int pum_scrollbar; /* TRUE when scrollbar present */ + +static int pum_row; /* top row of pum */ +static int pum_col; /* left column of pum */ + +static int pum_do_redraw = FALSE; /* do redraw anyway */ + +static int pum_set_selected __ARGS((int n)); + +#define PUM_DEF_HEIGHT 10 +#define PUM_DEF_WIDTH 15 + +/* + * Show the popup menu with items "array[size]". + * "array" must remain valid until pum_undisplay() is called! + * When possible the leftmost character is aligned with screen column "col". + * The menu appears above the screen line "row" or at "row" + "height" - 1. + */ + void +pum_display(array, size, selected) + pumitem_T *array; + int size; + int selected; /* index of initially selected item, none if + out of range */ +{ + int w; + int def_width; + int max_width; + int kind_width; + int extra_width; + int i; + int top_clear; + int row; + int height; + int col; + int above_row = cmdline_row; + +redo: + def_width = PUM_DEF_WIDTH; + max_width = 0; + kind_width = 0; + extra_width = 0; + + /* Pretend the pum is already there to avoid that must_redraw is set when + * 'cuc' is on. */ + pum_array = (pumitem_T *)1; + validate_cursor_col(); + pum_array = NULL; + + row = curwin->w_cline_row + W_WINROW(curwin); + height = curwin->w_cline_height; + col = curwin->w_wcol + W_WINCOL(curwin) - curwin->w_leftcol; + + if (firstwin->w_p_pvw) + top_clear = firstwin->w_height; + else + top_clear = 0; + + /* When the preview window is at the bottom stop just above it. Also + * avoid drawing over the status line so that it's clear there is a window + * boundary. */ + if (lastwin->w_p_pvw) + above_row -= lastwin->w_height + lastwin->w_status_height + 1; + + /* + * Figure out the size and position of the pum. + */ + if (size < PUM_DEF_HEIGHT) + pum_height = size; + else + pum_height = PUM_DEF_HEIGHT; + if (p_ph > 0 && pum_height > p_ph) + pum_height = p_ph; + + /* Put the pum below "row" if possible. If there are few lines decide on + * where there is more room. */ + if (row >= above_row - pum_height + && row > (above_row - top_clear - height) / 2) + { + /* pum above "row" */ + if (row >= size) + { + pum_row = row - size; + pum_height = size; + } + else + { + pum_row = 0; + pum_height = row; + } + if (p_ph > 0 && pum_height > p_ph) + { + pum_row += pum_height - p_ph; + pum_height = p_ph; + } + } + else + { + /* pum below "row" */ + pum_row = row + height; + if (size > above_row - pum_row) + pum_height = above_row - pum_row; + else + pum_height = size; + if (p_ph > 0 && pum_height > p_ph) + pum_height = p_ph; + } + + /* don't display when we only have room for one line */ + if (pum_height < 1 || (pum_height == 1 && size > 1)) + return; + + /* If there is a preview window at the top avoid drawing over it. */ + if (firstwin->w_p_pvw + && pum_row < firstwin->w_height + && pum_height > firstwin->w_height + 4) + { + pum_row += firstwin->w_height; + pum_height -= firstwin->w_height; + } + + /* Compute the width of the widest match and the widest extra. */ + for (i = 0; i < size; ++i) + { + w = vim_strsize(array[i].pum_text); + if (max_width < w) + max_width = w; + if (array[i].pum_kind != NULL) + { + w = vim_strsize(array[i].pum_kind) + 1; + if (kind_width < w) + kind_width = w; + } + if (array[i].pum_extra != NULL) + { + w = vim_strsize(array[i].pum_extra) + 1; + if (extra_width < w) + extra_width = w; + } + } + pum_base_width = max_width; + pum_kind_width = kind_width; + + /* if there are more items than room we need a scrollbar */ + if (pum_height < size) + { + pum_scrollbar = 1; + ++max_width; + } + else + pum_scrollbar = 0; + + if (def_width < max_width) + def_width = max_width; + + if (col < Columns - PUM_DEF_WIDTH || col < Columns - max_width) + { + /* align pum column with "col" */ + pum_col = col; + pum_width = Columns - pum_col - pum_scrollbar; + if (pum_width > max_width + kind_width + extra_width + 1 + && pum_width > PUM_DEF_WIDTH) + { + pum_width = max_width + kind_width + extra_width + 1; + if (pum_width < PUM_DEF_WIDTH) + pum_width = PUM_DEF_WIDTH; + } + } + else if (Columns < def_width) + { + /* not enough room, will use what we have */ + pum_col = 0; + pum_width = Columns - 1; + } + else + { + if (max_width > PUM_DEF_WIDTH) + max_width = PUM_DEF_WIDTH; /* truncate */ + pum_col = Columns - max_width; + pum_width = max_width - pum_scrollbar; + } + + pum_array = array; + pum_size = size; + + /* Set selected item and redraw. If the window size changed need to redo + * the positioning. */ + if (pum_set_selected(selected)) + goto redo; +} + +/* + * Redraw the popup menu, using "pum_first" and "pum_selected". + */ + void +pum_redraw() +{ + int row = pum_row; + int col; + int attr_norm = highlight_attr[HLF_PNI]; + int attr_select = highlight_attr[HLF_PSI]; + int attr_scroll = highlight_attr[HLF_PSB]; + int attr_thumb = highlight_attr[HLF_PST]; + int attr; + int i; + int idx; + char_u *s; + char_u *p = NULL; + int totwidth, width, w; + int thumb_pos = 0; + int thumb_heigth = 1; + int round; + int n; + + if (pum_scrollbar) + { + thumb_heigth = pum_height * pum_height / pum_size; + if (thumb_heigth == 0) + thumb_heigth = 1; + thumb_pos = (pum_first * (pum_height - thumb_heigth) + + (pum_size - pum_height) / 2) + / (pum_size - pum_height); + } + + for (i = 0; i < pum_height; ++i) + { + idx = i + pum_first; + attr = (idx == pum_selected) ? attr_select : attr_norm; + + /* prepend a space if there is room */ + if (pum_col > 0) + screen_putchar(' ', row, pum_col - 1, attr); + + /* Display each entry, use two spaces for a Tab. + * Do this 3 times: For the main text, kind and extra info */ + col = pum_col; + totwidth = 0; + for (round = 1; round <= 3; ++round) + { + width = 0; + s = NULL; + switch (round) + { + case 1: p = pum_array[idx].pum_text; break; + case 2: p = pum_array[idx].pum_kind; break; + case 3: p = pum_array[idx].pum_extra; break; + } + if (p != NULL) + for ( ; ; mb_ptr_adv(p)) + { + if (s == NULL) + s = p; + w = ptr2cells(p); + if (*p == NUL || *p == TAB || totwidth + w > pum_width) + { + /* Display the text that fits or comes before a Tab. */ + screen_puts_len(s, p - s, row, col, attr); + col += width; + + if (*p != TAB) + break; + + /* Display two spaces for a Tab. */ + screen_puts_len((char_u *)" ", 2, row, col, attr); + col += 2; + totwidth += 2; + s = NULL; /* start text at next char */ + width = 0; + } + else + width += w; + } + + if (round > 1) + n = pum_kind_width + 1; + else + n = 1; + + /* Stop when there is nothing more to display. */ + if (round == 3 + || (round == 2 && pum_array[idx].pum_extra == NULL) + || (round == 1 && pum_array[idx].pum_kind == NULL + && pum_array[idx].pum_extra == NULL) + || pum_base_width + n >= pum_width) + break; + screen_fill(row, row + 1, col, pum_col + pum_base_width + n, + ' ', ' ', attr); + col = pum_col + pum_base_width + n; + totwidth = pum_base_width + n; + } + + screen_fill(row, row + 1, col, pum_col + pum_width, ' ', ' ', attr); + if (pum_scrollbar > 0) + screen_putchar(' ', row, pum_col + pum_width, + i >= thumb_pos && i < thumb_pos + thumb_heigth + ? attr_thumb : attr_scroll); + + ++row; + } +} + +#if 0 /* not used yet */ +/* + * Return the index of the currently selected item. + */ + int +pum_get_selected() +{ + return pum_selected; +} +#endif + +/* + * Set the index of the currently selected item. The menu will scroll when + * necessary. When "n" is out of range don't scroll. + * Returns TRUE when the window was resized and the location of the popup menu + * must be recomputed. + */ + static int +pum_set_selected(n) + int n; +{ + int resized = FALSE; + int context = pum_height / 2; + + pum_selected = n; + + if (pum_selected >= 0 && pum_selected < pum_size) + { + if (pum_first > pum_selected - 4) + { + /* scroll down; when we did a jump it's probably a PageUp then + * scroll a whole page */ + if (pum_first > pum_selected - 2) + { + pum_first -= pum_height - 2; + if (pum_first < 0) + pum_first = 0; + else if (pum_first > pum_selected) + pum_first = pum_selected; + } + else + pum_first = pum_selected; + } + else if (pum_first < pum_selected - pum_height + 5) + { + /* scroll up; when we did a jump it's probably a PageDown then + * scroll a whole page */ + if (pum_first < pum_selected - pum_height + 1 + 2) + { + pum_first += pum_height - 2; + if (pum_first < pum_selected - pum_height + 1) + pum_first = pum_selected - pum_height + 1; + } + else + pum_first = pum_selected - pum_height + 1; + } + + /* Give a few lines of context when possible. */ + if (context > 3) + context = 3; + if (pum_height > 2) + { + if (pum_first > pum_selected - context) + { + /* scroll down */ + pum_first = pum_selected - context; + if (pum_first < 0) + pum_first = 0; + } + else if (pum_first < pum_selected + context - pum_height + 1) + { + /* scroll up */ + pum_first = pum_selected + context - pum_height + 1; + } + } + +#if defined(FEAT_WINDOWS) && defined(FEAT_QUICKFIX) + /* Show extra info in the preview window if there is something and + * 'completeopt' contains "preview". */ + if (pum_array[pum_selected].pum_info != NULL + && vim_strchr(p_cot, 'p') != NULL) + { + win_T *curwin_save = curwin; + int res = OK; + + /* Open a preview window. 3 lines by default. */ + g_do_tagpreview = 3; + resized = prepare_tagpreview(); + g_do_tagpreview = 0; + + if (curwin->w_p_pvw) + { + if (curbuf->b_fname == NULL + && curbuf->b_p_bt[0] == 'n' && curbuf->b_p_bt[2] == 'f' + && curbuf->b_p_bh[0] == 'w') + { + /* Already a "wipeout" buffer, make it empty. */ + while (!bufempty()) + ml_delete((linenr_T)1, FALSE); + } + else if ((res = do_ecmd(0, NULL, NULL, NULL, ECMD_ONE, 0)) + == OK) + { + /* Edit a new, empty buffer. Set options for a "wipeout" + * buffer. */ + set_option_value((char_u *)"swf", 0L, NULL, OPT_LOCAL); + set_option_value((char_u *)"bt", 0L, (char_u *)"nofile", + OPT_LOCAL); + set_option_value((char_u *)"bh", 0L, (char_u *)"wipe", + OPT_LOCAL); + set_option_value((char_u *)"diff", 0L, (char_u *)"", + OPT_LOCAL); + } + if (res == OK) + { + char_u *p, *e; + linenr_T lnum = 0; + + for (p = pum_array[pum_selected].pum_info; *p != NUL; ) + { + e = vim_strchr(p, '\n'); + if (e == NULL) + { + ml_append(lnum++, p, 0, FALSE); + break; + } + else + { + *e = NUL; + ml_append(lnum++, p, e - p + 1, FALSE); + *e = '\n'; + p = e + 1; + } + } + + /* Increase the height of the preview window to show the + * text, but no more than 'previewheight' lines. */ + if (lnum > p_pvh) + lnum = p_pvh; + if (curwin->w_height < lnum) + { + win_setheight((int)lnum); + resized = TRUE; + } + + curbuf->b_changed = 0; + curbuf->b_p_ma = FALSE; + curwin->w_cursor.lnum = 0; + curwin->w_cursor.col = 0; + + if (curwin != curwin_save && win_valid(curwin_save)) + { + /* Return cursor to where we were */ + validate_cursor(); + redraw_later(SOME_VALID); + + /* When the preview window was resized we need to + * update the view on the buffer. Only go back to + * the window when needed, otherwise it will always be + * redraw. */ + if (resized) + { + win_enter(curwin_save, TRUE); + update_topline(); + } + + /* Update the screen before drawing the popup menu. + * Enable updating the status lines. */ + pum_do_redraw = TRUE; + update_screen(0); + pum_do_redraw = FALSE; + + if (win_valid(curwin_save)) + win_enter(curwin_save, TRUE); + + /* May need to update the screen again when there are + * autocommands involved. */ + pum_do_redraw = TRUE; + update_screen(0); + pum_do_redraw = FALSE; + } + } + } + } +#endif + } + + /* Never display more than we have */ + if (pum_first > pum_size - pum_height) + pum_first = pum_size - pum_height; + + if (!resized) + pum_redraw(); + + return resized; +} + +/* + * Undisplay the popup menu (later). + */ + void +pum_undisplay() +{ + pum_array = NULL; + redraw_all_later(SOME_VALID); + status_redraw_all(); +} + +/* + * Clear the popup menu. Currently only resets the offset to the first + * displayed item. + */ + void +pum_clear() +{ + pum_first = 0; +} + +/* + * Return TRUE if the popup menu is displayed. + * Overruled when "pum_do_redraw" is set, used to redraw the status lines. + */ + int +pum_visible() +{ + return !pum_do_redraw && pum_array != NULL; +} + +/* + * Return the height of the popup menu, the number of entries visible. + * Only valid when pum_visible() returns TRUE! + */ + int +pum_get_height() +{ + return pum_height; +} + +#endif diff --git a/src/proto/edit.pro b/src/proto/edit.pro --- a/src/proto/edit.pro +++ b/src/proto/edit.pro @@ -1,42 +1,42 @@ /* edit.c */ -int edit __ARGS((int cmdchar, int startln, long count)); -void edit_putchar __ARGS((int c, int highlight)); -void edit_unputchar __ARGS((void)); -void display_dollar __ARGS((colnr_T col)); -void change_indent __ARGS((int type, int amount, int round, int replaced)); -void truncate_spaces __ARGS((char_u *line)); -void backspace_until_column __ARGS((int col)); -int vim_is_ctrl_x_key __ARGS((int c)); -int ins_compl_add_infercase __ARGS((char_u *str, int len, int icase, char_u *fname, int dir, int flags)); -int ins_compl_add __ARGS((char_u *str, int len, int icase, char_u *fname, char_u **cptext, int cdir, int flags)); -void set_completion __ARGS((int startcol, list_T *list)); -void ins_compl_show_pum __ARGS((void)); -char_u *find_word_start __ARGS((char_u *ptr)); -char_u *find_word_end __ARGS((char_u *ptr)); -int ins_compl_active __ARGS((void)); -int ins_compl_add_tv __ARGS((typval_T *tv, int dir)); -void ins_compl_check_keys __ARGS((int frequency)); -int get_literal __ARGS((void)); -void insertchar __ARGS((int c, int flags, int second_indent)); -void auto_format __ARGS((int trailblank, int prev_line)); -int comp_textwidth __ARGS((int ff)); -int stop_arrow __ARGS((void)); -void set_last_insert __ARGS((int c)); -void free_last_insert __ARGS((void)); -char_u *add_char2buf __ARGS((int c, char_u *s)); -void beginline __ARGS((int flags)); -int oneright __ARGS((void)); -int oneleft __ARGS((void)); -int cursor_up __ARGS((long n, int upd_topline)); -int cursor_down __ARGS((long n, int upd_topline)); -int stuff_inserted __ARGS((int c, long count, int no_esc)); -char_u *get_last_insert __ARGS((void)); -char_u *get_last_insert_save __ARGS((void)); -void replace_push __ARGS((int c)); -void fixthisline __ARGS((int (*get_the_indent)(void))); -void fix_indent __ARGS((void)); -int in_cinkeys __ARGS((int keytyped, int when, int line_is_empty)); -int hkmap __ARGS((int c)); -void ins_scroll __ARGS((void)); -void ins_horscroll __ARGS((void)); +extern int edit __ARGS((int cmdchar, int startln, long count)); +extern void edit_putchar __ARGS((int c, int highlight)); +extern void edit_unputchar __ARGS((void)); +extern void display_dollar __ARGS((colnr_T col)); +extern void change_indent __ARGS((int type, int amount, int round, int replaced)); +extern void truncate_spaces __ARGS((char_u *line)); +extern void backspace_until_column __ARGS((int col)); +extern int vim_is_ctrl_x_key __ARGS((int c)); +extern int ins_compl_add_infercase __ARGS((char_u *str, int len, int icase, char_u *fname, int dir, int flags)); +extern int ins_compl_add __ARGS((char_u *str, int len, int icase, char_u *fname, char_u **cptext, int cdir, int flags)); +extern void set_completion __ARGS((int startcol, list_T *list)); +extern void ins_compl_show_pum __ARGS((void)); +extern char_u *find_word_start __ARGS((char_u *ptr)); +extern char_u *find_word_end __ARGS((char_u *ptr)); +extern int ins_compl_active __ARGS((void)); +extern int ins_compl_add_tv __ARGS((typval_T *tv, int dir)); +extern void ins_compl_check_keys __ARGS((int frequency)); +extern int get_literal __ARGS((void)); +extern void insertchar __ARGS((int c, int flags, int second_indent)); +extern void auto_format __ARGS((int trailblank, int prev_line)); +extern int comp_textwidth __ARGS((int ff)); +extern int stop_arrow __ARGS((void)); +extern void set_last_insert __ARGS((int c)); +extern void free_last_insert __ARGS((void)); +extern char_u *add_char2buf __ARGS((int c, char_u *s)); +extern void beginline __ARGS((int flags)); +extern int oneright __ARGS((void)); +extern int oneleft __ARGS((void)); +extern int cursor_up __ARGS((long n, int upd_topline)); +extern int cursor_down __ARGS((long n, int upd_topline)); +extern int stuff_inserted __ARGS((int c, long count, int no_esc)); +extern char_u *get_last_insert __ARGS((void)); +extern char_u *get_last_insert_save __ARGS((void)); +extern void replace_push __ARGS((int c)); +extern void fixthisline __ARGS((int (*get_the_indent)(void))); +extern void fix_indent __ARGS((void)); +extern int in_cinkeys __ARGS((int keytyped, int when, int line_is_empty)); +extern int hkmap __ARGS((int c)); +extern void ins_scroll __ARGS((void)); +extern void ins_horscroll __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/ex_cmds.pro b/src/proto/ex_cmds.pro --- a/src/proto/ex_cmds.pro +++ b/src/proto/ex_cmds.pro @@ -1,59 +1,59 @@ /* ex_cmds.c */ -void do_ascii __ARGS((exarg_T *eap)); -void ex_align __ARGS((exarg_T *eap)); -void ex_sort __ARGS((exarg_T *eap)); -void ex_retab __ARGS((exarg_T *eap)); -int do_move __ARGS((linenr_T line1, linenr_T line2, linenr_T dest)); -void ex_copy __ARGS((linenr_T line1, linenr_T line2, linenr_T n)); -void free_prev_shellcmd __ARGS((void)); -void do_bang __ARGS((int addr_count, exarg_T *eap, int forceit, int do_in, int do_out)); -void do_shell __ARGS((char_u *cmd, int flags)); -char_u *make_filter_cmd __ARGS((char_u *cmd, char_u *itmp, char_u *otmp)); -void append_redir __ARGS((char_u *buf, char_u *opt, char_u *fname)); -int viminfo_error __ARGS((char *errnum, char *message, char_u *line)); -int read_viminfo __ARGS((char_u *file, int want_info, int want_marks, int forceit)); -void write_viminfo __ARGS((char_u *file, int forceit)); -int viminfo_readline __ARGS((vir_T *virp)); -char_u *viminfo_readstring __ARGS((vir_T *virp, int off, int convert)); -void viminfo_writestring __ARGS((FILE *fd, char_u *p)); -void do_fixdel __ARGS((exarg_T *eap)); -void print_line_no_prefix __ARGS((linenr_T lnum, int use_number, int list)); -void print_line __ARGS((linenr_T lnum, int use_number, int list)); -void ex_file __ARGS((exarg_T *eap)); -void ex_update __ARGS((exarg_T *eap)); -void ex_write __ARGS((exarg_T *eap)); -int do_write __ARGS((exarg_T *eap)); -void ex_wnext __ARGS((exarg_T *eap)); -void do_wqall __ARGS((exarg_T *eap)); -int not_writing __ARGS((void)); -int getfile __ARGS((int fnum, char_u *ffname, char_u *sfname, int setpm, linenr_T lnum, int forceit)); -int do_ecmd __ARGS((int fnum, char_u *ffname, char_u *sfname, exarg_T *eap, linenr_T newlnum, int flags)); -void ex_append __ARGS((exarg_T *eap)); -void ex_change __ARGS((exarg_T *eap)); -void ex_z __ARGS((exarg_T *eap)); -int check_restricted __ARGS((void)); -int check_secure __ARGS((void)); -void do_sub __ARGS((exarg_T *eap)); -int do_sub_msg __ARGS((int count_only)); -void ex_global __ARGS((exarg_T *eap)); -void global_exe __ARGS((char_u *cmd)); -int read_viminfo_sub_string __ARGS((vir_T *virp, int force)); -void write_viminfo_sub_string __ARGS((FILE *fp)); -void free_old_sub __ARGS((void)); -int prepare_tagpreview __ARGS((void)); -void ex_help __ARGS((exarg_T *eap)); -char_u *check_help_lang __ARGS((char_u *arg)); -int help_heuristic __ARGS((char_u *matched_string, int offset, int wrong_case)); -int find_help_tags __ARGS((char_u *arg, int *num_matches, char_u ***matches, int keep_lang)); -void fix_help_buffer __ARGS((void)); -void ex_exusage __ARGS((exarg_T *eap)); -void ex_viusage __ARGS((exarg_T *eap)); -void ex_helptags __ARGS((exarg_T *eap)); -void ex_sign __ARGS((exarg_T *eap)); -void sign_gui_started __ARGS((void)); -int sign_get_attr __ARGS((int typenr, int line)); -char_u *sign_get_text __ARGS((int typenr)); -void *sign_get_image __ARGS((int typenr)); -char_u *sign_typenr2name __ARGS((int typenr)); -void ex_drop __ARGS((exarg_T *eap)); +extern void do_ascii __ARGS((exarg_T *eap)); +extern void ex_align __ARGS((exarg_T *eap)); +extern void ex_sort __ARGS((exarg_T *eap)); +extern void ex_retab __ARGS((exarg_T *eap)); +extern int do_move __ARGS((linenr_T line1, linenr_T line2, linenr_T dest)); +extern void ex_copy __ARGS((linenr_T line1, linenr_T line2, linenr_T n)); +extern void free_prev_shellcmd __ARGS((void)); +extern void do_bang __ARGS((int addr_count, exarg_T *eap, int forceit, int do_in, int do_out)); +extern void do_shell __ARGS((char_u *cmd, int flags)); +extern char_u *make_filter_cmd __ARGS((char_u *cmd, char_u *itmp, char_u *otmp)); +extern void append_redir __ARGS((char_u *buf, char_u *opt, char_u *fname)); +extern int viminfo_error __ARGS((char *errnum, char *message, char_u *line)); +extern int read_viminfo __ARGS((char_u *file, int want_info, int want_marks, int forceit)); +extern void write_viminfo __ARGS((char_u *file, int forceit)); +extern int viminfo_readline __ARGS((vir_T *virp)); +extern char_u *viminfo_readstring __ARGS((vir_T *virp, int off, int convert)); +extern void viminfo_writestring __ARGS((FILE *fd, char_u *p)); +extern void do_fixdel __ARGS((exarg_T *eap)); +extern void print_line_no_prefix __ARGS((linenr_T lnum, int use_number, int list)); +extern void print_line __ARGS((linenr_T lnum, int use_number, int list)); +extern void ex_file __ARGS((exarg_T *eap)); +extern void ex_update __ARGS((exarg_T *eap)); +extern void ex_write __ARGS((exarg_T *eap)); +extern int do_write __ARGS((exarg_T *eap)); +extern void ex_wnext __ARGS((exarg_T *eap)); +extern void do_wqall __ARGS((exarg_T *eap)); +extern int not_writing __ARGS((void)); +extern int getfile __ARGS((int fnum, char_u *ffname, char_u *sfname, int setpm, linenr_T lnum, int forceit)); +extern int do_ecmd __ARGS((int fnum, char_u *ffname, char_u *sfname, exarg_T *eap, linenr_T newlnum, int flags)); +extern void ex_append __ARGS((exarg_T *eap)); +extern void ex_change __ARGS((exarg_T *eap)); +extern void ex_z __ARGS((exarg_T *eap)); +extern int check_restricted __ARGS((void)); +extern int check_secure __ARGS((void)); +extern void do_sub __ARGS((exarg_T *eap)); +extern int do_sub_msg __ARGS((int count_only)); +extern void ex_global __ARGS((exarg_T *eap)); +extern void global_exe __ARGS((char_u *cmd)); +extern int read_viminfo_sub_string __ARGS((vir_T *virp, int force)); +extern void write_viminfo_sub_string __ARGS((FILE *fp)); +extern void free_old_sub __ARGS((void)); +extern int prepare_tagpreview __ARGS((void)); +extern void ex_help __ARGS((exarg_T *eap)); +extern char_u *check_help_lang __ARGS((char_u *arg)); +extern int help_heuristic __ARGS((char_u *matched_string, int offset, int wrong_case)); +extern int find_help_tags __ARGS((char_u *arg, int *num_matches, char_u ***matches, int keep_lang)); +extern void fix_help_buffer __ARGS((void)); +extern void ex_exusage __ARGS((exarg_T *eap)); +extern void ex_viusage __ARGS((exarg_T *eap)); +extern void ex_helptags __ARGS((exarg_T *eap)); +extern void ex_sign __ARGS((exarg_T *eap)); +extern void sign_gui_started __ARGS((void)); +extern int sign_get_attr __ARGS((int typenr, int line)); +extern char_u *sign_get_text __ARGS((int typenr)); +extern void *sign_get_image __ARGS((int typenr)); +extern char_u *sign_typenr2name __ARGS((int typenr)); +extern void ex_drop __ARGS((exarg_T *eap)); /* vim: set ft=c : */ diff --git a/src/proto/ex_cmds2.pro b/src/proto/ex_cmds2.pro --- a/src/proto/ex_cmds2.pro +++ b/src/proto/ex_cmds2.pro @@ -1,83 +1,83 @@ /* ex_cmds2.c */ -void do_debug __ARGS((char_u *cmd)); -void ex_debug __ARGS((exarg_T *eap)); -void dbg_check_breakpoint __ARGS((exarg_T *eap)); -int dbg_check_skipped __ARGS((exarg_T *eap)); -void ex_breakadd __ARGS((exarg_T *eap)); -void ex_debuggreedy __ARGS((exarg_T *eap)); -void ex_breakdel __ARGS((exarg_T *eap)); -void ex_breaklist __ARGS((exarg_T *eap)); -linenr_T dbg_find_breakpoint __ARGS((int file, char_u *fname, linenr_T after)); -int has_profiling __ARGS((int file, char_u *fname, int *fp)); -void dbg_breakpoint __ARGS((char_u *name, linenr_T lnum)); -void profile_zero __ARGS((proftime_T *tm)); -void profile_start __ARGS((proftime_T *tm)); -void profile_end __ARGS((proftime_T *tm)); -void profile_sub __ARGS((proftime_T *tm, proftime_T *tm2)); -void profile_add __ARGS((proftime_T *tm, proftime_T *tm2)); -void profile_self __ARGS((proftime_T *self, proftime_T *total, proftime_T *children)); -void profile_get_wait __ARGS((proftime_T *tm)); -void profile_sub_wait __ARGS((proftime_T *tm, proftime_T *tma)); -int profile_equal __ARGS((proftime_T *tm1, proftime_T *tm2)); -int profile_cmp __ARGS((proftime_T *tm1, proftime_T *tm2)); -char *profile_msg __ARGS((proftime_T *tm)); -void ex_profile __ARGS((exarg_T *eap)); -void profile_dump __ARGS((void)); -void script_prof_save __ARGS((proftime_T *tm)); -void script_prof_restore __ARGS((proftime_T *tm)); -void prof_inchar_enter __ARGS((void)); -void prof_inchar_exit __ARGS((void)); -int prof_def_func __ARGS((void)); -int autowrite __ARGS((buf_T *buf, int forceit)); -void autowrite_all __ARGS((void)); -int check_changed __ARGS((buf_T *buf, int checkaw, int mult_win, int forceit, int allbuf)); -void browse_save_fname __ARGS((buf_T *buf)); -void dialog_changed __ARGS((buf_T *buf, int checkall)); -int can_abandon __ARGS((buf_T *buf, int forceit)); -int check_changed_any __ARGS((int hidden)); -int check_fname __ARGS((void)); -int buf_write_all __ARGS((buf_T *buf, int forceit)); -int get_arglist __ARGS((garray_T *gap, char_u *str)); -int get_arglist_exp __ARGS((char_u *str, int *fcountp, char_u ***fnamesp)); -void set_arglist __ARGS((char_u *str)); -void check_arg_idx __ARGS((win_T *win)); -void ex_args __ARGS((exarg_T *eap)); -void ex_previous __ARGS((exarg_T *eap)); -void ex_rewind __ARGS((exarg_T *eap)); -void ex_last __ARGS((exarg_T *eap)); -void ex_argument __ARGS((exarg_T *eap)); -void do_argfile __ARGS((exarg_T *eap, int argn)); -void ex_next __ARGS((exarg_T *eap)); -void ex_argedit __ARGS((exarg_T *eap)); -void ex_argadd __ARGS((exarg_T *eap)); -void ex_argdelete __ARGS((exarg_T *eap)); -void ex_listdo __ARGS((exarg_T *eap)); -void ex_compiler __ARGS((exarg_T *eap)); -void ex_runtime __ARGS((exarg_T *eap)); -int source_runtime __ARGS((char_u *name, int all)); -int do_in_runtimepath __ARGS((char_u *name, int all, void (*callback)(char_u *fname, void *ck), void *cookie)); -void ex_options __ARGS((exarg_T *eap)); -void ex_source __ARGS((exarg_T *eap)); -linenr_T *source_breakpoint __ARGS((void *cookie)); -int *source_dbg_tick __ARGS((void *cookie)); -int source_level __ARGS((void *cookie)); -int do_source __ARGS((char_u *fname, int check_other, int is_vimrc)); -void ex_scriptnames __ARGS((exarg_T *eap)); -void scriptnames_slash_adjust __ARGS((void)); -char_u *get_scriptname __ARGS((scid_T id)); -void free_scriptnames __ARGS((void)); -char *fgets_cr __ARGS((char *s, int n, FILE *stream)); -char_u *getsourceline __ARGS((int c, void *cookie, int indent)); -void script_line_start __ARGS((void)); -void script_line_exec __ARGS((void)); -void script_line_end __ARGS((void)); -void ex_scriptencoding __ARGS((exarg_T *eap)); -void ex_finish __ARGS((exarg_T *eap)); -void do_finish __ARGS((exarg_T *eap, int reanimate)); -int source_finished __ARGS((char_u *(*getline)(int, void *, int), void *cookie)); -void ex_checktime __ARGS((exarg_T *eap)); -char_u *get_mess_lang __ARGS((void)); -void set_lang_var __ARGS((void)); -void ex_language __ARGS((exarg_T *eap)); -char_u *get_lang_arg __ARGS((expand_T *xp, int idx)); +extern void do_debug __ARGS((char_u *cmd)); +extern void ex_debug __ARGS((exarg_T *eap)); +extern void dbg_check_breakpoint __ARGS((exarg_T *eap)); +extern int dbg_check_skipped __ARGS((exarg_T *eap)); +extern void ex_breakadd __ARGS((exarg_T *eap)); +extern void ex_debuggreedy __ARGS((exarg_T *eap)); +extern void ex_breakdel __ARGS((exarg_T *eap)); +extern void ex_breaklist __ARGS((exarg_T *eap)); +extern linenr_T dbg_find_breakpoint __ARGS((int file, char_u *fname, linenr_T after)); +extern int has_profiling __ARGS((int file, char_u *fname, int *fp)); +extern void dbg_breakpoint __ARGS((char_u *name, linenr_T lnum)); +extern void profile_start __ARGS((proftime_T *tm)); +extern void profile_end __ARGS((proftime_T *tm)); +extern void profile_sub __ARGS((proftime_T *tm, proftime_T *tm2)); +extern char *profile_msg __ARGS((proftime_T *tm)); +extern void profile_zero __ARGS((proftime_T *tm)); +extern void profile_add __ARGS((proftime_T *tm, proftime_T *tm2)); +extern void profile_self __ARGS((proftime_T *self, proftime_T *total, proftime_T *children)); +extern void profile_get_wait __ARGS((proftime_T *tm)); +extern void profile_sub_wait __ARGS((proftime_T *tm, proftime_T *tma)); +extern int profile_equal __ARGS((proftime_T *tm1, proftime_T *tm2)); +extern int profile_cmp __ARGS((proftime_T *tm1, proftime_T *tm2)); +extern void ex_profile __ARGS((exarg_T *eap)); +extern void profile_dump __ARGS((void)); +extern void script_prof_save __ARGS((proftime_T *tm)); +extern void script_prof_restore __ARGS((proftime_T *tm)); +extern void prof_inchar_enter __ARGS((void)); +extern void prof_inchar_exit __ARGS((void)); +extern int prof_def_func __ARGS((void)); +extern int autowrite __ARGS((buf_T *buf, int forceit)); +extern void autowrite_all __ARGS((void)); +extern int check_changed __ARGS((buf_T *buf, int checkaw, int mult_win, int forceit, int allbuf)); +extern void browse_save_fname __ARGS((buf_T *buf)); +extern void dialog_changed __ARGS((buf_T *buf, int checkall)); +extern int can_abandon __ARGS((buf_T *buf, int forceit)); +extern int check_changed_any __ARGS((int hidden)); +extern int check_fname __ARGS((void)); +extern int buf_write_all __ARGS((buf_T *buf, int forceit)); +extern int get_arglist __ARGS((garray_T *gap, char_u *str)); +extern int get_arglist_exp __ARGS((char_u *str, int *fcountp, char_u ***fnamesp)); +extern void set_arglist __ARGS((char_u *str)); +extern void check_arg_idx __ARGS((win_T *win)); +extern void ex_args __ARGS((exarg_T *eap)); +extern void ex_previous __ARGS((exarg_T *eap)); +extern void ex_rewind __ARGS((exarg_T *eap)); +extern void ex_last __ARGS((exarg_T *eap)); +extern void ex_argument __ARGS((exarg_T *eap)); +extern void do_argfile __ARGS((exarg_T *eap, int argn)); +extern void ex_next __ARGS((exarg_T *eap)); +extern void ex_argedit __ARGS((exarg_T *eap)); +extern void ex_argadd __ARGS((exarg_T *eap)); +extern void ex_argdelete __ARGS((exarg_T *eap)); +extern void ex_listdo __ARGS((exarg_T *eap)); +extern void ex_compiler __ARGS((exarg_T *eap)); +extern void ex_runtime __ARGS((exarg_T *eap)); +extern int source_runtime __ARGS((char_u *name, int all)); +extern int do_in_runtimepath __ARGS((char_u *name, int all, void (*callback)(char_u *fname, void *ck), void *cookie)); +extern void ex_options __ARGS((exarg_T *eap)); +extern void ex_source __ARGS((exarg_T *eap)); +extern linenr_T *source_breakpoint __ARGS((void *cookie)); +extern int *source_dbg_tick __ARGS((void *cookie)); +extern int source_level __ARGS((void *cookie)); +extern int do_source __ARGS((char_u *fname, int check_other, int is_vimrc)); +extern void ex_scriptnames __ARGS((exarg_T *eap)); +extern void scriptnames_slash_adjust __ARGS((void)); +extern char_u *get_scriptname __ARGS((scid_T id)); +extern void free_scriptnames __ARGS((void)); +extern char *fgets_cr __ARGS((char *s, int n, FILE *stream)); +extern char_u *getsourceline __ARGS((int c, void *cookie, int indent)); +extern void script_line_start __ARGS((void)); +extern void script_line_exec __ARGS((void)); +extern void script_line_end __ARGS((void)); +extern void ex_scriptencoding __ARGS((exarg_T *eap)); +extern void ex_finish __ARGS((exarg_T *eap)); +extern void do_finish __ARGS((exarg_T *eap, int reanimate)); +extern int source_finished __ARGS((char_u *(*getline)(int, void *, int), void *cookie)); +extern void ex_checktime __ARGS((exarg_T *eap)); +extern char_u *get_mess_lang __ARGS((void)); +extern void set_lang_var __ARGS((void)); +extern void ex_language __ARGS((exarg_T *eap)); +extern char_u *get_lang_arg __ARGS((expand_T *xp, int idx)); /* vim: set ft=c : */ diff --git a/src/proto/fileio.pro b/src/proto/fileio.pro --- a/src/proto/fileio.pro +++ b/src/proto/fileio.pro @@ -1,51 +1,51 @@ /* fileio.c */ -void filemess __ARGS((buf_T *buf, char_u *name, char_u *s, int attr)); -int readfile __ARGS((char_u *fname, char_u *sfname, linenr_T from, linenr_T lines_to_skip, linenr_T lines_to_read, exarg_T *eap, int flags)); -int prep_exarg __ARGS((exarg_T *eap, buf_T *buf)); -int buf_write __ARGS((buf_T *buf, char_u *fname, char_u *sfname, linenr_T start, linenr_T end, exarg_T *eap, int append, int forceit, int reset_changed, int filtering)); -void msg_add_fname __ARGS((buf_T *buf, char_u *fname)); -void msg_add_lines __ARGS((int insert_space, long lnum, long nchars)); -char_u *shorten_fname __ARGS((char_u *full_path, char_u *dir_name)); -void shorten_fnames __ARGS((int force)); -void shorten_filenames __ARGS((char_u **fnames, int count)); -char_u *modname __ARGS((char_u *fname, char_u *ext, int prepend_dot)); -char_u *buf_modname __ARGS((int shortname, char_u *fname, char_u *ext, int prepend_dot)); -int vim_fgets __ARGS((char_u *buf, int size, FILE *fp)); -int tag_fgets __ARGS((char_u *buf, int size, FILE *fp)); -int vim_rename __ARGS((char_u *from, char_u *to)); -int check_timestamps __ARGS((int focus)); -int buf_check_timestamp __ARGS((buf_T *buf, int focus)); -void buf_reload __ARGS((buf_T *buf, int orig_mode)); -void buf_store_time __ARGS((buf_T *buf, struct stat *st, char_u *fname)); -void write_lnum_adjust __ARGS((linenr_T offset)); -void vim_deltempdir __ARGS((void)); -char_u *vim_tempname __ARGS((int extra_char)); -void forward_slash __ARGS((char_u *fname)); -void aubuflocal_remove __ARGS((buf_T *buf)); -int au_has_group __ARGS((char_u *name)); -void do_augroup __ARGS((char_u *arg, int del_group)); -void free_all_autocmds __ARGS((void)); -int check_ei __ARGS((void)); -char_u *au_event_disable __ARGS((char *what)); -void au_event_restore __ARGS((char_u *old_ei)); -void do_autocmd __ARGS((char_u *arg, int forceit)); -int do_doautocmd __ARGS((char_u *arg, int do_msg)); -void ex_doautoall __ARGS((exarg_T *eap)); -void aucmd_prepbuf __ARGS((aco_save_T *aco, buf_T *buf)); -void aucmd_restbuf __ARGS((aco_save_T *aco)); -int apply_autocmds __ARGS((event_T event, char_u *fname, char_u *fname_io, int force, buf_T *buf)); -int apply_autocmds_retval __ARGS((event_T event, char_u *fname, char_u *fname_io, int force, buf_T *buf, int *retval)); -int has_cursorhold __ARGS((void)); -int trigger_cursorhold __ARGS((void)); -int has_cursormoved __ARGS((void)); -int has_cursormovedI __ARGS((void)); -int has_autocmd __ARGS((event_T event, char_u *sfname, buf_T *buf)); -char_u *get_augroup_name __ARGS((expand_T *xp, int idx)); -char_u *set_context_in_autocmd __ARGS((expand_T *xp, char_u *arg, int doautocmd)); -char_u *get_event_name __ARGS((expand_T *xp, int idx)); -int autocmd_supported __ARGS((char_u *name)); -int au_exists __ARGS((char_u *arg)); -int match_file_pat __ARGS((char_u *pattern, regprog_T *prog, char_u *fname, char_u *sfname, char_u *tail, int allow_dirs)); -int match_file_list __ARGS((char_u *list, char_u *sfname, char_u *ffname)); -char_u *file_pat_to_reg_pat __ARGS((char_u *pat, char_u *pat_end, char *allow_dirs, int no_bslash)); +extern void filemess __ARGS((buf_T *buf, char_u *name, char_u *s, int attr)); +extern int readfile __ARGS((char_u *fname, char_u *sfname, linenr_T from, linenr_T lines_to_skip, linenr_T lines_to_read, exarg_T *eap, int flags)); +extern int prep_exarg __ARGS((exarg_T *eap, buf_T *buf)); +extern int buf_write __ARGS((buf_T *buf, char_u *fname, char_u *sfname, linenr_T start, linenr_T end, exarg_T *eap, int append, int forceit, int reset_changed, int filtering)); +extern void msg_add_fname __ARGS((buf_T *buf, char_u *fname)); +extern void msg_add_lines __ARGS((int insert_space, long lnum, long nchars)); +extern char_u *shorten_fname __ARGS((char_u *full_path, char_u *dir_name)); +extern void shorten_fnames __ARGS((int force)); +extern void shorten_filenames __ARGS((char_u **fnames, int count)); +extern char_u *modname __ARGS((char_u *fname, char_u *ext, int prepend_dot)); +extern char_u *buf_modname __ARGS((int shortname, char_u *fname, char_u *ext, int prepend_dot)); +extern int vim_fgets __ARGS((char_u *buf, int size, FILE *fp)); +extern int tag_fgets __ARGS((char_u *buf, int size, FILE *fp)); +extern int vim_rename __ARGS((char_u *from, char_u *to)); +extern int check_timestamps __ARGS((int focus)); +extern int buf_check_timestamp __ARGS((buf_T *buf, int focus)); +extern void buf_reload __ARGS((buf_T *buf, int orig_mode)); +extern void buf_store_time __ARGS((buf_T *buf, struct stat *st, char_u *fname)); +extern void write_lnum_adjust __ARGS((linenr_T offset)); +extern void vim_deltempdir __ARGS((void)); +extern char_u *vim_tempname __ARGS((int extra_char)); +extern void forward_slash __ARGS((char_u *fname)); +extern void aubuflocal_remove __ARGS((buf_T *buf)); +extern int au_has_group __ARGS((char_u *name)); +extern void do_augroup __ARGS((char_u *arg, int del_group)); +extern void free_all_autocmds __ARGS((void)); +extern int check_ei __ARGS((void)); +extern char_u *au_event_disable __ARGS((char *what)); +extern void au_event_restore __ARGS((char_u *old_ei)); +extern void do_autocmd __ARGS((char_u *arg, int forceit)); +extern int do_doautocmd __ARGS((char_u *arg, int do_msg)); +extern void ex_doautoall __ARGS((exarg_T *eap)); +extern void aucmd_prepbuf __ARGS((aco_save_T *aco, buf_T *buf)); +extern void aucmd_restbuf __ARGS((aco_save_T *aco)); +extern int apply_autocmds __ARGS((event_T event, char_u *fname, char_u *fname_io, int force, buf_T *buf)); +extern int apply_autocmds_retval __ARGS((event_T event, char_u *fname, char_u *fname_io, int force, buf_T *buf, int *retval)); +extern int has_cursorhold __ARGS((void)); +extern int trigger_cursorhold __ARGS((void)); +extern int has_cursormoved __ARGS((void)); +extern int has_cursormovedI __ARGS((void)); +extern int has_autocmd __ARGS((event_T event, char_u *sfname, buf_T *buf)); +extern char_u *get_augroup_name __ARGS((expand_T *xp, int idx)); +extern char_u *set_context_in_autocmd __ARGS((expand_T *xp, char_u *arg, int doautocmd)); +extern char_u *get_event_name __ARGS((expand_T *xp, int idx)); +extern int autocmd_supported __ARGS((char_u *name)); +extern int au_exists __ARGS((char_u *arg)); +extern int match_file_pat __ARGS((char_u *pattern, regprog_T *prog, char_u *fname, char_u *sfname, char_u *tail, int allow_dirs)); +extern int match_file_list __ARGS((char_u *list, char_u *sfname, char_u *ffname)); +extern char_u *file_pat_to_reg_pat __ARGS((char_u *pat, char_u *pat_end, char *allow_dirs, int no_bslash)); /* vim: set ft=c : */ diff --git a/src/proto/gui_beval.pro b/src/proto/gui_beval.pro --- a/src/proto/gui_beval.pro +++ b/src/proto/gui_beval.pro @@ -1,11 +1,11 @@ /* gui_beval.c */ -void general_beval_cb __ARGS((BalloonEval *beval, int state)); -BalloonEval *gui_mch_create_beval_area __ARGS((void *target, char_u *mesg, void (*mesgCB)(BalloonEval *, int), void *clientData)); -void gui_mch_destroy_beval_area __ARGS((BalloonEval *beval)); -void gui_mch_enable_beval_area __ARGS((BalloonEval *beval)); -void gui_mch_disable_beval_area __ARGS((BalloonEval *beval)); -BalloonEval *gui_mch_currently_showing_beval __ARGS((void)); -int get_beval_info __ARGS((BalloonEval *beval, int getword, win_T **winp, linenr_T *lnump, char_u **textp, int *colp)); -void gui_mch_post_balloon __ARGS((BalloonEval *beval, char_u *mesg)); -void gui_mch_unpost_balloon __ARGS((BalloonEval *beval)); +extern void general_beval_cb __ARGS((BalloonEval *beval, int state)); +extern BalloonEval *gui_mch_create_beval_area __ARGS((void *target, char_u *mesg, void (*mesgCB)(BalloonEval *, int), void *clientData)); +extern void gui_mch_destroy_beval_area __ARGS((BalloonEval *beval)); +extern void gui_mch_enable_beval_area __ARGS((BalloonEval *beval)); +extern void gui_mch_disable_beval_area __ARGS((BalloonEval *beval)); +extern BalloonEval *gui_mch_currently_showing_beval __ARGS((void)); +extern int get_beval_info __ARGS((BalloonEval *beval, int getword, win_T **winp, linenr_T *lnump, char_u **textp, int *colp)); +extern void gui_mch_post_balloon __ARGS((BalloonEval *beval, char_u *mesg)); +extern void gui_mch_unpost_balloon __ARGS((BalloonEval *beval)); /* vim: set ft=c : */ diff --git a/src/proto/gui_motif.pro b/src/proto/gui_motif.pro --- a/src/proto/gui_motif.pro +++ b/src/proto/gui_motif.pro @@ -1,42 +1,42 @@ /* gui_motif.c */ -void gui_x11_create_widgets __ARGS((void)); -void gui_x11_destroy_widgets __ARGS((void)); -void gui_mch_set_text_area_pos __ARGS((int x, int y, int w, int h)); -void gui_x11_set_back_color __ARGS((void)); -void manage_centered __ARGS((Widget dialog_child)); -XmFontList gui_motif_create_fontlist __ARGS((XFontStruct *font)); -XmFontList gui_motif_fontset2fontlist __ARGS((XFontSet *fontset)); -void gui_mch_enable_menu __ARGS((int flag)); -void gui_motif_set_mnemonics __ARGS((int enable)); -void gui_mch_add_menu __ARGS((vimmenu_T *menu, int idx)); -void gui_mch_toggle_tearoffs __ARGS((int enable)); -int gui_mch_text_area_extra_height __ARGS((void)); -void gui_mch_compute_menu_height __ARGS((Widget id)); -void gui_mch_add_menu_item __ARGS((vimmenu_T *menu, int idx)); -void gui_motif_update_mousemodel __ARGS((vimmenu_T *menu)); -void gui_mch_new_menu_colors __ARGS((void)); -void gui_mch_new_menu_font __ARGS((void)); -void gui_mch_new_tooltip_font __ARGS((void)); -void gui_mch_new_tooltip_colors __ARGS((void)); -void gui_mch_destroy_menu __ARGS((vimmenu_T *menu)); -void gui_mch_show_popupmenu __ARGS((vimmenu_T *menu)); -void gui_mch_def_colors __ARGS((void)); -void gui_mch_set_scrollbar_thumb __ARGS((scrollbar_T *sb, long val, long size, long max)); -void gui_mch_set_scrollbar_pos __ARGS((scrollbar_T *sb, int x, int y, int w, int h)); -void gui_mch_enable_scrollbar __ARGS((scrollbar_T *sb, int flag)); -void gui_mch_create_scrollbar __ARGS((scrollbar_T *sb, int orient)); -void gui_mch_destroy_scrollbar __ARGS((scrollbar_T *sb)); -void gui_mch_set_scrollbar_colors __ARGS((scrollbar_T *sb)); -Window gui_x11_get_wid __ARGS((void)); -char_u *gui_mch_browse __ARGS((int saving, char_u *title, char_u *dflt, char_u *ext, char_u *initdir, char_u *filter)); -int gui_mch_dialog __ARGS((int type, char_u *title, char_u *message, char_u *button_names, int dfltbutton, char_u *textfield)); -void gui_mch_enable_footer __ARGS((int showit)); -void gui_mch_set_footer __ARGS((char_u *s)); -void gui_mch_show_toolbar __ARGS((int showit)); -int gui_mch_compute_toolbar_height __ARGS((void)); -void motif_get_toolbar_colors __ARGS((Pixel *bgp, Pixel *fgp, Pixel *bsp, Pixel *tsp, Pixel *hsp)); -void gui_motif_menu_fontlist __ARGS((Widget id)); -void gui_mch_find_dialog __ARGS((exarg_T *eap)); -void gui_mch_replace_dialog __ARGS((exarg_T *eap)); -void gui_motif_synch_fonts __ARGS((void)); +extern void gui_x11_create_widgets __ARGS((void)); +extern void gui_x11_destroy_widgets __ARGS((void)); +extern void gui_mch_set_text_area_pos __ARGS((int x, int y, int w, int h)); +extern void gui_x11_set_back_color __ARGS((void)); +extern void manage_centered __ARGS((Widget dialog_child)); +extern XmFontList gui_motif_create_fontlist __ARGS((XFontStruct *font)); +extern XmFontList gui_motif_fontset2fontlist __ARGS((XFontSet *fontset)); +extern void gui_mch_enable_menu __ARGS((int flag)); +extern void gui_motif_set_mnemonics __ARGS((int enable)); +extern void gui_mch_add_menu __ARGS((vimmenu_T *menu, int idx)); +extern void gui_mch_toggle_tearoffs __ARGS((int enable)); +extern int gui_mch_text_area_extra_height __ARGS((void)); +extern void gui_mch_compute_menu_height __ARGS((Widget id)); +extern void gui_mch_add_menu_item __ARGS((vimmenu_T *menu, int idx)); +extern void gui_motif_update_mousemodel __ARGS((vimmenu_T *menu)); +extern void gui_mch_new_menu_colors __ARGS((void)); +extern void gui_mch_new_menu_font __ARGS((void)); +extern void gui_mch_new_tooltip_font __ARGS((void)); +extern void gui_mch_new_tooltip_colors __ARGS((void)); +extern void gui_mch_destroy_menu __ARGS((vimmenu_T *menu)); +extern void gui_mch_show_popupmenu __ARGS((vimmenu_T *menu)); +extern void gui_mch_def_colors __ARGS((void)); +extern void gui_mch_set_scrollbar_thumb __ARGS((scrollbar_T *sb, long val, long size, long max)); +extern void gui_mch_set_scrollbar_pos __ARGS((scrollbar_T *sb, int x, int y, int w, int h)); +extern void gui_mch_enable_scrollbar __ARGS((scrollbar_T *sb, int flag)); +extern void gui_mch_create_scrollbar __ARGS((scrollbar_T *sb, int orient)); +extern void gui_mch_destroy_scrollbar __ARGS((scrollbar_T *sb)); +extern void gui_mch_set_scrollbar_colors __ARGS((scrollbar_T *sb)); +extern Window gui_x11_get_wid __ARGS((void)); +extern char_u *gui_mch_browse __ARGS((int saving, char_u *title, char_u *dflt, char_u *ext, char_u *initdir, char_u *filter)); +extern int gui_mch_dialog __ARGS((int type, char_u *title, char_u *message, char_u *button_names, int dfltbutton, char_u *textfield)); +extern void gui_mch_enable_footer __ARGS((int showit)); +extern void gui_mch_set_footer __ARGS((char_u *s)); +extern void gui_mch_show_toolbar __ARGS((int showit)); +extern int gui_mch_compute_toolbar_height __ARGS((void)); +extern void motif_get_toolbar_colors __ARGS((Pixel *bgp, Pixel *fgp, Pixel *bsp, Pixel *tsp, Pixel *hsp)); +extern void gui_motif_menu_fontlist __ARGS((Widget id)); +extern void gui_mch_find_dialog __ARGS((exarg_T *eap)); +extern void gui_mch_replace_dialog __ARGS((exarg_T *eap)); +extern void gui_motif_synch_fonts __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/gui_x11.pro b/src/proto/gui_x11.pro --- a/src/proto/gui_x11.pro +++ b/src/proto/gui_x11.pro @@ -1,70 +1,70 @@ /* gui_x11.c */ -void gui_x11_key_hit_cb __ARGS((Widget w, XtPointer dud, XEvent *event, Boolean *dum)); -void gui_mch_prepare __ARGS((int *argc, char **argv)); -int gui_mch_init_check __ARGS((void)); -int gui_mch_init __ARGS((void)); -void gui_mch_uninit __ARGS((void)); -void gui_mch_new_colors __ARGS((void)); -int gui_mch_open __ARGS((void)); -void gui_init_tooltip_font __ARGS((void)); -void gui_init_menu_font __ARGS((void)); -void gui_mch_exit __ARGS((int rc)); -int gui_mch_get_winpos __ARGS((int *x, int *y)); -void gui_mch_set_winpos __ARGS((int x, int y)); -void gui_mch_set_shellsize __ARGS((int width, int height, int min_width, int min_height, int base_width, int base_height)); -void gui_mch_get_screen_dimensions __ARGS((int *screen_w, int *screen_h)); -int gui_mch_init_font __ARGS((char_u *font_name, int do_fontset)); -GuiFont gui_mch_get_font __ARGS((char_u *name, int giveErrorIfMissing)); -char_u *gui_mch_get_fontname __ARGS((GuiFont font, char_u *name)); -int gui_mch_adjust_charheight __ARGS((void)); -void gui_mch_set_font __ARGS((GuiFont font)); -void gui_mch_set_fontset __ARGS((GuiFontset fontset)); -void gui_mch_free_font __ARGS((GuiFont font)); -void gui_mch_free_fontset __ARGS((GuiFontset fontset)); -GuiFontset gui_mch_get_fontset __ARGS((char_u *name, int giveErrorIfMissing, int fixed_width)); -int fontset_height __ARGS((XFontSet fs)); -int fontset_height2 __ARGS((XFontSet fs)); -guicolor_T gui_mch_get_color __ARGS((char_u *reqname)); -void gui_mch_set_fg_color __ARGS((guicolor_T color)); -void gui_mch_set_bg_color __ARGS((guicolor_T color)); -void gui_mch_set_sp_color __ARGS((guicolor_T color)); -void gui_mch_draw_string __ARGS((int row, int col, char_u *s, int len, int flags)); -int gui_mch_haskey __ARGS((char_u *name)); -int gui_get_x11_windis __ARGS((Window *win, Display **dis)); -void gui_mch_beep __ARGS((void)); -void gui_mch_flash __ARGS((int msec)); -void gui_mch_invert_rectangle __ARGS((int r, int c, int nr, int nc)); -void gui_mch_iconify __ARGS((void)); -void gui_mch_set_foreground __ARGS((void)); -void gui_mch_draw_hollow_cursor __ARGS((guicolor_T color)); -void gui_mch_draw_part_cursor __ARGS((int w, int h, guicolor_T color)); -void gui_mch_update __ARGS((void)); -int gui_mch_wait_for_chars __ARGS((long wtime)); -void gui_mch_flush __ARGS((void)); -void gui_mch_clear_block __ARGS((int row1, int col1, int row2, int col2)); -void gui_mch_clear_all __ARGS((void)); -void gui_mch_delete_lines __ARGS((int row, int num_lines)); -void gui_mch_insert_lines __ARGS((int row, int num_lines)); -void clip_mch_lose_selection __ARGS((VimClipboard *cbd)); -int clip_mch_own_selection __ARGS((VimClipboard *cbd)); -void clip_mch_request_selection __ARGS((VimClipboard *cbd)); -void clip_mch_set_selection __ARGS((VimClipboard *cbd)); -void gui_mch_menu_grey __ARGS((vimmenu_T *menu, int grey)); -void gui_mch_menu_hidden __ARGS((vimmenu_T *menu, int hidden)); -void gui_mch_draw_menubar __ARGS((void)); -void gui_x11_menu_cb __ARGS((Widget w, XtPointer client_data, XtPointer call_data)); -void gui_mch_set_blinking __ARGS((long waittime, long on, long off)); -void gui_mch_stop_blink __ARGS((void)); -void gui_mch_start_blink __ARGS((void)); -long_u gui_mch_get_rgb __ARGS((guicolor_T pixel)); -void gui_x11_callbacks __ARGS((Widget textArea, Widget vimForm)); -void gui_mch_getmouse __ARGS((int *x, int *y)); -void gui_mch_setmouse __ARGS((int x, int y)); -XButtonPressedEvent *gui_x11_get_last_mouse_event __ARGS((void)); -void gui_mch_drawsign __ARGS((int row, int col, int typenr)); -void *gui_mch_register_sign __ARGS((char_u *signfile)); -void gui_mch_destroy_sign __ARGS((void *sign)); -void gui_mch_mousehide __ARGS((int hide)); -void mch_set_mouse_shape __ARGS((int shape)); -void gui_mch_menu_set_tip __ARGS((vimmenu_T *menu)); +extern void gui_x11_key_hit_cb __ARGS((Widget w, XtPointer dud, XEvent *event, Boolean *dum)); +extern void gui_mch_prepare __ARGS((int *argc, char **argv)); +extern int gui_mch_init_check __ARGS((void)); +extern int gui_mch_init __ARGS((void)); +extern void gui_mch_uninit __ARGS((void)); +extern void gui_mch_new_colors __ARGS((void)); +extern int gui_mch_open __ARGS((void)); +extern void gui_init_tooltip_font __ARGS((void)); +extern void gui_init_menu_font __ARGS((void)); +extern void gui_mch_exit __ARGS((int rc)); +extern int gui_mch_get_winpos __ARGS((int *x, int *y)); +extern void gui_mch_set_winpos __ARGS((int x, int y)); +extern void gui_mch_set_shellsize __ARGS((int width, int height, int min_width, int min_height, int base_width, int base_height)); +extern void gui_mch_get_screen_dimensions __ARGS((int *screen_w, int *screen_h)); +extern int gui_mch_init_font __ARGS((char_u *font_name, int do_fontset)); +extern GuiFont gui_mch_get_font __ARGS((char_u *name, int giveErrorIfMissing)); +extern char_u *gui_mch_get_fontname __ARGS((GuiFont font, char_u *name)); +extern int gui_mch_adjust_charheight __ARGS((void)); +extern void gui_mch_set_font __ARGS((GuiFont font)); +extern void gui_mch_set_fontset __ARGS((GuiFontset fontset)); +extern void gui_mch_free_font __ARGS((GuiFont font)); +extern void gui_mch_free_fontset __ARGS((GuiFontset fontset)); +extern GuiFontset gui_mch_get_fontset __ARGS((char_u *name, int giveErrorIfMissing, int fixed_width)); +extern int fontset_height __ARGS((XFontSet fs)); +extern int fontset_height2 __ARGS((XFontSet fs)); +extern guicolor_T gui_mch_get_color __ARGS((char_u *reqname)); +extern void gui_mch_set_fg_color __ARGS((guicolor_T color)); +extern void gui_mch_set_bg_color __ARGS((guicolor_T color)); +extern void gui_mch_set_sp_color __ARGS((guicolor_T color)); +extern void gui_mch_draw_string __ARGS((int row, int col, char_u *s, int len, int flags)); +extern int gui_mch_haskey __ARGS((char_u *name)); +extern int gui_get_x11_windis __ARGS((Window *win, Display **dis)); +extern void gui_mch_beep __ARGS((void)); +extern void gui_mch_flash __ARGS((int msec)); +extern void gui_mch_invert_rectangle __ARGS((int r, int c, int nr, int nc)); +extern void gui_mch_iconify __ARGS((void)); +extern void gui_mch_set_foreground __ARGS((void)); +extern void gui_mch_draw_hollow_cursor __ARGS((guicolor_T color)); +extern void gui_mch_draw_part_cursor __ARGS((int w, int h, guicolor_T color)); +extern void gui_mch_update __ARGS((void)); +extern int gui_mch_wait_for_chars __ARGS((long wtime)); +extern void gui_mch_flush __ARGS((void)); +extern void gui_mch_clear_block __ARGS((int row1, int col1, int row2, int col2)); +extern void gui_mch_clear_all __ARGS((void)); +extern void gui_mch_delete_lines __ARGS((int row, int num_lines)); +extern void gui_mch_insert_lines __ARGS((int row, int num_lines)); +extern void clip_mch_lose_selection __ARGS((VimClipboard *cbd)); +extern int clip_mch_own_selection __ARGS((VimClipboard *cbd)); +extern void clip_mch_request_selection __ARGS((VimClipboard *cbd)); +extern void clip_mch_set_selection __ARGS((VimClipboard *cbd)); +extern void gui_mch_menu_grey __ARGS((vimmenu_T *menu, int grey)); +extern void gui_mch_menu_hidden __ARGS((vimmenu_T *menu, int hidden)); +extern void gui_mch_draw_menubar __ARGS((void)); +extern void gui_x11_menu_cb __ARGS((Widget w, XtPointer client_data, XtPointer call_data)); +extern void gui_mch_set_blinking __ARGS((long waittime, long on, long off)); +extern void gui_mch_stop_blink __ARGS((void)); +extern void gui_mch_start_blink __ARGS((void)); +extern long_u gui_mch_get_rgb __ARGS((guicolor_T pixel)); +extern void gui_x11_callbacks __ARGS((Widget textArea, Widget vimForm)); +extern void gui_mch_getmouse __ARGS((int *x, int *y)); +extern void gui_mch_setmouse __ARGS((int x, int y)); +extern XButtonPressedEvent *gui_x11_get_last_mouse_event __ARGS((void)); +extern void gui_mch_drawsign __ARGS((int row, int col, int typenr)); +extern void *gui_mch_register_sign __ARGS((char_u *signfile)); +extern void gui_mch_destroy_sign __ARGS((void *sign)); +extern void gui_mch_mousehide __ARGS((int hide)); +extern void mch_set_mouse_shape __ARGS((int shape)); +extern void gui_mch_menu_set_tip __ARGS((vimmenu_T *menu)); /* vim: set ft=c : */ diff --git a/src/proto/hangulin.pro b/src/proto/hangulin.pro --- a/src/proto/hangulin.pro +++ b/src/proto/hangulin.pro @@ -1,9 +1,9 @@ /* hangulin.c */ -int hangul_input_state_get __ARGS((void)); -void hangul_input_state_set __ARGS((int state)); -int im_get_status __ARGS((void)); -void hangul_input_state_toggle __ARGS((void)); -void hangul_keyboard_set __ARGS((void)); -int hangul_input_process __ARGS((char_u *s, int len)); -void hangul_input_clear __ARGS((void)); +extern int hangul_input_state_get __ARGS((void)); +extern void hangul_input_state_set __ARGS((int state)); +extern int im_get_status __ARGS((void)); +extern void hangul_input_state_toggle __ARGS((void)); +extern void hangul_keyboard_set __ARGS((void)); +extern int hangul_input_process __ARGS((char_u *s, int len)); +extern void hangul_input_clear __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/hashtable.pro b/src/proto/hashtable.pro deleted file mode 100644 --- a/src/proto/hashtable.pro +++ /dev/null @@ -1,14 +0,0 @@ -/* hashtable.c */ -void hash_init __ARGS((hashtab_T *ht)); -void hash_clear __ARGS((hashtab_T *ht)); -void hash_clear_all __ARGS((hashtab_T *ht, int off)); -hashitem_T *hash_find __ARGS((hashtab_T *ht, char_u *key)); -hashitem_T *hash_lookup __ARGS((hashtab_T *ht, char_u *key, hash_T hash)); -void hash_debug_results __ARGS((void)); -int hash_add __ARGS((hashtab_T *ht, char_u *key)); -int hash_add_item __ARGS((hashtab_T *ht, hashitem_T *hi, char_u *key, hash_T hash)); -void hash_remove __ARGS((hashtab_T *ht, hashitem_T *hi)); -void hash_lock __ARGS((hashtab_T *ht)); -void hash_unlock __ARGS((hashtab_T *ht)); -hash_T hash_hash __ARGS((char_u *key)); -/* vim: set ft=c : */ diff --git a/src/proto/if_perl.pro b/src/proto/if_perl.pro --- a/src/proto/if_perl.pro +++ b/src/proto/if_perl.pro @@ -1,8 +1,8 @@ /* auto/if_perl.c */ -int perl_enabled __ARGS((int verbose)); -void perl_end __ARGS((void)); -void msg_split __ARGS((char_u *s, int attr)); -void perl_win_free __ARGS((win_T *wp)); -void perl_buf_free __ARGS((buf_T *bp)); -void ex_perl __ARGS((exarg_T *eap)); -void ex_perldo __ARGS((exarg_T *eap)); +extern int perl_enabled __ARGS((int verbose)); +extern void perl_end __ARGS((void)); +extern void msg_split __ARGS((char_u *s, int attr)); +extern void perl_win_free __ARGS((win_T *wp)); +extern void perl_buf_free __ARGS((buf_T *bp)); +extern void ex_perl __ARGS((exarg_T *eap)); +extern void ex_perldo __ARGS((exarg_T *eap)); diff --git a/src/proto/if_python.pro b/src/proto/if_python.pro --- a/src/proto/if_python.pro +++ b/src/proto/if_python.pro @@ -1,8 +1,8 @@ /* if_python.c */ -int python_enabled __ARGS((int verbose)); -void python_end __ARGS((void)); -void ex_python __ARGS((exarg_T *eap)); -void ex_pyfile __ARGS((exarg_T *eap)); -void python_buffer_free __ARGS((buf_T *buf)); -void python_window_free __ARGS((win_T *win)); +extern int python_enabled __ARGS((int verbose)); +extern void python_end __ARGS((void)); +extern void ex_python __ARGS((exarg_T *eap)); +extern void ex_pyfile __ARGS((exarg_T *eap)); +extern void python_buffer_free __ARGS((buf_T *buf)); +extern void python_window_free __ARGS((win_T *win)); /* vim: set ft=c : */ diff --git a/src/proto/if_ruby.pro b/src/proto/if_ruby.pro --- a/src/proto/if_ruby.pro +++ b/src/proto/if_ruby.pro @@ -1,9 +1,9 @@ /* if_ruby.c */ -int ruby_enabled __ARGS((int verbose)); -void ruby_end __ARGS((void)); -void ex_ruby __ARGS((exarg_T *eap)); -void ex_rubydo __ARGS((exarg_T *eap)); -void ex_rubyfile __ARGS((exarg_T *eap)); -void ruby_buffer_free __ARGS((buf_T *buf)); -void ruby_window_free __ARGS((win_T *win)); +extern int ruby_enabled __ARGS((int verbose)); +extern void ruby_end __ARGS((void)); +extern void ex_ruby __ARGS((exarg_T *eap)); +extern void ex_rubydo __ARGS((exarg_T *eap)); +extern void ex_rubyfile __ARGS((exarg_T *eap)); +extern void ruby_buffer_free __ARGS((buf_T *buf)); +extern void ruby_window_free __ARGS((win_T *win)); /* vim: set ft=c : */ diff --git a/src/proto/if_xcmdsrv.pro b/src/proto/if_xcmdsrv.pro --- a/src/proto/if_xcmdsrv.pro +++ b/src/proto/if_xcmdsrv.pro @@ -1,11 +1,11 @@ /* if_xcmdsrv.c */ -int serverRegisterName __ARGS((Display *dpy, char_u *name)); -void serverChangeRegisteredWindow __ARGS((Display *dpy, Window newwin)); -int serverSendToVim __ARGS((Display *dpy, char_u *name, char_u *cmd, char_u **result, Window *server, int asExpr, int localLoop, int silent)); -char_u *serverGetVimNames __ARGS((Display *dpy)); -Window serverStrToWin __ARGS((char_u *str)); -int serverSendReply __ARGS((char_u *name, char_u *str)); -int serverReadReply __ARGS((Display *dpy, Window win, char_u **str, int localLoop)); -int serverPeekReply __ARGS((Display *dpy, Window win, char_u **str)); -void serverEventProc __ARGS((Display *dpy, XEvent *eventPtr)); +extern int serverRegisterName __ARGS((Display *dpy, char_u *name)); +extern void serverChangeRegisteredWindow __ARGS((Display *dpy, Window newwin)); +extern int serverSendToVim __ARGS((Display *dpy, char_u *name, char_u *cmd, char_u **result, Window *server, int asExpr, int localLoop, int silent)); +extern char_u *serverGetVimNames __ARGS((Display *dpy)); +extern Window serverStrToWin __ARGS((char_u *str)); +extern int serverSendReply __ARGS((char_u *name, char_u *str)); +extern int serverReadReply __ARGS((Display *dpy, Window win, char_u **str, int localLoop)); +extern int serverPeekReply __ARGS((Display *dpy, Window win, char_u **str)); +extern void serverEventProc __ARGS((Display *dpy, XEvent *eventPtr)); /* vim: set ft=c : */ diff --git a/src/proto/mbyte.pro b/src/proto/mbyte.pro --- a/src/proto/mbyte.pro +++ b/src/proto/mbyte.pro @@ -1,91 +1,91 @@ /* mbyte.c */ -int enc_canon_props __ARGS((char_u *name)); -char_u *mb_init __ARGS((void)); -int bomb_size __ARGS((void)); -int mb_get_class __ARGS((char_u *p)); -int dbcs_class __ARGS((unsigned lead, unsigned trail)); -int latin_char2len __ARGS((int c)); -int latin_char2bytes __ARGS((int c, char_u *buf)); -int latin_ptr2len __ARGS((char_u *p)); -int utf_char2cells __ARGS((int c)); -int latin_ptr2cells __ARGS((char_u *p)); -int utf_ptr2cells __ARGS((char_u *p)); -int dbcs_ptr2cells __ARGS((char_u *p)); -int latin_char2cells __ARGS((int c)); -int latin_off2cells __ARGS((unsigned off)); -int dbcs_off2cells __ARGS((unsigned off)); -int utf_off2cells __ARGS((unsigned off)); -int latin_ptr2char __ARGS((char_u *p)); -int utf_ptr2char __ARGS((char_u *p)); -int mb_ptr2char_adv __ARGS((char_u **pp)); -int mb_cptr2char_adv __ARGS((char_u **pp)); -int arabic_combine __ARGS((int one, int two)); -int arabic_maycombine __ARGS((int two)); -int utf_composinglike __ARGS((char_u *p1, char_u *p2)); -int utfc_ptr2char __ARGS((char_u *p, int *pcc)); -int utfc_ptr2char_len __ARGS((char_u *p, int *pcc, int maxlen)); -int utfc_char2bytes __ARGS((int off, char_u *buf)); -int utf_ptr2len __ARGS((char_u *p)); -int utf_byte2len __ARGS((int b)); -int utf_ptr2len_len __ARGS((char_u *p, int size)); -int utfc_ptr2len __ARGS((char_u *p)); -int utfc_ptr2len_len __ARGS((char_u *p, int size)); -int utf_char2len __ARGS((int c)); -int utf_char2bytes __ARGS((int c, char_u *buf)); -int utf_iscomposing __ARGS((int c)); -int utf_printable __ARGS((int c)); -int utf_class __ARGS((int c)); -int utf_fold __ARGS((int a)); -int utf_toupper __ARGS((int a)); -int utf_islower __ARGS((int a)); -int utf_tolower __ARGS((int a)); -int utf_isupper __ARGS((int a)); -int mb_strnicmp __ARGS((char_u *s1, char_u *s2, size_t nn)); -void show_utf8 __ARGS((void)); -int latin_head_off __ARGS((char_u *base, char_u *p)); -int dbcs_head_off __ARGS((char_u *base, char_u *p)); -int dbcs_screen_head_off __ARGS((char_u *base, char_u *p)); -int utf_head_off __ARGS((char_u *base, char_u *p)); -void mb_copy_char __ARGS((char_u **fp, char_u **tp)); -int mb_off_next __ARGS((char_u *base, char_u *p)); -int mb_tail_off __ARGS((char_u *base, char_u *p)); -void utf_find_illegal __ARGS((void)); -int utf_valid_string __ARGS((char_u *s, char_u *end)); -int dbcs_screen_tail_off __ARGS((char_u *base, char_u *p)); -void mb_adjust_cursor __ARGS((void)); -void mb_adjustpos __ARGS((pos_T *lp)); -char_u *mb_prevptr __ARGS((char_u *line, char_u *p)); -int mb_charlen __ARGS((char_u *str)); -int mb_charlen_len __ARGS((char_u *str, int len)); -char_u *mb_unescape __ARGS((char_u **pp)); -int mb_lefthalve __ARGS((int row, int col)); -int mb_fix_col __ARGS((int col, int row)); -char_u *enc_skip __ARGS((char_u *p)); -char_u *enc_canonize __ARGS((char_u *enc)); -char_u *enc_locale __ARGS((void)); -int encname2codepage __ARGS((char_u *name)); -void *my_iconv_open __ARGS((char_u *to, char_u *from)); -int iconv_enabled __ARGS((int verbose)); -void iconv_end __ARGS((void)); -int im_xim_isvalid_imactivate __ARGS((void)); -void im_set_active __ARGS((int active)); -void xim_set_focus __ARGS((int focus)); -void im_set_position __ARGS((int row, int col)); -void xim_set_preedit __ARGS((void)); -void xim_set_status_area __ARGS((void)); -void xim_init __ARGS((void)); -void xim_decide_input_style __ARGS((void)); -int im_get_feedback_attr __ARGS((int col)); -void xim_reset __ARGS((void)); -int xim_queue_key_press_event __ARGS((GdkEventKey *event, int down)); -void xim_init __ARGS((void)); -void im_shutdown __ARGS((void)); -int xim_get_status_area_height __ARGS((void)); -int im_get_status __ARGS((void)); -int im_is_preediting __ARGS((void)); -int convert_setup __ARGS((vimconv_T *vcp, char_u *from, char_u *to)); -int convert_input __ARGS((char_u *ptr, int len, int maxlen)); -int convert_input_safe __ARGS((char_u *ptr, int len, int maxlen, char_u **restp, int *restlenp)); -char_u *string_convert __ARGS((vimconv_T *vcp, char_u *ptr, int *lenp)); -char_u *string_convert_ext __ARGS((vimconv_T *vcp, char_u *ptr, int *lenp, int *unconvlenp)); +extern int enc_canon_props __ARGS((char_u *name)); +extern char_u *mb_init __ARGS((void)); +extern int bomb_size __ARGS((void)); +extern int mb_get_class __ARGS((char_u *p)); +extern int dbcs_class __ARGS((unsigned lead, unsigned trail)); +extern int latin_char2len __ARGS((int c)); +extern int latin_char2bytes __ARGS((int c, char_u *buf)); +extern int latin_ptr2len __ARGS((char_u *p)); +extern int utf_char2cells __ARGS((int c)); +extern int latin_ptr2cells __ARGS((char_u *p)); +extern int utf_ptr2cells __ARGS((char_u *p)); +extern int dbcs_ptr2cells __ARGS((char_u *p)); +extern int latin_char2cells __ARGS((int c)); +extern int latin_off2cells __ARGS((unsigned off)); +extern int dbcs_off2cells __ARGS((unsigned off)); +extern int utf_off2cells __ARGS((unsigned off)); +extern int latin_ptr2char __ARGS((char_u *p)); +extern int utf_ptr2char __ARGS((char_u *p)); +extern int mb_ptr2char_adv __ARGS((char_u **pp)); +extern int mb_cptr2char_adv __ARGS((char_u **pp)); +extern int arabic_combine __ARGS((int one, int two)); +extern int arabic_maycombine __ARGS((int two)); +extern int utf_composinglike __ARGS((char_u *p1, char_u *p2)); +extern int utfc_ptr2char __ARGS((char_u *p, int *pcc)); +extern int utfc_ptr2char_len __ARGS((char_u *p, int *pcc, int maxlen)); +extern int utfc_char2bytes __ARGS((int off, char_u *buf)); +extern int utf_ptr2len __ARGS((char_u *p)); +extern int utf_byte2len __ARGS((int b)); +extern int utf_ptr2len_len __ARGS((char_u *p, int size)); +extern int utfc_ptr2len __ARGS((char_u *p)); +extern int utfc_ptr2len_len __ARGS((char_u *p, int size)); +extern int utf_char2len __ARGS((int c)); +extern int utf_char2bytes __ARGS((int c, char_u *buf)); +extern int utf_iscomposing __ARGS((int c)); +extern int utf_printable __ARGS((int c)); +extern int utf_class __ARGS((int c)); +extern int utf_fold __ARGS((int a)); +extern int utf_toupper __ARGS((int a)); +extern int utf_islower __ARGS((int a)); +extern int utf_tolower __ARGS((int a)); +extern int utf_isupper __ARGS((int a)); +extern int mb_strnicmp __ARGS((char_u *s1, char_u *s2, size_t nn)); +extern void show_utf8 __ARGS((void)); +extern int latin_head_off __ARGS((char_u *base, char_u *p)); +extern int dbcs_head_off __ARGS((char_u *base, char_u *p)); +extern int dbcs_screen_head_off __ARGS((char_u *base, char_u *p)); +extern int utf_head_off __ARGS((char_u *base, char_u *p)); +extern void mb_copy_char __ARGS((char_u **fp, char_u **tp)); +extern int mb_off_next __ARGS((char_u *base, char_u *p)); +extern int mb_tail_off __ARGS((char_u *base, char_u *p)); +extern void utf_find_illegal __ARGS((void)); +extern int utf_valid_string __ARGS((char_u *s, char_u *end)); +extern int dbcs_screen_tail_off __ARGS((char_u *base, char_u *p)); +extern void mb_adjust_cursor __ARGS((void)); +extern void mb_adjustpos __ARGS((pos_T *lp)); +extern char_u *mb_prevptr __ARGS((char_u *line, char_u *p)); +extern int mb_charlen __ARGS((char_u *str)); +extern int mb_charlen_len __ARGS((char_u *str, int len)); +extern char_u *mb_unescape __ARGS((char_u **pp)); +extern int mb_lefthalve __ARGS((int row, int col)); +extern int mb_fix_col __ARGS((int col, int row)); +extern char_u *enc_skip __ARGS((char_u *p)); +extern char_u *enc_canonize __ARGS((char_u *enc)); +extern char_u *enc_locale __ARGS((void)); +extern int encname2codepage __ARGS((char_u *name)); +extern void *my_iconv_open __ARGS((char_u *to, char_u *from)); +extern int iconv_enabled __ARGS((int verbose)); +extern void iconv_end __ARGS((void)); +extern int im_xim_isvalid_imactivate __ARGS((void)); +extern void im_set_active __ARGS((int active)); +extern void xim_set_focus __ARGS((int focus)); +extern void im_set_position __ARGS((int row, int col)); +extern void xim_set_preedit __ARGS((void)); +extern void xim_set_status_area __ARGS((void)); +extern void xim_init __ARGS((void)); +extern void xim_decide_input_style __ARGS((void)); +extern int im_get_feedback_attr __ARGS((int col)); +extern void xim_reset __ARGS((void)); +extern int xim_queue_key_press_event __ARGS((GdkEventKey *event, int down)); +extern void xim_init __ARGS((void)); +extern void im_shutdown __ARGS((void)); +extern int xim_get_status_area_height __ARGS((void)); +extern int im_get_status __ARGS((void)); +extern int im_is_preediting __ARGS((void)); +extern int convert_setup __ARGS((vimconv_T *vcp, char_u *from, char_u *to)); +extern int convert_input __ARGS((char_u *ptr, int len, int maxlen)); +extern int convert_input_safe __ARGS((char_u *ptr, int len, int maxlen, char_u **restp, int *restlenp)); +extern char_u *string_convert __ARGS((vimconv_T *vcp, char_u *ptr, int *lenp)); +extern char_u *string_convert_ext __ARGS((vimconv_T *vcp, char_u *ptr, int *lenp, int *unconvlenp)); /* vim: set ft=c : */ diff --git a/src/proto/memline.pro b/src/proto/memline.pro --- a/src/proto/memline.pro +++ b/src/proto/memline.pro @@ -1,33 +1,33 @@ /* memline.c */ -int ml_open __ARGS((buf_T *buf)); -void ml_setname __ARGS((buf_T *buf)); -void ml_open_files __ARGS((void)); -void ml_open_file __ARGS((buf_T *buf)); -void check_need_swap __ARGS((int newfile)); -void ml_close __ARGS((buf_T *buf, int del_file)); -void ml_close_all __ARGS((int del_file)); -void ml_close_notmod __ARGS((void)); -void ml_timestamp __ARGS((buf_T *buf)); -void ml_recover __ARGS((void)); -int recover_names __ARGS((char_u **fname, int list, int nr)); -void ml_sync_all __ARGS((int check_file, int check_char)); -void ml_preserve __ARGS((buf_T *buf, int message)); -char_u *ml_get __ARGS((linenr_T lnum)); -char_u *ml_get_pos __ARGS((pos_T *pos)); -char_u *ml_get_curline __ARGS((void)); -char_u *ml_get_cursor __ARGS((void)); -char_u *ml_get_buf __ARGS((buf_T *buf, linenr_T lnum, int will_change)); -int ml_line_alloced __ARGS((void)); -int ml_append __ARGS((linenr_T lnum, char_u *line, colnr_T len, int newfile)); -int ml_append_buf __ARGS((buf_T *buf, linenr_T lnum, char_u *line, colnr_T len, int newfile)); -int ml_replace __ARGS((linenr_T lnum, char_u *line, int copy)); -int ml_delete __ARGS((linenr_T lnum, int message)); -void ml_setmarked __ARGS((linenr_T lnum)); -linenr_T ml_firstmarked __ARGS((void)); -void ml_clearmarked __ARGS((void)); -char_u *makeswapname __ARGS((char_u *fname, char_u *ffname, buf_T *buf, char_u *dir_name)); -char_u *get_file_in_dir __ARGS((char_u *fname, char_u *dname)); -void ml_setflags __ARGS((buf_T *buf)); -long ml_find_line_or_offset __ARGS((buf_T *buf, linenr_T lnum, long *offp)); -void goto_byte __ARGS((long cnt)); +extern int ml_open __ARGS((buf_T *buf)); +extern void ml_setname __ARGS((buf_T *buf)); +extern void ml_open_files __ARGS((void)); +extern void ml_open_file __ARGS((buf_T *buf)); +extern void check_need_swap __ARGS((int newfile)); +extern void ml_close __ARGS((buf_T *buf, int del_file)); +extern void ml_close_all __ARGS((int del_file)); +extern void ml_close_notmod __ARGS((void)); +extern void ml_timestamp __ARGS((buf_T *buf)); +extern void ml_recover __ARGS((void)); +extern int recover_names __ARGS((char_u **fname, int list, int nr)); +extern void ml_sync_all __ARGS((int check_file, int check_char)); +extern void ml_preserve __ARGS((buf_T *buf, int message)); +extern char_u *ml_get __ARGS((linenr_T lnum)); +extern char_u *ml_get_pos __ARGS((pos_T *pos)); +extern char_u *ml_get_curline __ARGS((void)); +extern char_u *ml_get_cursor __ARGS((void)); +extern char_u *ml_get_buf __ARGS((buf_T *buf, linenr_T lnum, int will_change)); +extern int ml_line_alloced __ARGS((void)); +extern int ml_append __ARGS((linenr_T lnum, char_u *line, colnr_T len, int newfile)); +extern int ml_append_buf __ARGS((buf_T *buf, linenr_T lnum, char_u *line, colnr_T len, int newfile)); +extern int ml_replace __ARGS((linenr_T lnum, char_u *line, int copy)); +extern int ml_delete __ARGS((linenr_T lnum, int message)); +extern void ml_setmarked __ARGS((linenr_T lnum)); +extern linenr_T ml_firstmarked __ARGS((void)); +extern void ml_clearmarked __ARGS((void)); +extern char_u *makeswapname __ARGS((char_u *fname, char_u *ffname, buf_T *buf, char_u *dir_name)); +extern char_u *get_file_in_dir __ARGS((char_u *fname, char_u *dname)); +extern void ml_setflags __ARGS((buf_T *buf)); +extern long ml_find_line_or_offset __ARGS((buf_T *buf, linenr_T lnum, long *offp)); +extern void goto_byte __ARGS((long cnt)); /* vim: set ft=c : */ diff --git a/src/proto/menu.pro b/src/proto/menu.pro --- a/src/proto/menu.pro +++ b/src/proto/menu.pro @@ -1,21 +1,21 @@ /* menu.c */ -void ex_menu __ARGS((exarg_T *eap)); -char_u *set_context_in_menu_cmd __ARGS((expand_T *xp, char_u *cmd, char_u *arg, int forceit)); -char_u *get_menu_name __ARGS((expand_T *xp, int idx)); -char_u *get_menu_names __ARGS((expand_T *xp, int idx)); -char_u *menu_name_skip __ARGS((char_u *name)); -int get_menu_index __ARGS((vimmenu_T *menu, int state)); -int menu_is_menubar __ARGS((char_u *name)); -int menu_is_popup __ARGS((char_u *name)); -int menu_is_child_of_popup __ARGS((vimmenu_T *menu)); -int menu_is_toolbar __ARGS((char_u *name)); -int menu_is_separator __ARGS((char_u *name)); -void gui_create_initial_menus __ARGS((vimmenu_T *menu)); -void gui_update_menus __ARGS((int modes)); -int gui_is_menu_shortcut __ARGS((int key)); -void gui_show_popupmenu __ARGS((void)); -void gui_mch_toggle_tearoffs __ARGS((int enable)); -void ex_emenu __ARGS((exarg_T *eap)); -vimmenu_T *gui_find_menu __ARGS((char_u *path_name)); -void ex_menutranslate __ARGS((exarg_T *eap)); +extern void ex_menu __ARGS((exarg_T *eap)); +extern char_u *set_context_in_menu_cmd __ARGS((expand_T *xp, char_u *cmd, char_u *arg, int forceit)); +extern char_u *get_menu_name __ARGS((expand_T *xp, int idx)); +extern char_u *get_menu_names __ARGS((expand_T *xp, int idx)); +extern char_u *menu_name_skip __ARGS((char_u *name)); +extern int get_menu_index __ARGS((vimmenu_T *menu, int state)); +extern int menu_is_menubar __ARGS((char_u *name)); +extern int menu_is_popup __ARGS((char_u *name)); +extern int menu_is_child_of_popup __ARGS((vimmenu_T *menu)); +extern int menu_is_toolbar __ARGS((char_u *name)); +extern int menu_is_separator __ARGS((char_u *name)); +extern void gui_create_initial_menus __ARGS((vimmenu_T *menu)); +extern void gui_update_menus __ARGS((int modes)); +extern int gui_is_menu_shortcut __ARGS((int key)); +extern void gui_show_popupmenu __ARGS((void)); +extern void gui_mch_toggle_tearoffs __ARGS((int enable)); +extern void ex_emenu __ARGS((exarg_T *eap)); +extern vimmenu_T *gui_find_menu __ARGS((char_u *path_name)); +extern void ex_menutranslate __ARGS((exarg_T *eap)); /* vim: set ft=c : */ diff --git a/src/proto/misc1.pro b/src/proto/misc1.pro --- a/src/proto/misc1.pro +++ b/src/proto/misc1.pro @@ -1,94 +1,94 @@ /* misc1.c */ -int get_indent __ARGS((void)); -int get_indent_lnum __ARGS((linenr_T lnum)); -int get_indent_buf __ARGS((buf_T *buf, linenr_T lnum)); -int get_indent_str __ARGS((char_u *ptr, int ts)); -int set_indent __ARGS((int size, int flags)); -int get_number_indent __ARGS((linenr_T lnum)); -int open_line __ARGS((int dir, int flags, int old_indent)); -int get_leader_len __ARGS((char_u *line, char_u **flags, int backward)); -int plines __ARGS((linenr_T lnum)); -int plines_win __ARGS((win_T *wp, linenr_T lnum, int winheight)); -int plines_nofill __ARGS((linenr_T lnum)); -int plines_win_nofill __ARGS((win_T *wp, linenr_T lnum, int winheight)); -int plines_win_nofold __ARGS((win_T *wp, linenr_T lnum)); -int plines_win_col __ARGS((win_T *wp, linenr_T lnum, long column)); -int plines_m_win __ARGS((win_T *wp, linenr_T first, linenr_T last)); -void ins_bytes __ARGS((char_u *p)); -void ins_bytes_len __ARGS((char_u *p, int len)); -void ins_char __ARGS((int c)); -void ins_char_bytes __ARGS((char_u *buf, int charlen)); -void ins_str __ARGS((char_u *s)); -int del_char __ARGS((int fixpos)); -int del_chars __ARGS((long count, int fixpos)); -int del_bytes __ARGS((long count, int fixpos, int use_delcombine)); -int truncate_line __ARGS((int fixpos)); -void del_lines __ARGS((long nlines, int undo)); -int gchar_pos __ARGS((pos_T *pos)); -int gchar_cursor __ARGS((void)); -void pchar_cursor __ARGS((int c)); -int inindent __ARGS((int extra)); -char_u *skip_to_option_part __ARGS((char_u *p)); -void changed __ARGS((void)); -void changed_bytes __ARGS((linenr_T lnum, colnr_T col)); -void appended_lines __ARGS((linenr_T lnum, long count)); -void appended_lines_mark __ARGS((linenr_T lnum, long count)); -void deleted_lines __ARGS((linenr_T lnum, long count)); -void deleted_lines_mark __ARGS((linenr_T lnum, long count)); -void changed_lines __ARGS((linenr_T lnum, colnr_T col, linenr_T lnume, long xtra)); -void unchanged __ARGS((buf_T *buf, int ff)); -void check_status __ARGS((buf_T *buf)); -void change_warning __ARGS((int col)); -int ask_yesno __ARGS((char_u *str, int direct)); -int get_keystroke __ARGS((void)); -int get_number __ARGS((int colon, int *mouse_used)); -int prompt_for_number __ARGS((int *mouse_used)); -void msgmore __ARGS((long n)); -void beep_flush __ARGS((void)); -void vim_beep __ARGS((void)); -void init_homedir __ARGS((void)); -void free_homedir __ARGS((void)); -void expand_env __ARGS((char_u *src, char_u *dst, int dstlen)); -void expand_env_esc __ARGS((char_u *srcp, char_u *dst, int dstlen, int esc, char_u *startstr)); -char_u *vim_getenv __ARGS((char_u *name, int *mustfree)); -char_u *expand_env_save __ARGS((char_u *src)); -void vim_setenv __ARGS((char_u *name, char_u *val)); -char_u *get_env_name __ARGS((expand_T *xp, int idx)); -void home_replace __ARGS((buf_T *buf, char_u *src, char_u *dst, int dstlen, int one)); -char_u *home_replace_save __ARGS((buf_T *buf, char_u *src)); -int fullpathcmp __ARGS((char_u *s1, char_u *s2, int checkname)); -char_u *gettail __ARGS((char_u *fname)); -char_u *gettail_sep __ARGS((char_u *fname)); -char_u *getnextcomp __ARGS((char_u *fname)); -char_u *get_past_head __ARGS((char_u *path)); -int vim_ispathsep __ARGS((int c)); -int vim_ispathlistsep __ARGS((int c)); -int dir_of_file_exists __ARGS((char_u *fname)); -int vim_fnamecmp __ARGS((char_u *x, char_u *y)); -int vim_fnamencmp __ARGS((char_u *x, char_u *y, size_t len)); -char_u *concat_fnames __ARGS((char_u *fname1, char_u *fname2, int sep)); -char_u *concat_str __ARGS((char_u *str1, char_u *str2)); -void add_pathsep __ARGS((char_u *p)); -char_u *FullName_save __ARGS((char_u *fname, int force)); -pos_T *find_start_comment __ARGS((int ind_maxcomment)); -void do_c_expr_indent __ARGS((void)); -int cin_islabel __ARGS((int ind_maxcomment)); -int cin_iscase __ARGS((char_u *s)); -int cin_isscopedecl __ARGS((char_u *s)); -int get_c_indent __ARGS((void)); -int get_expr_indent __ARGS((void)); -int get_lisp_indent __ARGS((void)); -void prepare_to_exit __ARGS((void)); -void preserve_exit __ARGS((void)); -int vim_fexists __ARGS((char_u *fname)); -void line_breakcheck __ARGS((void)); -void fast_breakcheck __ARGS((void)); -int expand_wildcards __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file, int flags)); -int match_suffix __ARGS((char_u *fname)); -int unix_expandpath __ARGS((garray_T *gap, char_u *path, int wildoff, int flags, int didstar)); -int gen_expand_wildcards __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file, int flags)); -void addfile __ARGS((garray_T *gap, char_u *f, int flags)); -char_u *get_cmd_output __ARGS((char_u *cmd, char_u *infile, int flags)); -void FreeWild __ARGS((int count, char_u **files)); -int goto_im __ARGS((void)); +extern int get_indent __ARGS((void)); +extern int get_indent_lnum __ARGS((linenr_T lnum)); +extern int get_indent_buf __ARGS((buf_T *buf, linenr_T lnum)); +extern int get_indent_str __ARGS((char_u *ptr, int ts)); +extern int set_indent __ARGS((int size, int flags)); +extern int get_number_indent __ARGS((linenr_T lnum)); +extern int open_line __ARGS((int dir, int flags, int old_indent)); +extern int get_leader_len __ARGS((char_u *line, char_u **flags, int backward)); +extern int plines __ARGS((linenr_T lnum)); +extern int plines_win __ARGS((win_T *wp, linenr_T lnum, int winheight)); +extern int plines_nofill __ARGS((linenr_T lnum)); +extern int plines_win_nofill __ARGS((win_T *wp, linenr_T lnum, int winheight)); +extern int plines_win_nofold __ARGS((win_T *wp, linenr_T lnum)); +extern int plines_win_col __ARGS((win_T *wp, linenr_T lnum, long column)); +extern int plines_m_win __ARGS((win_T *wp, linenr_T first, linenr_T last)); +extern void ins_bytes __ARGS((char_u *p)); +extern void ins_bytes_len __ARGS((char_u *p, int len)); +extern void ins_char __ARGS((int c)); +extern void ins_char_bytes __ARGS((char_u *buf, int charlen)); +extern void ins_str __ARGS((char_u *s)); +extern int del_char __ARGS((int fixpos)); +extern int del_chars __ARGS((long count, int fixpos)); +extern int del_bytes __ARGS((long count, int fixpos_arg, int use_delcombine)); +extern int truncate_line __ARGS((int fixpos)); +extern void del_lines __ARGS((long nlines, int undo)); +extern int gchar_pos __ARGS((pos_T *pos)); +extern int gchar_cursor __ARGS((void)); +extern void pchar_cursor __ARGS((int c)); +extern int inindent __ARGS((int extra)); +extern char_u *skip_to_option_part __ARGS((char_u *p)); +extern void changed __ARGS((void)); +extern void changed_bytes __ARGS((linenr_T lnum, colnr_T col)); +extern void appended_lines __ARGS((linenr_T lnum, long count)); +extern void appended_lines_mark __ARGS((linenr_T lnum, long count)); +extern void deleted_lines __ARGS((linenr_T lnum, long count)); +extern void deleted_lines_mark __ARGS((linenr_T lnum, long count)); +extern void changed_lines __ARGS((linenr_T lnum, colnr_T col, linenr_T lnume, long xtra)); +extern void unchanged __ARGS((buf_T *buf, int ff)); +extern void check_status __ARGS((buf_T *buf)); +extern void change_warning __ARGS((int col)); +extern int ask_yesno __ARGS((char_u *str, int direct)); +extern int get_keystroke __ARGS((void)); +extern int get_number __ARGS((int colon, int *mouse_used)); +extern int prompt_for_number __ARGS((int *mouse_used)); +extern void msgmore __ARGS((long n)); +extern void beep_flush __ARGS((void)); +extern void vim_beep __ARGS((void)); +extern void init_homedir __ARGS((void)); +extern void free_homedir __ARGS((void)); +extern void expand_env __ARGS((char_u *src, char_u *dst, int dstlen)); +extern void expand_env_esc __ARGS((char_u *srcp, char_u *dst, int dstlen, int esc, char_u *startstr)); +extern char_u *vim_getenv __ARGS((char_u *name, int *mustfree)); +extern char_u *expand_env_save __ARGS((char_u *src)); +extern void vim_setenv __ARGS((char_u *name, char_u *val)); +extern char_u *get_env_name __ARGS((expand_T *xp, int idx)); +extern void home_replace __ARGS((buf_T *buf, char_u *src, char_u *dst, int dstlen, int one)); +extern char_u *home_replace_save __ARGS((buf_T *buf, char_u *src)); +extern int fullpathcmp __ARGS((char_u *s1, char_u *s2, int checkname)); +extern char_u *gettail __ARGS((char_u *fname)); +extern char_u *gettail_sep __ARGS((char_u *fname)); +extern char_u *getnextcomp __ARGS((char_u *fname)); +extern char_u *get_past_head __ARGS((char_u *path)); +extern int vim_ispathsep __ARGS((int c)); +extern int vim_ispathlistsep __ARGS((int c)); +extern int dir_of_file_exists __ARGS((char_u *fname)); +extern int vim_fnamecmp __ARGS((char_u *x, char_u *y)); +extern int vim_fnamencmp __ARGS((char_u *x, char_u *y, size_t len)); +extern char_u *concat_fnames __ARGS((char_u *fname1, char_u *fname2, int sep)); +extern char_u *concat_str __ARGS((char_u *str1, char_u *str2)); +extern void add_pathsep __ARGS((char_u *p)); +extern char_u *FullName_save __ARGS((char_u *fname, int force)); +extern pos_T *find_start_comment __ARGS((int ind_maxcomment)); +extern void do_c_expr_indent __ARGS((void)); +extern int cin_islabel __ARGS((int ind_maxcomment)); +extern int cin_iscase __ARGS((char_u *s)); +extern int cin_isscopedecl __ARGS((char_u *s)); +extern int get_c_indent __ARGS((void)); +extern int get_expr_indent __ARGS((void)); +extern int get_lisp_indent __ARGS((void)); +extern void prepare_to_exit __ARGS((void)); +extern void preserve_exit __ARGS((void)); +extern int vim_fexists __ARGS((char_u *fname)); +extern void line_breakcheck __ARGS((void)); +extern void fast_breakcheck __ARGS((void)); +extern int expand_wildcards __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file, int flags)); +extern int match_suffix __ARGS((char_u *fname)); +extern int unix_expandpath __ARGS((garray_T *gap, char_u *path, int wildoff, int flags, int didstar)); +extern int gen_expand_wildcards __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file, int flags)); +extern void addfile __ARGS((garray_T *gap, char_u *f, int flags)); +extern char_u *get_cmd_output __ARGS((char_u *cmd, char_u *infile, int flags)); +extern void FreeWild __ARGS((int count, char_u **files)); +extern int goto_im __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/misc2.pro b/src/proto/misc2.pro --- a/src/proto/misc2.pro +++ b/src/proto/misc2.pro @@ -1,99 +1,99 @@ /* misc2.c */ -int virtual_active __ARGS((void)); -int getviscol __ARGS((void)); -int getviscol2 __ARGS((colnr_T col, colnr_T coladd)); -int coladvance_force __ARGS((colnr_T wcol)); -int coladvance __ARGS((colnr_T wcol)); -int getvpos __ARGS((pos_T *pos, colnr_T wcol)); -int inc_cursor __ARGS((void)); -int inc __ARGS((pos_T *lp)); -int incl __ARGS((pos_T *lp)); -int dec_cursor __ARGS((void)); -int dec __ARGS((pos_T *lp)); -int decl __ARGS((pos_T *lp)); -void check_cursor_lnum __ARGS((void)); -void check_cursor_col __ARGS((void)); -void check_cursor __ARGS((void)); -void adjust_cursor_col __ARGS((void)); -int leftcol_changed __ARGS((void)); -void vim_mem_profile_dump __ARGS((void)); -char_u *alloc __ARGS((unsigned size)); -char_u *alloc_clear __ARGS((unsigned size)); -char_u *alloc_check __ARGS((unsigned size)); -char_u *lalloc_clear __ARGS((long_u size, int message)); -char_u *lalloc __ARGS((long_u size, int message)); -void *mem_realloc __ARGS((void *ptr, size_t size)); -void do_outofmem_msg __ARGS((long_u size)); -void free_all_mem __ARGS((void)); -char_u *vim_strsave __ARGS((char_u *string)); -char_u *vim_strnsave __ARGS((char_u *string, int len)); -char_u *vim_strsave_escaped __ARGS((char_u *string, char_u *esc_chars)); -char_u *vim_strsave_escaped_ext __ARGS((char_u *string, char_u *esc_chars, int cc, int bsl)); -char_u *vim_strsave_up __ARGS((char_u *string)); -char_u *vim_strnsave_up __ARGS((char_u *string, int len)); -void vim_strup __ARGS((char_u *p)); -char_u *strup_save __ARGS((char_u *orig)); -void copy_spaces __ARGS((char_u *ptr, size_t count)); -void copy_chars __ARGS((char_u *ptr, size_t count, int c)); -void del_trailing_spaces __ARGS((char_u *ptr)); -void vim_strncpy __ARGS((char_u *to, char_u *from, size_t len)); -int copy_option_part __ARGS((char_u **option, char_u *buf, int maxlen, char *sep_chars)); -void vim_free __ARGS((void *x)); -int vim_stricmp __ARGS((char *s1, char *s2)); -int vim_strnicmp __ARGS((char *s1, char *s2, size_t len)); -char_u *vim_strchr __ARGS((char_u *string, int c)); -char_u *vim_strbyte __ARGS((char_u *string, int c)); -char_u *vim_strrchr __ARGS((char_u *string, int c)); -int vim_isspace __ARGS((int x)); -void ga_clear __ARGS((garray_T *gap)); -void ga_clear_strings __ARGS((garray_T *gap)); -void ga_init __ARGS((garray_T *gap)); -void ga_init2 __ARGS((garray_T *gap, int itemsize, int growsize)); -int ga_grow __ARGS((garray_T *gap, int n)); -void ga_concat __ARGS((garray_T *gap, char_u *s)); -void ga_append __ARGS((garray_T *gap, int c)); -int name_to_mod_mask __ARGS((int c)); -int simplify_key __ARGS((int key, int *modifiers)); -int handle_x_keys __ARGS((int key)); -char_u *get_special_key_name __ARGS((int c, int modifiers)); -int trans_special __ARGS((char_u **srcp, char_u *dst, int keycode)); -int find_special_key __ARGS((char_u **srcp, int *modp, int keycode)); -int extract_modifiers __ARGS((int key, int *modp)); -int find_special_key_in_table __ARGS((int c)); -int get_special_key_code __ARGS((char_u *name)); -char_u *get_key_name __ARGS((int i)); -int get_mouse_button __ARGS((int code, int *is_click, int *is_drag)); -int get_pseudo_mouse_code __ARGS((int button, int is_click, int is_drag)); -int get_fileformat __ARGS((buf_T *buf)); -int get_fileformat_force __ARGS((buf_T *buf, exarg_T *eap)); -void set_fileformat __ARGS((int t, int opt_flags)); -int default_fileformat __ARGS((void)); -int call_shell __ARGS((char_u *cmd, int opt)); -int get_real_state __ARGS((void)); -int after_pathsep __ARGS((char_u *b, char_u *p)); -int same_directory __ARGS((char_u *f1, char_u *f2)); -int vim_chdirfile __ARGS((char_u *fname)); -int illegal_slash __ARGS((char *name)); -char_u *parse_shape_opt __ARGS((int what)); -int get_shape_idx __ARGS((int mouse)); -void update_mouseshape __ARGS((int shape_idx)); -int decrypt_byte __ARGS((void)); -int update_keys __ARGS((int c)); -void crypt_init_keys __ARGS((char_u *passwd)); -char_u *get_crypt_key __ARGS((int store, int twice)); -void *vim_findfile_init __ARGS((char_u *path, char_u *filename, char_u *stopdirs, int level, int free_visited, int need_dir, void *search_ctx, int tagfile, char_u *rel_fname)); -char_u *vim_findfile_stopdir __ARGS((char_u *buf)); -void vim_findfile_cleanup __ARGS((void *ctx)); -char_u *vim_findfile __ARGS((void *search_ctx)); -void vim_findfile_free_visited __ARGS((void *search_ctx)); -char_u *find_file_in_path __ARGS((char_u *ptr, int len, int options, int first, char_u *rel_fname)); -char_u *find_directory_in_path __ARGS((char_u *ptr, int len, int options, char_u *rel_fname)); -char_u *find_file_in_path_option __ARGS((char_u *ptr, int len, int options, int first, char_u *path_option, int need_dir, char_u *rel_fname, char_u *suffixes)); -int vim_chdir __ARGS((char_u *new_dir)); -int get_user_name __ARGS((char_u *buf, int len)); -void sort_strings __ARGS((char_u **files, int count)); -int pathcmp __ARGS((const char *p, const char *q, int maxlen)); -int filewritable __ARGS((char_u *fname)); -int emsg3 __ARGS((char_u *s, char_u *a1, char_u *a2)); -int emsgn __ARGS((char_u *s, long n)); +extern int virtual_active __ARGS((void)); +extern int getviscol __ARGS((void)); +extern int getviscol2 __ARGS((colnr_T col, colnr_T coladd)); +extern int coladvance_force __ARGS((colnr_T wcol)); +extern int coladvance __ARGS((colnr_T wcol)); +extern int getvpos __ARGS((pos_T *pos, colnr_T wcol)); +extern int inc_cursor __ARGS((void)); +extern int inc __ARGS((pos_T *lp)); +extern int incl __ARGS((pos_T *lp)); +extern int dec_cursor __ARGS((void)); +extern int dec __ARGS((pos_T *lp)); +extern int decl __ARGS((pos_T *lp)); +extern void check_cursor_lnum __ARGS((void)); +extern void check_cursor_col __ARGS((void)); +extern void check_cursor __ARGS((void)); +extern void adjust_cursor_col __ARGS((void)); +extern int leftcol_changed __ARGS((void)); +extern void vim_mem_profile_dump __ARGS((void)); +extern char_u *alloc __ARGS((unsigned size)); +extern char_u *alloc_clear __ARGS((unsigned size)); +extern char_u *alloc_check __ARGS((unsigned size)); +extern char_u *lalloc_clear __ARGS((long_u size, int message)); +extern char_u *lalloc __ARGS((long_u size, int message)); +extern void *mem_realloc __ARGS((void *ptr, size_t size)); +extern void do_outofmem_msg __ARGS((long_u size)); +extern void free_all_mem __ARGS((void)); +extern char_u *vim_strsave __ARGS((char_u *string)); +extern char_u *vim_strnsave __ARGS((char_u *string, int len)); +extern char_u *vim_strsave_escaped __ARGS((char_u *string, char_u *esc_chars)); +extern char_u *vim_strsave_escaped_ext __ARGS((char_u *string, char_u *esc_chars, int cc, int bsl)); +extern char_u *vim_strsave_up __ARGS((char_u *string)); +extern char_u *vim_strnsave_up __ARGS((char_u *string, int len)); +extern void vim_strup __ARGS((char_u *p)); +extern char_u *strup_save __ARGS((char_u *orig)); +extern void copy_spaces __ARGS((char_u *ptr, size_t count)); +extern void copy_chars __ARGS((char_u *ptr, size_t count, int c)); +extern void del_trailing_spaces __ARGS((char_u *ptr)); +extern void vim_strncpy __ARGS((char_u *to, char_u *from, size_t len)); +extern int copy_option_part __ARGS((char_u **option, char_u *buf, int maxlen, char *sep_chars)); +extern void vim_free __ARGS((void *x)); +extern int vim_stricmp __ARGS((char *s1, char *s2)); +extern int vim_strnicmp __ARGS((char *s1, char *s2, size_t len)); +extern char_u *vim_strchr __ARGS((char_u *string, int c)); +extern char_u *vim_strbyte __ARGS((char_u *string, int c)); +extern char_u *vim_strrchr __ARGS((char_u *string, int c)); +extern int vim_isspace __ARGS((int x)); +extern void ga_clear __ARGS((garray_T *gap)); +extern void ga_clear_strings __ARGS((garray_T *gap)); +extern void ga_init __ARGS((garray_T *gap)); +extern void ga_init2 __ARGS((garray_T *gap, int itemsize, int growsize)); +extern int ga_grow __ARGS((garray_T *gap, int n)); +extern void ga_concat __ARGS((garray_T *gap, char_u *s)); +extern void ga_append __ARGS((garray_T *gap, int c)); +extern int name_to_mod_mask __ARGS((int c)); +extern int simplify_key __ARGS((int key, int *modifiers)); +extern int handle_x_keys __ARGS((int key)); +extern char_u *get_special_key_name __ARGS((int c, int modifiers)); +extern int trans_special __ARGS((char_u **srcp, char_u *dst, int keycode)); +extern int find_special_key __ARGS((char_u **srcp, int *modp, int keycode)); +extern int extract_modifiers __ARGS((int key, int *modp)); +extern int find_special_key_in_table __ARGS((int c)); +extern int get_special_key_code __ARGS((char_u *name)); +extern char_u *get_key_name __ARGS((int i)); +extern int get_mouse_button __ARGS((int code, int *is_click, int *is_drag)); +extern int get_pseudo_mouse_code __ARGS((int button, int is_click, int is_drag)); +extern int get_fileformat __ARGS((buf_T *buf)); +extern int get_fileformat_force __ARGS((buf_T *buf, exarg_T *eap)); +extern void set_fileformat __ARGS((int t, int opt_flags)); +extern int default_fileformat __ARGS((void)); +extern int call_shell __ARGS((char_u *cmd, int opt)); +extern int get_real_state __ARGS((void)); +extern int after_pathsep __ARGS((char_u *b, char_u *p)); +extern int same_directory __ARGS((char_u *f1, char_u *f2)); +extern int vim_chdirfile __ARGS((char_u *fname)); +extern int illegal_slash __ARGS((char *name)); +extern char_u *parse_shape_opt __ARGS((int what)); +extern int get_shape_idx __ARGS((int mouse)); +extern void update_mouseshape __ARGS((int shape_idx)); +extern int decrypt_byte __ARGS((void)); +extern int update_keys __ARGS((int c)); +extern void crypt_init_keys __ARGS((char_u *passwd)); +extern char_u *get_crypt_key __ARGS((int store, int twice)); +extern void *vim_findfile_init __ARGS((char_u *path, char_u *filename, char_u *stopdirs, int level, int free_visited, int need_dir, void *search_ctx, int tagfile, char_u *rel_fname)); +extern char_u *vim_findfile_stopdir __ARGS((char_u *buf)); +extern void vim_findfile_cleanup __ARGS((void *ctx)); +extern char_u *vim_findfile __ARGS((void *search_ctx)); +extern void vim_findfile_free_visited __ARGS((void *search_ctx)); +extern char_u *find_file_in_path __ARGS((char_u *ptr, int len, int options, int first, char_u *rel_fname)); +extern char_u *find_directory_in_path __ARGS((char_u *ptr, int len, int options, char_u *rel_fname)); +extern char_u *find_file_in_path_option __ARGS((char_u *ptr, int len, int options, int first, char_u *path_option, int need_dir, char_u *rel_fname, char_u *suffixes)); +extern int vim_chdir __ARGS((char_u *new_dir)); +extern int get_user_name __ARGS((char_u *buf, int len)); +extern void sort_strings __ARGS((char_u **files, int count)); +extern int pathcmp __ARGS((const char *p, const char *q, int maxlen)); +extern int filewritable __ARGS((char_u *fname)); +extern int emsg3 __ARGS((char_u *s, char_u *a1, char_u *a2)); +extern int emsgn __ARGS((char_u *s, long n)); /* vim: set ft=c : */ diff --git a/src/proto/move.pro b/src/proto/move.pro --- a/src/proto/move.pro +++ b/src/proto/move.pro @@ -1,40 +1,40 @@ /* move.c */ -void update_topline_redraw __ARGS((void)); -void update_topline __ARGS((void)); -void update_curswant __ARGS((void)); -void check_cursor_moved __ARGS((win_T *wp)); -void changed_window_setting __ARGS((void)); -void changed_window_setting_win __ARGS((win_T *wp)); -void set_topline __ARGS((win_T *wp, linenr_T lnum)); -void changed_cline_bef_curs __ARGS((void)); -void changed_cline_bef_curs_win __ARGS((win_T *wp)); -void changed_line_abv_curs __ARGS((void)); -void changed_line_abv_curs_win __ARGS((win_T *wp)); -void validate_botline __ARGS((void)); -void invalidate_botline __ARGS((void)); -void invalidate_botline_win __ARGS((win_T *wp)); -void approximate_botline_win __ARGS((win_T *wp)); -int cursor_valid __ARGS((void)); -void validate_cursor __ARGS((void)); -void validate_cline_row __ARGS((void)); -void validate_virtcol __ARGS((void)); -void validate_virtcol_win __ARGS((win_T *wp)); -void validate_cursor_col __ARGS((void)); -int win_col_off __ARGS((win_T *wp)); -int curwin_col_off __ARGS((void)); -int win_col_off2 __ARGS((win_T *wp)); -int curwin_col_off2 __ARGS((void)); -void curs_columns __ARGS((int scroll)); -void scrolldown __ARGS((long line_count, int byfold)); -void scrollup __ARGS((long line_count, int byfold)); -void check_topfill __ARGS((win_T *wp, int down)); -void scrolldown_clamp __ARGS((void)); -void scrollup_clamp __ARGS((void)); -void scroll_cursor_top __ARGS((int min_scroll, int always)); -void set_empty_rows __ARGS((win_T *wp, int used)); -void scroll_cursor_bot __ARGS((int min_scroll, int set_topbot)); -void scroll_cursor_halfway __ARGS((int atend)); -void cursor_correct __ARGS((void)); -int onepage __ARGS((int dir, long count)); -void halfpage __ARGS((int flag, linenr_T Prenum)); +extern void update_topline_redraw __ARGS((void)); +extern void update_topline __ARGS((void)); +extern void update_curswant __ARGS((void)); +extern void check_cursor_moved __ARGS((win_T *wp)); +extern void changed_window_setting __ARGS((void)); +extern void changed_window_setting_win __ARGS((win_T *wp)); +extern void set_topline __ARGS((win_T *wp, linenr_T lnum)); +extern void changed_cline_bef_curs __ARGS((void)); +extern void changed_cline_bef_curs_win __ARGS((win_T *wp)); +extern void changed_line_abv_curs __ARGS((void)); +extern void changed_line_abv_curs_win __ARGS((win_T *wp)); +extern void validate_botline __ARGS((void)); +extern void invalidate_botline __ARGS((void)); +extern void invalidate_botline_win __ARGS((win_T *wp)); +extern void approximate_botline_win __ARGS((win_T *wp)); +extern int cursor_valid __ARGS((void)); +extern void validate_cursor __ARGS((void)); +extern void validate_cline_row __ARGS((void)); +extern void validate_virtcol __ARGS((void)); +extern void validate_virtcol_win __ARGS((win_T *wp)); +extern void validate_cursor_col __ARGS((void)); +extern int win_col_off __ARGS((win_T *wp)); +extern int curwin_col_off __ARGS((void)); +extern int win_col_off2 __ARGS((win_T *wp)); +extern int curwin_col_off2 __ARGS((void)); +extern void curs_columns __ARGS((int scroll)); +extern void scrolldown __ARGS((long line_count, int byfold)); +extern void scrollup __ARGS((long line_count, int byfold)); +extern void check_topfill __ARGS((win_T *wp, int down)); +extern void scrolldown_clamp __ARGS((void)); +extern void scrollup_clamp __ARGS((void)); +extern void scroll_cursor_top __ARGS((int min_scroll, int always)); +extern void set_empty_rows __ARGS((win_T *wp, int used)); +extern void scroll_cursor_bot __ARGS((int min_scroll, int set_topbot)); +extern void scroll_cursor_halfway __ARGS((int atend)); +extern void cursor_correct __ARGS((void)); +extern int onepage __ARGS((int dir, long count)); +extern void halfpage __ARGS((int flag, linenr_T Prenum)); /* vim: set ft=c : */ diff --git a/src/proto/os_msdos.pro b/src/proto/os_msdos.pro --- a/src/proto/os_msdos.pro +++ b/src/proto/os_msdos.pro @@ -1,48 +1,48 @@ /* os_msdos.c */ -void mch_set_normal_colors __ARGS((void)); -void mch_update_cursor __ARGS((void)); -long_u mch_avail_mem __ARGS((int special)); -void mch_delay __ARGS((long msec, int ignoreinput)); -void mch_write __ARGS((char_u *s, int len)); -int mch_inchar __ARGS((char_u *buf, int maxlen, long time, int tb_change_cnt)); -int mch_char_avail __ARGS((void)); -void mch_suspend __ARGS((void)); -void mch_init __ARGS((void)); -int mch_check_win __ARGS((int argc, char **argv)); -int mch_input_isatty __ARGS((void)); -void fname_case __ARGS((char_u *name, int len)); -long mch_get_pid __ARGS((void)); -int mch_FullName __ARGS((char_u *fname, char_u *buf, int len, int force)); -void slash_adjust __ARGS((char_u *p)); -int mch_isFullName __ARGS((char_u *fname)); -void mch_early_init __ARGS((void)); -void mch_exit __ARGS((int r)); -void mch_settmode __ARGS((int tmode)); -void mch_setmouse __ARGS((int on)); -int mch_screenmode __ARGS((char_u *arg)); -int mch_get_shellsize __ARGS((void)); -void mch_set_shellsize __ARGS((void)); -void mch_new_shellsize __ARGS((void)); -void mch_check_columns __ARGS((void)); -int mch_call_shell __ARGS((char_u *cmd, int options)); -void mch_breakcheck __ARGS((void)); -int mch_has_exp_wildcard __ARGS((char_u *p)); -int mch_has_wildcard __ARGS((char_u *p)); -int mch_chdir __ARGS((char *path)); -char *djgpp_setlocale __ARGS((void)); -int clip_mch_own_selection __ARGS((VimClipboard *cbd)); -void clip_mch_lose_selection __ARGS((VimClipboard *cbd)); -void clip_mch_request_selection __ARGS((VimClipboard *cbd)); -void clip_mch_set_selection __ARGS((VimClipboard *cbd)); -long mch_getperm __ARGS((char_u *name)); -int mch_setperm __ARGS((char_u *name, long perm)); -void mch_hide __ARGS((char_u *name)); -int mch_isdir __ARGS((char_u *name)); -int mch_can_exe __ARGS((char_u *name)); -int mch_nodetype __ARGS((char_u *name)); -int mch_dirname __ARGS((char_u *buf, int len)); -int mch_remove __ARGS((char_u *name)); -char_u *mch_getenv __ARGS((char_u *name)); -int mch_get_user_name __ARGS((char_u *s, int len)); -void mch_get_host_name __ARGS((char_u *s, int len)); +extern void mch_set_normal_colors __ARGS((void)); +extern void mch_update_cursor __ARGS((void)); +extern long_u mch_avail_mem __ARGS((int special)); +extern void mch_delay __ARGS((long msec, int ignoreinput)); +extern void mch_write __ARGS((char_u *s, int len)); +extern int mch_inchar __ARGS((char_u *buf, int maxlen, long time, int tb_change_cnt)); +extern int mch_char_avail __ARGS((void)); +extern void mch_suspend __ARGS((void)); +extern void mch_init __ARGS((void)); +extern int mch_check_win __ARGS((int argc, char **argv)); +extern int mch_input_isatty __ARGS((void)); +extern void fname_case __ARGS((char_u *name, int len)); +extern long mch_get_pid __ARGS((void)); +extern int mch_FullName __ARGS((char_u *fname, char_u *buf, int len, int force)); +extern void slash_adjust __ARGS((char_u *p)); +extern int mch_isFullName __ARGS((char_u *fname)); +extern void mch_early_init __ARGS((void)); +extern void mch_exit __ARGS((int r)); +extern void mch_settmode __ARGS((int tmode)); +extern void mch_setmouse __ARGS((int on)); +extern int mch_screenmode __ARGS((char_u *arg)); +extern int mch_get_shellsize __ARGS((void)); +extern void mch_set_shellsize __ARGS((void)); +extern void mch_new_shellsize __ARGS((void)); +extern void mch_check_columns __ARGS((void)); +extern int mch_call_shell __ARGS((char_u *cmd, int options)); +extern void mch_breakcheck __ARGS((void)); +extern int mch_has_exp_wildcard __ARGS((char_u *p)); +extern int mch_has_wildcard __ARGS((char_u *p)); +extern int mch_chdir __ARGS((char *path)); +extern char *djgpp_setlocale __ARGS((void)); +extern int clip_mch_own_selection __ARGS((VimClipboard *cbd)); +extern void clip_mch_lose_selection __ARGS((VimClipboard *cbd)); +extern void clip_mch_request_selection __ARGS((VimClipboard *cbd)); +extern void clip_mch_set_selection __ARGS((VimClipboard *cbd)); +extern long mch_getperm __ARGS((char_u *name)); +extern int mch_setperm __ARGS((char_u *name, long perm)); +extern void mch_hide __ARGS((char_u *name)); +extern int mch_isdir __ARGS((char_u *name)); +extern int mch_can_exe __ARGS((char_u *name)); +extern int mch_nodetype __ARGS((char_u *name)); +extern int mch_dirname __ARGS((char_u *buf, int len)); +extern int mch_remove __ARGS((char_u *name)); +extern char_u *mch_getenv __ARGS((char_u *name)); +extern int mch_get_user_name __ARGS((char_u *s, int len)); +extern void mch_get_host_name __ARGS((char_u *s, int len)); /* vim: set ft=c : */ diff --git a/src/proto/os_win32.pro b/src/proto/os_win32.pro --- a/src/proto/os_win32.pro +++ b/src/proto/os_win32.pro @@ -1,54 +1,54 @@ /* os_win32.c */ -int dyn_libintl_init __ARGS((char *libname)); -void dyn_libintl_end __ARGS((void)); -void PlatformId __ARGS((void)); -int mch_windows95 __ARGS((void)); -void mch_setmouse __ARGS((int on)); -void mch_update_cursor __ARGS((void)); -int mch_char_avail __ARGS((void)); -int mch_inchar __ARGS((char_u *buf, int maxlen, long time, int tb_change_cnt)); -void mch_init __ARGS((void)); -void mch_exit __ARGS((int r)); -int mch_check_win __ARGS((int argc, char **argv)); -void fname_case __ARGS((char_u *name, int len)); -int mch_get_user_name __ARGS((char_u *s, int len)); -void mch_get_host_name __ARGS((char_u *s, int len)); -long mch_get_pid __ARGS((void)); -int mch_dirname __ARGS((char_u *buf, int len)); -long mch_getperm __ARGS((char_u *name)); -int mch_setperm __ARGS((char_u *name, long perm)); -void mch_hide __ARGS((char_u *name)); -int mch_isdir __ARGS((char_u *name)); -int mch_is_linked __ARGS((char_u *fname)); -int mch_writable __ARGS((char_u *name)); -int mch_can_exe __ARGS((char_u *name)); -int mch_nodetype __ARGS((char_u *name)); -vim_acl_T mch_get_acl __ARGS((char_u *fname)); -void mch_set_acl __ARGS((char_u *fname, vim_acl_T acl)); -void mch_free_acl __ARGS((vim_acl_T acl)); -void mch_settmode __ARGS((int tmode)); -int mch_get_shellsize __ARGS((void)); -void mch_set_shellsize __ARGS((void)); -void mch_new_shellsize __ARGS((void)); -void mch_set_winsize_now __ARGS((void)); -int mch_call_shell __ARGS((char_u *cmd, int options)); -void mch_set_normal_colors __ARGS((void)); -void mch_write __ARGS((char_u *s, int len)); -void mch_delay __ARGS((long msec, int ignoreinput)); -int mch_remove __ARGS((char_u *name)); -void mch_breakcheck __ARGS((void)); -long_u mch_avail_mem __ARGS((int special)); -int mch_wrename __ARGS((WCHAR *wold, WCHAR *wnew)); -int mch_rename __ARGS((const char *pszOldFile, const char *pszNewFile)); -char *default_shell __ARGS((void)); -int mch_access __ARGS((char *n, int p)); -int mch_open __ARGS((char *name, int flags, int mode)); -FILE *mch_fopen __ARGS((char *name, char *mode)); -int mch_copy_file_attribute __ARGS((char_u *from, char_u *to)); -int myresetstkoflw __ARGS((void)); -int get_cmd_argsW __ARGS((char ***argvp)); -void free_cmd_argsW __ARGS((void)); -void used_file_arg __ARGS((char *name, int literal, int full_path)); -void set_alist_count __ARGS((void)); -void fix_arg_enc __ARGS((void)); +extern int dyn_libintl_init __ARGS((char *libname)); +extern void dyn_libintl_end __ARGS((void)); +extern void PlatformId __ARGS((void)); +extern int mch_windows95 __ARGS((void)); +extern void mch_setmouse __ARGS((int on)); +extern void mch_update_cursor __ARGS((void)); +extern int mch_char_avail __ARGS((void)); +extern int mch_inchar __ARGS((char_u *buf, int maxlen, long time, int tb_change_cnt)); +extern void mch_init __ARGS((void)); +extern void mch_exit __ARGS((int r)); +extern int mch_check_win __ARGS((int argc, char **argv)); +extern void fname_case __ARGS((char_u *name, int len)); +extern int mch_get_user_name __ARGS((char_u *s, int len)); +extern void mch_get_host_name __ARGS((char_u *s, int len)); +extern long mch_get_pid __ARGS((void)); +extern int mch_dirname __ARGS((char_u *buf, int len)); +extern long mch_getperm __ARGS((char_u *name)); +extern int mch_setperm __ARGS((char_u *name, long perm)); +extern void mch_hide __ARGS((char_u *name)); +extern int mch_isdir __ARGS((char_u *name)); +extern int mch_is_linked __ARGS((char_u *fname)); +extern int mch_writable __ARGS((char_u *name)); +extern int mch_can_exe __ARGS((char_u *name)); +extern int mch_nodetype __ARGS((char_u *name)); +extern vim_acl_T mch_get_acl __ARGS((char_u *fname)); +extern void mch_set_acl __ARGS((char_u *fname, vim_acl_T acl)); +extern void mch_free_acl __ARGS((vim_acl_T acl)); +extern void mch_settmode __ARGS((int tmode)); +extern int mch_get_shellsize __ARGS((void)); +extern void mch_set_shellsize __ARGS((void)); +extern void mch_new_shellsize __ARGS((void)); +extern void mch_set_winsize_now __ARGS((void)); +extern int mch_call_shell __ARGS((char_u *cmd, int options)); +extern void mch_set_normal_colors __ARGS((void)); +extern void mch_write __ARGS((char_u *s, int len)); +extern void mch_delay __ARGS((long msec, int ignoreinput)); +extern int mch_remove __ARGS((char_u *name)); +extern void mch_breakcheck __ARGS((void)); +extern long_u mch_avail_mem __ARGS((int special)); +extern int mch_wrename __ARGS((WCHAR *wold, WCHAR *wnew)); +extern int mch_rename __ARGS((const char *pszOldFile, const char *pszNewFile)); +extern char *default_shell __ARGS((void)); +extern int mch_access __ARGS((char *n, int p)); +extern int mch_open __ARGS((char *name, int flags, int mode)); +extern FILE *mch_fopen __ARGS((char *name, char *mode)); +extern int mch_copy_file_attribute __ARGS((char_u *from, char_u *to)); +extern int myresetstkoflw __ARGS((void)); +extern int get_cmd_argsW __ARGS((char ***argvp)); +extern void free_cmd_argsW __ARGS((void)); +extern void used_file_arg __ARGS((char *name, int literal, int full_path)); +extern void set_alist_count __ARGS((void)); +extern void fix_arg_enc __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/popupmenu.pro b/src/proto/popupmenu.pro deleted file mode 100644 --- a/src/proto/popupmenu.pro +++ /dev/null @@ -1,8 +0,0 @@ -/* popupmenu.c */ -void pum_display __ARGS((pumitem_T *array, int size, int selected)); -void pum_redraw __ARGS((void)); -void pum_undisplay __ARGS((void)); -void pum_clear __ARGS((void)); -int pum_visible __ARGS((void)); -int pum_get_height __ARGS((void)); -/* vim: set ft=c : */ diff --git a/src/proto/quickfix.pro b/src/proto/quickfix.pro --- a/src/proto/quickfix.pro +++ b/src/proto/quickfix.pro @@ -1,30 +1,30 @@ /* quickfix.c */ -int qf_init __ARGS((win_T *wp, char_u *efile, char_u *errorformat, int newlist)); -void qf_free_all __ARGS((win_T *wp)); -void copy_loclist __ARGS((win_T *from, win_T *to)); -void qf_jump __ARGS((qf_info_T *qi, int dir, int errornr, int forceit)); -void qf_list __ARGS((exarg_T *eap)); -void qf_age __ARGS((exarg_T *eap)); -void qf_mark_adjust __ARGS((win_T *wp, linenr_T line1, linenr_T line2, long amount, long amount_after)); -void ex_cwindow __ARGS((exarg_T *eap)); -void ex_cclose __ARGS((exarg_T *eap)); -void ex_copen __ARGS((exarg_T *eap)); -linenr_T qf_current_entry __ARGS((win_T *wp)); -int bt_quickfix __ARGS((buf_T *buf)); -int bt_nofile __ARGS((buf_T *buf)); -int bt_dontwrite __ARGS((buf_T *buf)); -int bt_dontwrite_msg __ARGS((buf_T *buf)); -int buf_hide __ARGS((buf_T *buf)); -int grep_internal __ARGS((cmdidx_T cmdidx)); -void ex_make __ARGS((exarg_T *eap)); -void ex_cc __ARGS((exarg_T *eap)); -void ex_cnext __ARGS((exarg_T *eap)); -void ex_cfile __ARGS((exarg_T *eap)); -void ex_vimgrep __ARGS((exarg_T *eap)); -char_u *skip_vimgrep_pat __ARGS((char_u *p, char_u **s, int *flags)); -int get_errorlist __ARGS((win_T *wp, list_T *list)); -int set_errorlist __ARGS((win_T *wp, list_T *list, int action)); -void ex_cbuffer __ARGS((exarg_T *eap)); -void ex_cexpr __ARGS((exarg_T *eap)); -void ex_helpgrep __ARGS((exarg_T *eap)); +extern int qf_init __ARGS((win_T *wp, char_u *efile, char_u *errorformat, int newlist)); +extern void qf_free_all __ARGS((win_T *wp)); +extern void copy_loclist __ARGS((win_T *from, win_T *to)); +extern void qf_jump __ARGS((qf_info_T *qi, int dir, int errornr, int forceit)); +extern void qf_list __ARGS((exarg_T *eap)); +extern void qf_age __ARGS((exarg_T *eap)); +extern void qf_mark_adjust __ARGS((win_T *wp, linenr_T line1, linenr_T line2, long amount, long amount_after)); +extern void ex_cwindow __ARGS((exarg_T *eap)); +extern void ex_cclose __ARGS((exarg_T *eap)); +extern void ex_copen __ARGS((exarg_T *eap)); +extern linenr_T qf_current_entry __ARGS((win_T *wp)); +extern int bt_quickfix __ARGS((buf_T *buf)); +extern int bt_nofile __ARGS((buf_T *buf)); +extern int bt_dontwrite __ARGS((buf_T *buf)); +extern int bt_dontwrite_msg __ARGS((buf_T *buf)); +extern int buf_hide __ARGS((buf_T *buf)); +extern int grep_internal __ARGS((cmdidx_T cmdidx)); +extern void ex_make __ARGS((exarg_T *eap)); +extern void ex_cc __ARGS((exarg_T *eap)); +extern void ex_cnext __ARGS((exarg_T *eap)); +extern void ex_cfile __ARGS((exarg_T *eap)); +extern void ex_vimgrep __ARGS((exarg_T *eap)); +extern char_u *skip_vimgrep_pat __ARGS((char_u *p, char_u **s, int *flags)); +extern int get_errorlist __ARGS((win_T *wp, list_T *list)); +extern int set_errorlist __ARGS((win_T *wp, list_T *list, int action)); +extern void ex_cbuffer __ARGS((exarg_T *eap)); +extern void ex_cexpr __ARGS((exarg_T *eap)); +extern void ex_helpgrep __ARGS((exarg_T *eap)); /* vim: set ft=c : */ diff --git a/src/proto/screen.pro b/src/proto/screen.pro --- a/src/proto/screen.pro +++ b/src/proto/screen.pro @@ -1,50 +1,50 @@ /* screen.c */ -void redraw_later __ARGS((int type)); -void redraw_win_later __ARGS((win_T *wp, int type)); -void redraw_later_clear __ARGS((void)); -void redraw_all_later __ARGS((int type)); -void redraw_curbuf_later __ARGS((int type)); -void redraw_buf_later __ARGS((buf_T *buf, int type)); -void redrawWinline __ARGS((linenr_T lnum, int invalid)); -void update_curbuf __ARGS((int type)); -void update_screen __ARGS((int type)); -void update_debug_sign __ARGS((buf_T *buf, linenr_T lnum)); -void updateWindow __ARGS((win_T *wp)); -void rl_mirror __ARGS((char_u *str)); -void status_redraw_all __ARGS((void)); -void status_redraw_curbuf __ARGS((void)); -void redraw_statuslines __ARGS((void)); -void win_redraw_last_status __ARGS((frame_T *frp)); -void win_redr_status_matches __ARGS((expand_T *xp, int num_matches, char_u **matches, int match, int showtail)); -void win_redr_status __ARGS((win_T *wp)); -int stl_connected __ARGS((win_T *wp)); -int get_keymap_str __ARGS((win_T *wp, char_u *buf, int len)); -void screen_putchar __ARGS((int c, int row, int col, int attr)); -void screen_getbytes __ARGS((int row, int col, char_u *bytes, int *attrp)); -void screen_puts __ARGS((char_u *text, int row, int col, int attr)); -void screen_puts_len __ARGS((char_u *text, int len, int row, int col, int attr)); -void screen_stop_highlight __ARGS((void)); -void reset_cterm_colors __ARGS((void)); -void screen_draw_rectangle __ARGS((int row, int col, int height, int width, int invert)); -void screen_fill __ARGS((int start_row, int end_row, int start_col, int end_col, int c1, int c2, int attr)); -void check_for_delay __ARGS((int check_msg_scroll)); -int screen_valid __ARGS((int clear)); -void screenalloc __ARGS((int clear)); -void free_screenlines __ARGS((void)); -void screenclear __ARGS((void)); -int can_clear __ARGS((char_u *p)); -void screen_start __ARGS((void)); -void windgoto __ARGS((int row, int col)); -void setcursor __ARGS((void)); -int win_ins_lines __ARGS((win_T *wp, int row, int line_count, int invalid, int mayclear)); -int win_del_lines __ARGS((win_T *wp, int row, int line_count, int invalid, int mayclear)); -int screen_ins_lines __ARGS((int off, int row, int line_count, int end, win_T *wp)); -int screen_del_lines __ARGS((int off, int row, int line_count, int end, int force, win_T *wp)); -int showmode __ARGS((void)); -void unshowmode __ARGS((int force)); -void get_trans_bufname __ARGS((buf_T *buf)); -int redrawing __ARGS((void)); -int messaging __ARGS((void)); -void showruler __ARGS((int always)); -int number_width __ARGS((win_T *wp)); +extern void redraw_later __ARGS((int type)); +extern void redraw_win_later __ARGS((win_T *wp, int type)); +extern void redraw_later_clear __ARGS((void)); +extern void redraw_all_later __ARGS((int type)); +extern void redraw_curbuf_later __ARGS((int type)); +extern void redraw_buf_later __ARGS((buf_T *buf, int type)); +extern void redrawWinline __ARGS((linenr_T lnum, int invalid)); +extern void update_curbuf __ARGS((int type)); +extern void update_screen __ARGS((int type)); +extern void update_debug_sign __ARGS((buf_T *buf, linenr_T lnum)); +extern void updateWindow __ARGS((win_T *wp)); +extern void rl_mirror __ARGS((char_u *str)); +extern void status_redraw_all __ARGS((void)); +extern void status_redraw_curbuf __ARGS((void)); +extern void redraw_statuslines __ARGS((void)); +extern void win_redraw_last_status __ARGS((frame_T *frp)); +extern void win_redr_status_matches __ARGS((expand_T *xp, int num_matches, char_u **matches, int match, int showtail)); +extern void win_redr_status __ARGS((win_T *wp)); +extern int stl_connected __ARGS((win_T *wp)); +extern int get_keymap_str __ARGS((win_T *wp, char_u *buf, int len)); +extern void screen_putchar __ARGS((int c, int row, int col, int attr)); +extern void screen_getbytes __ARGS((int row, int col, char_u *bytes, int *attrp)); +extern void screen_puts __ARGS((char_u *text, int row, int col, int attr)); +extern void screen_puts_len __ARGS((char_u *text, int len, int row, int col, int attr)); +extern void screen_stop_highlight __ARGS((void)); +extern void reset_cterm_colors __ARGS((void)); +extern void screen_draw_rectangle __ARGS((int row, int col, int height, int width, int invert)); +extern void screen_fill __ARGS((int start_row, int end_row, int start_col, int end_col, int c1, int c2, int attr)); +extern void check_for_delay __ARGS((int check_msg_scroll)); +extern int screen_valid __ARGS((int clear)); +extern void screenalloc __ARGS((int clear)); +extern void free_screenlines __ARGS((void)); +extern void screenclear __ARGS((void)); +extern int can_clear __ARGS((char_u *p)); +extern void screen_start __ARGS((void)); +extern void windgoto __ARGS((int row, int col)); +extern void setcursor __ARGS((void)); +extern int win_ins_lines __ARGS((win_T *wp, int row, int line_count, int invalid, int mayclear)); +extern int win_del_lines __ARGS((win_T *wp, int row, int line_count, int invalid, int mayclear)); +extern int screen_ins_lines __ARGS((int off, int row, int line_count, int end, win_T *wp)); +extern int screen_del_lines __ARGS((int off, int row, int line_count, int end, int force, win_T *wp)); +extern int showmode __ARGS((void)); +extern void unshowmode __ARGS((int force)); +extern void get_trans_bufname __ARGS((buf_T *buf)); +extern int redrawing __ARGS((void)); +extern int messaging __ARGS((void)); +extern void showruler __ARGS((int always)); +extern int number_width __ARGS((win_T *wp)); /* vim: set ft=c : */ diff --git a/src/proto/search.pro b/src/proto/search.pro --- a/src/proto/search.pro +++ b/src/proto/search.pro @@ -1,36 +1,36 @@ /* search.c */ -int search_regcomp __ARGS((char_u *pat, int pat_save, int pat_use, int options, regmmatch_T *regmatch)); -char_u *get_search_pat __ARGS((void)); -void save_search_patterns __ARGS((void)); -void restore_search_patterns __ARGS((void)); -void free_search_patterns __ARGS((void)); -int ignorecase __ARGS((char_u *pat)); -char_u *last_search_pat __ARGS((void)); -void reset_search_dir __ARGS((void)); -void set_last_search_pat __ARGS((char_u *s, int idx, int magic, int setlast)); -void last_pat_prog __ARGS((regmmatch_T *regmatch)); -int searchit __ARGS((win_T *win, buf_T *buf, pos_T *pos, int dir, char_u *pat, long count, int options, int pat_use, linenr_T stop_lnum)); -int do_search __ARGS((oparg_T *oap, int dirc, char_u *pat, long count, int options)); -int search_for_exact_line __ARGS((buf_T *buf, pos_T *pos, int dir, char_u *pat)); -int searchc __ARGS((cmdarg_T *cap, int t_cmd)); -pos_T *findmatch __ARGS((oparg_T *oap, int initc)); -pos_T *findmatchlimit __ARGS((oparg_T *oap, int initc, int flags, int maxtravel)); -void showmatch __ARGS((int c)); -int findsent __ARGS((int dir, long count)); -int findpar __ARGS((int *pincl, int dir, long count, int what, int both)); -int startPS __ARGS((linenr_T lnum, int para, int both)); -int fwd_word __ARGS((long count, int bigword, int eol)); -int bck_word __ARGS((long count, int bigword, int stop)); -int end_word __ARGS((long count, int bigword, int stop, int empty)); -int bckend_word __ARGS((long count, int bigword, int eol)); -int current_word __ARGS((oparg_T *oap, long count, int include, int bigword)); -int current_sent __ARGS((oparg_T *oap, long count, int include)); -int current_block __ARGS((oparg_T *oap, long count, int include, int what, int other)); -int current_tagblock __ARGS((oparg_T *oap, long count_arg, int include)); -int current_par __ARGS((oparg_T *oap, long count, int include, int type)); -int current_quote __ARGS((oparg_T *oap, long count, int include, int quotechar)); -int linewhite __ARGS((linenr_T lnum)); -void find_pattern_in_path __ARGS((char_u *ptr, int dir, int len, int whole, int skip_comments, int type, long count, int action, linenr_T start_lnum, linenr_T end_lnum)); -int read_viminfo_search_pattern __ARGS((vir_T *virp, int force)); -void write_viminfo_search_pattern __ARGS((FILE *fp)); +extern int search_regcomp __ARGS((char_u *pat, int pat_save, int pat_use, int options, regmmatch_T *regmatch)); +extern char_u *get_search_pat __ARGS((void)); +extern void save_search_patterns __ARGS((void)); +extern void restore_search_patterns __ARGS((void)); +extern void free_search_patterns __ARGS((void)); +extern int ignorecase __ARGS((char_u *pat)); +extern char_u *last_search_pat __ARGS((void)); +extern void reset_search_dir __ARGS((void)); +extern void set_last_search_pat __ARGS((char_u *s, int idx, int magic, int setlast)); +extern void last_pat_prog __ARGS((regmmatch_T *regmatch)); +extern int searchit __ARGS((win_T *win, buf_T *buf, pos_T *pos, int dir, char_u *pat, long count, int options, int pat_use, linenr_T stop_lnum)); +extern int do_search __ARGS((oparg_T *oap, int dirc, char_u *pat, long count, int options)); +extern int search_for_exact_line __ARGS((buf_T *buf, pos_T *pos, int dir, char_u *pat)); +extern int searchc __ARGS((cmdarg_T *cap, int t_cmd)); +extern pos_T *findmatch __ARGS((oparg_T *oap, int initc)); +extern pos_T *findmatchlimit __ARGS((oparg_T *oap, int initc, int flags, int maxtravel)); +extern void showmatch __ARGS((int c)); +extern int findsent __ARGS((int dir, long count)); +extern int findpar __ARGS((int *pincl, int dir, long count, int what, int both)); +extern int startPS __ARGS((linenr_T lnum, int para, int both)); +extern int fwd_word __ARGS((long count, int bigword, int eol)); +extern int bck_word __ARGS((long count, int bigword, int stop)); +extern int end_word __ARGS((long count, int bigword, int stop, int empty)); +extern int bckend_word __ARGS((long count, int bigword, int eol)); +extern int current_word __ARGS((oparg_T *oap, long count, int include, int bigword)); +extern int current_sent __ARGS((oparg_T *oap, long count, int include)); +extern int current_block __ARGS((oparg_T *oap, long count, int include, int what, int other)); +extern int current_tagblock __ARGS((oparg_T *oap, long count_arg, int include)); +extern int current_par __ARGS((oparg_T *oap, long count, int include, int type)); +extern int current_quote __ARGS((oparg_T *oap, long count, int include, int quotechar)); +extern int linewhite __ARGS((linenr_T lnum)); +extern void find_pattern_in_path __ARGS((char_u *ptr, int dir, int len, int whole, int skip_comments, int type, long count, int action, linenr_T start_lnum, linenr_T end_lnum)); +extern int read_viminfo_search_pattern __ARGS((vir_T *virp, int force)); +extern void write_viminfo_search_pattern __ARGS((FILE *fp)); /* vim: set ft=c : */ diff --git a/src/proto/spell.pro b/src/proto/spell.pro --- a/src/proto/spell.pro +++ b/src/proto/spell.pro @@ -1,26 +1,26 @@ /* spell.c */ -int spell_check __ARGS((win_T *wp, char_u *ptr, hlf_T *attrp, int *capcol, int docount)); -int spell_move_to __ARGS((win_T *wp, int dir, int allwords, int curline, hlf_T *attrp)); -void spell_cat_line __ARGS((char_u *buf, char_u *line, int maxlen)); -char_u *did_set_spelllang __ARGS((buf_T *buf)); -void spell_free_all __ARGS((void)); -void spell_reload __ARGS((void)); -int spell_check_msm __ARGS((void)); -void put_bytes __ARGS((FILE *fd, long_u nr, int len)); -void ex_mkspell __ARGS((exarg_T *eap)); -void ex_spell __ARGS((exarg_T *eap)); -void spell_add_word __ARGS((char_u *word, int len, int bad, int index, int undo)); -void init_spell_chartab __ARGS((void)); -int spell_check_sps __ARGS((void)); -void spell_suggest __ARGS((int count)); -void ex_spellrepall __ARGS((exarg_T *eap)); -void spell_suggest_list __ARGS((garray_T *gap, char_u *word, int maxcount, int need_cap, int interactive)); -char_u *eval_soundfold __ARGS((char_u *word)); -void ex_spellinfo __ARGS((exarg_T *eap)); -void ex_spelldump __ARGS((exarg_T *eap)); -void spell_dump_compl __ARGS((buf_T *buf, char_u *pat, int ic, int *dir, int dumpflags_arg)); -char_u *spell_to_word_end __ARGS((char_u *start, buf_T *buf)); -int spell_word_start __ARGS((int startcol)); -void spell_expand_check_cap __ARGS((colnr_T col)); -int expand_spelling __ARGS((linenr_T lnum, int col, char_u *pat, char_u ***matchp)); +extern int spell_check __ARGS((win_T *wp, char_u *ptr, hlf_T *attrp, int *capcol, int docount)); +extern int spell_move_to __ARGS((win_T *wp, int dir, int allwords, int curline, hlf_T *attrp)); +extern void spell_cat_line __ARGS((char_u *buf, char_u *line, int maxlen)); +extern char_u *did_set_spelllang __ARGS((buf_T *buf)); +extern void spell_free_all __ARGS((void)); +extern void spell_reload __ARGS((void)); +extern int spell_check_msm __ARGS((void)); +extern void put_bytes __ARGS((FILE *fd, long_u nr, int len)); +extern void ex_mkspell __ARGS((exarg_T *eap)); +extern void ex_spell __ARGS((exarg_T *eap)); +extern void spell_add_word __ARGS((char_u *word, int len, int bad, int index, int undo)); +extern void init_spell_chartab __ARGS((void)); +extern int spell_check_sps __ARGS((void)); +extern void spell_suggest __ARGS((int count)); +extern void ex_spellrepall __ARGS((exarg_T *eap)); +extern void spell_suggest_list __ARGS((garray_T *gap, char_u *word, int maxcount, int need_cap, int interactive)); +extern char_u *eval_soundfold __ARGS((char_u *word)); +extern void ex_spellinfo __ARGS((exarg_T *eap)); +extern void ex_spelldump __ARGS((exarg_T *eap)); +extern void spell_dump_compl __ARGS((buf_T *buf, char_u *pat, int ic, int *dir, int dumpflags_arg)); +extern char_u *spell_to_word_end __ARGS((char_u *start, buf_T *buf)); +extern int spell_word_start __ARGS((int startcol)); +extern void spell_expand_check_cap __ARGS((colnr_T col)); +extern int expand_spelling __ARGS((linenr_T lnum, int col, char_u *pat, char_u ***matchp)); /* vim: set ft=c : */ diff --git a/src/proto/tag.pro b/src/proto/tag.pro --- a/src/proto/tag.pro +++ b/src/proto/tag.pro @@ -1,12 +1,12 @@ /* tag.c */ -int do_tag __ARGS((char_u *tag, int type, int count, int forceit, int verbose)); -void tag_freematch __ARGS((void)); -void do_tags __ARGS((exarg_T *eap)); -int find_tags __ARGS((char_u *pat, int *num_matches, char_u ***matchesp, int flags, int mincount, char_u *buf_ffname)); -void free_tag_stuff __ARGS((void)); -int get_tagfname __ARGS((tagname_T *tnp, int first, char_u *buf)); -void tagname_free __ARGS((tagname_T *tnp)); -void simplify_filename __ARGS((char_u *filename)); -int expand_tags __ARGS((int tagnames, char_u *pat, int *num_file, char_u ***file)); -int get_tags __ARGS((list_T *list, char_u *pat)); +extern int do_tag __ARGS((char_u *tag, int type, int count, int forceit, int verbose)); +extern void tag_freematch __ARGS((void)); +extern void do_tags __ARGS((exarg_T *eap)); +extern int find_tags __ARGS((char_u *pat, int *num_matches, char_u ***matchesp, int flags, int mincount, char_u *buf_ffname)); +extern void free_tag_stuff __ARGS((void)); +extern int get_tagfname __ARGS((tagname_T *tnp, int first, char_u *buf)); +extern void tagname_free __ARGS((tagname_T *tnp)); +extern void simplify_filename __ARGS((char_u *filename)); +extern int expand_tags __ARGS((int tagnames, char_u *pat, int *num_file, char_u ***file)); +extern int get_tags __ARGS((list_T *list, char_u *pat)); /* vim: set ft=c : */ diff --git a/src/proto/term.pro b/src/proto/term.pro --- a/src/proto/term.pro +++ b/src/proto/term.pro @@ -1,60 +1,60 @@ /* term.c */ -int set_termname __ARGS((char_u *term)); -void set_mouse_termcode __ARGS((int n, char_u *s)); -void del_mouse_termcode __ARGS((int n)); -void getlinecol __ARGS((long *cp, long *rp)); -int add_termcap_entry __ARGS((char_u *name, int force)); -int term_is_8bit __ARGS((char_u *name)); -int term_is_gui __ARGS((char_u *name)); -char_u *tltoa __ARGS((unsigned long i)); -void termcapinit __ARGS((char_u *name)); -void out_flush __ARGS((void)); -void out_flush_check __ARGS((void)); -void out_trash __ARGS((void)); -void out_char __ARGS((unsigned c)); -void out_str_nf __ARGS((char_u *s)); -void out_str __ARGS((char_u *s)); -void term_windgoto __ARGS((int row, int col)); -void term_cursor_right __ARGS((int i)); -void term_append_lines __ARGS((int line_count)); -void term_delete_lines __ARGS((int line_count)); -void term_set_winpos __ARGS((int x, int y)); -void term_set_winsize __ARGS((int width, int height)); -void term_fg_color __ARGS((int n)); -void term_bg_color __ARGS((int n)); -void term_settitle __ARGS((char_u *title)); -void ttest __ARGS((int pairs)); -void add_long_to_buf __ARGS((long_u val, char_u *dst)); -void check_shellsize __ARGS((void)); -void win_new_shellsize __ARGS((void)); -void shell_resized __ARGS((void)); -void shell_resized_check __ARGS((void)); -void set_shellsize __ARGS((int width, int height, int mustset)); -void settmode __ARGS((int tmode)); -void starttermcap __ARGS((void)); -void stoptermcap __ARGS((void)); -void may_req_termresponse __ARGS((void)); -int swapping_screen __ARGS((void)); -void setmouse __ARGS((void)); -int mouse_has __ARGS((int c)); -int mouse_model_popup __ARGS((void)); -void scroll_start __ARGS((void)); -void cursor_on __ARGS((void)); -void cursor_off __ARGS((void)); -void term_cursor_shape __ARGS((void)); -void scroll_region_set __ARGS((win_T *wp, int off)); -void scroll_region_reset __ARGS((void)); -void clear_termcodes __ARGS((void)); -void add_termcode __ARGS((char_u *name, char_u *string, int flags)); -char_u *find_termcode __ARGS((char_u *name)); -char_u *get_termcode __ARGS((int i)); -void del_termcode __ARGS((char_u *name)); -void set_mouse_topline __ARGS((win_T *wp)); -int check_termcode __ARGS((int max_offset, char_u *buf, int buflen)); -char_u *replace_termcodes __ARGS((char_u *from, char_u **bufp, int from_part, int do_lt)); -int find_term_bykeys __ARGS((char_u *src)); -void show_termcodes __ARGS((void)); -int show_one_termcode __ARGS((char_u *name, char_u *code, int printit)); -char_u *translate_mapping __ARGS((char_u *str, int expmap)); -void update_tcap __ARGS((int attr)); +extern int set_termname __ARGS((char_u *term)); +extern void set_mouse_termcode __ARGS((int n, char_u *s)); +extern void del_mouse_termcode __ARGS((int n)); +extern void getlinecol __ARGS((long *cp, long *rp)); +extern int add_termcap_entry __ARGS((char_u *name, int force)); +extern int term_is_8bit __ARGS((char_u *name)); +extern int term_is_gui __ARGS((char_u *name)); +extern char_u *tltoa __ARGS((unsigned long i)); +extern void termcapinit __ARGS((char_u *name)); +extern void out_flush __ARGS((void)); +extern void out_flush_check __ARGS((void)); +extern void out_trash __ARGS((void)); +extern void out_char __ARGS((unsigned c)); +extern void out_str_nf __ARGS((char_u *s)); +extern void out_str __ARGS((char_u *s)); +extern void term_windgoto __ARGS((int row, int col)); +extern void term_cursor_right __ARGS((int i)); +extern void term_append_lines __ARGS((int line_count)); +extern void term_delete_lines __ARGS((int line_count)); +extern void term_set_winpos __ARGS((int x, int y)); +extern void term_set_winsize __ARGS((int width, int height)); +extern void term_fg_color __ARGS((int n)); +extern void term_bg_color __ARGS((int n)); +extern void term_settitle __ARGS((char_u *title)); +extern void ttest __ARGS((int pairs)); +extern void add_long_to_buf __ARGS((long_u val, char_u *dst)); +extern void check_shellsize __ARGS((void)); +extern void win_new_shellsize __ARGS((void)); +extern void shell_resized __ARGS((void)); +extern void shell_resized_check __ARGS((void)); +extern void set_shellsize __ARGS((int width, int height, int mustset)); +extern void settmode __ARGS((int tmode)); +extern void starttermcap __ARGS((void)); +extern void stoptermcap __ARGS((void)); +extern void may_req_termresponse __ARGS((void)); +extern int swapping_screen __ARGS((void)); +extern void setmouse __ARGS((void)); +extern int mouse_has __ARGS((int c)); +extern int mouse_model_popup __ARGS((void)); +extern void scroll_start __ARGS((void)); +extern void cursor_on __ARGS((void)); +extern void cursor_off __ARGS((void)); +extern void term_cursor_shape __ARGS((void)); +extern void scroll_region_set __ARGS((win_T *wp, int off)); +extern void scroll_region_reset __ARGS((void)); +extern void clear_termcodes __ARGS((void)); +extern void add_termcode __ARGS((char_u *name, char_u *string, int flags)); +extern char_u *find_termcode __ARGS((char_u *name)); +extern char_u *get_termcode __ARGS((int i)); +extern void del_termcode __ARGS((char_u *name)); +extern void set_mouse_topline __ARGS((win_T *wp)); +extern int check_termcode __ARGS((int max_offset, char_u *buf, int buflen)); +extern char_u *replace_termcodes __ARGS((char_u *from, char_u **bufp, int from_part, int do_lt)); +extern int find_term_bykeys __ARGS((char_u *src)); +extern void show_termcodes __ARGS((void)); +extern int show_one_termcode __ARGS((char_u *name, char_u *code, int printit)); +extern char_u *translate_mapping __ARGS((char_u *str, int expmap)); +extern void update_tcap __ARGS((int attr)); /* vim: set ft=c : */ diff --git a/src/proto/termlib.pro b/src/proto/termlib.pro --- a/src/proto/termlib.pro +++ b/src/proto/termlib.pro @@ -1,8 +1,8 @@ /* termlib.c */ -int tgetent __ARGS((char *tbuf, char *term)); -int tgetflag __ARGS((char *id)); -int tgetnum __ARGS((char *id)); -char *tgetstr __ARGS((char *id, char **buf)); -char *tgoto __ARGS((char *cm, int col, int line)); -int tputs __ARGS((char *cp, int affcnt, void (*outc)(unsigned int))); +extern int tgetent __ARGS((char *tbuf, char *term)); +extern int tgetflag __ARGS((char *id)); +extern int tgetnum __ARGS((char *id)); +extern char *tgetstr __ARGS((char *id, char **buf)); +extern char *tgoto __ARGS((char *cm, int col, int line)); +extern int tputs __ARGS((char *cp, int affcnt, void (*outc)(unsigned int))); /* vim: set ft=c : */ diff --git a/src/proto/ui.pro b/src/proto/ui.pro --- a/src/proto/ui.pro +++ b/src/proto/ui.pro @@ -1,61 +1,61 @@ /* ui.c */ -void ui_write __ARGS((char_u *s, int len)); -void ui_inchar_undo __ARGS((char_u *s, int len)); -int ui_inchar __ARGS((char_u *buf, int maxlen, long wtime, int tb_change_cnt)); -int ui_char_avail __ARGS((void)); -void ui_delay __ARGS((long msec, int ignoreinput)); -void ui_suspend __ARGS((void)); -void suspend_shell __ARGS((void)); -int ui_get_shellsize __ARGS((void)); -void ui_set_shellsize __ARGS((int mustset)); -void ui_new_shellsize __ARGS((void)); -void ui_breakcheck __ARGS((void)); -void clip_init __ARGS((int can_use)); -void clip_update_selection __ARGS((void)); -void clip_own_selection __ARGS((VimClipboard *cbd)); -void clip_lose_selection __ARGS((VimClipboard *cbd)); -void clip_copy_selection __ARGS((void)); -void clip_auto_select __ARGS((void)); -int clip_isautosel __ARGS((void)); -void clip_modeless __ARGS((int button, int is_click, int is_drag)); -void clip_start_selection __ARGS((int col, int row, int repeated_click)); -void clip_process_selection __ARGS((int button, int col, int row, int_u repeated_click)); -void clip_may_redraw_selection __ARGS((int row, int col, int len)); -void clip_clear_selection __ARGS((void)); -void clip_may_clear_selection __ARGS((int row1, int row2)); -void clip_scroll_selection __ARGS((int rows)); -void clip_copy_modeless_selection __ARGS((int both)); -int clip_gen_own_selection __ARGS((VimClipboard *cbd)); -void clip_gen_lose_selection __ARGS((VimClipboard *cbd)); -void clip_gen_set_selection __ARGS((VimClipboard *cbd)); -void clip_gen_request_selection __ARGS((VimClipboard *cbd)); -int vim_is_input_buf_full __ARGS((void)); -int vim_is_input_buf_empty __ARGS((void)); -int vim_free_in_input_buf __ARGS((void)); -int vim_used_in_input_buf __ARGS((void)); -char_u *get_input_buf __ARGS((void)); -void set_input_buf __ARGS((char_u *p)); -void add_to_input_buf __ARGS((char_u *s, int len)); -void add_to_input_buf_csi __ARGS((char_u *str, int len)); -void push_raw_key __ARGS((char_u *s, int len)); -void trash_input_buf __ARGS((void)); -int read_from_input_buf __ARGS((char_u *buf, long maxlen)); -void fill_input_buf __ARGS((int exit_on_error)); -void read_error_exit __ARGS((void)); -void ui_cursor_shape __ARGS((void)); -int check_col __ARGS((int col)); -int check_row __ARGS((int row)); -void open_app_context __ARGS((void)); -void x11_setup_atoms __ARGS((Display *dpy)); -void clip_x11_request_selection __ARGS((Widget myShell, Display *dpy, VimClipboard *cbd)); -void clip_x11_lose_selection __ARGS((Widget myShell, VimClipboard *cbd)); -int clip_x11_own_selection __ARGS((Widget myShell, VimClipboard *cbd)); -void clip_x11_set_selection __ARGS((VimClipboard *cbd)); -int jump_to_mouse __ARGS((int flags, int *inclusive, int which_button)); -int mouse_comp_pos __ARGS((win_T *win, int *rowp, int *colp, linenr_T *lnump)); -win_T *mouse_find_win __ARGS((int *rowp, int *colp)); -int get_fpos_of_mouse __ARGS((pos_T *mpos)); -int vcol2col __ARGS((win_T *wp, linenr_T lnum, int vcol)); -void ui_focus_change __ARGS((int in_focus)); -void im_save_status __ARGS((long *psave)); +extern void ui_write __ARGS((char_u *s, int len)); +extern void ui_inchar_undo __ARGS((char_u *s, int len)); +extern int ui_inchar __ARGS((char_u *buf, int maxlen, long wtime, int tb_change_cnt)); +extern int ui_char_avail __ARGS((void)); +extern void ui_delay __ARGS((long msec, int ignoreinput)); +extern void ui_suspend __ARGS((void)); +extern void suspend_shell __ARGS((void)); +extern int ui_get_shellsize __ARGS((void)); +extern void ui_set_shellsize __ARGS((int mustset)); +extern void ui_new_shellsize __ARGS((void)); +extern void ui_breakcheck __ARGS((void)); +extern void clip_init __ARGS((int can_use)); +extern void clip_update_selection __ARGS((void)); +extern void clip_own_selection __ARGS((VimClipboard *cbd)); +extern void clip_lose_selection __ARGS((VimClipboard *cbd)); +extern void clip_copy_selection __ARGS((void)); +extern void clip_auto_select __ARGS((void)); +extern int clip_isautosel __ARGS((void)); +extern void clip_modeless __ARGS((int button, int is_click, int is_drag)); +extern void clip_start_selection __ARGS((int col, int row, int repeated_click)); +extern void clip_process_selection __ARGS((int button, int col, int row, int_u repeated_click)); +extern void clip_may_redraw_selection __ARGS((int row, int col, int len)); +extern void clip_clear_selection __ARGS((void)); +extern void clip_may_clear_selection __ARGS((int row1, int row2)); +extern void clip_scroll_selection __ARGS((int rows)); +extern void clip_copy_modeless_selection __ARGS((int both)); +extern int clip_gen_own_selection __ARGS((VimClipboard *cbd)); +extern void clip_gen_lose_selection __ARGS((VimClipboard *cbd)); +extern void clip_gen_set_selection __ARGS((VimClipboard *cbd)); +extern void clip_gen_request_selection __ARGS((VimClipboard *cbd)); +extern int vim_is_input_buf_full __ARGS((void)); +extern int vim_is_input_buf_empty __ARGS((void)); +extern int vim_free_in_input_buf __ARGS((void)); +extern int vim_used_in_input_buf __ARGS((void)); +extern char_u *get_input_buf __ARGS((void)); +extern void set_input_buf __ARGS((char_u *p)); +extern void add_to_input_buf __ARGS((char_u *s, int len)); +extern void add_to_input_buf_csi __ARGS((char_u *str, int len)); +extern void push_raw_key __ARGS((char_u *s, int len)); +extern void trash_input_buf __ARGS((void)); +extern int read_from_input_buf __ARGS((char_u *buf, long maxlen)); +extern void fill_input_buf __ARGS((int exit_on_error)); +extern void read_error_exit __ARGS((void)); +extern void ui_cursor_shape __ARGS((void)); +extern int check_col __ARGS((int col)); +extern int check_row __ARGS((int row)); +extern void open_app_context __ARGS((void)); +extern void x11_setup_atoms __ARGS((Display *dpy)); +extern void clip_x11_request_selection __ARGS((Widget myShell, Display *dpy, VimClipboard *cbd)); +extern void clip_x11_lose_selection __ARGS((Widget myShell, VimClipboard *cbd)); +extern int clip_x11_own_selection __ARGS((Widget myShell, VimClipboard *cbd)); +extern void clip_x11_set_selection __ARGS((VimClipboard *cbd)); +extern int jump_to_mouse __ARGS((int flags, int *inclusive, int which_button)); +extern int mouse_comp_pos __ARGS((win_T *win, int *rowp, int *colp, linenr_T *lnump)); +extern win_T *mouse_find_win __ARGS((int *rowp, int *colp)); +extern int get_fpos_of_mouse __ARGS((pos_T *mpos)); +extern int vcol2col __ARGS((win_T *wp, linenr_T lnum, int vcol)); +extern void ui_focus_change __ARGS((int in_focus)); +extern void im_save_status __ARGS((long *psave)); /* vim: set ft=c : */ diff --git a/src/structs.h b/src/structs.h --- a/src/structs.h +++ b/src/structs.h @@ -1118,7 +1118,9 @@ struct dictvar_S # define B_SPELL(buf) (0) #endif +#ifdef FEAT_QUICKFIX typedef struct qf_info_S qf_info_T; +#endif /* * buffer: structure that holds information about one file diff --git a/src/testdir/test61.in b/src/testdir/test61.in --- a/src/testdir/test61.in +++ b/src/testdir/test61.in @@ -30,7 +30,7 @@ 10g+:.w >>test.out :" :/^222/w >>test.out :" Delay for three seconds and go some seconds forward and backward -:sleep 2 +:sleep 3 Aa:set ul=100 Ab:set ul=100 Ac:set ul=100