summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2006-01-26 22:25:15 +0000
committerBram Moolenaar <Bram@vim.org>2006-01-26 22:25:15 +0000
commit17c7c011706af19bb736c6815375f3b67a5646fc (patch)
treef18193165ae4f561a81459393e8d18083a0cf8fb
parent51156d5a87f433b72ca6f082e4a99fc91ca5a8dc (diff)
downloadvim-git-17c7c011706af19bb736c6815375f3b67a5646fc.tar.gz
updated for version 7.0188v7.0188
-rw-r--r--runtime/doc/eval.txt23
-rw-r--r--runtime/doc/quickfix.txt32
-rw-r--r--runtime/doc/tags49
-rw-r--r--runtime/doc/todo.txt8
-rw-r--r--runtime/doc/usr_41.txt4
-rw-r--r--runtime/doc/version7.txt16
-rw-r--r--src/eval.c97
-rw-r--r--src/proto/quickfix.pro4
-rw-r--r--src/quickfix.c20
-rw-r--r--src/term.c4
-rw-r--r--src/version.c5
-rw-r--r--src/version.h4
12 files changed, 214 insertions, 52 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 563e4bbe1..c953db315 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1562,6 +1562,7 @@ getftime( {fname}) Number last modification time of file
getftype( {fname}) String description of type of file {fname}
getline( {lnum}) String line {lnum} of current buffer
getline( {lnum}, {end}) List lines {lnum} to {end} of current buffer
+getloclist({nr}) List list of location list items
getqflist() List list of quickfix items
getreg( [{regname} [, 1]]) String contents of register
getregtype( [{regname}]) String type of register
@@ -1652,7 +1653,9 @@ serverlist() String get a list of available servers
setbufvar( {expr}, {varname}, {val}) set {varname} in buffer {expr} to {val}
setcmdpos( {pos}) Number set cursor position in command-line
setline( {lnum}, {line}) Number set line {lnum} to {line}
-setqflist( {list}[, {action}]) Number set list of quickfix items using {list}
+setloclist( {nr}, {list}[, {action}])
+ Number modify location list using {list}
+setqflist( {list}[, {action}]) Number modify quickfix list using {list}
setreg( {n}, {v}[, {opt}]) Number set register to value and type
setwinvar( {nr}, {varname}, {val}) set {varname} in window {nr} to {val}
simplify( {filename}) String simplify filename as much as possible
@@ -2693,6 +2696,11 @@ getline({lnum} [, {end}])
:let end = search("^$") - 1
:let lines = getline(start, end)
+getloclist({nr}) *getloclist()*
+ Returns a list with all the entries in the location list for
+ window {nr}. When {nr} is zero the current window is used.
+ For a location list window, the displayed location list is
+ returned. Otherwise, same as getqflist().
getqflist() *getqflist()*
Returns a list with all the current quickfix errors. Each
@@ -3971,12 +3979,17 @@ setline({lnum}, {line}) *setline()*
:endfor
< Note: The '[ and '] marks are not set.
+setloclist({nr}, {list} [, {action}]) *setloclist()*
+ Create or replace or add to the location list for window {nr}.
+ When {nr} is zero the current window is used. For a location
+ list window, the displayed location list is modified.
+ Otherwise, same as setqflist().
setqflist({list} [, {action}]) *setqflist()*
- Creates a quickfix list using the items in {list}. Each item
- in {list} is a dictionary. Non-dictionary items in {list} are
- ignored. Each dictionary item can contain the following
- entries:
+ Create or replace or add to the quickfix list using the items
+ in {list}. Each item in {list} is a dictionary.
+ Non-dictionary items in {list} are ignored. Each dictionary
+ item can contain the following entries:
filename name of a file
lnum line number in the file
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 6cd087845..b4b3f813f 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt* For Vim version 7.0aa. Last change: 2006 Jan 13
+*quickfix.txt* For Vim version 7.0aa. Last change: 2006 Jan 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -73,8 +73,8 @@ The following quickfix commands can be used:
all, go to the [count] next error. See |:cc| for
[!] and 'switchbuf'.
- *:ln* *:lnext*
-:[count]ln[ext][!] Same as ":cnext", except the location list for the
+ *:lne* *:lnext*
+:[count]lne[xt][!] Same as ":cnext", except the location list for the
current window is used instead of the quickfix list.
:[count]cN[ext][!] *:cp* *:cprevious* *:cN* *:cNext*
@@ -83,8 +83,8 @@ The following quickfix commands can be used:
all, go to the [count] previous error. See |:cc| for
[!] and 'switchbuf'.
- *:lp* *:lprevious* *:lN* *:lNext*
-:[count]lN[ext][!]
+
+:[count]lN[ext][!] *:lp* *:lprevious* *:lN* *:lNext*
:[count]lp[revious][!] Same as ":cNext" and ":cprevious", except the location
list for the current window is used instead of the
quickfix list.
@@ -107,8 +107,8 @@ The following quickfix commands can be used:
the [count] previous error. See |:cc| for [!] and
'switchbuf'.
- *:lpf* *:lpfile* *:lNf* *:lNfile*
-:[count]lNf[ile][!]
+
+:[count]lNf[ile][!] *:lpf* *:lpfile* *:lNf* *:lNfile*
:[count]lpf[ile][!] Same as ":cNfile" and ":cpfile", except the location
list for the current window is used instead of the
quickfix list.
@@ -153,13 +153,13 @@ The following quickfix commands can be used:
You can not use the -q command-line option to set
the location list.
- *:cg* *:cgetfile*
-:cg[etfile][!] [errorfile]
+
+:cg[etfile][!] [errorfile] *:cg* *:cgetfile*
Read the error file. Just like ":cfile" but don't
jump to the first error.
- *:lg* *:lgetfile*
-:lg[etfile][!] [errorfile]
+
+:lg[etfile][!] [errorfile] *:lg* *:lgetfile*
Same as ":cgetfile", except the location list for the
current window is used instead of the quickfix list.
@@ -260,12 +260,12 @@ on) is executed. See |QuickFixCmdPre| and |QuickFixCmdPost| for details.
the current window. It is not possible to open a
second quickfix window.
- *:lope* *:lopen*
-:lope[n] [height] Open a window to show the location list for the
+ *:lop* *:lopen*
+:lop[en] [height] Open a window to show the location list for the
current window. Works only when the location list for
- the current window is present. You can have more than
- one location window opened at a time. Otherewise,
- same as ":copen".
+ the current window is present. You can have more than
+ one location window opened at a time. Otherwise, it
+ acts the same same as ":copen".
*:ccl* *:cclose*
:ccl[ose] Close the quickfix window.
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 036f4fbd0..4ad56bb99 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -2099,15 +2099,27 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:keepjumps motion.txt /*:keepjumps*
:keepmarks motion.txt /*:keepmarks*
:l various.txt /*:l*
+:lN quickfix.txt /*:lN*
+:lNext quickfix.txt /*:lNext*
+:lNf quickfix.txt /*:lNf*
+:lNfile quickfix.txt /*:lNfile*
:la editing.txt /*:la*
+:lad quickfix.txt /*:lad*
+:laddexpr quickfix.txt /*:laddexpr*
+:laddf quickfix.txt /*:laddf*
+:laddfile quickfix.txt /*:laddfile*
:lan mlang.txt /*:lan*
:lang mlang.txt /*:lang*
:language mlang.txt /*:language*
:last editing.txt /*:last*
+:lb quickfix.txt /*:lb*
+:lbuffer quickfix.txt /*:lbuffer*
:lc editing.txt /*:lc*
:lcd editing.txt /*:lcd*
:lch editing.txt /*:lch*
:lchdir editing.txt /*:lchdir*
+:lcl quickfix.txt /*:lcl*
+:lclose quickfix.txt /*:lclose*
:le change.txt /*:le*
:left change.txt /*:left*
:lefta windows.txt /*:lefta*
@@ -2123,13 +2135,32 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:let-star eval.txt /*:let-star*
:let-unpack eval.txt /*:let-unpack*
:let.= eval.txt /*:let.=*
+:lex quickfix.txt /*:lex*
+:lexpr quickfix.txt /*:lexpr*
+:lf quickfix.txt /*:lf*
+:lfile quickfix.txt /*:lfile*
+:lfir quickfix.txt /*:lfir*
+:lfirst quickfix.txt /*:lfirst*
+:lg quickfix.txt /*:lg*
+:lgetfile quickfix.txt /*:lgetfile*
:list various.txt /*:list*
+:ll quickfix.txt /*:ll*
+:lla quickfix.txt /*:lla*
+:llast quickfix.txt /*:llast*
+:lli quickfix.txt /*:lli*
+:llist quickfix.txt /*:llist*
:lm map.txt /*:lm*
:lmap map.txt /*:lmap*
:lmap_l map.txt /*:lmap_l*
:lmapc map.txt /*:lmapc*
:lmapclear map.txt /*:lmapclear*
:ln map.txt /*:ln*
+:lne quickfix.txt /*:lne*
+:lnew quickfix.txt /*:lnew*
+:lnewer quickfix.txt /*:lnewer*
+:lnext quickfix.txt /*:lnext*
+:lnf quickfix.txt /*:lnf*
+:lnfile quickfix.txt /*:lnfile*
:lnoremap map.txt /*:lnoremap*
:lo starting.txt /*:lo*
:loadk mbyte.txt /*:loadk*
@@ -2139,9 +2170,21 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:lockmarks motion.txt /*:lockmarks*
:lockv eval.txt /*:lockv*
:lockvar eval.txt /*:lockvar*
+:lol quickfix.txt /*:lol*
+:lolder quickfix.txt /*:lolder*
+:lop quickfix.txt /*:lop*
+:lopen quickfix.txt /*:lopen*
+:lp quickfix.txt /*:lp*
+:lpf quickfix.txt /*:lpf*
+:lpfile quickfix.txt /*:lpfile*
+:lprevious quickfix.txt /*:lprevious*
+:lr quickfix.txt /*:lr*
+:lrewind quickfix.txt /*:lrewind*
:ls windows.txt /*:ls*
:lu map.txt /*:lu*
:lunmap map.txt /*:lunmap*
+:lw quickfix.txt /*:lw*
+:lwindow quickfix.txt /*:lwindow*
:m change.txt /*:m*
:ma motion.txt /*:ma*
:mak quickfix.txt /*:mak*
@@ -3798,6 +3841,7 @@ E772 spell.txt /*E772*
E773 recover.txt /*E773*
E774 map.txt /*E774*
E775 map.txt /*E775*
+E776 quickfix.txt /*E776*
E777 quickfix.txt /*E777*
E778 spell.txt /*E778*
E779 spell.txt /*E779*
@@ -5229,6 +5273,7 @@ getfsize() eval.txt /*getfsize()*
getftime() eval.txt /*getftime()*
getftype() eval.txt /*getftype()*
getline() eval.txt /*getline()*
+getloclist() eval.txt /*getloclist()*
getqflist() eval.txt /*getqflist()*
getreg() eval.txt /*getreg()*
getregtype() eval.txt /*getregtype()*
@@ -5729,6 +5774,8 @@ local-variables eval.txt /*local-variables*
locale mbyte.txt /*locale*
locale-name mbyte.txt /*locale-name*
localtime() eval.txt /*localtime()*
+location-list quickfix.txt /*location-list*
+location-list-window quickfix.txt /*location-list-window*
long-lines version5.txt /*long-lines*
lowercase change.txt /*lowercase*
lpc.vim syntax.txt /*lpc.vim*
@@ -6042,6 +6089,7 @@ new-indent-flex version6.txt /*new-indent-flex*
new-items-6 version6.txt /*new-items-6*
new-items-7 version7.txt /*new-items-7*
new-line-continuation version5.txt /*new-line-continuation*
+new-location-list version7.txt /*new-location-list*
new-manpage-trans version7.txt /*new-manpage-trans*
new-multi-byte version5.txt /*new-multi-byte*
new-multi-lang version6.txt /*new-multi-lang*
@@ -6458,6 +6506,7 @@ set-spc-auto spell.txt /*set-spc-auto*
setbufvar() eval.txt /*setbufvar()*
setcmdpos() eval.txt /*setcmdpos()*
setline() eval.txt /*setline()*
+setloclist() eval.txt /*setloclist()*
setqflist() eval.txt /*setqflist()*
setreg() eval.txt /*setreg()*
setting-guifont gui.txt /*setting-guifont*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 2566b8c64..8d49c5f4f 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.0aa. Last change: 2006 Jan 25
+*todo.txt* For Vim version 7.0aa. Last change: 2006 Jan 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,9 +30,7 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Include location list commands, patch from Yegappan Lakshmanan.
-
-ccomplete:
+ccomplete / omnicomplete:
- When an option is set: In completion mode and the user types (identifier)
characters, advance to the first match instead of removing the popup menu.
If there is no match remove the selection. (Yegappan Lakshmanan)
@@ -58,6 +56,7 @@ ccomplete:
Can't reproduce it right now...
spelling:
+- Also use the spelling dictionary for dictionary completion.
- Use runtime/cleanadd script to cleanup .add files. When to invoke it?
After deleting a word with "zw" and some timestamp difference perhaps?
Store it as spell/cleanadd.vim.
@@ -94,7 +93,6 @@ spelling:
obtain). But new Myspell wordlist will come (Hagen)
- Finding suggestions with sound folding is slow. Somehow store the
sound-folded words and link to the words it comes from?
-- Also use the spelling dictionary for dictionary completion.
- Have "zg" and "zw" report the file that was modified. (Marvin Renich)
- Add a command like "zg" that selects one of the files 'spellfile'.
- Add a "zug" command that undoes "zg"? Deletes the good word instead of
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 0df95013c..2b7331560 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -747,6 +747,7 @@ Various:
exists() check if a variable, function, etc. exists
has() check if a feature is supported in Vim
getqflist() list of quickfix errors
+ getloclist() list of location list items
cscope_connection() check if a cscope connection exists
did_filetype() check if a FileType autocommand was used
eventhandler() check if invoked by an event handler
@@ -758,7 +759,8 @@ Various:
libcallnr() idem, returning a number
getreg() get contents of a register
getregtype() get type of a register
- setqflist() create a quickfix list
+ setqflist() modify a quickfix list
+ setloclist() modify a location list
setreg() set contents and type of a register
taglist() get list of matching tags
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index ed929f31a..763ecb821 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt* For Vim version 7.0aa. Last change: 2006 Jan 25
+*version7.txt* For Vim version 7.0aa. Last change: 2006 Jan 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,6 +30,7 @@ POSIX compatibility |new-posix|
Debugger support |new-debug-support|
Remote file explorer |new-netrw-explore|
Define an operator |new-define-operator|
+Location list |new-location-list|
Various new items |new-items-7|
IMPROVEMENTS |improvements-7|
@@ -356,6 +357,13 @@ through the |g@| operator.
See |:map-operator| for the explanation and an example.
+Location list *new-location-list*
+-------------
+
+The support for a per-window quickfix list (location list) is added. The
+location list can be displayed in a location window (similar to the quickfix
+window). You can open more than one location list window. A set of commands
+similar to the quickfix commands are added to browse the location list.
Various new items *new-items-7*
-----------------
@@ -474,6 +482,7 @@ New and extended functions: ~
|count()| count nr of times a value is in a List or Dictionary
|deepcopy()| make a full copy of a List or Dictionary
|empty()| check if List or Dictionary is empty
+|getloclist()| list of location list items (Yegappan Lakshmanan)
|getqflist()| list of quickfix errors (Yegappan Lakshmanan)
|extend()| append one List to another or add items from one
Dictionary to another
@@ -509,7 +518,8 @@ New and extended functions: ~
|repeat()| repeat "expr" "count" times (Christophe Poucet)
|reverse()| reverse the order of a List
|searchdecl()| search for declaration of variable
-|setqflist()| create a quickfix list (Yegappan Lakshmanan)
+|setloclist()| modify a location list (Yegappan Lakshmanan)
+|setqflist()| modify a quickfix list (Yegappan Lakshmanan)
|sort()| sort a List
|soundfold()| get the sound-a-like equivalent of a word
|split()| split a String into a List
@@ -587,6 +597,8 @@ Moved all the indent settings from the filetype plugin to the indent file.
Implemented b:undo_indent to undo indent settings when setting 'filetype' to a
different value.
+VHDL indent file (Gerald Lai)
+
New Keymaps: ~
diff --git a/src/eval.c b/src/eval.c
index e93182f87..47fccbca9 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -517,6 +517,7 @@ static void f_getfsize __ARGS((typval_T *argvars, typval_T *rettv));
static void f_getftime __ARGS((typval_T *argvars, typval_T *rettv));
static void f_getftype __ARGS((typval_T *argvars, typval_T *rettv));
static void f_getline __ARGS((typval_T *argvars, typval_T *rettv));
+static void f_getloclist __ARGS((typval_T *argvars, typval_T *rettv));
static void f_getqflist __ARGS((typval_T *argvars, typval_T *rettv));
static void f_getreg __ARGS((typval_T *argvars, typval_T *rettv));
static void f_getregtype __ARGS((typval_T *argvars, typval_T *rettv));
@@ -595,6 +596,7 @@ static void f_serverlist __ARGS((typval_T *argvars, typval_T *rettv));
static void f_setbufvar __ARGS((typval_T *argvars, typval_T *rettv));
static void f_setcmdpos __ARGS((typval_T *argvars, typval_T *rettv));
static void f_setline __ARGS((typval_T *argvars, typval_T *rettv));
+static void f_setloclist __ARGS((typval_T *argvars, typval_T *rettv));
static void f_setqflist __ARGS((typval_T *argvars, typval_T *rettv));
static void f_setreg __ARGS((typval_T *argvars, typval_T *rettv));
static void f_setwinvar __ARGS((typval_T *argvars, typval_T *rettv));
@@ -704,6 +706,7 @@ static void func_unref __ARGS((char_u *name));
static void func_ref __ARGS((char_u *name));
static void call_user_func __ARGS((ufunc_T *fp, int argcount, typval_T *argvars, typval_T *rettv, linenr_T firstline, linenr_T lastline, dict_T *selfdict));
static void add_nr_var __ARGS((dict_T *dp, dictitem_T *v, char *name, varnumber_T nr));
+static win_T *find_win_by_nr __ARGS((typval_T *vp));
/* Character used as separated in autoload function/variable names. */
#define AUTOLOAD_CHAR '#'
@@ -6863,6 +6866,7 @@ static struct fst
{"getftime", 1, 1, f_getftime},
{"getftype", 1, 1, f_getftype},
{"getline", 1, 2, f_getline},
+ {"getloclist", 1, 1, f_getloclist},
{"getqflist", 0, 0, f_getqflist},
{"getreg", 0, 2, f_getreg},
{"getregtype", 0, 1, f_getregtype},
@@ -6943,6 +6947,7 @@ static struct fst
{"setbufvar", 3, 3, f_setbufvar},
{"setcmdpos", 1, 1, f_setcmdpos},
{"setline", 2, 2, f_setline},
+ {"setloclist", 2, 3, f_setloclist},
{"setqflist", 1, 2, f_setqflist},
{"setreg", 2, 3, f_setreg},
{"setwinvar", 3, 3, f_setwinvar},
@@ -9790,13 +9795,14 @@ f_getline(argvars, rettv)
get_buffer_lines(curbuf, lnum, end, retlist, rettv);
}
+static void get_qf_ll_ist __ARGS((win_T *wp, typval_T *rettv));
+
/*
- * "getqflist()" function
+ * Shared by getqflist() and getloclist() functions
*/
-/*ARGSUSED*/
static void
-f_getqflist(argvars, rettv)
- typval_T *argvars;
+get_qf_ll_ist(wp, rettv)
+ win_T *wp;
typval_T *rettv;
{
#ifdef FEAT_QUICKFIX
@@ -9811,9 +9817,40 @@ f_getqflist(argvars, rettv)
rettv->vval.v_list = l;
rettv->v_type = VAR_LIST;
++l->lv_refcount;
- (void)get_errorlist(l);
+ (void)get_errorlist(wp, l);
}
#endif
+
+}
+
+/*
+ * "getloclist()" function
+ */
+/*ARGSUSED*/
+ static void
+f_getloclist(argvars, rettv)
+ typval_T *argvars;
+ typval_T *rettv;
+{
+ win_T *win;
+
+ rettv->vval.v_number = FALSE;
+
+ win = find_win_by_nr(&argvars[0]);
+ if (win != NULL)
+ get_qf_ll_ist(win, rettv);
+}
+
+/*
+ * "getqflist()" function
+ */
+/*ARGSUSED*/
+ static void
+f_getqflist(argvars, rettv)
+ typval_T *argvars;
+ typval_T *rettv;
+{
+ get_qf_ll_ist(NULL, rettv);
}
/*
@@ -9937,8 +9974,6 @@ f_getwinposy(argvars, rettv)
#endif
}
-static win_T *find_win_by_nr __ARGS((typval_T *vp));
-
static win_T *
find_win_by_nr(vp)
typval_T *vp;
@@ -13571,12 +13606,14 @@ f_setline(argvars, rettv)
}
/*
- * "setqflist()" function
+ * Used by "setqflist()" and "setloclist()" functions
*/
/*ARGSUSED*/
static void
-f_setqflist(argvars, rettv)
- typval_T *argvars;
+set_qf_ll_list(wp, list_arg, action_arg, rettv)
+ win_T *wp;
+ typval_T *list_arg;
+ typval_T *action_arg;
typval_T *rettv;
{
#ifdef FEAT_QUICKFIX
@@ -13587,28 +13624,58 @@ f_setqflist(argvars, rettv)
rettv->vval.v_number = -1;
#ifdef FEAT_QUICKFIX
- if (argvars[0].v_type != VAR_LIST)
+ if (list_arg->v_type != VAR_LIST)
EMSG(_(e_listreq));
else
{
- list_T *l = argvars[0].vval.v_list;
+ list_T *l = list_arg->vval.v_list;
- if (argvars[1].v_type == VAR_STRING)
+ if (action_arg->v_type == VAR_STRING)
{
- act = get_tv_string_chk(&argvars[1]);
+ act = get_tv_string_chk(action_arg);
if (act == NULL)
return; /* type error; errmsg already given */
if (*act == 'a' || *act == 'r')
action = *act;
}
- if (l != NULL && set_errorlist(l, action) == OK)
+ if (l != NULL && set_errorlist(wp, l, action) == OK)
rettv->vval.v_number = 0;
}
#endif
}
/*
+ * "setloclist()" function
+ */
+/*ARGSUSED*/
+ static void
+f_setloclist(argvars, rettv)
+ typval_T *argvars;
+ typval_T *rettv;
+{
+ win_T *win;
+
+ rettv->vval.v_number = -1;
+
+ win = find_win_by_nr(&argvars[0]);
+ if (win != NULL)
+ set_qf_ll_list(win, &argvars[1], &argvars[2], rettv);
+}
+
+/*
+ * "setqflist()" function
+ */
+/*ARGSUSED*/
+ static void
+f_setqflist(argvars, rettv)
+ typval_T *argvars;
+ typval_T *rettv;
+{
+ set_qf_ll_list(NULL, &argvars[0], &argvars[1], rettv);
+}
+
+/*
* "setreg()" function
*/
static void
diff --git a/src/proto/quickfix.pro b/src/proto/quickfix.pro
index 4ea4f01d4..152f9064f 100644
--- a/src/proto/quickfix.pro
+++ b/src/proto/quickfix.pro
@@ -21,8 +21,8 @@ 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((list_T *list));
-int set_errorlist __ARGS((list_T *list, int action));
+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));
diff --git a/src/quickfix.c b/src/quickfix.c
index 923c7fda0..ff3e4ce09 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -3248,7 +3248,8 @@ unload_dummy_buffer(buf)
* Add each quickfix error to list "list" as a dictionary.
*/
int
-get_errorlist(list)
+get_errorlist(wp, list)
+ win_T *wp;
list_T *list;
{
qf_info_T *qi = &ql_info;
@@ -3257,6 +3258,13 @@ get_errorlist(list)
qfline_T *qfp;
int i;
+ if (wp != NULL)
+ {
+ qi = GET_LOC_LIST(wp);
+ if (qi == NULL)
+ return FAIL;
+ }
+
if (qi->qf_curlist >= qi->qf_listcount
|| qi->qf_lists[qi->qf_curlist].qf_count == 0)
return FAIL;
@@ -3292,7 +3300,8 @@ get_errorlist(list)
* of dictionaries.
*/
int
-set_errorlist(list, action)
+set_errorlist(wp, list, action)
+ win_T *wp;
list_T *list;
int action;
{
@@ -3307,6 +3316,13 @@ set_errorlist(list, action)
int retval = OK;
qf_info_T *qi = &ql_info;
+ if (wp != NULL)
+ {
+ qi = ll_get_or_alloc_list(curwin);
+ if (qi == NULL)
+ return FAIL;
+ }
+
if (action == ' ' || qi->qf_curlist == qi->qf_listcount)
/* make place for a new list */
qf_new_list(qi);
diff --git a/src/term.c b/src/term.c
index 1f2753368..2dbe55573 100644
--- a/src/term.c
+++ b/src/term.c
@@ -3446,13 +3446,13 @@ term_cursor_shape()
if (State & INSERT)
{
if (showing_insert_mode != TRUE)
- out_str(T_CSI); /* disable cursor */
+ out_str(T_CSI); /* Insert mode cursor */
showing_insert_mode = TRUE;
}
else
{
if (showing_insert_mode != FALSE)
- out_str(T_CEI); /* disable cursor */
+ out_str(T_CEI); /* non-Insert mode cursor */
showing_insert_mode = FALSE;
}
}
diff --git a/src/version.c b/src/version.c
index f14734813..e9150d514 100644
--- a/src/version.c
+++ b/src/version.c
@@ -144,6 +144,11 @@ static char *(features[]) =
#else
"-cscope",
#endif
+#ifdef CURSOR_SHAPE
+ "+cursorshape",
+#else
+ "-cursorshape",
+#endif
#if defined(FEAT_CON_DIALOG) && defined(FEAT_GUI_DIALOG)
"+dialog_con_gui",
#else
diff --git a/src/version.h b/src/version.h
index 569cb6e80..522ec9001 100644
--- a/src/version.h
+++ b/src/version.h
@@ -36,5 +36,5 @@
#define VIM_VERSION_NODOT "vim70aa"
#define VIM_VERSION_SHORT "7.0aa"
#define VIM_VERSION_MEDIUM "7.0aa ALPHA"
-#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2006 Jan 25)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Jan 25, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2006 Jan 26)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Jan 26, compiled "