summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2006-02-23 21:32:16 +0000
committerBram Moolenaar <Bram@vim.org>2006-02-23 21:32:16 +0000
commitdf1bdc92c289d4531f82418f448466c99ca4bb78 (patch)
treec8ab380c2ffaa17450ffeb5a4ed51c404a38fe15 /src
parent80a94a582cd2d5307d1e65ec06fe0fb05f60d7c9 (diff)
updated for version 7.0205
Diffstat (limited to 'src')
-rw-r--r--src/Make_vms.mms10
-rw-r--r--src/edit.c9
-rw-r--r--src/ex_cmds2.c3
-rw-r--r--src/ex_getln.c11
-rw-r--r--src/proto/window.pro4
-rw-r--r--src/structs.h1
-rw-r--r--src/syntax.c4
-rw-r--r--src/term.c12
-rw-r--r--src/version.h4
9 files changed, 44 insertions, 14 deletions
diff --git a/src/Make_vms.mms b/src/Make_vms.mms
index 8b83468338..8b249811c5 100644
--- a/src/Make_vms.mms
+++ b/src/Make_vms.mms
@@ -2,7 +2,7 @@
# Makefile for Vim on OpenVMS
#
# Maintainer: Zoltan Arpadffy <arpadffy@polarhome.com>
-# Last change: 2005 Jul 23
+# Last change: 2006 Feb 23
#
# This has script been tested on VMS 6.2 to 8.2 on DEC Alpha, VAX and IA64
# with MMS and MMK
@@ -288,7 +288,7 @@ ALL_LIBS = $(LIBS) $(GUI_LIB_DIR) $(GUI_LIB) \
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 quickfix.c regexp.c search.c \
+ misc2.c move.c normal.c ops.c option.c popupmenu.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) \
@@ -298,7 +298,7 @@ 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 \
menu.obj memfile.obj memline.obj message.obj misc1.obj misc2.obj \
- move.obj mbyte.obj normal.obj ops.obj option.obj quickfix.obj \
+ move.obj mbyte.obj normal.obj ops.obj option.obj popupmenu.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 \
@@ -607,6 +607,10 @@ pathdef.obj : pathdef.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
+popupmenu.obj : popupmenu.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
quickfix.obj : quickfix.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 \
diff --git a/src/edit.c b/src/edit.c
index d159911bb0..79605666aa 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -713,8 +713,8 @@ edit(cmdchar, startln, count)
continue;
}
- /* A printable character: Add it to "compl_leader". */
- if (vim_isprintc(c))
+ /* A printable, non-white character: Add to "compl_leader". */
+ if (vim_isprintc(c) && !vim_iswhite(c))
{
ins_compl_addleader(c);
continue;
@@ -3696,7 +3696,10 @@ ins_compl_delete()
ins_compl_insert()
{
ins_bytes(compl_shown_match->cp_str + curwin->w_cursor.col - compl_col);
- compl_used_match = TRUE;
+ if (compl_shown_match->cp_flags & ORIGINAL_TEXT)
+ compl_used_match = FALSE;
+ else
+ compl_used_match = TRUE;
}
/*
diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index 575a185f37..416fd3e350 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -1983,7 +1983,8 @@ do_argfile(eap, argn)
#endif
#ifdef FEAT_WINDOWS
- if (*eap->cmd == 's') /* split window first */
+ /* split window or create new tab page first */
+ if (*eap->cmd == 's' || cmdmod.tab != 0)
{
if (win_split(0, 0) == FAIL)
return;
diff --git a/src/ex_getln.c b/src/ex_getln.c
index 6828f671de..bac600cf5f 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -2939,6 +2939,14 @@ redrawcmd()
if (cmd_silent)
return;
+ /* when 'incsearch' is set there may be no command line while redrawing */
+ if (ccline.cmdbuff == NULL)
+ {
+ windgoto(cmdline_row, 0);
+ msg_clr_eos();
+ return;
+ }
+
msg_start();
redrawcmdprompt();
@@ -5635,6 +5643,9 @@ ex_window()
/* Don't execute autocommands while creating the window. */
++autocmd_block;
# endif
+ /* don't use a new tab page */
+ cmdmod.tab = 0;
+
/* Create a window for the command-line buffer. */
if (win_split((int)p_cwh, WSP_BOT) == FAIL)
{
diff --git a/src/proto/window.pro b/src/proto/window.pro
index ca0de7a28a..1c56ab1c18 100644
--- a/src/proto/window.pro
+++ b/src/proto/window.pro
@@ -14,11 +14,13 @@ void close_others __ARGS((int message, int forceit));
void curwin_init __ARGS((void));
int win_alloc_first __ARGS((void));
void win_init_size __ARGS((void));
-int win_new_tabpage __ARGS((void));
+int win_new_tabpage __ARGS((int after));
+int may_open_tabpage __ARGS((void));
int make_tabpages __ARGS((int maxcount));
int valid_tabpage __ARGS((tabpage_T *tpc));
tabpage_T *find_tabpage __ARGS((int n));
void goto_tabpage __ARGS((int n));
+void tabpage_move __ARGS((int nr));
void win_goto __ARGS((win_T *wp));
win_T *win_find_nr __ARGS((int winnr));
void win_enter __ARGS((win_T *wp, int undo_sync));
diff --git a/src/structs.h b/src/structs.h
index 4d1928e894..bb02a75eaa 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -428,6 +428,7 @@ typedef struct
# endif
# ifdef FEAT_WINDOWS
int split; /* flags for win_split() */
+ int tab; /* > 0 when ":tab" was used */
# endif
# if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
int confirm; /* TRUE to invoke yes/no dialog */
diff --git a/src/syntax.c b/src/syntax.c
index 45601539db..b5c3464651 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -6109,7 +6109,7 @@ static char *(highlight_init_light[]) =
"DiffAdd term=bold ctermbg=LightBlue guibg=LightBlue",
"DiffChange term=bold ctermbg=LightMagenta guibg=LightMagenta",
"DiffDelete term=bold ctermfg=Blue ctermbg=LightCyan gui=bold guifg=Blue guibg=LightCyan",
- "TabLine term=underline cterm=underline ctermbg=LightGrey gui=underline guibg=LightGrey",
+ "TabLine term=underline cterm=underline ctermfg=black ctermbg=LightGrey gui=underline guibg=LightGrey",
NULL
};
@@ -6138,7 +6138,7 @@ static char *(highlight_init_dark[]) =
"DiffAdd term=bold ctermbg=DarkBlue guibg=DarkBlue",
"DiffChange term=bold ctermbg=DarkMagenta guibg=DarkMagenta",
"DiffDelete term=bold ctermfg=Blue ctermbg=DarkCyan gui=bold guifg=Blue guibg=DarkCyan",
- "TabLine term=underline cterm=underline ctermbg=DarkGrey gui=underline guibg=DarkGrey",
+ "TabLine term=underline cterm=underline ctermfg=white ctermbg=DarkGrey gui=underline guibg=DarkGrey",
NULL
};
diff --git a/src/term.c b/src/term.c
index f9d6d2dd95..621d35ba28 100644
--- a/src/term.c
+++ b/src/term.c
@@ -4695,10 +4695,18 @@ check_termcode(max_offset, buf, buflen)
&& orig_num_clicks != 4
&& orig_mouse_col == mouse_col
&& orig_mouse_row == mouse_row
+ && ((orig_topline == curwin->w_topline
#ifdef FEAT_DIFF
- && orig_topfill == curwin->w_topfill
+ && orig_topfill == curwin->w_topfill
#endif
- && orig_topline == curwin->w_topline)
+ )
+#ifdef FEAT_WINDOWS
+ /* Double click in tab pages line also works
+ * when window contents changes. */
+ || (mouse_row == 0 && firstwin->w_winrow > 0)
+#endif
+ )
+ )
++orig_num_clicks;
else
orig_num_clicks = 1;
diff --git a/src/version.h b/src/version.h
index 0ebd781e6d..9838f1b90f 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 Feb 22)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Feb 22, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2006 Feb 23)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Feb 23, compiled "