summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvimboss <devnull@localhost>2006-03-20 21:55:45 +0000
committervimboss <devnull@localhost>2006-03-20 21:55:45 +0000
commitb3af681cd97bbf5ef84520d0034b049a52b72982 (patch)
tree2b51ab147338ddbae29d5586eb06ed85dd58ea00
parent73877e271ee54a6413296be03cddcf65082dbe49 (diff)
downloadvim-b3af681cd97bbf5ef84520d0034b049a52b72982.tar.gz
updated for version 7.0230
-rw-r--r--runtime/doc/eval.txt2
-rw-r--r--runtime/doc/makehtml.awk13
-rw-r--r--runtime/doc/options.txt2
-rw-r--r--runtime/doc/repeat.txt12
-rw-r--r--runtime/doc/tags33
-rw-r--r--runtime/plugin/README.txt1
-rw-r--r--src/ex_cmds2.c32
-rw-r--r--src/globals.h2
-rw-r--r--src/gui_gtk.c17
-rw-r--r--src/option.c23
-rw-r--r--src/option.h1
-rw-r--r--src/structs.h21
-rw-r--r--src/version.h4
13 files changed, 138 insertions, 25 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index f842ff68..fa1362a4 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -7157,7 +7157,7 @@ This is not guaranteed 100% secure, but it should block most attacks.
*sandbox-option*
A few options contain an expression. When this expression is evaluated it may
-have to be done in the sandbox to avoid a security risc. But the sandbox is
+have to be done in the sandbox to avoid a security risk. But the sandbox is
restrictive, thus this only happens when the option was set from an insecure
location. Insecure in this context are:
- sourcing a .vimrc or .exrc in the current directlry
diff --git a/runtime/doc/makehtml.awk b/runtime/doc/makehtml.awk
index 34a55445..5e400693 100644
--- a/runtime/doc/makehtml.awk
+++ b/runtime/doc/makehtml.awk
@@ -135,7 +135,7 @@ NR == 1 { nf=split(FILENAME,f,".")
print "<H1>Vim documentation: " f[1] "</H1>";
print "<A NAME=\"top\"></A>";
if ( FILENAME != "help.txt" ) {
- print "<A HREF=\"help.html\">main help file</A>\n";
+ print "<A HREF=\"index.html\">main help file</A>\n";
}
print "<HR>";
print "<PRE>";
@@ -244,7 +244,15 @@ npipe > 2 && nstar < 3 {
find_tag1();
}
else {
+ if ( f[1] == "index" ) {
+ printf "|<A HREF=\"vimindex.html\">" p[i] "</A>|";
+ } else {
+ if ( f[1] == "help" ) {
+ printf "|<A HREF=\"index.html\">" p[i] "</A>|";
+ } else {
printf "|<A HREF=\"" f[1] ".html\">" p[i] "</A>|";
+ }
+ }
}
}
}
@@ -373,13 +381,12 @@ END {
#
# as main we keep index.txt (by default)
-# other candidate, help.txt
#
function topback () {
if ( FILENAME != "tags" ) {
if ( FILENAME != "help.txt" ) {
printf("<A HREF=\"#top\">top</A> - ");
- printf("<A HREF=\"help.html\">main help file</A>\n");
+ printf("<A HREF=\"index.html\">main help file</A>\n");
} else {
printf("<A HREF=\"#top\">top</A>\n");
}
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index d0c8a480..ae9f517a 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1013,7 +1013,7 @@ A jump table for the options with a short description can be found at |Q_op|.
*'balloonexpr'* *'bexpr'*
'balloonexpr' 'bexpr' string (default "")
- global
+ global or local to buffer |global-local|
{not in Vi}
{only available when compiled with the |+balloon_eval|
feature}
diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt
index 1fe96fad..2353d3a6 100644
--- 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 07
+*repeat.txt* For Vim version 7.0aa. Last change: 2006 Mar 20
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -563,9 +563,17 @@ It is only included when Vim was compiled with "huge" features.
:prof[ile] start {fname} *:prof* *:profile* *E750*
Start profiling, write the output in {fname} upon exit.
- If {fname} already exists it will be overwritten.
+ If {fname} already exists it will be silently overwritten.
The variable |v:profiling| is set to one.
+:prof[ile] pause
+ Don't profile until the following ":profile continue". Can be
+ used when doing something that should not be counted (e.g., an
+ external command). Does not nest.
+
+:prof[ile] continue
+ Continue profiling after ":profile pause".
+
:prof[ile] func {pattern}
Profile function that matches the pattern {pattern}.
See |:debug-name| for how {pattern} is used.
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 4ea882b5..15ee1285 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -2558,12 +2558,22 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:sleep various.txt /*:sleep*
:sm change.txt /*:sm*
:smagic change.txt /*:smagic*
+:smap map.txt /*:smap*
+:smap_l map.txt /*:smap_l*
+:smapc map.txt /*:smapc*
+:smapclear map.txt /*:smapclear*
+:sme gui.txt /*:sme*
+:smenu gui.txt /*:smenu*
:sn windows.txt /*:sn*
:snext windows.txt /*:snext*
:sni if_sniff.txt /*:sni*
:sniff if_sniff.txt /*:sniff*
:sno change.txt /*:sno*
:snomagic change.txt /*:snomagic*
+:snor map.txt /*:snor*
+:snoremap map.txt /*:snoremap*
+:snoreme gui.txt /*:snoreme*
+:snoremenu gui.txt /*:snoremenu*
:so repeat.txt /*:so*
:sor change.txt /*:sor*
:sort change.txt /*:sort*
@@ -2607,6 +2617,10 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:substitute change.txt /*:substitute*
:sun windows.txt /*:sun*
:sunhide windows.txt /*:sunhide*
+:sunm map.txt /*:sunm*
+:sunmap map.txt /*:sunmap*
+:sunme gui.txt /*:sunme*
+:sunmenu gui.txt /*:sunmenu*
:sus starting.txt /*:sus*
:suspend starting.txt /*:suspend*
:sv windows.txt /*:sv*
@@ -2839,6 +2853,21 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:xa editing.txt /*:xa*
:xall editing.txt /*:xall*
:xit editing.txt /*:xit*
+:xm map.txt /*:xm*
+:xmap map.txt /*:xmap*
+:xmap_l map.txt /*:xmap_l*
+:xmapc map.txt /*:xmapc*
+:xmapclear map.txt /*:xmapclear*
+:xme gui.txt /*:xme*
+:xmenu gui.txt /*:xmenu*
+:xn map.txt /*:xn*
+:xnoremap map.txt /*:xnoremap*
+:xnoreme gui.txt /*:xnoreme*
+:xnoremenu gui.txt /*:xnoremenu*
+:xu map.txt /*:xu*
+:xunmap map.txt /*:xunmap*
+:xunme gui.txt /*:xunme*
+:xunmenu gui.txt /*:xunmenu*
:y change.txt /*:y*
:yank change.txt /*:yank*
:z various.txt /*:z*
@@ -4931,6 +4960,7 @@ edit-files editing.txt /*edit-files*
edit-intro editing.txt /*edit-intro*
edit-no-break usr_25.txt /*edit-no-break*
editing.txt editing.txt /*editing.txt*
+efm-%> quickfix.txt /*efm-%>*
efm-entries quickfix.txt /*efm-entries*
efm-ignore quickfix.txt /*efm-ignore*
eiffel.vim syntax.txt /*eiffel.vim*
@@ -5972,7 +6002,9 @@ mapmode-l map.txt /*mapmode-l*
mapmode-n map.txt /*mapmode-n*
mapmode-nvo map.txt /*mapmode-nvo*
mapmode-o map.txt /*mapmode-o*
+mapmode-s map.txt /*mapmode-s*
mapmode-v map.txt /*mapmode-v*
+mapmode-x map.txt /*mapmode-x*
mapping map.txt /*mapping*
mark motion.txt /*mark*
mark-motions motion.txt /*mark-motions*
@@ -6249,6 +6281,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-map-expression version7.txt /*new-map-expression*
+new-map-select version7.txt /*new-map-select*
new-more-highlighting version7.txt /*new-more-highlighting*
new-more-unicode version7.txt /*new-more-unicode*
new-multi-byte version5.txt /*new-multi-byte*
diff --git a/runtime/plugin/README.txt b/runtime/plugin/README.txt
index 5cc68fd4..cb87ed9e 100644
--- a/runtime/plugin/README.txt
+++ b/runtime/plugin/README.txt
@@ -8,6 +8,7 @@ netrw.vim edit files over a network and browse (remote) directories
rrhelper.vim used for --remote-wait editing
tar.vim edit (compressed) tar files
tohtml.vim convert a file with syntax highlighting to HTML
+vimball.vim create and unpack .vba files
Note: the explorer.vim plugin is no longer here, the netrw.vim plugin has
taken over browsing directories (also over ftp).
diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index ad49d453..c85f0b6a 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -1007,6 +1007,7 @@ profile_msg(tm)
}
static char_u *profile_fname = NULL;
+static proftime_T pause_time;
/*
* ":profile cmd args"
@@ -1026,12 +1027,27 @@ ex_profile(eap)
{
vim_free(profile_fname);
profile_fname = vim_strsave(e);
- do_profiling = TRUE;
+ do_profiling = PROF_YES;
profile_zero(&prof_wait_time);
set_vim_var_nr(VV_PROFILING, 1L);
}
- else if (!do_profiling)
+ else if (do_profiling == PROF_NONE)
EMSG(_("E750: First use :profile start <fname>"));
+ else if (STRCMP(eap->arg, "pause") == 0)
+ {
+ if (do_profiling == PROF_YES)
+ profile_start(&pause_time);
+ do_profiling = PROF_PAUSED;
+ }
+ else if (STRCMP(eap->arg, "continue") == 0)
+ {
+ if (do_profiling == PROF_PAUSED)
+ {
+ profile_end(&pause_time);
+ profile_add(&prof_wait_time, &pause_time);
+ }
+ do_profiling = PROF_YES;
+ }
else
{
/* The rest is similar to ":breakadd". */
@@ -2920,7 +2936,7 @@ do_source(fname, check_other, is_vimrc)
#ifdef FEAT_EVAL
# ifdef FEAT_PROFILE
- if (do_profiling)
+ if (do_profiling == PROF_YES)
prof_child_enter(&wait_start); /* entering a child now */
# endif
@@ -2984,7 +3000,7 @@ do_source(fname, check_other, is_vimrc)
}
# ifdef FEAT_PROFILE
- if (do_profiling)
+ if (do_profiling == PROF_YES)
{
int forceit;
@@ -3013,7 +3029,7 @@ do_source(fname, check_other, is_vimrc)
retval = OK;
#ifdef FEAT_PROFILE
- if (do_profiling)
+ if (do_profiling == PROF_YES)
{
/* Get "si" again, "script_items" may have been reallocated. */
si = &SCRIPT_ITEM(current_SID);
@@ -3061,7 +3077,7 @@ almosttheend:
current_SID = save_current_SID;
restore_funccal(save_funccalp);
# ifdef FEAT_PROFILE
- if (do_profiling)
+ if (do_profiling == PROF_YES)
prof_child_exit(&wait_start); /* leaving a child now */
# endif
#endif
@@ -3227,7 +3243,7 @@ getsourceline(c, cookie, indent)
sp->dbg_tick = debug_tick;
}
# ifdef FEAT_PROFILE
- if (do_profiling)
+ if (do_profiling == PROF_YES)
script_line_end();
# endif
#endif
@@ -3246,7 +3262,7 @@ getsourceline(c, cookie, indent)
++sourcing_lnum;
}
#ifdef FEAT_PROFILE
- if (line != NULL && do_profiling)
+ if (line != NULL && do_profiling == PROF_YES)
script_line_start();
#endif
diff --git a/src/globals.h b/src/globals.h
index b0523fc2..765199b9 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -224,7 +224,7 @@ EXTERN int debug_break_level INIT(= -1); /* break below this level */
EXTERN int debug_did_msg INIT(= FALSE); /* did "debug mode" message */
EXTERN int debug_tick INIT(= 0); /* breakpoint change count */
# ifdef FEAT_PROFILE
-EXTERN int do_profiling INIT(= 0); /* ":profile start" used */
+EXTERN int do_profiling INIT(= PROF_NONE); /* PROF_ values */
# endif
/*
diff --git a/src/gui_gtk.c b/src/gui_gtk.c
index cdd645b6..a1c43751 100644
--- a/src/gui_gtk.c
+++ b/src/gui_gtk.c
@@ -320,6 +320,19 @@ create_menu_icon(vimmenu_T *menu, GtkIconSize icon_size)
return image;
}
+/*ARGSUSED*/
+ static gint
+toolbar_button_focus_in_event(GtkWidget *widget, GdkEventFocus *event, gpointer data)
+{
+ /* When we're in a GtkPlug, we don't have window focus events, only widget focus.
+ * To emulate stand-alone gvim, if a button gets focus (e.g., <Tab> into GtkPlug)
+ * immediately pass it to mainwin.
+ */
+ if (gtk_socket_id != 0)
+ gtk_widget_grab_focus(gui.drawarea);
+
+ return TRUE;
+}
#endif /* FEAT_TOOLBAR && HAVE_GTK2 */
#if (defined(FEAT_TOOLBAR) && defined(HAVE_GTK2)) || defined(PROTO)
@@ -767,6 +780,10 @@ gui_mch_add_menu_item(vimmenu_T *menu, int idx)
menu,
idx);
+ if (gtk_socket_id != 0)
+ gtk_signal_connect(GTK_OBJECT(menu->id), "focus_in_event",
+ GTK_SIGNAL_FUNC(toolbar_button_focus_in_event), NULL);
+
CONVERT_TO_UTF8_FREE(text);
CONVERT_TO_UTF8_FREE(tooltip);
diff --git a/src/option.c b/src/option.c
index 8bfeb98f..73933b4d 100644
--- a/src/option.c
+++ b/src/option.c
@@ -101,6 +101,9 @@
#ifdef FEAT_MBYTE
# define PV_FENC OPT_BUF(BV_FENC)
#endif
+#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
+# define PV_BEXPR OPT_BOTH(OPT_BUF(BV_BEXPR))
+#endif
#ifdef FEAT_EVAL
# define PV_FEX OPT_BUF(BV_FEX)
#endif
@@ -250,7 +253,7 @@ typedef enum
#define VAR_WIN ((char_u *)-1)
/*
- * These the global values for options which are also local to a buffer.
+ * These are the global values for options which are also local to a buffer.
* Only to be used in option.c!
*/
static int p_ai;
@@ -581,7 +584,7 @@ static struct vimoption
{(char_u *)FALSE, (char_u *)0L}},
# ifdef FEAT_EVAL
{"balloonexpr", "bexpr", P_STRING|P_ALLOCED|P_VI_DEF|P_VIM,
- (char_u *)&p_bexpr, PV_NONE,
+ (char_u *)&p_bexpr, PV_BEXPR,
{(char_u *)"", (char_u *)0L}},
# endif
#endif
@@ -4997,6 +5000,9 @@ check_buf_options(buf)
check_string_option(&buf->b_p_inde);
check_string_option(&buf->b_p_indk);
#endif
+#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
+ check_string_option(&buf->b_p_bexpr);
+#endif
#if defined(FEAT_EVAL)
check_string_option(&buf->b_p_fex);
#endif
@@ -5157,6 +5163,9 @@ insecure_flag(opt_idx, opt_flags)
#ifdef FEAT_EVAL
case PV_FDE: return &curwin->w_p_fde_flags;
case PV_FDT: return &curwin->w_p_fdt_flags;
+# ifdef FEAT_BEVAL
+ case PV_BEXPR: return &curbuf->b_p_bexpr_flags;
+# endif
#endif
#if defined(FEAT_EVAL)
# if defined(FEAT_CINDENT)
@@ -8784,6 +8793,9 @@ get_varp_scope(p, opt_flags)
case PV_DICT: return (char_u *)&(curbuf->b_p_dict);
case PV_TSR: return (char_u *)&(curbuf->b_p_tsr);
#endif
+#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
+ case PV_BEXPR: return (char_u *)&(curbuf->b_p_bexpr);
+#endif
#ifdef FEAT_STL_OPT
case PV_STL: return (char_u *)&(curwin->w_p_stl);
#endif
@@ -8839,6 +8851,10 @@ get_varp(p)
case PV_MP: return *curbuf->b_p_mp != NUL
? (char_u *)&(curbuf->b_p_mp) : p->var;
#endif
+#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
+ case PV_BEXPR: return *curbuf->b_p_bexpr != NUL
+ ? (char_u *)&(curbuf->b_p_bexpr) : p->var;
+#endif
#ifdef FEAT_STL_OPT
case PV_STL: return *curwin->w_p_stl != NUL
? (char_u *)&(curwin->w_p_stl) : p->var;
@@ -9368,6 +9384,9 @@ buf_copy_options(buf, flags)
#ifdef FEAT_TEXTOBJ
buf->b_p_qe = vim_strsave(p_qe);
#endif
+#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
+ buf->b_p_bexpr = empty_option;
+#endif
/*
* Don't copy the options set by ex_help(), use the saved values,
diff --git a/src/option.h b/src/option.h
index b1e6f824..1bd9d7d4 100644
--- a/src/option.h
+++ b/src/option.h
@@ -910,6 +910,7 @@ enum
, BV_ET
, BV_FENC
#ifdef FEAT_EVAL
+ , BV_BEXPR
, BV_FEX
#endif
, BV_FF
diff --git a/src/structs.h b/src/structs.h
index 907b1cc2..1b7c826f 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -1458,6 +1458,11 @@ struct file_buffer
dict_T b_vars; /* internal variables, local to buffer */
#endif
+#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
+ char_u *b_p_bexpr; /* 'balloonexpr' local value */
+ long_u b_p_bexpr_flags;/* flags for 'balloonexpr' */
+#endif
+
/* When a buffer is created, it starts without a swap file. b_may_swap is
* then set to indicate that a swap file may be opened later. It is reset
* if a swap file could not be opened.
@@ -1618,6 +1623,10 @@ struct tabpage_S
win_T *tp_lastwin; /* last window in this Tab page */
long tp_old_Rows; /* Rows when Tab page was left */
long tp_old_Columns; /* Columns when Tab page was left */
+#ifdef FEAT_GUI
+ int tp_prev_which_scrollbars[3];
+ /* previous value of which_scrollbars */
+#endif
#ifdef FEAT_DIFF
diff_T *tp_first_diff;
buf_T *(tp_diffbuf[DB_COUNT]);
@@ -2092,15 +2101,17 @@ typedef struct cursor_entry
#define MENU_INDEX_INVALID -1
#define MENU_INDEX_NORMAL 0
#define MENU_INDEX_VISUAL 1
-#define MENU_INDEX_OP_PENDING 2
-#define MENU_INDEX_INSERT 3
-#define MENU_INDEX_CMDLINE 4
-#define MENU_INDEX_TIP 5
-#define MENU_MODES 6
+#define MENU_INDEX_SELECT 2
+#define MENU_INDEX_OP_PENDING 3
+#define MENU_INDEX_INSERT 4
+#define MENU_INDEX_CMDLINE 5
+#define MENU_INDEX_TIP 6
+#define MENU_MODES 7
/* Menu modes */
#define MENU_NORMAL_MODE (1 << MENU_INDEX_NORMAL)
#define MENU_VISUAL_MODE (1 << MENU_INDEX_VISUAL)
+#define MENU_SELECT_MODE (1 << MENU_INDEX_SELECT)
#define MENU_OP_PENDING_MODE (1 << MENU_INDEX_OP_PENDING)
#define MENU_INSERT_MODE (1 << MENU_INDEX_INSERT)
#define MENU_CMDLINE_MODE (1 << MENU_INDEX_CMDLINE)
diff --git a/src/version.h b/src/version.h
index 365d2886..ee1532b8 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 Mar 19)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 19, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 20)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 20, compiled "