# HG changeset patch # User vimboss # Date 1116624677 0 # Node ID 946f0cbdd535d6fb8915ccc87b837edb15287663 # Parent a7e59720a155465e27210cc8743769e56f4aa491 updated for version 7.0074 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: 2005 Apr 01 +*quickfix.txt* For Vim version 7.0aa. Last change: 2005 May 20 VIM REFERENCE MANUAL by Bram Moolenaar @@ -611,7 +611,8 @@ Basic items %% the single '%' character %s search text (finds a string) -The "%f" conversion depends on the current 'isfname' setting. +The "%f" conversion depends on the current 'isfname' setting. "~/" is +expanded to the home directory and environment variables are expanded. The "%f" and "%m" conversions have to detect the end of the string. They should be followed by a character that cannot be in the string. Everything diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -399,7 +399,8 @@ Go back to the default to use 'number' b :unlet html_number_lines Closed folds are put in the HTML as they are displayed. If you don't want -this, use the "zR" command before invoking 2html. +this, use the "zR" command before invoking 2html, or use: > + :let html_ignore_folding = 1 By default, HTML optimized for old browsers is generated. If you prefer using cascading style sheets (CSS1) for the attributes (resulting in considerably 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: 2005 May 19 +*todo.txt* For Vim version 7.0aa. Last change: 2005 May 20 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,28 +30,6 @@ be worked on, but only if you sponsor Vi *known-bugs* -------------------- Known bugs and current work ----------------------- -Problem with 'insertmode'. (Georg Dahn, 2005 April 9, expl. April 14) -Problem with CTRL-V pasting more than one line. (Georg Dahn, 2005 April 11) - -Patch for setqflist() (Yegappan Lakshmanan, 2005 April 11) - -":help \=" doesn't find "sub-replace-\=". - -In an errorfile expand "~/" to home directory. (Arnout Engelen) - -Patch for 2html.vim to disable folding (Michael Schaap, 2005 April 12) - -Win32: Alt-F10 no longer working? (Bill McCarthy, April 18) - -Patch for if_python to make exit work better with threads. (ugo) - -With "wa" in 'formatoptions', backspace at start-of-line doesn't work. It -should delete the space at the end of the previous line. (Alan Isaac) - -GTK GUI: Running a script that does :vsp and :quit, causing the left scrollbar -to appear and disappear, causes resizing. (gvcolors.vim from Charles Campbell, -2005 April 25) - Problem with ":mksession" for "vim -o "+argdel *" prog1 prog2 prog3" (Bill McCarthy, 2005 April 26) @@ -59,6 +37,8 @@ getreg('=') returns the result of evalua expression itself, so that it can be restored? (David Fishburn) Perhaps use getreg('=', 1). Also make setreg('=') work then. +Use "file::func()" for autoload? + Win32: With the taskbar at the top of the screen, scrolling doesn't redraw properly. (Sergey Khorev, 2005 April 27) @@ -70,6 +50,9 @@ When 'shortmess' is empty and 'keymap' s may cause the hit-enter prompt. Typing 'a then doesn't result in the accented character. (Ilya Dogolazky) +split(): keep empty items halfway. With an option also keep empty items at +start and end. (Johnny Blaze) + autoload: - Add a Vim script in $VIMRUNTIME/tools that takes a file with a list of script names and a help file and produces a script that can be sourced to @@ -102,6 +85,9 @@ Awaiting response: Make option like 'verbose' that writes output into a file? Should make it possible to see what's happening without messing up the display. +Patch for if_python to make exit work better with threads. (ugo) +Still seems to fail 15% of the time. + PLANNED FOR VERSION 7.0: 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: 2005 May 19 +*version7.txt* For Vim version 7.0aa. Last change: 2005 May 20 VIM REFERENCE MANUAL by Bram Moolenaar @@ -76,8 +76,9 @@ When ":file xxx" is used in a buffer wit isn't set. This avoids creating buffers without a name that are not useful. The "2html.vim" script now converts closed folds to HTML. This means the HTML -looks like its displayed, with the same folds open and closed. Use "zR" if no -folds should appear in the HTML. (partly by Carl Osterwisch) +looks like its displayed, with the same folds open and closed. Use "zR", or +"let html_ignore_folding=1", if no folds should appear in the HTML. (partly by +Carl Osterwisch) Diff mode now is also converted as it is displayed. Win32: The effect of the key depended on 'winaltkeys'. Now it depends @@ -1072,4 +1073,15 @@ Use of sprintf() sometimes didn't check when using smsg(). Included code for snprintf() to avoid having to do size checks where invoking them +":help \=" didn't find "sub-replace-\=". Wild menu for help tags didn't +show backslashes. ":he :s\=" didn't work. + +When reading an errorfile "~/" in a file name was not expanded. + +GTK GUI: When adding a scrollbar (e.g. when using ":vsplit") in a script or +removing it the window size may change. GTK sends us resize events when we +change the window size ourselves, but they may come at an unexpected moment. +Peek for a character to get any window resize events and fix 'columns' and +'lines' to undo this. + vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/scripts.vim b/runtime/scripts.vim --- a/runtime/scripts.vim +++ b/runtime/scripts.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types in scripts " " Maintainer: Bram Moolenaar -" Last change: 2005 Mar 04 +" Last change: 2005 May 20 " This file is called by an autocommand for every file that has just been " loaded into a buffer. It checks if the type of file can be recognized by @@ -15,7 +15,7 @@ endif " Load the user defined scripts file first " Only do this when the FileType autocommand has not been triggered yet -if exists("myscriptsfile") && file_readable(expand(myscriptsfile)) +if exists("myscriptsfile") && filereadable(expand(myscriptsfile)) execute "source " . myscriptsfile if did_filetype() finish @@ -40,10 +40,14 @@ if s:line1 =~ "^#!" " Get the program name. " Only accept spaces in PC style paths: "#!c:/program files/perl [args]". + " If the word env is used, use the first word after the space: + " "#!/usr/bin/env perl [path/args]" " If there is no path use the first word: "#!perl [path/args]". " Otherwise get the last word after a slash: "#!/usr/bin/perl [path/args]". if s:line1 =~ '^#!\s*\a:[/\\]' let s:name = substitute(s:line1, '^#!.*[/\\]\(\i\+\).*', '\1', '') + elseif s:line1 =~ '^#!.*\' + let s:name = substitute(s:line1, '^#!.*\\s\+\(\i\+\).*', '\1', '') elseif s:line1 =~ '^#!\s*[^/\\ ]*\>\([^/\\]\|$\)' let s:name = substitute(s:line1, '^#!\s*\([^/\\ ]*\>\).*', '\1', '') else @@ -86,6 +90,10 @@ if s:line1 =~ "^#!" elseif s:name =~ 'make\>' set ft=make + " Lua + elseif s:name =~ 'lua' + set ft=lua + " Perl elseif s:name =~ 'perl' set ft=perl diff --git a/runtime/syntax/2html.vim b/runtime/syntax/2html.vim --- a/runtime/syntax/2html.vim +++ b/runtime/syntax/2html.vim @@ -273,7 +273,7 @@ else let s:end = line("$") endif -if has('folding') +if has('folding') && !exists('html_ignore_folding') let s:foldfillchar = &fillchars[matchend(&fillchars, 'fold:')] if s:foldfillchar == '' let s:foldfillchar = '-' @@ -327,7 +327,7 @@ while s:lnum <= s:end let s:new = "" endif - if has('folding') && foldclosed(s:lnum) > -1 + if has('folding') && !exists('html_ignore_folding') && foldclosed(s:lnum) > -1 " " This is the beginning of a folded block " diff --git a/src/eval.c b/src/eval.c --- a/src/eval.c +++ b/src/eval.c @@ -6234,7 +6234,7 @@ static struct fst {"setbufvar", 3, 3, f_setbufvar}, {"setcmdpos", 1, 1, f_setcmdpos}, {"setline", 2, 2, f_setline}, - {"setqflist", 1, 1, f_setqflist}, + {"setqflist", 1, 2, f_setqflist}, {"setreg", 2, 3, f_setreg}, {"setwinvar", 3, 3, f_setwinvar}, {"simplify", 1, 1, f_simplify}, @@ -10601,7 +10601,7 @@ get_maparg(argvars, rettv, exact) mode = get_map_mode(&which, 0); keys = replace_termcodes(keys, &keys_buf, TRUE, TRUE); - rhs = check_map(keys, mode, exact); + rhs = check_map(keys, mode, exact, FALSE); vim_free(keys_buf); if (rhs != NULL) { @@ -12370,6 +12370,9 @@ f_setqflist(argvars, rettv) typval_T *argvars; typval_T *rettv; { + char_u *act; + int action = ' '; + rettv->vval.v_number = -1; #ifdef FEAT_QUICKFIX @@ -12379,7 +12382,14 @@ f_setqflist(argvars, rettv) { list_T *l = argvars[0].vval.v_list; - if (l != NULL && set_errorlist(l) == OK) + if (argvars[1].v_type == VAR_STRING) + { + act = get_tv_string(&argvars[1]); + if (*act == 'a' || *act == 'r') + action = *act; + } + + if (l != NULL && set_errorlist(l, action) == OK) rettv->vval.v_number = 0; } #endif diff --git a/src/ex_cmds.c b/src/ex_cmds.c --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -5128,13 +5128,13 @@ find_help_tags(arg, num_matches, matches static char *(mtable[]) = {"*", "g*", "[*", "]*", ":*", "/*", "/\\*", "\"*", "/\\(\\)", "?", ":?", "?", "g?", "g?g?", "g??", - "/\\?", "/\\z(\\)", + "/\\?", "/\\z(\\)", "\\=", ":s\\=", "[count]", "[quotex]", "[range]", "[pattern]", "\\|", "\\%$"}; static char *(rtable[]) = {"star", "gstar", "[star", "]star", ":star", "/star", "/\\\\star", "quotestar", "/\\\\(\\\\)", "?", ":?", "?", "g?", "g?g?", "g??", - "/\\\\?", "/\\\\z(\\\\)", + "/\\\\?", "/\\\\z(\\\\)", "\\\\=", ":s\\\\=", "\\[count]", "\\[quotex]", "\\[range]", "\\[pattern]", "\\\\bar", "/\\\\%\\$"}; int flags; diff --git a/src/proto/quickfix.pro b/src/proto/quickfix.pro --- a/src/proto/quickfix.pro +++ b/src/proto/quickfix.pro @@ -21,7 +21,7 @@ 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((list_T *list)); -int set_errorlist __ARGS((list_T *list)); +int set_errorlist __ARGS((list_T *list, int action)); void ex_cbuffer __ARGS((exarg_T *eap)); void ex_helpgrep __ARGS((exarg_T *eap)); /* vim: set ft=c : */