summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2005-07-28 22:36:45 +0000
committerBram Moolenaar <Bram@vim.org>2005-07-28 22:36:45 +0000
commit661b1820956743fd67f957f8dbbc45a93fe38dc9 (patch)
tree5c1a259895d6a8af91b166c0c103706eb8233096
parentcfc7d63267e68168b5fb068d8ee1e763ed4aa6a0 (diff)
updated for version 7.0118v7.0118
-rw-r--r--runtime/doc/eval.txt21
-rw-r--r--runtime/doc/options.txt8
-rw-r--r--runtime/doc/syntax.txt11
-rw-r--r--runtime/doc/tags2
-rw-r--r--runtime/doc/todo.txt6
-rw-r--r--runtime/doc/version7.txt8
-rw-r--r--runtime/spell/de/main.aap4
-rw-r--r--runtime/spell/en/main.aap10
-rw-r--r--runtime/spell/he/main.aap4
-rw-r--r--runtime/spell/nl/main.aap4
-rw-r--r--runtime/spell/pl/main.aap6
-rw-r--r--src/eval.c44
-rw-r--r--src/main.c2
-rw-r--r--src/misc2.c7
-rw-r--r--src/option.c10
-rw-r--r--src/po/Makefile4
-rw-r--r--src/proto/eval.pro1
-rw-r--r--src/proto/message.pro2
-rw-r--r--src/syntax.c41
-rw-r--r--src/version.h4
20 files changed, 142 insertions, 57 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 0030e3f5ea..6168b01f56 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 7.0aa. Last change: 2005 Jul 25
+*eval.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2416,29 +2416,24 @@ get({dict}, {key} [, {default}])
*getbufline()*
getbufline({expr}, {lnum} [, {end}])
- Return the lines starting from {lnum} to {end} in the buffer
- {expr} as a List. If {end} is omitted, only the line {lnum}
- is returned.
+ Return a List with the lines starting from {lnum} to {end}
+ (inclusive) in the buffer {expr}. If {end} is omitted, a List
+ with only the line {lnum} is returned.
For the use of {expr}, see |bufname()| above.
- When {lnum} is a String that doesn't start with a
- digit, line() is called to translate the String into a Number.
-
- {end} is used in the same way as {lnum}.
+ For {lnum} and {end} "$" can be used for the last line of the
+ buffer. Otherwise a number must be used.
When {lnum} is smaller than 1 or bigger than the number of
lines in the buffer, an empty List is returned.
When {end} is greater than the number of lines in the buffer,
it is treated as {end} is set to the number of lines in the
- buffer.
-
- When non-existing line ranges are specified, an empty List is
- returned. When {end} is before {lnum} an empty List is
+ buffer. When {end} is before {lnum} an empty List is
returned.
- This function works only for loaded buffers. For unloaded and
+ This function works only for loaded buffers. For unloaded and
non-existing buffers, an empty List is returned.
Example: >
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 9b470ab3a7..88e440ad09 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt* For Vim version 7.0aa. Last change: 2005 Jul 26
+*options.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2282,9 +2282,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|viminfo-file|. And Vim expects the terminal to use utf-8 too. Thus
setting 'encoding' to one of these values instead of utf-8 only has
effect for encoding used for files when 'fileencoding' is empty.
+ "utf-16" is NOT supported (and probably never will be, since it's such
+ an ugly encoding). *utf-16*
- When 'encoding' is set to a Unicode encoding, and 'fileencodings' was
- not set yet, the default for 'fileencodings' is changed.
+ When 'encoding' is set to a Unicode encoding, and 'fileencodings' was
+ not set yet, the default for 'fileencodings' is changed.
*'endofline'* *'eol'* *'noendofline'* *'noeol'*
'endofline' 'eol' boolean (default on)
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 130c9b3920..324d45238a 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt* For Vim version 7.0aa. Last change: 2005 Jul 18
+*syntax.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -3641,6 +3641,15 @@ specified field is used, and settings are merged with previous ones. So, the
result is like this single command has been used: >
:hi Comment term=bold ctermfg=Cyan guifg=#80a0ff gui=bold
<
+When listing a highlight group and 'verbose' is non-zero, the listing will
+also tell where it was last set. Example: >
+ :verbose hi Comment
+< Comment xxx term=bold ctermfg=4 guifg=Blue ~
+ Last set from /home/mool/vim/vim7/runtime/syntax/syncolor.vim ~
+
+For details about when this message is given and when it's valid see
+|:set-verbose|.
+
*highlight-args* *E416* *E417* *E423*
There are three types of terminals for highlighting:
term a normal terminal (vt100, xterm)
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 82235775ab..cce8395e32 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4984,6 +4984,7 @@ g:netrw_rmdir_cmd pi_netrw.txt /*g:netrw_rmdir_cmd*
g:netrw_rmf_cmd pi_netrw.txt /*g:netrw_rmf_cmd*
g:var eval.txt /*g:var*
g; motion.txt /*g;*
+g< message.txt /*g<*
g<Down> motion.txt /*g<Down>*
g<End> motion.txt /*g<End>*
g<Home> motion.txt /*g<Home>*
@@ -6746,6 +6747,7 @@ usr_44.txt usr_44.txt /*usr_44.txt*
usr_45.txt usr_45.txt /*usr_45.txt*
usr_90.txt usr_90.txt /*usr_90.txt*
usr_toc.txt usr_toc.txt /*usr_toc.txt*
+utf-16 options.txt /*utf-16*
utf-8 mbyte.txt /*utf-8*
utf-8-char-arg mbyte.txt /*utf-8-char-arg*
utf-8-in-xwindows mbyte.txt /*utf-8-in-xwindows*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index fe3c41ef04..e680568916 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.0aa. Last change: 2005 Jul 27
+*todo.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,6 +30,8 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs*
-------------------- Known bugs and current work -----------------------
+Is it simple to let ":verbose hi mailSubject" mention where it was last set?
+
Mac unicode patch (Da Woon Jung):
- selecting proportional font breaks display
- UTF-8 text causes display problems. Font replacement causes this.
@@ -52,8 +54,6 @@ Awaiting response:
- Win32: tearoff menu window should have a scrollbar when it's taller than
the screen.
- mblen(NULL, 0) also in Vim 6.3?
-- Win32: Crash when pasting Simplified Chinese in utf-8. (rainux, 2005 June
- 20)
PLANNED FOR VERSION 7.0:
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 5fd7688857..126d767658 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt* For Vim version 7.0aa. Last change: 2005 Jul 27
+*version7.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -238,6 +238,9 @@ is especially useful for commands such as ":syntax", ":autocommand" and
commands and highlighting is kept. Only works when the 'more' option is set.
Previously it only partly worked for ":clist".
+The |g<| command can be used to see the last page of messages after you have
+hit <Enter> at the |hit-enter-prompt|. Then you can scroll further back.
+
POSIX compatibility *new-posix*
-------------------
@@ -724,6 +727,9 @@ Win32: Balloons can have multiple lines if common controls supports it.
The 's' flag is added to the search() and searchpair() function to set the
' mark if the cursor is moved. (Yegappan Lakshmanan)
+When 'verbose' is set the output of ":highlight" will show where a highlight
+item was last set.
+
==============================================================================
COMPILE TIME CHANGES *compile-changes-7*
diff --git a/runtime/spell/de/main.aap b/runtime/spell/de/main.aap
index f4b0251115..6340d43207 100644
--- a/runtime/spell/de/main.aap
+++ b/runtime/spell/de/main.aap
@@ -14,11 +14,11 @@ all: $(SPELLDIR)/de.latin1.spl $(SPELLDIR)/de.utf-8.spl ../README_de.txt
$(SPELLDIR)/de.latin1.spl : $(VIM) $(FILES)
:sys env LANG=de_DE.ISO8859-1
- $(VIM) -e -c "mkspell! $(SPELLDIR)/de de_DE" -c q
+ $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/de de_DE" -c q
$(SPELLDIR)/de.utf-8.spl : $(VIM) $(FILES)
:sys env LANG=de_DE.UTF-8
- $(VIM) -e -c "mkspell! $(SPELLDIR)/de de_DE" -c q
+ $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/de de_DE" -c q
../README_de.txt: README_de_DE_comb.txt
:copy $source $target
diff --git a/runtime/spell/en/main.aap b/runtime/spell/en/main.aap
index 03aae6d417..b3bbb24394 100644
--- a/runtime/spell/en/main.aap
+++ b/runtime/spell/en/main.aap
@@ -18,16 +18,16 @@ all: $(SPELLDIR)/en.latin1.spl $(SPELLDIR)/en.utf-8.spl \
$(SPELLDIR)/en.latin1.spl : $(VIM) $(FILES)
:sys env LANG=en_US.ISO8859-1
- $(VIM) -e -c "mkspell! $(SPELLDIR)/en en_US en_AU en_CA en_GB
- en_NZ" -c q
+ $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/en
+ en_US en_AU en_CA en_GB en_NZ" -c q
$(SPELLDIR)/en.utf-8.spl : $(VIM) $(FILES)
:sys env LANG=en_US.UTF-8
- $(VIM) -e -c "mkspell! $(SPELLDIR)/en en_US en_AU en_CA en_GB
- en_NZ" -c q
+ $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/en
+ en_US en_AU en_CA en_GB en_NZ" -c q
$(SPELLDIR)/en.ascii.spl : $(VIM) $(FILES)
- :sys $(VIM) -e -c "mkspell! -ascii $(SPELLDIR)/en
+ :sys $(VIM) -u NONE -e -c "mkspell! -ascii $(SPELLDIR)/en
en_US en_AU en_CA en_GB en_NZ" -c q
../README_en.txt: README_en_US.txt README_en_AU.txt
diff --git a/runtime/spell/he/main.aap b/runtime/spell/he/main.aap
index 923aff2858..9cd59755f2 100644
--- a/runtime/spell/he/main.aap
+++ b/runtime/spell/he/main.aap
@@ -13,10 +13,10 @@ all: $(SPELLDIR)/he.utf-8.spl $(SPELLDIR)/he.iso-8859-8.spl ../README_he.txt
$(SPELLDIR)/he.utf-8.spl : $(VIM) $(FILES)
:sys env LANG=he_IL.UTF-8
- $(VIM) -e -c "mkspell! $(SPELLDIR)/he he_IL" -c q
+ $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/he he_IL" -c q
$(SPELLDIR)/he.iso-8859-8.spl : $(VIM) $(FILES)
- :sys $(VIM) -e -c "set enc=iso-8859-8"
+ :sys $(VIM) -u NONE -e -c "set enc=iso-8859-8"
-c "mkspell! $(SPELLDIR)/he he_IL" -c q
../README_he.txt : README_he_IL.txt
diff --git a/runtime/spell/nl/main.aap b/runtime/spell/nl/main.aap
index 80e5f74802..f398cb6cd5 100644
--- a/runtime/spell/nl/main.aap
+++ b/runtime/spell/nl/main.aap
@@ -13,11 +13,11 @@ all: $(SPELLDIR)/nl.latin1.spl $(SPELLDIR)/nl.utf-8.spl ../README_nl.txt
$(SPELLDIR)/nl.latin1.spl : $(VIM) $(FILES)
:sys env LANG=nl_NL.ISO8859-1
- $(VIM) -e -c "mkspell! $(SPELLDIR)/nl nl_NL" -c q
+ $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/nl nl_NL" -c q
$(SPELLDIR)/nl.utf-8.spl : $(VIM) $(FILES)
:sys env LANG=nl_NL.UTF-8
- $(VIM) -e -c "mkspell! $(SPELLDIR)/nl nl_NL" -c q
+ $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/nl nl_NL" -c q
../README_nl.txt : README_nl_NL.txt
:copy $source $target
diff --git a/runtime/spell/pl/main.aap b/runtime/spell/pl/main.aap
index 168883682d..c9d2e4e806 100644
--- a/runtime/spell/pl/main.aap
+++ b/runtime/spell/pl/main.aap
@@ -13,13 +13,13 @@ all: $(SPELLDIR)/pl.iso-8859-2.spl $(SPELLDIR)/pl.utf-8.spl \
$(SPELLDIR)/pl.cp1250.spl ../README_pl.txt
$(SPELLDIR)/pl.iso-8859-2.spl : $(VIM) $(FILES)
- :sys env LANG=pl_PL.ISO8859-2 $(VIM) -e -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
+ :sys env LANG=pl_PL.ISO8859-2 $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
$(SPELLDIR)/pl.utf-8.spl : $(VIM) $(FILES)
- :sys env LANG=pl_PL.UTF-8 $(VIM) -e -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
+ :sys env LANG=pl_PL.UTF-8 $(VIM) -u NONE -e -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
$(SPELLDIR)/pl.cp1250.spl : $(VIM) $(FILES)
- :sys $(VIM) -e -c "set enc=cp1250" -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
+ :sys $(VIM) -u NONE -e -c "set enc=cp1250" -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
../README_pl.txt: README_pl_PL.txt
:copy $source $target
diff --git a/src/eval.c b/src/eval.c
index f2cc2a0b7b..ae36e6f30a 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -643,6 +643,7 @@ static void init_tv __ARGS((typval_T *varp));
static long get_tv_number __ARGS((typval_T *varp));
static long get_tv_number_chk __ARGS((typval_T *varp, int *denote));
static linenr_T get_tv_lnum __ARGS((typval_T *argvars));
+static linenr_T get_tv_lnum_buf __ARGS((typval_T *argvars, buf_T *buf));
static char_u *get_tv_string __ARGS((typval_T *varp));
static char_u *get_tv_string_buf __ARGS((typval_T *varp, char_u *buf));
static char_u *get_tv_string_chk __ARGS((typval_T *varp));
@@ -9187,11 +9188,12 @@ f_getbufline(argvars, rettv)
buf = get_buf_tv(&argvars[0]);
--emsg_off;
- lnum = get_tv_lnum(&argvars[1]);
+ lnum = get_tv_lnum_buf(&argvars[1], buf);
if (argvars[2].v_type == VAR_UNKNOWN)
end = lnum;
else
- end = get_tv_lnum(&argvars[2]);
+ end = get_tv_lnum_buf(&argvars[2], buf);
+
get_buffer_lines(buf, lnum, end, TRUE, rettv);
}
@@ -15651,7 +15653,8 @@ get_tv_number_chk(varp, denote)
}
/*
- * Get the lnum from the first argument. Also accepts ".", "$", etc.
+ * Get the lnum from the first argument.
+ * Also accepts ".", "$", etc., but that only works for the current buffer.
* Returns -1 on error.
*/
static linenr_T
@@ -15673,6 +15676,24 @@ get_tv_lnum(argvars)
}
/*
+ * Get the lnum from the first argument.
+ * Also accepts "$", then "buf" is used.
+ * Returns 0 on error.
+ */
+ static linenr_T
+get_tv_lnum_buf(argvars, buf)
+ typval_T *argvars;
+ buf_T *buf;
+{
+ if (argvars[0].v_type == VAR_STRING
+ && argvars[0].vval.v_string != NULL
+ && argvars[0].vval.v_string[0] == '$'
+ && buf != NULL)
+ return buf->b_ml.ml_line_count;
+ return get_tv_number_chk(&argvars[0], NULL);
+}
+
+/*
* Get the string value of a variable.
* If it is a Number variable, the number is converted into a string.
* get_tv_string() uses a single, static buffer. YOU CAN ONLY USE IT ONCE!
@@ -18678,6 +18699,23 @@ store_session_globals(fd)
}
#endif
+/*
+ * Display script name where an item was last set.
+ * Should only be invoked when 'verbose' is non-zero.
+ */
+ void
+last_set_msg(scriptID)
+ scid_T scriptID;
+{
+ if (scriptID != 0)
+ {
+ verbose_enter();
+ MSG_PUTS(_("\n\tLast set from "));
+ MSG_PUTS(get_scriptname(scriptID));
+ verbose_leave();
+ }
+}
+
#endif /* FEAT_EVAL */
#if defined(FEAT_MODIFY_FNAME) || defined(FEAT_EVAL) || defined(PROTO)
diff --git a/src/main.c b/src/main.c
index 876289f675..380a572896 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1034,7 +1034,7 @@ main_loop(cmdwin, noexmode)
emsg_on_display = FALSE; /* can delete error message now */
did_emsg = FALSE;
msg_didany = FALSE; /* reset lines_left in msg_start() */
- clear_sb_text(); /* clear scroll-back text */
+ may_clear_sb_text(); /* clear scroll-back text on next msg */
showruler(FALSE);
setcursor();
diff --git a/src/misc2.c b/src/misc2.c
index db6642ee94..d677b1b4ca 100644
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -870,10 +870,13 @@ lalloc(size, message)
if (releasing)
break;
releasing = TRUE;
- try_again = mf_release_all();
+
+ clear_sb_text(); /* free any scrollback text */
+ try_again = mf_release_all(); /* release as many blocks as possible */
#ifdef FEAT_EVAL
- try_again |= garbage_collect();
+ try_again |= garbage_collect(); /* cleanup recursive lists/dicts */
#endif
+
releasing = FALSE;
if (!try_again)
break;
diff --git a/src/option.c b/src/option.c
index e177216263..32eca0bf5d 100644
--- a/src/option.c
+++ b/src/option.c
@@ -3814,15 +3814,7 @@ do_set(arg, opt_flags)
showoneopt(&options[opt_idx], opt_flags);
#ifdef FEAT_EVAL
if (p_verbose > 0)
- {
- if (options[opt_idx].scriptID != 0)
- {
- verbose_enter();
- MSG_PUTS(_("\n\tLast set from "));
- MSG_PUTS(get_scriptname(options[opt_idx].scriptID));
- verbose_leave();
- }
- }
+ last_set_msg(options[opt_idx].scriptID);
#endif
}
else
diff --git a/src/po/Makefile b/src/po/Makefile
index 617d4f9702..f4281878b8 100644
--- a/src/po/Makefile
+++ b/src/po/Makefile
@@ -27,6 +27,7 @@ LANGUAGES = \
zh_CN.UTF-8 \
zh_TW \
zh_TW.UTF-8 \
+# end marker
MOFILES = \
af.mo \
@@ -51,6 +52,7 @@ MOFILES = \
zh_CN.mo \
zh_TW.UTF-8.mo \
zh_TW.mo \
+# end marker
CONVERTED = \
cs.cp1250.mo \
@@ -60,6 +62,7 @@ CONVERTED = \
sk.cp1250.mo \
uk.cp1251.mo \
zh_CN.cp936.mo \
+# end marker
CHECKFILES = \
af.ck \
@@ -91,6 +94,7 @@ CHECKFILES = \
sk.cp1250.ck \
uk.cp1251.ck \
zh_CN.cp936.ck \
+# end marker
PACKAGE = vim
SHELL = /bin/sh
diff --git a/src/proto/eval.pro b/src/proto/eval.pro
index 86ea3968fa..51fb26dfba 100644
--- a/src/proto/eval.pro
+++ b/src/proto/eval.pro
@@ -86,6 +86,7 @@ int func_has_abort __ARGS((void *cookie));
int read_viminfo_varlist __ARGS((vir_T *virp, int writing));
void write_viminfo_varlist __ARGS((FILE *fp));
int store_session_globals __ARGS((FILE *fd));
+void last_set_msg __ARGS((scid_T scriptID));
int modify_fname __ARGS((char_u *src, int *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen));
char_u *do_string_sub __ARGS((char_u *str, char_u *pat, char_u *sub, char_u *flags));
/* vim: set ft=c : */
diff --git a/src/proto/message.pro b/src/proto/message.pro
index faa03680c5..e0e2e6e81d 100644
--- a/src/proto/message.pro
+++ b/src/proto/message.pro
@@ -39,7 +39,9 @@ void msg_puts_title __ARGS((char_u *s));
void msg_puts_long_attr __ARGS((char_u *longstr, int attr));
void msg_puts_long_len_attr __ARGS((char_u *longstr, int len, int attr));
void msg_puts_attr __ARGS((char_u *s, int attr));
+void may_clear_sb_text __ARGS((void));
void clear_sb_text __ARGS((void));
+void show_sb_text __ARGS((void));
int msg_use_printf __ARGS((void));
void mch_errmsg __ARGS((char *str));
void mch_msg __ARGS((char *str));
diff --git a/src/syntax.c b/src/syntax.c
index 714c90a990..99d9e67428 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -51,6 +51,9 @@ struct hl_group
#endif
int sg_link; /* link to this highlight group ID */
int sg_set; /* combination of SG_* flags */
+#ifdef FEAT_EVAL
+ scid_T sg_scriptID; /* script in which the group was last set */
+#endif
};
#define SG_TERM 1 /* term has been set */
@@ -6352,6 +6355,9 @@ do_highlight(line, forceit, init)
if (!init)
HL_TABLE()[from_id - 1].sg_set |= SG_LINK;
HL_TABLE()[from_id - 1].sg_link = to_id;
+#ifdef FEAT_EVAL
+ HL_TABLE()[from_id - 1].sg_scriptID = current_SID;
+#endif
redraw_all_later(NOT_VALID);
}
}
@@ -7101,6 +7107,9 @@ do_highlight(line, forceit, init)
#endif
else
set_hl_attr(idx);
+#ifdef FEAT_EVAL
+ HL_TABLE()[idx].sg_scriptID = current_SID;
+#endif
redraw_all_later(NOT_VALID);
}
vim_free(key);
@@ -7201,6 +7210,12 @@ highlight_clear(idx)
HL_TABLE()[idx].sg_font_name = NULL;
HL_TABLE()[idx].sg_gui_attr = 0;
#endif
+#ifdef FEAT_EVAL
+ /* Clear the script ID only when there is no link, since that is not
+ * cleared. */
+ if (HL_TABLE()[idx].sg_link == 0)
+ HL_TABLE()[idx].sg_scriptID = 0;
+#endif
}
#if defined(FEAT_GUI) || defined(PROTO)
@@ -7868,13 +7883,19 @@ highlight_list_one(id)
0, sgp->sg_font_name, "font");
#endif
- if (sgp->sg_link)
+ if (sgp->sg_link && !got_int)
{
(void)syn_list_header(didh, 9999, id);
+ didh = TRUE;
msg_puts_attr((char_u *)"links to", hl_attr(HLF_D));
msg_putchar(' ');
msg_outtrans(HL_TABLE()[HL_TABLE()[id - 1].sg_link - 1].sg_name);
}
+
+#ifdef FEAT_EVAL
+ if (didh && p_verbose > 0)
+ last_set_msg(sgp->sg_scriptID);
+#endif
}
static int
@@ -7890,6 +7911,8 @@ highlight_list_arg(id, didh, type, iarg, sarg, name)
char_u *ts;
int i;
+ if (got_int)
+ return FALSE;
if (type == LIST_STRING ? (sarg != NULL) : (iarg != 0))
{
ts = buf;
@@ -7915,10 +7938,12 @@ highlight_list_arg(id, didh, type, iarg, sarg, name)
(void)syn_list_header(didh,
(int)(vim_strsize(ts) + STRLEN(name) + 1), id);
didh = TRUE;
-
- MSG_PUTS_ATTR(name, hl_attr(HLF_D));
- MSG_PUTS_ATTR("=", hl_attr(HLF_D));
- msg_outtrans(ts);
+ if (!got_int)
+ {
+ MSG_PUTS_ATTR(name, hl_attr(HLF_D));
+ MSG_PUTS_ATTR("=", hl_attr(HLF_D));
+ msg_outtrans(ts);
+ }
}
return didh;
}
@@ -8068,11 +8093,17 @@ syn_list_header(did_header, outlen, id)
if (!did_header)
{
msg_putchar('\n');
+ if (got_int)
+ return TRUE;
msg_outtrans(HL_TABLE()[id - 1].sg_name);
endcol = 15;
}
else if (msg_col + outlen + 1 >= Columns)
+ {
msg_putchar('\n');
+ if (got_int)
+ return TRUE;
+ }
else
{
if (msg_col >= endcol) /* wrap around is like starting a new line */
diff --git a/src/version.h b/src/version.h
index 03557c29ad..4d4421a64b 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 (2005 Jul 27)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 27, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 28)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 28, compiled "