summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/buffer.c2
-rw-r--r--src/charset.c7
-rw-r--r--src/edit.c22
-rw-r--r--src/eval.c15
-rw-r--r--src/ex_cmds.c2
-rw-r--r--src/ex_docmd.c14
-rw-r--r--src/feature.h6
-rw-r--r--src/fold.c6
-rw-r--r--src/getchar.c8
-rw-r--r--src/globals.h4
-rw-r--r--src/gui.c2
-rw-r--r--src/gui_mac.c8
-rw-r--r--src/gui_w48.c2
-rw-r--r--src/main.c15
-rw-r--r--src/mark.c16
-rw-r--r--src/menu.c4
-rw-r--r--src/misc2.c17
-rw-r--r--src/move.c6
-rw-r--r--src/netbeans.c2
-rw-r--r--src/normal.c359
-rw-r--r--src/ops.c177
-rw-r--r--src/option.c20
-rw-r--r--src/option.h4
-rw-r--r--src/os_msdos.c4
-rw-r--r--src/os_qnx.c4
-rw-r--r--src/os_win32.h2
-rw-r--r--src/quickfix.c2
-rw-r--r--src/regexp.c6
-rw-r--r--src/regexp_nfa.c2
-rw-r--r--src/screen.c59
-rw-r--r--src/search.c64
-rw-r--r--src/spell.c7
-rw-r--r--src/structs.h10
-rw-r--r--src/syntax.c4
-rw-r--r--src/term.c5
-rw-r--r--src/ui.c24
-rw-r--r--src/undo.c24
-rw-r--r--src/version.c10
-rw-r--r--src/window.c30
39 files changed, 119 insertions, 856 deletions
diff --git a/src/buffer.c b/src/buffer.c
index d68646790..c703465e3 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -1432,10 +1432,8 @@ set_curbuf(buf, action)
curwin->w_alt_fnum = curbuf->b_fnum; /* remember alternate file */
buflist_altfpos(curwin); /* remember curpos */
-#ifdef FEAT_VISUAL
/* Don't restart Select mode after switching to another buffer. */
VIsual_reselect = FALSE;
-#endif
/* close_windows() or apply_autocmds() may change curbuf */
prevbuf = curbuf;
diff --git a/src/charset.c b/src/charset.c
index fd4b500be..61a56f653 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -1380,10 +1380,7 @@ getvcol(wp, pos, start, cursor, end)
&& (State & NORMAL)
&& !wp->w_p_list
&& !virtual_active()
-#ifdef FEAT_VISUAL
- && !(VIsual_active
- && (*p_sel == 'e' || ltoreq(*pos, VIsual)))
-#endif
+ && !(VIsual_active && (*p_sel == 'e' || ltoreq(*pos, VIsual)))
)
*cursor = vcol + incr - 1; /* cursor at end */
else
@@ -1463,7 +1460,6 @@ getvvcol(wp, pos, start, cursor, end)
}
#endif
-#if defined(FEAT_VISUAL) || defined(PROTO)
/*
* Get the leftmost and rightmost virtual column of pos1 and pos2.
* Used for Visual block mode.
@@ -1500,7 +1496,6 @@ getvcols(wp, pos1, pos2, left, right)
else
*right = to1;
}
-#endif
/*
* skipwhite: skip over ' ' and '\t'.
diff --git a/src/edit.c b/src/edit.c
index 57bd7761e..1c6f2f899 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -220,9 +220,7 @@ static int ins_esc __ARGS((long *count, int cmdchar, int nomove));
#ifdef FEAT_RIGHTLEFT
static void ins_ctrl_ __ARGS((void));
#endif
-#ifdef FEAT_VISUAL
static int ins_start_select __ARGS((int c));
-#endif
static void ins_insert __ARGS((int replaceState));
static void ins_ctrl_o __ARGS((void));
static void ins_shift __ARGS((int c, int lastc));
@@ -932,7 +930,6 @@ edit(cmdchar, startln, count)
}
#endif
-#ifdef FEAT_VISUAL
/*
* If 'keymodel' contains "startsel", may start selection. If it
* does, a CTRL-O and c will be stuffed, we need to get these
@@ -940,7 +937,6 @@ edit(cmdchar, startln, count)
*/
if (ins_start_select(c))
continue;
-#endif
/*
* The big switch to handle a character in insert mode.
@@ -6900,7 +6896,6 @@ stop_insert(end_insert_pos, esc, nomove)
else if (cc != NUL)
++curwin->w_cursor.col; /* put cursor back on the NUL */
-#ifdef FEAT_VISUAL
/* <C-S-Right> may have started Visual mode, adjust the position for
* deleted characters. */
if (VIsual_active && VIsual.lnum == curwin->w_cursor.lnum)
@@ -6910,12 +6905,11 @@ stop_insert(end_insert_pos, esc, nomove)
if (VIsual.col > len)
{
VIsual.col = len;
-# ifdef FEAT_VIRTUALEDIT
+#ifdef FEAT_VIRTUALEDIT
VIsual.coladd = 0;
-# endif
+#endif
}
}
-#endif
}
}
did_ai = FALSE;
@@ -8112,9 +8106,7 @@ ins_reg()
int need_redraw = FALSE;
int regname;
int literally = 0;
-#ifdef FEAT_VISUAL
int vis_active = VIsual_active;
-#endif
/*
* If we are going to wait for a character, show a '"'.
@@ -8218,11 +8210,9 @@ ins_reg()
if (need_redraw || stuff_empty())
edit_unputchar();
-#ifdef FEAT_VISUAL
/* Disallow starting Visual mode here, would get a weird mode. */
if (!vis_active && VIsual_active)
end_visual_mode();
-#endif
}
/*
@@ -8419,11 +8409,7 @@ ins_esc(count, cmdchar, nomove)
#endif
)
&& (restart_edit == NUL
- || (gchar_cursor() == NUL
-#ifdef FEAT_VISUAL
- && !VIsual_active
-#endif
- ))
+ || (gchar_cursor() == NUL && !VIsual_active))
#ifdef FEAT_RIGHTLEFT
&& !revins_on
#endif
@@ -8525,7 +8511,6 @@ ins_ctrl_()
}
#endif
-#ifdef FEAT_VISUAL
/*
* If 'keymodel' contains "startsel", may start selection.
* Returns TRUE when a CTRL-O and other keys stuffed.
@@ -8581,7 +8566,6 @@ ins_start_select(c)
}
return FALSE;
}
-#endif
/*
* <Insert> key in Insert mode: toggle insert/replace mode.
diff --git a/src/eval.c b/src/eval.c
index 59cfd1292..12794d4cb 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -11833,12 +11833,10 @@ f_getregtype(argvars, rettv)
{
case MLINE: buf[0] = 'V'; break;
case MCHAR: buf[0] = 'v'; break;
-#ifdef FEAT_VISUAL
case MBLOCK:
buf[0] = Ctrl_V;
sprintf((char *)buf + 1, "%ld", reglen + 1);
break;
-#endif
}
rettv->v_type = VAR_STRING;
rettv->vval.v_string = vim_strsave(buf);
@@ -12552,9 +12550,7 @@ f_has(argvars, rettv)
#ifdef FEAT_VIRTUALEDIT
"virtualedit",
#endif
-#ifdef FEAT_VISUAL
"visual",
-#endif
#ifdef FEAT_VISUALEXTRA
"visualextra",
#endif
@@ -14397,7 +14393,6 @@ f_mode(argvars, rettv)
buf[1] = NUL;
buf[2] = NUL;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (VIsual_select)
@@ -14405,9 +14400,7 @@ f_mode(argvars, rettv)
else
buf[0] = VIsual_mode;
}
- else
-#endif
- if (State == HITRETURN || State == ASKMORE || State == SETWSIZE
+ else if (State == HITRETURN || State == ASKMORE || State == SETWSIZE
|| State == CONFIRM)
{
buf[0] = 'r';
@@ -16756,7 +16749,6 @@ f_setreg(argvars, rettv)
case 'V': case 'l': /* line-wise selection */
yank_type = MLINE;
break;
-#ifdef FEAT_VISUAL
case 'b': case Ctrl_V: /* block-wise selection */
yank_type = MBLOCK;
if (VIM_ISDIGIT(stropt[1]))
@@ -16766,7 +16758,6 @@ f_setreg(argvars, rettv)
--stropt;
}
break;
-#endif
}
}
@@ -18769,7 +18760,6 @@ f_visualmode(argvars, rettv)
typval_T *argvars UNUSED;
typval_T *rettv UNUSED;
{
-#ifdef FEAT_VISUAL
char_u str[2];
rettv->v_type = VAR_STRING;
@@ -18780,7 +18770,6 @@ f_visualmode(argvars, rettv)
/* A non-zero number or non-empty string argument: reset mode. */
if (non_zero_arg(&argvars[0]))
curbuf->b_visual_mode_eval = NUL;
-#endif
}
/*
@@ -19154,14 +19143,12 @@ var2fpos(varp, dollar_lnum, fnum)
return NULL;
if (name[0] == '.') /* cursor */
return &curwin->w_cursor;
-#ifdef FEAT_VISUAL
if (name[0] == 'v' && name[1] == NUL) /* Visual start */
{
if (VIsual_active)
return &VIsual;
return &curwin->w_cursor;
}
-#endif
if (name[0] == '\'') /* mark */
{
pp = getmark_buf_fnum(curbuf, name[1], FALSE, fnum);
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index fc83aba19..f99f8830f 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -3274,13 +3274,11 @@ do_ecmd(fnum, ffname, sfname, eap, newlnum, flags, oldwin)
goto theend;
}
-#ifdef FEAT_VISUAL
/*
* End Visual mode before switching to another buffer, so the text can be
* copied into the GUI selection buffer.
*/
reset_VIsual();
-#endif
#ifdef FEAT_AUTOCMD
if ((command != NULL || newlnum > (linenr_T)0)
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index e2c972403..507de7d15 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -8577,10 +8577,8 @@ ex_operators(eap)
beginline(BL_SOL | BL_FIX);
}
-#if defined(FEAT_VISUAL)
if (VIsual_active)
end_visual_mode();
-#endif
switch (eap->cmdidx)
{
@@ -8991,11 +8989,7 @@ ex_redraw(eap)
RedrawingDisabled = 0;
p_lz = FALSE;
update_topline();
- update_screen(eap->forceit ? CLEAR :
-#ifdef FEAT_VISUAL
- VIsual_active ? INVERTED :
-#endif
- 0);
+ update_screen(eap->forceit ? CLEAR : VIsual_active ? INVERTED : 0);
#ifdef FEAT_TITLE
if (need_maketitle)
maketitle();
@@ -9030,11 +9024,7 @@ ex_redrawstatus(eap)
status_redraw_all();
else
status_redraw_curbuf();
- update_screen(
-# ifdef FEAT_VISUAL
- VIsual_active ? INVERTED :
-# endif
- 0);
+ update_screen(VIsual_active ? INVERTED : 0);
RedrawingDisabled = r;
p_lz = p;
out_flush();
diff --git a/src/feature.h b/src/feature.h
index 83ab55dff..917179401 100644
--- a/src/feature.h
+++ b/src/feature.h
@@ -214,7 +214,6 @@
* +visual Visual mode - now always included.
* +visualextra Extra features for Visual mode (mostly block operators).
*/
-#define FEAT_VISUAL
#ifdef FEAT_NORMAL
# define FEAT_VISUALEXTRA
#endif
@@ -1138,13 +1137,10 @@
#ifdef FEAT_GUI
# ifndef FEAT_CLIPBOARD
# define FEAT_CLIPBOARD
-# ifndef FEAT_VISUAL
-# define FEAT_VISUAL
-# endif
# endif
#endif
-#if defined(FEAT_NORMAL) && defined(FEAT_VISUAL) \
+#if defined(FEAT_NORMAL) \
&& (defined(UNIX) || defined(VMS)) \
&& defined(WANT_X11) && defined(HAVE_X11)
# define FEAT_XCLIPBOARD
diff --git a/src/fold.c b/src/fold.c
index cd58c9153..41fcee0fd 100644
--- a/src/fold.c
+++ b/src/fold.c
@@ -430,11 +430,9 @@ opFoldRange(first, last, opening, recurse, had_visual)
}
if (done == DONE_NOTHING)
EMSG(_(e_nofold));
-#ifdef FEAT_VISUAL
/* Force a redraw to remove the Visual highlighting. */
if (had_visual)
redraw_curbuf_later(INVERTED);
-#endif
}
/* openFold() {{{2 */
@@ -807,11 +805,9 @@ deleteFold(start, end, recursive, had_visual)
if (!did_one)
{
EMSG(_(e_nofold));
-#ifdef FEAT_VISUAL
/* Force a redraw to remove the Visual highlighting. */
if (had_visual)
redraw_curbuf_later(INVERTED);
-#endif
}
else
/* Deleting markers may make cursor column invalid. */
@@ -1065,7 +1061,6 @@ find_wl_entry(win, lnum)
}
/* foldAdjustVisual() {{{2 */
-#ifdef FEAT_VISUAL
/*
* Adjust the Visual area to include any fold at the start or end completely.
*/
@@ -1103,7 +1098,6 @@ foldAdjustVisual()
#endif
}
}
-#endif
/* cursor_foldstart() {{{2 */
/*
diff --git a/src/getchar.c b/src/getchar.c
index 7455c778d..b39e64d97 100644
--- a/src/getchar.c
+++ b/src/getchar.c
@@ -870,7 +870,6 @@ start_redo(count, old_redo)
c = read_redo(FALSE, old_redo);
}
-#ifdef FEAT_VISUAL
if (c == 'v') /* redo Visual */
{
VIsual = curwin->w_cursor;
@@ -880,7 +879,6 @@ start_redo(count, old_redo)
redo_VIsual_busy = TRUE;
c = read_redo(FALSE, old_redo);
}
-#endif
/* try to enter the count (in place of a previous count) */
if (count)
@@ -1162,7 +1160,6 @@ typebuf_typed()
return typebuf.tb_maplen == 0;
}
-#if defined(FEAT_VISUAL) || defined(PROTO)
/*
* Return the number of characters that are mapped (or not typed).
*/
@@ -1171,7 +1168,6 @@ typebuf_maplen()
{
return typebuf.tb_maplen;
}
-#endif
/*
* remove "len" characters from typebuf.tb_buf[typebuf.tb_off + offset]
@@ -2443,7 +2439,6 @@ vgetorpeek(advance)
idx = get_menu_index(current_menu, local_State);
if (idx != MENU_INDEX_INVALID)
{
-# ifdef FEAT_VISUAL
/*
* In Select mode and a Visual mode menu
* is used: Switch to Visual mode
@@ -2457,7 +2452,6 @@ vgetorpeek(advance)
(void)ins_typebuf(K_SELECT_STRING,
REMAP_NONE, 0, TRUE, FALSE);
}
-# endif
ins_typebuf(current_menu->strings[idx],
current_menu->noremap[idx],
0, TRUE,
@@ -2516,7 +2510,6 @@ vgetorpeek(advance)
break;
}
-#ifdef FEAT_VISUAL
/*
* In Select mode and a Visual mode mapping is used:
* Switch to Visual mode temporarily. Append K_SELECT
@@ -2529,7 +2522,6 @@ vgetorpeek(advance)
(void)ins_typebuf(K_SELECT_STRING, REMAP_NONE,
0, TRUE, FALSE);
}
-#endif
#ifdef FEAT_EVAL
/* Copy the values from *mp that are used, because
diff --git a/src/globals.h b/src/globals.h
index fd4e70c74..028110336 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -662,7 +662,6 @@ EXTERN int silent_mode INIT(= FALSE);
/* set to TRUE when "-s" commandline argument
* used for ex */
-#ifdef FEAT_VISUAL
EXTERN pos_T VIsual; /* start position of active Visual selection */
EXTERN int VIsual_active INIT(= FALSE);
/* whether Visual mode is active */
@@ -677,7 +676,6 @@ EXTERN int VIsual_mode INIT(= 'v');
EXTERN int redo_VIsual_busy INIT(= FALSE);
/* TRUE when redoing Visual */
-#endif
#ifdef FEAT_MOUSE
/*
@@ -1178,11 +1176,9 @@ EXTERN int fill_fold INIT(= '-');
EXTERN int fill_diff INIT(= '-');
#endif
-#ifdef FEAT_VISUAL
/* Whether 'keymodel' contains "stopsel" and "startsel". */
EXTERN int km_stopsel INIT(= FALSE);
EXTERN int km_startsel INIT(= FALSE);
-#endif
#ifdef FEAT_CMDWIN
EXTERN int cedit_key INIT(= -1); /* key value of 'cedit' option */
diff --git a/src/gui.c b/src/gui.c
index b667ba3e9..5516d9607 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -3132,11 +3132,9 @@ button_set:
*/
if (!mouse_has(checkfor) || checkfor == MOUSE_COMMAND)
{
-#ifdef FEAT_VISUAL
/* Don't do modeless selection in Visual mode. */
if (checkfor != MOUSE_NONEF && VIsual_active && (State & NORMAL))
return;
-#endif
/*
* When 'mousemodel' is "popup", shift-left is translated to right.
diff --git a/src/gui_mac.c b/src/gui_mac.c
index 573dc7a11..54087c518 100644
--- a/src/gui_mac.c
+++ b/src/gui_mac.c
@@ -1068,11 +1068,7 @@ HandleODocAE(const AppleEvent *theAEvent, AppleEvent *theReply, long refCon)
}
*/
-
-#ifdef FEAT_VISUAL
reset_VIsual();
-#endif
-
fnames = new_fnames_from_AEDesc(&theList, &numFiles, &error);
if (error)
@@ -1142,7 +1138,7 @@ HandleODocAE(const AppleEvent *theAEvent, AppleEvent *theReply, long refCon)
/* Update the screen display */
update_screen(NOT_VALID);
-#ifdef FEAT_VISUAL
+
/* Select the text if possible */
if (gotPosition)
{
@@ -1160,7 +1156,7 @@ HandleODocAE(const AppleEvent *theAEvent, AppleEvent *theReply, long refCon)
VIsual.col = 0;
}
}
-#endif
+
setcursor();
out_flush();
diff --git a/src/gui_w48.c b/src/gui_w48.c
index 4d9032019..89b60908e 100644
--- a/src/gui_w48.c
+++ b/src/gui_w48.c
@@ -3708,9 +3708,7 @@ _OnDropFiles(
DragQueryPoint(hDrop, &pt);
MapWindowPoints(s_hwnd, s_textArea, &pt, 1);
-# ifdef FEAT_VISUAL
reset_VIsual();
-# endif
fnames = (char_u **)alloc(cFiles * sizeof(char_u *));
diff --git a/src/main.c b/src/main.c
index 79521ef46..f9bd8732e 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1057,9 +1057,7 @@ main_loop(cmdwin, noexmode)
if (!cmdwin && !noexmode && SETJMP(x_jump_env))
{
State = NORMAL;
-# ifdef FEAT_VISUAL
VIsual_active = FALSE;
-# endif
got_int = TRUE;
need_wait_return = FALSE;
global_busy = FALSE;
@@ -1096,11 +1094,7 @@ main_loop(cmdwin, noexmode)
check_timestamps(FALSE);
if (need_wait_return) /* if wait_return still needed ... */
wait_return(FALSE); /* ... call it now */
- if (need_start_insertmode && goto_im()
-#ifdef FEAT_VISUAL
- && !VIsual_active
-#endif
- )
+ if (need_start_insertmode && goto_im() && !VIsual_active)
{
need_start_insertmode = FALSE;
stuffReadbuff((char_u *)"i"); /* start insert mode next */
@@ -1202,7 +1196,7 @@ main_loop(cmdwin, noexmode)
diff_need_scrollbind = FALSE;
}
#endif
-#if defined(FEAT_FOLDING) && defined(FEAT_VISUAL)
+#if defined(FEAT_FOLDING)
/* Include a closed fold completely in the Visual area. */
foldAdjustVisual();
#endif
@@ -1228,12 +1222,9 @@ main_loop(cmdwin, noexmode)
update_topline();
validate_cursor();
-#ifdef FEAT_VISUAL
if (VIsual_active)
update_curbuf(INVERTED);/* update inverted part */
- else
-#endif
- if (must_redraw)
+ else if (must_redraw)
update_screen(0);
else if (redraw_cmdline || clear_cmdline)
showmode();
diff --git a/src/mark.c b/src/mark.c
index 9c17f7afb..ef9ddc07e 100644
--- a/src/mark.c
+++ b/src/mark.c
@@ -98,7 +98,6 @@ setmark_pos(c, pos, fnum)
return OK;
}
-#ifdef FEAT_VISUAL
if (c == '<' || c == '>')
{
if (c == '<')
@@ -110,7 +109,6 @@ setmark_pos(c, pos, fnum)
curbuf->b_visual.vi_mode = 'v';
return OK;
}
-#endif
#ifndef EBCDIC
if (c > 'z') /* some islower() and isupper() cannot handle
@@ -340,9 +338,7 @@ getmark_buf_fnum(buf, c, changefile, fnum)
int *fnum;
{
pos_T *posp;
-#ifdef FEAT_VISUAL
pos_T *startp, *endp;
-#endif
static pos_T pos_copy;
posp = NULL;
@@ -403,7 +399,6 @@ getmark_buf_fnum(buf, c, changefile, fnum)
curwin->w_cursor = pos;
listcmd_busy = slcb;
}
-#ifdef FEAT_VISUAL
else if (c == '<' || c == '>') /* start/end of visual area */
{
startp = &buf->b_visual.vi_start;
@@ -428,7 +423,6 @@ getmark_buf_fnum(buf, c, changefile, fnum)
#endif
}
}
-#endif
else if (ASCII_ISLOWER(c)) /* normal named mark */
{
posp = &(buf->b_namedm[c - 'a']);
@@ -757,10 +751,8 @@ do_marks(eap)
show_one_mark(']', arg, &curbuf->b_op_end, NULL, TRUE);
show_one_mark('^', arg, &curbuf->b_last_insert, NULL, TRUE);
show_one_mark('.', arg, &curbuf->b_last_change, NULL, TRUE);
-#ifdef FEAT_VISUAL
show_one_mark('<', arg, &curbuf->b_visual.vi_start, NULL, TRUE);
show_one_mark('>', arg, &curbuf->b_visual.vi_end, NULL, TRUE);
-#endif
show_one_mark(-1, arg, NULL, NULL, FALSE);
}
@@ -892,10 +884,8 @@ ex_delmarks(eap)
case '.': curbuf->b_last_change.lnum = 0; break;
case '[': curbuf->b_op_start.lnum = 0; break;
case ']': curbuf->b_op_end.lnum = 0; break;
-#ifdef FEAT_VISUAL
case '<': curbuf->b_visual.vi_start.lnum = 0; break;
case '>': curbuf->b_visual.vi_end.lnum = 0; break;
-#endif
case ' ': break;
default: EMSG2(_(e_invarg2), p);
return;
@@ -1085,11 +1075,9 @@ mark_adjust(line1, line2, amount, amount_after)
one_adjust_nodel(&(curbuf->b_changelist[i].lnum));
#endif
-#ifdef FEAT_VISUAL
/* Visual area */
one_adjust_nodel(&(curbuf->b_visual.vi_start.lnum));
one_adjust_nodel(&(curbuf->b_visual.vi_end.lnum));
-#endif
#ifdef FEAT_QUICKFIX
/* quickfix marks */
@@ -1136,14 +1124,12 @@ mark_adjust(line1, line2, amount, amount_after)
if (win->w_tagstack[i].fmark.fnum == fnum)
one_adjust_nodel(&(win->w_tagstack[i].fmark.mark.lnum));
-#ifdef FEAT_VISUAL
/* the displayed Visual area */
if (win->w_old_cursor_lnum != 0)
{
one_adjust_nodel(&(win->w_old_cursor_lnum));
one_adjust_nodel(&(win->w_old_visual_lnum));
}
-#endif
/* topline and cursor position for windows with the same buffer
* other than the current window */
@@ -1260,11 +1246,9 @@ mark_col_adjust(lnum, mincol, lnum_amount, col_amount)
col_adjust(&(curbuf->b_changelist[i]));
#endif
-#ifdef FEAT_VISUAL
/* Visual area */
col_adjust(&(curbuf->b_visual.vi_start));
col_adjust(&(curbuf->b_visual.vi_end));
-#endif
/* previous context mark */
col_adjust(&(curwin->w_pcmark));
diff --git a/src/menu.c b/src/menu.c
index 42cf67eb9..d2ae1b05e 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -1640,7 +1640,6 @@ get_menu_index(menu, state)
idx = MENU_INDEX_INSERT;
else if (state & CMDLINE)
idx = MENU_INDEX_CMDLINE;
-#ifdef FEAT_VISUAL
else if (VIsual_active)
{
if (VIsual_select)
@@ -1648,7 +1647,6 @@ get_menu_index(menu, state)
else
idx = MENU_INDEX_VISUAL;
}
-#endif
else if (state == HITRETURN || state == ASKMORE)
idx = MENU_INDEX_CMDLINE;
else if (finish_op)
@@ -1811,14 +1809,12 @@ menu_is_tearoff(name)
static int
get_menu_mode()
{
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (VIsual_select)
return MENU_INDEX_SELECT;
return MENU_INDEX_VISUAL;
}
-#endif
if (State & INSERT)
return MENU_INDEX_INSERT;
if ((State & CMDLINE) || State == ASKMORE || State == HITRETURN)
diff --git a/src/misc2.c b/src/misc2.c
index 8f8b2d9d4..a20337f48 100644
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -31,9 +31,7 @@ virtual_active()
if (virtual_op != MAYBE)
return virtual_op;
return (ve_flags == VE_ALL
-# ifdef FEAT_VISUAL
|| ((ve_flags & VE_BLOCK) && VIsual_active && VIsual_mode == Ctrl_V)
-# endif
|| ((ve_flags & VE_INSERT) && (State & INSERT)));
}
@@ -149,9 +147,7 @@ coladvance2(pos, addspaces, finetune, wcol)
one_more = (State & INSERT)
|| restart_edit != NUL
-#ifdef FEAT_VISUAL
|| (VIsual_active && *p_sel != 'o')
-#endif
#ifdef FEAT_VIRTUALEDIT
|| ((ve_flags & VE_ONEMORE) && wcol < MAXCOL)
#endif
@@ -570,9 +566,7 @@ check_cursor_col_win(win)
* - in Visual mode and 'selection' isn't "old"
* - 'virtualedit' is set */
if ((State & INSERT) || restart_edit
-#ifdef FEAT_VISUAL
|| (VIsual_active && *p_sel != 'o')
-#endif
#ifdef FEAT_VIRTUALEDIT
|| (ve_flags & VE_ONEMORE)
#endif
@@ -627,9 +621,7 @@ check_cursor()
adjust_cursor_col()
{
if (curwin->w_cursor.col > 0
-# ifdef FEAT_VISUAL
&& (!VIsual_active || *p_sel == 'o')
-# endif
&& gchar_cursor() == NUL)
--curwin->w_cursor.col;
}
@@ -3290,17 +3282,14 @@ get_real_state()
{
if (State & NORMAL)
{
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (VIsual_select)
return SELECTMODE;
return VISUAL;
}
- else
-#endif
- if (finish_op)
- return OP_PENDING;
+ else if (finish_op)
+ return OP_PENDING;
}
return State;
}
@@ -3738,7 +3727,6 @@ get_shape_idx(mouse)
}
if (finish_op)
return SHAPE_IDX_O;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (*p_sel == 'e')
@@ -3746,7 +3734,6 @@ get_shape_idx(mouse)
else
return SHAPE_IDX_V;
}
-#endif
return SHAPE_IDX_N;
}
#endif
diff --git a/src/move.c b/src/move.c
index 67e214bf9..fff0c9c07 100644
--- a/src/move.c
+++ b/src/move.c
@@ -2857,17 +2857,13 @@ do_check_cursorbind()
win_T *old_curwin = curwin;
buf_T *old_curbuf = curbuf;
int restart_edit_save;
-# ifdef FEAT_VISUAL
int old_VIsual_select = VIsual_select;
int old_VIsual_active = VIsual_active;
-# endif
/*
* loop through the cursorbound windows
*/
-# ifdef FEAT_VISUAL
VIsual_select = VIsual_active = 0;
-# endif
for (curwin = firstwin; curwin; curwin = curwin->w_next)
{
curbuf = curwin->w_buffer;
@@ -2916,10 +2912,8 @@ do_check_cursorbind()
/*
* reset current-window
*/
-# ifdef FEAT_VISUAL
VIsual_select = old_VIsual_select;
VIsual_active = old_VIsual_active;
-# endif
curwin = old_curwin;
curbuf = old_curbuf;
}
diff --git a/src/netbeans.c b/src/netbeans.c
index fc93f93a7..c3345447a 100644
--- a/src/netbeans.c
+++ b/src/netbeans.c
@@ -2232,11 +2232,9 @@ nb_do_cmd(
nb_set_curbuf(buf->bufp);
-#ifdef FEAT_VISUAL
/* Don't want Visual mode now. */
if (VIsual_active)
end_visual_mode();
-#endif
#ifdef NBDEBUG
s = args;
#endif
diff --git a/src/normal.c b/src/normal.c
index 19025f75b..15abab290 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -14,7 +14,6 @@
#include "vim.h"
-#ifdef FEAT_VISUAL
/*
* The Visual area is remembered for reselection.
*/
@@ -24,7 +23,6 @@ static colnr_T resel_VIsual_vcol; /* nr of cols or end col */
static int VIsual_mode_orig = NUL; /* saved Visual mode */
static int restart_VIsual_select = 0;
-#endif
#ifdef FEAT_EVAL
static void set_vcount_ca __ARGS((cmdarg_T *cap, int *set_prevcount));
@@ -37,7 +35,7 @@ static int
static int find_command __ARGS((int cmdchar));
static void op_colon __ARGS((oparg_T *oap));
static void op_function __ARGS((oparg_T *oap));
-#if defined(FEAT_MOUSE) && defined(FEAT_VISUAL)
+#if defined(FEAT_MOUSE)
static void find_start_of_word __ARGS((pos_T *));
static void find_end_of_word __ARGS((pos_T *));
static int get_mouse_class __ARGS((char_u *p));
@@ -48,9 +46,7 @@ static int checkclearop __ARGS((oparg_T *oap));
static int checkclearopq __ARGS((oparg_T *oap));
static void clearop __ARGS((oparg_T *oap));
static void clearopbeep __ARGS((oparg_T *oap));
-#ifdef FEAT_VISUAL
static void unshift_special __ARGS((cmdarg_T *cap));
-#endif
#ifdef FEAT_CMDL_INFO
static void del_from_showcmd __ARGS((int));
#endif
@@ -117,25 +113,19 @@ static void nv_Replace __ARGS((cmdarg_T *cap));
#ifdef FEAT_VREPLACE
static void nv_vreplace __ARGS((cmdarg_T *cap));
#endif
-#ifdef FEAT_VISUAL
static void v_swap_corners __ARGS((int cmdchar));
-#endif
static void nv_replace __ARGS((cmdarg_T *cap));
static void n_swapchar __ARGS((cmdarg_T *cap));
static void nv_cursormark __ARGS((cmdarg_T *cap, int flag, pos_T *pos));
-#ifdef FEAT_VISUAL
static void v_visop __ARGS((cmdarg_T *cap));
-#endif
static void nv_subst __ARGS((cmdarg_T *cap));
static void nv_abbrev __ARGS((cmdarg_T *cap));
static void nv_optrans __ARGS((cmdarg_T *cap));
static void nv_gomark __ARGS((cmdarg_T *cap));
static void nv_pcmark __ARGS((cmdarg_T *cap));
static void nv_regname __ARGS((cmdarg_T *cap));
-#ifdef FEAT_VISUAL
static void nv_visual __ARGS((cmdarg_T *cap));
static void n_start_visual_mode __ARGS((int c));
-#endif
static void nv_window __ARGS((cmdarg_T *cap));
static void nv_suspend __ARGS((cmdarg_T *cap));
static void nv_g_cmd __ARGS((cmdarg_T *cap));
@@ -155,11 +145,9 @@ static void nv_bck_word __ARGS((cmdarg_T *cap));
static void nv_wordcmd __ARGS((cmdarg_T *cap));
static void nv_beginline __ARGS((cmdarg_T *cap));
static void adjust_cursor __ARGS((oparg_T *oap));
-#ifdef FEAT_VISUAL
static void adjust_for_sel __ARGS((cmdarg_T *cap));
static int unadjust_for_sel __ARGS((void));
static void nv_select __ARGS((cmdarg_T *cap));
-#endif
static void nv_goto __ARGS((cmdarg_T *cap));
static void nv_normal __ARGS((cmdarg_T *cap));
static void nv_esc __ARGS((cmdarg_T *oap));
@@ -248,24 +236,14 @@ static const struct nv_cmd
{Ctrl_N, nv_down, NV_STS, FALSE},
{Ctrl_O, nv_ctrlo, 0, 0},
{Ctrl_P, nv_up, NV_STS, FALSE},
-#ifdef FEAT_VISUAL
{Ctrl_Q, nv_visual, 0, FALSE},
-#else
- {Ctrl_Q, nv_ignore, 0, 0},
-#endif
{Ctrl_R, nv_redo, 0, 0},
{Ctrl_S, nv_ignore, 0, 0},
{Ctrl_T, nv_tagpop, NV_NCW, 0},
{Ctrl_U, nv_halfpage, 0, 0},
-#ifdef FEAT_VISUAL
{Ctrl_V, nv_visual, 0, FALSE},
{'V', nv_visual, 0, FALSE},
{'v', nv_visual, 0, FALSE},
-#else
- {Ctrl_V, nv_error, 0, 0},
- {'V', nv_error, 0, 0},
- {'v', nv_error, 0, 0},
-#endif
{Ctrl_W, nv_window, 0, 0},
{Ctrl_X, nv_addsub, 0, 0},
{Ctrl_Y, nv_scroll_line, 0, FALSE},
@@ -427,9 +405,7 @@ static const struct nv_cmd
{K_HELP, nv_help, NV_NCW, 0},
{K_F1, nv_help, NV_NCW, 0},
{K_XF1, nv_help, NV_NCW, 0},
-#ifdef FEAT_VISUAL
{K_SELECT, nv_select, 0, 0},
-#endif
#ifdef FEAT_GUI
{K_VER_SCROLLBAR, nv_ver_scrollbar, 0, 0},
{K_HOR_SCROLLBAR, nv_hor_scrollbar, 0, 0},
@@ -579,11 +555,9 @@ normal_cmd(oap, toplevel)
#ifdef FEAT_CMDL_INFO
int need_flushbuf; /* need to call out_flush() */
#endif
-#ifdef FEAT_VISUAL
pos_T old_pos; /* cursor position before command */
int mapped_len;
static int old_mapped_len = 0;
-#endif
int idx;
#ifdef FEAT_EVAL
int set_prevcount = FALSE;
@@ -643,9 +617,7 @@ normal_cmd(oap, toplevel)
}
#endif
-#ifdef FEAT_VISUAL
mapped_len = typebuf_maplen();
-#endif
State = NORMAL_BUSY;
#ifdef USE_ON_FLY_SCROLL
@@ -666,7 +638,6 @@ normal_cmd(oap, toplevel)
c = safe_vgetc();
LANGMAP_ADJUST(c, TRUE);
-#ifdef FEAT_VISUAL
/*
* If a mapping was started in Visual or Select mode, remember the length
* of the mapping. This is used below to not return to Insert mode for as
@@ -677,12 +648,10 @@ normal_cmd(oap, toplevel)
else if (old_mapped_len
|| (VIsual_active && mapped_len == 0 && typebuf_maplen() > 0))
old_mapped_len = typebuf_maplen();
-#endif
if (c == NUL)
c = K_ZERO;
-#ifdef FEAT_VISUAL
/*
* In Select mode, typed text replaces the selection.
*/
@@ -703,16 +672,13 @@ normal_cmd(oap, toplevel)
msg_nowait = TRUE; /* don't delay going to insert mode */
old_mapped_len = 0; /* do go to Insert mode */
}
-#endif
#ifdef FEAT_CMDL_INFO
need_flushbuf = add_to_showcmd(c);
#endif
getcount:
-#ifdef FEAT_VISUAL
if (!(VIsual_active && VIsual_select))
-#endif
{
/*
* Handle a count before a command and compute ca.count0.
@@ -856,7 +822,6 @@ getcount:
goto normal_end;
#endif
-#ifdef FEAT_VISUAL
/*
* In Visual/Select mode, a few keys are handled in a special way.
*/
@@ -892,7 +857,6 @@ getcount:
}
}
}
-#endif
#ifdef FEAT_RIGHTLEFT
if (curwin->w_p_rl && KeyTyped && !KeyStuffed
@@ -930,11 +894,7 @@ getcount:
&& !Recording
&& !Exec_reg)
|| ((ca.cmdchar == 'a' || ca.cmdchar == 'i')
- && (oap->op_type != OP_NOP
-#ifdef FEAT_VISUAL
- || VIsual_active
-#endif
- ))))
+ && (oap->op_type != OP_NOP || VIsual_active))))
{
int *cp;
int repl = FALSE; /* get character for replace mode */
@@ -1168,7 +1128,6 @@ getcount:
msg_col = 0;
}
-#ifdef FEAT_VISUAL
old_pos = curwin->w_cursor; /* remember where cursor was */
/* When 'keymodel' contains "startsel" some keys start Select/Visual
@@ -1188,7 +1147,6 @@ getcount:
mod_mask &= ~MOD_MASK_SHIFT;
}
}
-#endif
/*
* Execute the command!
@@ -1220,12 +1178,10 @@ getcount:
#endif
}
-#ifdef FEAT_VISUAL
/* Get the length of mapped chars again after typing a count, second
* character or "z333<cr>". */
if (old_mapped_len > 0)
old_mapped_len = typebuf_maplen();
-#endif
/*
* If an operation is pending, handle it...
@@ -1247,11 +1203,9 @@ getcount:
if ( ((p_smd
&& msg_silent == 0
&& (restart_edit != 0
-#ifdef FEAT_VISUAL
|| (VIsual_active
&& old_pos.lnum == curwin->w_cursor.lnum
&& old_pos.col == curwin->w_cursor.col)
-#endif
)
&& (clear_cmdline
|| redraw_cmdline)
@@ -1259,9 +1213,7 @@ getcount:
&& !msg_nowait
&& KeyTyped)
|| (restart_edit != 0
-#ifdef FEAT_VISUAL
&& !VIsual_active
-#endif
&& (msg_scroll
|| emsg_on_display)))
&& oap->regname == 0
@@ -1368,36 +1320,24 @@ normal_end:
* May switch from Visual to Select mode after CTRL-O command.
*/
if ( oap->op_type == OP_NOP
-#ifdef FEAT_VISUAL
&& ((restart_edit != 0 && !VIsual_active && old_mapped_len == 0)
|| restart_VIsual_select == 1)
-#else
- && restart_edit != 0
-#endif
&& !(ca.retval & CA_COMMAND_BUSY)
&& stuff_empty()
&& oap->regname == 0)
{
-#ifdef FEAT_VISUAL
if (restart_VIsual_select == 1)
{
VIsual_select = TRUE;
showmode();
restart_VIsual_select = 0;
}
-#endif
- if (restart_edit != 0
-#ifdef FEAT_VISUAL
- && !VIsual_active && old_mapped_len == 0
-#endif
- )
+ if (restart_edit != 0 && !VIsual_active && old_mapped_len == 0)
(void)edit(restart_edit, FALSE, 1L);
}
-#ifdef FEAT_VISUAL
if (restart_VIsual_select == 2)
restart_VIsual_select = 1;
-#endif
/* Save count before an operator for next time. */
opcount = ca.opcount;
@@ -1437,15 +1377,13 @@ do_pending_operator(cap, old_col, gui_yank)
int empty_region_error;
int restart_edit_save;
-#ifdef FEAT_VISUAL
/* The visual area is remembered for redo */
static int redo_VIsual_mode = NUL; /* 'v', 'V', or Ctrl-V */
static linenr_T redo_VIsual_line_count; /* number of lines */
static colnr_T redo_VIsual_vcol; /* number of cols or end column */
static long redo_VIsual_count; /* count for Visual operator */
-# ifdef FEAT_VIRTUALEDIT
+#ifdef FEAT_VIRTUALEDIT
int include_line_break = FALSE;
-# endif
#endif
#if defined(FEAT_CLIPBOARD)
@@ -1459,10 +1397,8 @@ do_pending_operator(cap, old_col, gui_yank)
if ((clip_star.available || clip_plus.available)
&& oap->op_type != OP_NOP
&& !gui_yank
-# ifdef FEAT_VISUAL
&& VIsual_active
&& !redo_VIsual_busy
-# endif
&& oap->regname == 0)
clip_auto_select();
#endif
@@ -1471,13 +1407,8 @@ do_pending_operator(cap, old_col, gui_yank)
/*
* If an operation is pending, handle it...
*/
- if ((finish_op
-#ifdef FEAT_VISUAL
- || VIsual_active
-#endif
- ) && oap->op_type != OP_NOP)
+ if ((finish_op || VIsual_active) && oap->op_type != OP_NOP)
{
-#ifdef FEAT_VISUAL
oap->is_VIsual = VIsual_active;
if (oap->motion_force == 'V')
oap->motion_type = MLINE;
@@ -1501,17 +1432,14 @@ do_pending_operator(cap, old_col, gui_yank)
VIsual_select = FALSE;
VIsual_reselect = FALSE;
}
-#endif
/* Only redo yank when 'y' flag is in 'cpoptions'. */
/* Never redo "zf" (define fold). */
if ((vim_strchr(p_cpo, CPO_YANK) != NULL || oap->op_type != OP_YANK)
-#ifdef FEAT_VISUAL
&& ((!VIsual_active || oap->motion_force)
/* Also redo Operator-pending Visual mode mappings */
|| (VIsual_active && cap->cmdchar == ':'
&& oap->op_type != OP_COLON))
-#endif
&& cap->cmdchar != 'D'
#ifdef FEAT_FOLDING
&& oap->op_type != OP_FOLD
@@ -1554,7 +1482,6 @@ do_pending_operator(cap, old_col, gui_yank)
}
}
-#ifdef FEAT_VISUAL
if (redo_VIsual_busy)
{
/* Redo of an operation on a Visual area. Use the same size from
@@ -1639,7 +1566,6 @@ do_pending_operator(cap, old_col, gui_yank)
if (VIsual_mode == 'V')
oap->start.col = 0;
}
-#endif /* FEAT_VISUAL */
/*
* Set oap->start to the first position of the operated text, oap->end
@@ -1690,7 +1616,6 @@ do_pending_operator(cap, old_col, gui_yank)
virtual_op = virtual_active();
#endif
-#ifdef FEAT_VISUAL
if (VIsual_active || redo_VIsual_busy)
{
if (VIsual_mode == Ctrl_V) /* block mode */
@@ -1826,9 +1751,9 @@ do_pending_operator(cap, old_col, gui_yank)
{
oap->motion_type = MCHAR;
if (VIsual_mode != Ctrl_V && *ml_get_pos(&(oap->end)) == NUL
-# ifdef FEAT_VIRTUALEDIT
+#ifdef FEAT_VIRTUALEDIT
&& (include_line_break || !virtual_op)
-# endif
+#endif
)
{
oap->inclusive = FALSE;
@@ -1840,9 +1765,9 @@ do_pending_operator(cap, old_col, gui_yank)
{
++oap->end.lnum;
oap->end.col = 0;
-# ifdef FEAT_VIRTUALEDIT
+#ifdef FEAT_VIRTUALEDIT
oap->end.coladd = 0;
-# endif
+#endif
++oap->line_count;
}
else
@@ -1868,10 +1793,10 @@ do_pending_operator(cap, old_col, gui_yank)
if (!gui_yank)
{
VIsual_active = FALSE;
-# ifdef FEAT_MOUSE
+#ifdef FEAT_MOUSE
setmouse();
mouse_dragging = 0;
-# endif
+#endif
if (mode_displayed)
clear_cmdline = TRUE; /* unshow visual mode later */
#ifdef FEAT_CMDL_INFO
@@ -1886,7 +1811,6 @@ do_pending_operator(cap, old_col, gui_yank)
redraw_curbuf_later(INVERTED);
}
}
-#endif
#ifdef FEAT_MBYTE
/* Include the trailing byte of a multi-byte char. */
@@ -1921,16 +1845,14 @@ do_pending_operator(cap, old_col, gui_yank)
empty_region_error = (oap->empty
&& vim_strchr(p_cpo, CPO_EMPTYREGION) != NULL);
-#ifdef FEAT_VISUAL
/* Force a redraw when operating on an empty Visual region, when
* 'modifiable is off or creating a fold. */
if (oap->is_VIsual && (oap->empty || !curbuf->b_p_ma
-# ifdef FEAT_FOLDING
+#ifdef FEAT_FOLDING
|| oap->op_type == OP_FOLD
-# endif
+#endif
))
redraw_curbuf_later(INVERTED);
-#endif
/*
* If the end of an operator is in column one while oap->motion_type
@@ -1943,10 +1865,8 @@ do_pending_operator(cap, old_col, gui_yank)
&& oap->inclusive == FALSE
&& !(cap->retval & CA_NO_ADJ_OP_END)
&& oap->end.col == 0
-#ifdef FEAT_VISUAL
&& (!oap->is_VIsual || *p_sel == 'o')
&& !oap->block_mode
-#endif
&& oap->line_count > 1)
{
oap->end_adjusted = TRUE; /* remember that we did this */
@@ -1971,11 +1891,7 @@ do_pending_operator(cap, old_col, gui_yank)
{
case OP_LSHIFT:
case OP_RSHIFT:
- op_shift(oap, TRUE,
-#ifdef FEAT_VISUAL
- oap->is_VIsual ? (int)cap->count1 :
-#endif
- 1);
+ op_shift(oap, TRUE, oap->is_VIsual ? (int)cap->count1 : 1);
auto_format(FALSE, TRUE);
break;
@@ -1988,15 +1904,14 @@ do_pending_operator(cap, old_col, gui_yank)
beep_flush();
else
{
- (void)do_join(oap->line_count, oap->op_type == OP_JOIN, TRUE, TRUE);
+ (void)do_join(oap->line_count, oap->op_type == OP_JOIN,
+ TRUE, TRUE);
auto_format(FALSE, TRUE);
}
break;
case OP_DELETE:
-#ifdef FEAT_VISUAL
VIsual_reselect = FALSE; /* don't reselect now */
-#endif
if (empty_region_error)
{
vim_beep();
@@ -2026,9 +1941,7 @@ do_pending_operator(cap, old_col, gui_yank)
break;
case OP_CHANGE:
-#ifdef FEAT_VISUAL
VIsual_reselect = FALSE; /* don't reselect now */
-#endif
if (empty_region_error)
{
vim_beep();
@@ -2126,9 +2039,7 @@ do_pending_operator(cap, old_col, gui_yank)
case OP_INSERT:
case OP_APPEND:
-#ifdef FEAT_VISUAL
VIsual_reselect = FALSE; /* don't reselect now */
-#endif
#ifdef FEAT_VISUALEXTRA
if (empty_region_error)
{
@@ -2158,9 +2069,7 @@ do_pending_operator(cap, old_col, gui_yank)
break;
case OP_REPLACE:
-#ifdef FEAT_VISUAL
VIsual_reselect = FALSE; /* don't reselect now */
-#endif
#ifdef FEAT_VISUALEXTRA
if (empty_region_error)
#endif
@@ -2220,9 +2129,7 @@ do_pending_operator(cap, old_col, gui_yank)
{
curwin->w_cursor = old_cursor;
}
-#ifdef FEAT_VISUAL
oap->block_mode = FALSE;
-#endif
clearop(oap);
}
}
@@ -2235,11 +2142,9 @@ op_colon(oap)
oparg_T *oap;
{
stuffcharReadbuff(':');
-#ifdef FEAT_VISUAL
if (oap->is_VIsual)
stuffReadbuff((char_u *)"'<,'>");
else
-#endif
{
/*
* Make the range look nice, so it can be repeated.
@@ -2404,14 +2309,12 @@ do_mouse(oap, c, dir, count, fixindent)
pos_T save_cursor;
#endif
win_T *old_curwin = curwin;
-#ifdef FEAT_VISUAL
static pos_T orig_cursor;
colnr_T leftcol, rightcol;
pos_T end_visual;
int diff;
int old_active = VIsual_active;
int old_mode = VIsual_mode;
-#endif
int regname;
#if defined(FEAT_FOLDING)
@@ -2432,15 +2335,12 @@ do_mouse(oap, c, dir, count, fixindent)
if (!gui.in_use)
#endif
{
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (!mouse_has(MOUSE_VISUAL))
return FALSE;
}
- else
-#endif
- if (State == NORMAL && !mouse_has(MOUSE_NORMAL))
+ else if (State == NORMAL && !mouse_has(MOUSE_NORMAL))
return FALSE;
}
@@ -2509,14 +2409,6 @@ do_mouse(oap, c, dir, count, fixindent)
}
}
-#ifndef FEAT_VISUAL
- /*
- * ALT is only used for starting/extending Visual mode.
- */
- if ((mod_mask & MOD_MASK_ALT))
- return FALSE;
-#endif
-
/*
* CTRL right mouse button does CTRL-T
*/
@@ -2586,7 +2478,6 @@ do_mouse(oap, c, dir, count, fixindent)
return FALSE;
}
-#ifdef FEAT_VISUAL
/*
* If visual was active, yank the highlighted text and put it
* before the mouse pointer position.
@@ -2607,7 +2498,6 @@ do_mouse(oap, c, dir, count, fixindent)
do_always = TRUE; /* ignore 'mouse' setting next time */
return FALSE;
}
-#endif
/*
* The rest is below jump_to_mouse()
*/
@@ -2761,7 +2651,6 @@ do_mouse(oap, c, dir, count, fixindent)
{
/* First set the cursor position before showing the popup
* menu. */
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
pos_T m_pos;
@@ -2800,16 +2689,11 @@ do_mouse(oap, c, dir, count, fixindent)
}
else
jump_flags = MOUSE_MAY_STOP_VIS;
-#endif
}
if (jump_flags)
{
jump_flags = jump_to_mouse(jump_flags, NULL, which_button);
- update_curbuf(
-#ifdef FEAT_VISUAL
- VIsual_active ? INVERTED :
-#endif
- VALID);
+ update_curbuf(VIsual_active ? INVERTED : VALID);
setcursor();
out_flush(); /* Update before showing popup menu */
}
@@ -2832,7 +2716,6 @@ do_mouse(oap, c, dir, count, fixindent)
}
}
-#ifdef FEAT_VISUAL
if ((State & (NORMAL | INSERT))
&& !(mod_mask & (MOD_MASK_SHIFT | MOD_MASK_CTRL)))
{
@@ -2872,7 +2755,6 @@ do_mouse(oap, c, dir, count, fixindent)
jump_flags |= MOUSE_MAY_VIS;
}
}
-#endif
/*
* If an operator is pending, ignore all drags and releases until the
@@ -2941,7 +2823,6 @@ do_mouse(oap, c, dir, count, fixindent)
}
#endif
-#ifdef FEAT_VISUAL
/* Set global flag that we are extending the Visual area with mouse
* dragging; temporarily minimize 'scrolloff'. */
if (VIsual_active && is_drag && p_so)
@@ -3040,7 +2921,6 @@ do_mouse(oap, c, dir, count, fixindent)
*/
else if ((State & INSERT) && VIsual_active)
stuffcharReadbuff(Ctrl_O);
-#endif
/*
* Middle mouse click: Put text before cursor.
@@ -3118,11 +2998,7 @@ do_mouse(oap, c, dir, count, fixindent)
*/
else if ((mod_mask & MOD_MASK_SHIFT))
{
- if (State & INSERT
-#ifdef FEAT_VISUAL
- || (VIsual_active && VIsual_select)
-#endif
- )
+ if ((State & INSERT) || (VIsual_active && VIsual_select))
stuffcharReadbuff(Ctrl_O);
if (which_button == MOUSE_LEFT)
stuffcharReadbuff('*');
@@ -3153,7 +3029,6 @@ do_mouse(oap, c, dir, count, fixindent)
# endif
}
#endif
-#ifdef FEAT_VISUAL
else if ((mod_mask & MOD_MASK_MULTI_CLICK) && (State & (NORMAL | INSERT))
&& mouse_has(MOUSE_VISUAL))
{
@@ -3267,12 +3142,10 @@ do_mouse(oap, c, dir, count, fixindent)
|| (VIsual_active && p_smd && msg_silent == 0
&& (!old_active || VIsual_mode != old_mode)))
redraw_cmdline = TRUE;
-#endif
return moved;
}
-#ifdef FEAT_VISUAL
/*
* Move "pos" back to the start of the word it's in.
*/
@@ -3372,10 +3245,8 @@ get_mouse_class(p)
return 1;
return c;
}
-#endif /* FEAT_VISUAL */
#endif /* FEAT_MOUSE */
-#if defined(FEAT_VISUAL) || defined(PROTO)
/*
* Check if highlighting for visual mode is possible, give a warning message
* if not.
@@ -3468,7 +3339,6 @@ reset_VIsual()
VIsual_reselect = FALSE;
}
}
-#endif /* FEAT_VISUAL */
#if defined(FEAT_BEVAL)
static int find_is_eval_item __ARGS((char_u *ptr, int *colp, int *nbp, int dir));
@@ -3802,11 +3672,7 @@ checkclearop(oap)
checkclearopq(oap)
oparg_T *oap;
{
- if (oap->op_type == OP_NOP
-#ifdef FEAT_VISUAL
- && !VIsual_active
-#endif
- )
+ if (oap->op_type == OP_NOP && !VIsual_active)
return FALSE;
clearopbeep(oap);
return TRUE;
@@ -3830,7 +3696,6 @@ clearopbeep(oap)
beep_flush();
}
-#ifdef FEAT_VISUAL
/*
* Remove the shift modifier from a special key.
*/
@@ -3849,18 +3714,13 @@ unshift_special(cap)
}
cap->cmdchar = simplify_key(cap->cmdchar, &mod_mask);
}
-#endif
#if defined(FEAT_CMDL_INFO) || defined(PROTO)
/*
* Routines for displaying a partly typed command
*/
-#ifdef FEAT_VISUAL /* need room for size of Visual area */
-# define SHOWCMD_BUFLEN SHOWCMD_COLS + 1 + 30
-#else
-# define SHOWCMD_BUFLEN SHOWCMD_COLS + 1
-#endif
+#define SHOWCMD_BUFLEN SHOWCMD_COLS + 1 + 30
static char_u showcmd_buf[SHOWCMD_BUFLEN];
static char_u old_showcmd_buf[SHOWCMD_BUFLEN]; /* For push_showcmd() */
static int showcmd_is_clear = TRUE;
@@ -3874,7 +3734,6 @@ clear_showcmd()
if (!p_sc)
return;
-#ifdef FEAT_VISUAL
if (VIsual_active && !char_avail())
{
int cursor_bot = lt(VIsual, curwin->w_cursor);
@@ -3960,7 +3819,6 @@ clear_showcmd()
showcmd_visual = TRUE;
}
else
-#endif
{
showcmd_buf[0] = NUL;
showcmd_visual = FALSE;
@@ -4203,10 +4061,8 @@ check_scrollbind(topline_diff, leftcol_diff)
int want_hor;
win_T *old_curwin = curwin;
buf_T *old_curbuf = curbuf;
-#ifdef FEAT_VISUAL
int old_VIsual_select = VIsual_select;
int old_VIsual_active = VIsual_active;
-#endif
colnr_T tgt_leftcol = curwin->w_leftcol;
long topline;
long y;
@@ -4223,9 +4079,7 @@ check_scrollbind(topline_diff, leftcol_diff)
/*
* loop through the scrollbound windows and scroll accordingly
*/
-#ifdef FEAT_VISUAL
VIsual_select = VIsual_active = 0;
-#endif
for (curwin = firstwin; curwin; curwin = curwin->w_next)
{
curbuf = curwin->w_buffer;
@@ -4280,10 +4134,8 @@ check_scrollbind(topline_diff, leftcol_diff)
/*
* reset current-window
*/
-#ifdef FEAT_VISUAL
VIsual_select = old_VIsual_select;
VIsual_active = old_VIsual_active;
-#endif
curwin = old_curwin;
curbuf = old_curbuf;
}
@@ -5239,11 +5091,9 @@ dozet:
if (checkclearop(cap->oap))
break;
-# ifdef FEAT_VISUAL
if (VIsual_active && get_visual_text(cap, &ptr, &len)
== FAIL)
return;
-# endif
if (ptr == NULL)
{
pos_T pos = curwin->w_cursor;
@@ -5411,12 +5261,9 @@ nv_exmode(cap)
/*
* Ignore 'Q' in Visual mode, just give a beep.
*/
-#ifdef FEAT_VISUAL
if (VIsual_active)
vim_beep();
- else
-#endif
- if (!checkclearop(cap->oap))
+ else if (!checkclearop(cap->oap))
do_exmode(FALSE);
}
@@ -5430,11 +5277,9 @@ nv_colon(cap)
int old_p_im;
int cmd_result;
-#ifdef FEAT_VISUAL
if (VIsual_active)
nv_operator(cap);
else
-#endif
{
if (cap->oap->op_type != OP_NOP)
{
@@ -5494,15 +5339,12 @@ nv_colon(cap)
nv_ctrlg(cap)
cmdarg_T *cap;
{
-#ifdef FEAT_VISUAL
if (VIsual_active) /* toggle Selection/Visual mode */
{
VIsual_select = !VIsual_select;
showmode();
}
- else
-#endif
- if (!checkclearop(cap->oap))
+ else if (!checkclearop(cap->oap))
/* print full name if count given or :cd used */
fileinfo((int)cap->count0, FALSE, TRUE);
}
@@ -5514,14 +5356,12 @@ nv_ctrlg(cap)
nv_ctrlh(cap)
cmdarg_T *cap;
{
-#ifdef FEAT_VISUAL
if (VIsual_active && VIsual_select)
{
cap->cmdchar = 'x'; /* BS key behaves like 'x' in Select mode */
v_visop(cap);
}
else
-#endif
nv_left(cap);
}
@@ -5558,7 +5398,6 @@ nv_clear(cap)
nv_ctrlo(cap)
cmdarg_T *cap;
{
-#ifdef FEAT_VISUAL
if (VIsual_active && VIsual_select)
{
VIsual_select = FALSE;
@@ -5566,7 +5405,6 @@ nv_ctrlo(cap)
restart_VIsual_select = 2; /* restart Select mode later */
}
else
-#endif
{
cap->count1 = -cap->count1;
nv_pcmark(cap);
@@ -5675,10 +5513,8 @@ nv_ident(cap)
*/
if (cmdchar == ']' || cmdchar == Ctrl_RSB || cmdchar == 'K')
{
-#ifdef FEAT_VISUAL
if (VIsual_active && get_visual_text(cap, &ptr, &n) == FAIL)
return;
-#endif
if (checkclearopq(cap->oap))
return;
}
@@ -5872,7 +5708,6 @@ nv_ident(cap)
vim_free(buf);
}
-#if defined(FEAT_VISUAL) || defined(PROTO)
/*
* Get visually selected text, within one line only.
* Returns FAIL if more than one line selected.
@@ -5917,7 +5752,6 @@ get_visual_text(cap, pp, lenp)
reset_VIsual_and_resel();
return OK;
}
-#endif
/*
* CTRL-T: backwards in tag stack
@@ -6040,11 +5874,7 @@ nv_right(cap)
cmdarg_T *cap;
{
long n;
-#ifdef FEAT_VISUAL
- int PAST_LINE;
-#else
-# define PAST_LINE 0
-#endif
+ int past_line;
if (mod_mask & (MOD_MASK_SHIFT | MOD_MASK_CTRL))
{
@@ -6057,25 +5887,21 @@ nv_right(cap)
cap->oap->motion_type = MCHAR;
cap->oap->inclusive = FALSE;
-#ifdef FEAT_VISUAL
- PAST_LINE = (VIsual_active && *p_sel != 'o');
+ past_line = (VIsual_active && *p_sel != 'o');
-# ifdef FEAT_VIRTUALEDIT
+#ifdef FEAT_VIRTUALEDIT
/*
- * In virtual mode, there's no such thing as "PAST_LINE", as lines are
- * (theoretically) infinitely long.
+ * In virtual edit mode, there's no such thing as "past_line", as lines
+ * are (theoretically) infinitely long.
*/
if (virtual_active())
- PAST_LINE = 0;
-# endif
+ past_line = 0;
#endif
for (n = cap->count1; n > 0; --n)
{
- if ((!PAST_LINE && oneright() == FAIL)
-#ifdef FEAT_VISUAL
- || (PAST_LINE && *ml_get_cursor() == NUL)
-#endif
+ if ((!past_line && oneright() == FAIL)
+ || (past_line && *ml_get_cursor() == NUL)
)
{
/*
@@ -6123,26 +5949,24 @@ nv_right(cap)
}
break;
}
-#ifdef FEAT_VISUAL
- else if (PAST_LINE)
+ else if (past_line)
{
curwin->w_set_curswant = TRUE;
-# ifdef FEAT_VIRTUALEDIT
+#ifdef FEAT_VIRTUALEDIT
if (virtual_active())
oneright();
else
-# endif
+#endif
{
-# ifdef FEAT_MBYTE
+#ifdef FEAT_MBYTE
if (has_mbyte)
curwin->w_cursor.col +=
(*mb_ptr2len)(ml_get_cursor());
else
-# endif
+#endif
++curwin->w_cursor.col;
}
}
-#endif
}
#ifdef FEAT_FOLDING
if (n != cap->count1 && (fdo_flags & FDO_HOR) && KeyTyped
@@ -6503,9 +6327,7 @@ nv_csearch(cap)
else
curwin->w_cursor.coladd = 0;
#endif
-#ifdef FEAT_VISUAL
adjust_for_sel(cap);
-#endif
#ifdef FEAT_FOLDING
if ((fdo_flags & FDO_HOR) && KeyTyped && cap->oap->op_type == OP_NOP)
foldOpenCursor();
@@ -6754,7 +6576,6 @@ nv_brackets(cap)
int dir = (cap->cmdchar == ']' && cap->nchar == 'p')
? FORWARD : BACKWARD;
int regname = cap->oap->regname;
-#ifdef FEAT_VISUAL
int was_visual = VIsual_active;
int line_count = curbuf->b_ml.ml_line_count;
pos_T start, end;
@@ -6766,14 +6587,12 @@ nv_brackets(cap)
end = equalpos(start,VIsual) ? curwin->w_cursor : VIsual;
curwin->w_cursor = (dir == BACKWARD ? start : end);
}
-#endif
# ifdef FEAT_CLIPBOARD
adjust_clip_reg(&regname);
# endif
prep_redo_cmd(cap);
do_put(regname, dir, cap->count1, PUT_FIXINDENT);
-#ifdef FEAT_VISUAL
if (was_visual)
{
VIsual = start;
@@ -6802,7 +6621,6 @@ nv_brackets(cap)
redraw_later(SOME_VALID);
}
}
-#endif
}
}
@@ -6936,9 +6754,7 @@ nv_percent(cap)
#ifdef FEAT_VIRTUALEDIT
curwin->w_cursor.coladd = 0;
#endif
-#ifdef FEAT_VISUAL
adjust_for_sel(cap);
-#endif
}
}
#ifdef FEAT_FOLDING
@@ -7027,11 +6843,7 @@ nv_findpar(cap)
nv_undo(cap)
cmdarg_T *cap;
{
- if (cap->oap->op_type == OP_LOWER
-#ifdef FEAT_VISUAL
- || VIsual_active
-#endif
- )
+ if (cap->oap->op_type == OP_LOWER || VIsual_active)
{
/* translate "<Visual>u" to "<Visual>gu" and "guu" to "gugu" */
cap->cmdchar = 'g';
@@ -7089,7 +6901,6 @@ nv_replace(cap)
return;
}
-#ifdef FEAT_VISUAL
/* Visual mode "r" */
if (VIsual_active)
{
@@ -7105,7 +6916,6 @@ nv_replace(cap)
nv_operator(cap);
return;
}
-#endif
#ifdef FEAT_VIRTUALEDIT
/* Break tabs, etc. */
@@ -7273,7 +7083,6 @@ nv_replace(cap)
}
}
-#ifdef FEAT_VISUAL
/*
* 'o': Exchange start and end of Visual area.
* 'O': same, but in block mode exchange left and right corners.
@@ -7326,7 +7135,6 @@ v_swap_corners(cmdchar)
curwin->w_set_curswant = TRUE;
}
}
-#endif /* FEAT_VISUAL */
/*
* "R" (cap->arg is FALSE) and "gR" (cap->arg is TRUE).
@@ -7335,7 +7143,6 @@ v_swap_corners(cmdchar)
nv_Replace(cap)
cmdarg_T *cap;
{
-#ifdef FEAT_VISUAL
if (VIsual_active) /* "R" is replace lines */
{
cap->cmdchar = 'c';
@@ -7344,9 +7151,7 @@ nv_Replace(cap)
VIsual_mode = 'V';
nv_operator(cap);
}
- else
-#endif
- if (!checkclearopq(cap->oap))
+ else if (!checkclearopq(cap->oap))
{
if (!curbuf->b_p_ma)
EMSG(_(e_modifiable));
@@ -7369,16 +7174,13 @@ nv_Replace(cap)
nv_vreplace(cap)
cmdarg_T *cap;
{
-# ifdef FEAT_VISUAL
if (VIsual_active)
{
cap->cmdchar = 'r';
cap->nchar = cap->extra_char;
nv_replace(cap); /* Do same as "r" in Visual mode for now */
}
- else
-# endif
- if (!checkclearopq(cap->oap))
+ else if (!checkclearopq(cap->oap))
{
if (!curbuf->b_p_ma)
EMSG(_(e_modifiable));
@@ -7525,7 +7327,6 @@ nv_cursormark(cap, flag, pos)
curwin->w_set_curswant = TRUE;
}
-#ifdef FEAT_VISUAL
/*
* Handle commands that are operators in Visual mode.
*/
@@ -7550,7 +7351,6 @@ v_visop(cap)
cap->cmdchar = *(vim_strchr(trans, cap->cmdchar) + 1);
nv_operator(cap);
}
-#endif
/*
* "s" and "S" commands.
@@ -7559,7 +7359,6 @@ v_visop(cap)
nv_subst(cap)
cmdarg_T *cap;
{
-#ifdef FEAT_VISUAL
if (VIsual_active) /* "vs" and "vS" are the same as "vc" */
{
if (cap->cmdchar == 'S')
@@ -7571,7 +7370,6 @@ nv_subst(cap)
nv_operator(cap);
}
else
-#endif
nv_optrans(cap);
}
@@ -7585,12 +7383,10 @@ nv_abbrev(cap)
if (cap->cmdchar == K_DEL || cap->cmdchar == K_KDEL)
cap->cmdchar = 'x'; /* DEL key behaves like 'x' */
-#ifdef FEAT_VISUAL
/* in Visual mode these commands are operators */
if (VIsual_active)
v_visop(cap);
else
-#endif
nv_optrans(cap);
}
@@ -7758,7 +7554,6 @@ nv_regname(cap)
clearopbeep(cap->oap);
}
-#ifdef FEAT_VISUAL
/*
* Handle "v", "V" and "CTRL-V" commands.
* Also for "gh", "gH" and "g^H" commands: Always start Select mode, cap->arg
@@ -7950,7 +7745,6 @@ n_start_visual_mode(c)
}
}
-#endif /* FEAT_VISUAL */
/*
* CTRL-W: Window commands
@@ -7975,10 +7769,8 @@ nv_suspend(cap)
cmdarg_T *cap;
{
clearop(cap->oap);
-#ifdef FEAT_VISUAL
if (VIsual_active)
end_visual_mode(); /* stop Visual mode */
-#endif
do_cmdline_cmd((char_u *)"st");
}
@@ -7990,9 +7782,7 @@ nv_g_cmd(cap)
cmdarg_T *cap;
{
oparg_T *oap = cap->oap;
-#ifdef FEAT_VISUAL
pos_T tpos;
-#endif
int i;
int flag = FALSE;
@@ -8025,7 +7815,6 @@ nv_g_cmd(cap)
do_cmdline_cmd((char_u *)"%s//~/&");
break;
-#ifdef FEAT_VISUAL
/*
* "gv": Reselect the previous Visual area. If Visual already active,
* exchange previous and current Visual area.
@@ -8126,7 +7915,6 @@ nv_g_cmd(cap)
cap->arg = TRUE;
nv_visual(cap);
break;
-#endif /* FEAT_VISUAL */
/* "gn", "gN" visually select next/previous search match
* "gn" selects next match
@@ -8134,9 +7922,7 @@ nv_g_cmd(cap)
*/
case 'N':
case 'n':
-#ifdef FEAT_VISUAL
if (!current_search(cap->count1, cap->nchar == 'n'))
-#endif
clearopbeep(oap);
break;
@@ -8258,9 +8044,7 @@ nv_g_cmd(cap)
&& vim_iswhite(ptr[curwin->w_cursor.col]))
--curwin->w_cursor.col;
curwin->w_set_curswant = TRUE;
-#ifdef FEAT_VISUAL
adjust_for_sel(cap);
-#endif
}
break;
@@ -8657,11 +8441,7 @@ nv_Undo(cap)
cmdarg_T *cap;
{
/* In Visual mode and typing "gUU" triggers an operator */
- if (cap->oap->op_type == OP_UPPER
-#ifdef FEAT_VISUAL
- || VIsual_active
-#endif
- )
+ if (cap->oap->op_type == OP_UPPER || VIsual_active)
{
/* translate "gUU" to "gUgU" */
cap->cmdchar = 'g';
@@ -8683,11 +8463,7 @@ nv_Undo(cap)
nv_tilde(cap)
cmdarg_T *cap;
{
- if (!p_to
-#ifdef FEAT_VISUAL
- && !VIsual_active
-#endif
- && cap->oap->op_type != OP_TILDE)
+ if (!p_to && !VIsual_active && cap->oap->op_type != OP_TILDE)
n_swapchar(cap);
else
nv_operator(cap);
@@ -8906,9 +8682,7 @@ nv_wordcmd(cap)
clearopbeep(cap->oap);
else
{
-#ifdef FEAT_VISUAL
adjust_for_sel(cap);
-#endif
#ifdef FEAT_FOLDING
if ((fdo_flags & FDO_HOR) && KeyTyped && cap->oap->op_type == OP_NOP)
foldOpenCursor();
@@ -8931,9 +8705,7 @@ adjust_cursor(oap)
* - 'virtualedit' is not "all" and not "onemore".
*/
if (curwin->w_cursor.col > 0 && gchar_cursor() == NUL
-#ifdef FEAT_VISUAL
&& (!VIsual_active || *p_sel == 'o')
-#endif
#ifdef FEAT_VIRTUALEDIT
&& !virtual_active() && (ve_flags & VE_ONEMORE) == 0
#endif
@@ -8968,7 +8740,6 @@ nv_beginline(cap)
one-character line). */
}
-#ifdef FEAT_VISUAL
/*
* In exclusive Visual mode, may include the last character.
*/
@@ -8979,11 +8750,11 @@ adjust_for_sel(cap)
if (VIsual_active && cap->oap->inclusive && *p_sel == 'e'
&& gchar_cursor() != NUL && lt(VIsual, curwin->w_cursor))
{
-# ifdef FEAT_MBYTE
+#ifdef FEAT_MBYTE
if (has_mbyte)
inc_cursor();
else
-# endif
+#endif
++curwin->w_cursor.col;
cap->oap->inclusive = FALSE;
}
@@ -9044,7 +8815,6 @@ nv_select(cap)
}
}
-#endif
/*
* "G", "gg", CTRL-END, CTRL-HOME.
@@ -9095,13 +8865,11 @@ nv_normal(cap)
if (cmdwin_type != 0)
cmdwin_result = Ctrl_C;
#endif
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
end_visual_mode(); /* stop Visual */
redraw_curbuf_later(INVERTED);
}
-#endif
/* CTRL-\ CTRL-G restarts Insert mode when 'insertmode' is set. */
if (cap->nchar == Ctrl_G && p_im)
restart_edit = 'a';
@@ -9132,9 +8900,7 @@ nv_esc(cap)
#ifdef FEAT_CMDWIN
&& cmdwin_type == 0
#endif
-#ifdef FEAT_VISUAL
&& !VIsual_active
-#endif
&& no_reason)
MSG(_("Type :quit<Enter> to exit Vim"));
@@ -9152,7 +8918,6 @@ nv_esc(cap)
#endif
}
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
end_visual_mode(); /* stop Visual */
@@ -9160,10 +8925,8 @@ nv_esc(cap)
curwin->w_set_curswant = TRUE;
redraw_curbuf_later(INVERTED);
}
- else
-#endif
- if (no_reason)
- vim_beep();
+ else if (no_reason)
+ vim_beep();
clearop(cap->oap);
/* A CTRL-C is often used at the start of a menu. When 'insertmode' is
@@ -9187,20 +8950,13 @@ nv_edit(cap)
if (cap->cmdchar == K_INS || cap->cmdchar == K_KINS)
cap->cmdchar = 'i';
-#ifdef FEAT_VISUAL
/* in Visual mode "A" and "I" are an operator */
if (VIsual_active && (cap->cmdchar == 'A' || cap->cmdchar == 'I'))
v_visop(cap);
/* in Visual mode and after an operator "a" and "i" are for text objects */
- else
-#endif
- if ((cap->cmdchar == 'a' || cap->cmdchar == 'i')
- && (cap->oap->op_type != OP_NOP
-#ifdef FEAT_VISUAL
- || VIsual_active
-#endif
- ))
+ else if ((cap->cmdchar == 'a' || cap->cmdchar == 'i')
+ && (cap->oap->op_type != OP_NOP || VIsual_active))
{
#ifdef FEAT_TEXTOBJ
nv_object(cap);
@@ -9467,12 +9223,9 @@ nv_halfpage(cap)
nv_join(cap)
cmdarg_T *cap;
{
-#ifdef FEAT_VISUAL
if (VIsual_active) /* join the visual lines */
nv_operator(cap);
- else
-#endif
- if (!checkclearop(cap->oap))
+ else if (!checkclearop(cap->oap))
{
if (cap->count0 <= 1)
cap->count0 = 2; /* default for join is two lines! */
@@ -9495,12 +9248,10 @@ nv_join(cap)
nv_put(cap)
cmdarg_T *cap;
{
-#ifdef FEAT_VISUAL
int regname = 0;
void *reg1 = NULL, *reg2 = NULL;
int empty = FALSE;
int was_visual = FALSE;
-#endif
int dir;
int flags = 0;
@@ -9526,7 +9277,6 @@ nv_put(cap)
if (cap->cmdchar == 'g')
flags |= PUT_CURSEND;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
/* Putting in Visual mode: The put text replaces the selected
@@ -9536,14 +9286,14 @@ nv_put(cap)
*/
was_visual = TRUE;
regname = cap->oap->regname;
-# ifdef FEAT_CLIPBOARD
+#ifdef FEAT_CLIPBOARD
adjust_clip_reg(&regname);
-# endif
+#endif
if (regname == 0 || regname == '"'
|| VIM_ISDIGIT(regname) || regname == '-'
-# ifdef FEAT_CLIPBOARD
+#ifdef FEAT_CLIPBOARD
|| (clip_unnamed && (regname == '*' || regname == '+'))
-# endif
+#endif
)
{
@@ -9591,10 +9341,8 @@ nv_put(cap)
/* May have been reset in do_put(). */
VIsual_active = TRUE;
}
-#endif
do_put(cap->oap->regname, dir, cap->count1, flags);
-#ifdef FEAT_VISUAL
/* If a register was saved, put it back now. */
if (reg2 != NULL)
put_register(regname, reg2);
@@ -9621,7 +9369,6 @@ nv_put(cap)
coladvance((colnr_T)MAXCOL);
}
}
-#endif
auto_format(FALSE, TRUE);
}
}
@@ -9642,11 +9389,9 @@ nv_open(cap)
}
else
#endif
-#ifdef FEAT_VISUAL
if (VIsual_active) /* switch start and end of visual */
v_swap_corners(cap->cmdchar);
else
-#endif
n_opencmd(cap);
}
diff --git a/src/ops.c b/src/ops.c
index cd1f29e0b..1d9f644f9 100644
--- a/src/ops.c
+++ b/src/ops.c
@@ -57,9 +57,7 @@ static struct yankreg
char_u **y_array; /* pointer to array of line pointers */
linenr_T y_size; /* number of lines in y_array */
char_u y_type; /* MLINE, MCHAR or MBLOCK */
-#ifdef FEAT_VISUAL
colnr_T y_width; /* only set if y_type == MBLOCK */
-#endif
} y_regs[NUM_REGISTERS];
static struct yankreg *y_current; /* ptr to current yankreg */
@@ -107,17 +105,13 @@ static void free_yank_all __ARGS((void));
static int yank_copy_line __ARGS((struct block_def *bd, long y_idx));
#ifdef FEAT_CLIPBOARD
static void copy_yank_reg __ARGS((struct yankreg *reg));
-# if defined(FEAT_VISUAL) || defined(FEAT_EVAL)
static void may_set_selection __ARGS((void));
-# endif
#endif
static void dis_msg __ARGS((char_u *p, int skip_esc));
#if defined(FEAT_COMMENTS) || defined(PROTO)
static char_u *skip_comment __ARGS((char_u *line, int process, int include_space, int *is_comment));
#endif
-#ifdef FEAT_VISUAL
static void block_prep __ARGS((oparg_T *oap, struct block_def *, linenr_T, int));
-#endif
#if defined(FEAT_CLIPBOARD) || defined(FEAT_EVAL)
static void str_to_reg __ARGS((struct yankreg *y_ptr, int type, char_u *str, long len, long blocklen));
#endif
@@ -187,7 +181,6 @@ get_op_type(char1, char2)
return i;
}
-#if defined(FEAT_VISUAL) || defined(PROTO)
/*
* Return TRUE if operator "op" always works on whole lines.
*/
@@ -197,7 +190,6 @@ op_on_lines(op)
{
return opchars[op][2];
}
-#endif
/*
* Get first operator command character.
@@ -232,18 +224,14 @@ op_shift(oap, curs_top, amount)
long i;
int first_char;
char_u *s;
-#ifdef FEAT_VISUAL
int block_col = 0;
-#endif
if (u_save((linenr_T)(oap->start.lnum - 1),
(linenr_T)(oap->end.lnum + 1)) == FAIL)
return;
-#ifdef FEAT_VISUAL
if (oap->block_mode)
block_col = curwin->w_cursor.col;
-#endif
for (i = oap->line_count; --i >= 0; )
{
@@ -272,15 +260,12 @@ op_shift(oap, curs_top, amount)
foldOpenCursor();
#endif
-#ifdef FEAT_VISUAL
if (oap->block_mode)
{
curwin->w_cursor.lnum = oap->start.lnum;
curwin->w_cursor.col = block_col;
}
- else
-#endif
- if (curs_top) /* put cursor on first line, for ">>" */
+ else if (curs_top) /* put cursor on first line, for ">>" */
{
curwin->w_cursor.lnum = oap->start.lnum;
beginline(BL_SOL | BL_FIX); /* shift_line() may have set cursor.col */
@@ -733,14 +718,10 @@ op_reindent(oap, how)
* there is no change still need to remove the Visual highlighting. */
if (last_changed != 0)
changed_lines(first_changed, 0,
-#ifdef FEAT_VISUAL
oap->is_VIsual ? start_lnum + oap->line_count :
-#endif
last_changed + 1, 0L);
-#ifdef FEAT_VISUAL
else if (oap->is_VIsual)
redraw_curbuf_later(INVERTED);
-#endif
if (oap->line_count > p_report)
{
@@ -948,7 +929,6 @@ may_get_selection(regname)
}
#endif
-#if defined(FEAT_VISUAL) || defined(PROTO)
/*
* Obtain the contents of a "normal" register. The register is made empty.
* The returned pointer has allocated memory, use put_register() later.
@@ -1016,10 +996,10 @@ put_register(name, reg)
*y_current = *(struct yankreg *)reg;
vim_free(reg);
-# ifdef FEAT_CLIPBOARD
+#ifdef FEAT_CLIPBOARD
/* Send text written to clipboard register to the clipboard. */
may_set_selection();
-# endif
+#endif
}
void
@@ -1034,7 +1014,6 @@ free_register(reg)
vim_free(reg);
*y_current = tmp;
}
-#endif
#if defined(FEAT_MOUSE) || defined(PROTO)
/*
@@ -1634,10 +1613,8 @@ op_delete(oap)
int n;
linenr_T lnum;
char_u *ptr;
-#ifdef FEAT_VISUAL
char_u *newp, *oldp;
struct block_def bd;
-#endif
linenr_T old_lcount = curbuf->b_ml.ml_line_count;
int did_yank = FALSE;
int orig_regname = oap->regname;
@@ -1670,10 +1647,8 @@ op_delete(oap)
* delete linewise. Don't do this for the change command or Visual mode.
*/
if ( oap->motion_type == MCHAR
-#ifdef FEAT_VISUAL
&& !oap->is_VIsual
&& !oap->block_mode
-#endif
&& oap->line_count > 1
&& oap->motion_force == NUL
&& oap->op_type == OP_DELETE)
@@ -1787,7 +1762,6 @@ op_delete(oap)
}
}
-#ifdef FEAT_VISUAL
/*
* block mode delete
*/
@@ -1838,9 +1812,7 @@ op_delete(oap)
oap->end.lnum + 1, 0L);
oap->line_count = 0; /* no lines deleted */
}
- else
-#endif
- if (oap->motion_type == MLINE)
+ else if (oap->motion_type == MLINE)
{
if (oap->op_type == OP_CHANGE)
{
@@ -1924,13 +1896,10 @@ op_delete(oap)
return FAIL;
/* if 'cpoptions' contains '$', display '$' at end of change */
- if ( vim_strchr(p_cpo, CPO_DOLLAR) != NULL
+ if ( vim_strchr(p_cpo, CPO_DOLLAR) != NULL
&& oap->op_type == OP_CHANGE
&& oap->end.lnum == curwin->w_cursor.lnum
-#ifdef FEAT_VISUAL
- && !oap->is_VIsual
-#endif
- )
+ && !oap->is_VIsual)
display_dollar(oap->end.col - !oap->inclusive);
n = oap->end.col - oap->start.col + 1 - !oap->inclusive;
@@ -1967,11 +1936,8 @@ op_delete(oap)
}
else
{
- (void)del_bytes((long)n, !virtual_op, oap->op_type == OP_DELETE
-#ifdef FEAT_VISUAL
- && !oap->is_VIsual
-#endif
- );
+ (void)del_bytes((long)n, !virtual_op,
+ oap->op_type == OP_DELETE && !oap->is_VIsual);
}
}
else /* delete characters between lines */
@@ -2008,11 +1974,8 @@ op_delete(oap)
{
/* delete from start of line until op_end */
curwin->w_cursor.col = 0;
- (void)del_bytes((long)n, !virtual_op, oap->op_type == OP_DELETE
-#ifdef FEAT_VISUAL
- && !oap->is_VIsual
-#endif
- );
+ (void)del_bytes((long)n, !virtual_op,
+ oap->op_type == OP_DELETE && !oap->is_VIsual);
curwin->w_cursor = curpos; /* restore curwin->w_cursor */
}
if (curwin->w_cursor.lnum < curbuf->b_ml.ml_line_count)
@@ -2025,14 +1988,12 @@ op_delete(oap)
#ifdef FEAT_VIRTUALEDIT
setmarks:
#endif
-#ifdef FEAT_VISUAL
if (oap->block_mode)
{
curbuf->b_op_end.lnum = oap->end.lnum;
curbuf->b_op_end.col = oap->start.col;
}
else
-#endif
curbuf->b_op_end = oap->start;
curbuf->b_op_start = oap->start;
@@ -2318,9 +2279,7 @@ op_tilde(oap)
oparg_T *oap;
{
pos_T pos;
-#ifdef FEAT_VISUAL
struct block_def bd;
-#endif
int did_change = FALSE;
if (u_save((linenr_T)(oap->start.lnum - 1),
@@ -2328,7 +2287,6 @@ op_tilde(oap)
return;
pos = oap->start;
-#ifdef FEAT_VISUAL
if (oap->block_mode) /* Visual block mode */
{
for (; pos.lnum <= oap->end.lnum; ++pos.lnum)
@@ -2340,7 +2298,7 @@ op_tilde(oap)
one_change = swapchars(oap->op_type, &pos, bd.textlen);
did_change |= one_change;
-# ifdef FEAT_NETBEANS_INTG
+#ifdef FEAT_NETBEANS_INTG
if (netbeans_active() && one_change)
{
char_u *ptr = ml_get_buf(curbuf, pos.lnum, FALSE);
@@ -2350,13 +2308,12 @@ op_tilde(oap)
netbeans_inserted(curbuf, pos.lnum, bd.textcol,
&ptr[bd.textcol], bd.textlen);
}
-# endif
+#endif
}
if (did_change)
changed_lines(oap->start.lnum, 0, oap->end.lnum + 1, 0L);
}
else /* not block mode */
-#endif
{
if (oap->motion_type == MLINE)
{
@@ -2412,11 +2369,9 @@ op_tilde(oap)
}
}
-#ifdef FEAT_VISUAL
if (!did_change && oap->is_VIsual)
/* No change: need to remove the Visual selection */
redraw_curbuf_later(INVERTED);
-#endif
/*
* Set '[ and '] marks.
@@ -3018,10 +2973,8 @@ op_yank(oap, deleting, mess)
if ( oap->motion_type == MCHAR
&& oap->start.col == 0
&& !oap->inclusive
-#ifdef FEAT_VISUAL
&& (!oap->is_VIsual || *p_sel == 'o')
&& !oap->block_mode
-#endif
&& oap->end.col == 0
&& yanklines > 1)
{
@@ -3032,9 +2985,7 @@ op_yank(oap, deleting, mess)
y_current->y_size = yanklines;
y_current->y_type = yanktype; /* set the yank register type */
-#ifdef FEAT_VISUAL
y_current->y_width = 0;
-#endif
y_current->y_array = (char_u **)lalloc_clear((long_u)(sizeof(char_u *) *
yanklines), TRUE);
@@ -3047,7 +2998,6 @@ op_yank(oap, deleting, mess)
y_idx = 0;
lnum = oap->start.lnum;
-#ifdef FEAT_VISUAL
if (oap->block_mode)
{
/* Visual block mode */
@@ -3057,19 +3007,16 @@ op_yank(oap, deleting, mess)
if (curwin->w_curswant == MAXCOL && y_current->y_width > 0)
y_current->y_width--;
}
-#endif
for ( ; lnum <= yankendlnum; lnum++, y_idx++)
{
switch (y_current->y_type)
{
-#ifdef FEAT_VISUAL
case MBLOCK:
block_prep(oap, &bd, lnum, FALSE);
if (yank_copy_line(&bd, y_idx) == FAIL)
goto fail;
break;
-#endif
case MLINE:
if ((y_current->y_array[y_idx] =
@@ -3206,9 +3153,7 @@ op_yank(oap, deleting, mess)
if (mess) /* Display message about yank? */
{
if (yanktype == MCHAR
-#ifdef FEAT_VISUAL
&& !oap->block_mode
-#endif
&& yanklines == 1)
yanklines = 0;
/* Some versions of Vi use ">=" here, some don't... */
@@ -3218,17 +3163,13 @@ op_yank(oap, deleting, mess)
update_topline_redraw();
if (yanklines == 1)
{
-#ifdef FEAT_VISUAL
if (oap->block_mode)
MSG(_("block of 1 line yanked"));
else
-#endif
MSG(_("1 line yanked"));
}
-#ifdef FEAT_VISUAL
else if (oap->block_mode)
smsg((char_u *)_("block of %ld lines yanked"), yanklines);
-#endif
else
smsg((char_u *)_("%ld lines yanked"), yanklines);
}
@@ -3239,11 +3180,7 @@ op_yank(oap, deleting, mess)
*/
curbuf->b_op_start = oap->start;
curbuf->b_op_end = oap->end;
- if (yanktype == MLINE
-#ifdef FEAT_VISUAL
- && !oap->block_mode
-#endif
- )
+ if (yanktype == MLINE && !oap->block_mode)
{
curbuf->b_op_start.col = 0;
curbuf->b_op_end.col = MAXCOL;
@@ -3380,7 +3317,6 @@ do_put(regname, dir, count, flags)
long i; /* index in y_array[] */
int y_type;
long y_size;
-#ifdef FEAT_VISUAL
int oldlen;
long y_width = 0;
colnr_T vcol;
@@ -3388,7 +3324,6 @@ do_put(regname, dir, count, flags)
int incr = 0;
long j;
struct block_def bd;
-#endif
char_u **y_array = NULL;
long nr_lines = 0;
pos_T new_cursor;
@@ -3497,14 +3432,11 @@ do_put(regname, dir, count, flags)
get_yank_register(regname, FALSE);
y_type = y_current->y_type;
-#ifdef FEAT_VISUAL
y_width = y_current->y_width;
-#endif
y_size = y_current->y_size;
y_array = y_current->y_array;
}
-#ifdef FEAT_VISUAL
if (y_type == MLINE)
{
if (flags & PUT_LINE_SPLIT)
@@ -3535,7 +3467,6 @@ do_put(regname, dir, count, flags)
curbuf->b_op_start = curwin->w_cursor; /* default for '[ mark */
curbuf->b_op_end = curwin->w_cursor; /* default for '] mark */
}
-#endif
if (flags & PUT_LINE) /* :put command or "p" in Visual line mode. */
y_type = MLINE;
@@ -3547,7 +3478,6 @@ do_put(regname, dir, count, flags)
goto end;
}
-#ifdef FEAT_VISUAL
if (y_type == MBLOCK)
{
lnum = curwin->w_cursor.lnum + y_size + 1;
@@ -3556,9 +3486,7 @@ do_put(regname, dir, count, flags)
if (u_save(curwin->w_cursor.lnum - 1, lnum) == FAIL)
goto end;
}
- else
-#endif
- if (y_type == MLINE)
+ else if (y_type == MLINE)
{
lnum = curwin->w_cursor.lnum;
#ifdef FEAT_FOLDING
@@ -3610,7 +3538,6 @@ do_put(regname, dir, count, flags)
lnum = curwin->w_cursor.lnum;
col = curwin->w_cursor.col;
-#ifdef FEAT_VISUAL
/*
* Block mode
*/
@@ -3792,7 +3719,6 @@ do_put(regname, dir, count, flags)
curwin->w_cursor.lnum = lnum;
}
else
-#endif
{
/*
* Character or Line mode
@@ -3866,17 +3792,9 @@ do_put(regname, dir, count, flags)
curwin->w_cursor.col += (colnr_T)(totlen - 1);
}
}
-#ifdef FEAT_VISUAL
if (VIsual_active)
lnum++;
-#endif
- } while (
-#ifdef FEAT_VISUAL
- VIsual_active && lnum <= curbuf->b_visual.vi_end.lnum
-#else
- FALSE /* stop after 1 paste */
-#endif
- );
+ } while (VIsual_active && lnum <= curbuf->b_visual.vi_end.lnum);
curbuf->b_op_end = curwin->w_cursor;
/* For "CTRL-O p" in Insert mode, put cursor after last char */
@@ -4038,9 +3956,7 @@ end:
if (regname == '=')
vim_free(y_array);
-#ifdef FEAT_VISUAL
VIsual_active = FALSE;
-#endif
/* If the cursor is past the end of the line put it at the end. */
adjust_cursor_eol();
@@ -4729,11 +4645,9 @@ op_format(oap, keep_cursor)
return;
curwin->w_cursor = oap->start;
-#ifdef FEAT_VISUAL
if (oap->is_VIsual)
/* When there is no change: need to remove the Visual selection */
redraw_curbuf_later(INVERTED);
-#endif
/* Set '[ mark at the start of the formatted area */
curbuf->b_op_start = oap->start;
@@ -4765,7 +4679,6 @@ op_format(oap, keep_cursor)
saved_cursor.lnum = 0;
}
-#ifdef FEAT_VISUAL
if (oap->is_VIsual)
{
win_T *wp;
@@ -4783,7 +4696,6 @@ op_format(oap, keep_cursor)
}
}
}
-#endif
}
#if defined(FEAT_EVAL) || defined(PROTO)
@@ -4794,11 +4706,9 @@ op_format(oap, keep_cursor)
op_formatexpr(oap)
oparg_T *oap;
{
-# ifdef FEAT_VISUAL
if (oap->is_VIsual)
/* When there is no change: need to remove the Visual selection */
redraw_curbuf_later(INVERTED);
-# endif
if (fex_format(oap->start.lnum, oap->line_count, NUL) != 0)
/* As documented: when 'formatexpr' returns non-zero fall back to
@@ -5238,7 +5148,6 @@ paragraph_start(lnum)
return FALSE;
}
-#ifdef FEAT_VISUAL
/*
* prepare a few things for block mode yank/delete/tilde
*
@@ -5397,7 +5306,6 @@ block_prep(oap, bdp, lnum, is_del)
bdp->textcol = (colnr_T) (pstart - line);
bdp->textstart = pstart;
}
-#endif /* FEAT_VISUAL */
#ifdef FEAT_RIGHTLEFT
static void reverse_line __ARGS((char_u *s));
@@ -5748,19 +5656,13 @@ read_viminfo_register(virp, force)
str = skipwhite(skiptowhite(str));
if (STRNCMP(str, "CHAR", 4) == 0)
y_current->y_type = MCHAR;
-#ifdef FEAT_VISUAL
else if (STRNCMP(str, "BLOCK", 5) == 0)
y_current->y_type = MBLOCK;
-#endif
else
y_current->y_type = MLINE;
/* get the block width; if it's missing we get a zero, which is OK */
str = skipwhite(skiptowhite(str));
-#ifdef FEAT_VISUAL
y_current->y_width = getdigits(&str);
-#else
- (void)getdigits(&str);
-#endif
}
while (!(eof = viminfo_readline(virp))
@@ -5868,11 +5770,9 @@ write_viminfo_registers(fp)
case MCHAR:
type = (char_u *)"CHAR";
break;
-#ifdef FEAT_VISUAL
case MBLOCK:
type = (char_u *)"BLOCK";
break;
-#endif
default:
sprintf((char *)IObuff, _("E574: Unknown register type %d"),
y_regs[i].y_type);
@@ -5886,13 +5786,7 @@ write_viminfo_registers(fp)
fprintf(fp, "\"%c", c);
if (c == execreg_lastc)
fprintf(fp, "@");
- fprintf(fp, "\t%s\t%d\n", type,
-#ifdef FEAT_VISUAL
- (int)y_regs[i].y_width
-#else
- 0
-#endif
- );
+ fprintf(fp, "\t%s\t%d\n", type, (int)y_regs[i].y_width);
/* If max_num_lines < 0, then we save ALL the lines in the register */
if (max_num_lines > 0 && num_lines > max_num_lines)
@@ -6039,10 +5933,8 @@ clip_get_selection(cbd)
{
struct yankreg *old_y_previous, *old_y_current;
pos_T old_cursor;
-#ifdef FEAT_VISUAL
pos_T old_visual;
int old_visual_mode;
-#endif
colnr_T old_curswant;
int old_set_curswant;
pos_T old_op_start, old_op_end;
@@ -6063,10 +5955,8 @@ clip_get_selection(cbd)
old_set_curswant = curwin->w_set_curswant;
old_op_start = curbuf->b_op_start;
old_op_end = curbuf->b_op_end;
-#ifdef FEAT_VISUAL
old_visual = VIsual;
old_visual_mode = VIsual_mode;
-#endif
clear_oparg(&oa);
oa.regname = (cbd == &clip_plus ? '+' : '*');
oa.op_type = OP_YANK;
@@ -6084,10 +5974,8 @@ clip_get_selection(cbd)
curwin->w_set_curswant = old_set_curswant;
curbuf->b_op_start = old_op_start;
curbuf->b_op_end = old_op_end;
-#ifdef FEAT_VISUAL
VIsual = old_visual;
VIsual_mode = old_visual_mode;
-#endif
}
else
{
@@ -6190,7 +6078,6 @@ clip_convert_selection(str, len, cbd)
}
-# if defined(FEAT_VISUAL) || defined(FEAT_EVAL)
/*
* If we have written to a clipboard register, send the text to the clipboard.
*/
@@ -6208,7 +6095,6 @@ may_set_selection()
clip_gen_set_selection(&clip_plus);
}
}
-# endif
#endif /* FEAT_CLIPBOARD || PROTO */
@@ -6273,10 +6159,8 @@ get_reg_type(regname, reglen)
if (y_current->y_array != NULL)
{
-#ifdef FEAT_VISUAL
if (reglen != NULL && y_current->y_type == MBLOCK)
*reglen = y_current->y_width;
-#endif
return y_current->y_type;
}
return MAUTO;
@@ -6454,11 +6338,6 @@ write_reg_contents_ex(name, str, maxlen, must_append, yank_type, block_len)
get_yank_register(name, TRUE);
if (!y_append && !must_append)
free_yank_all();
-#ifndef FEAT_VISUAL
- /* Just in case - make sure we don't use MBLOCK */
- if (yank_type == MBLOCK)
- yank_type = MAUTO;
-#endif
str_to_reg(y_current, yank_type, str, len, block_len);
# ifdef FEAT_CLIPBOARD
@@ -6496,9 +6375,7 @@ str_to_reg(y_ptr, yank_type, str, len, blocklen)
int append = FALSE; /* append to last line in register */
char_u *s;
char_u **pp;
-#ifdef FEAT_VISUAL
long maxlen;
-#endif
if (y_ptr->y_array == NULL) /* NULL means empty register */
y_ptr->y_size = 0;
@@ -6539,9 +6416,7 @@ str_to_reg(y_ptr, yank_type, str, len, blocklen)
pp[lnum] = y_ptr->y_array[lnum];
vim_free(y_ptr->y_array);
y_ptr->y_array = pp;
-#ifdef FEAT_VISUAL
maxlen = 0;
-#endif
/*
* Find the end of each line and save it into the array.
@@ -6552,10 +6427,8 @@ str_to_reg(y_ptr, yank_type, str, len, blocklen)
if (str[i] == '\n')
break;
i -= start; /* i is now length of line */
-#ifdef FEAT_VISUAL
if (i > maxlen)
maxlen = i;
-#endif
if (append)
{
--lnum;
@@ -6585,12 +6458,10 @@ str_to_reg(y_ptr, yank_type, str, len, blocklen)
}
y_ptr->y_type = type;
y_ptr->y_size = lnum;
-# ifdef FEAT_VISUAL
if (type == MBLOCK)
y_ptr->y_width = (blocklen < 0 ? maxlen - 1 : blocklen);
else
y_ptr->y_width = 0;
-# endif
}
#endif /* FEAT_CLIPBOARD || FEAT_EVAL || PROTO */
@@ -6684,12 +6555,10 @@ cursor_pos_info()
long word_count_cursor = 0;
int eol_size;
long last_check = 100000L;
-#ifdef FEAT_VISUAL
long line_count_selected = 0;
pos_T min_pos, max_pos;
oparg_T oparg;
struct block_def bd;
-#endif
/*
* Compute the length of the file in characters.
@@ -6705,7 +6574,6 @@ cursor_pos_info()
else
eol_size = 1;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (lt(VIsual, curwin->w_cursor))
@@ -6749,7 +6617,6 @@ cursor_pos_info()
}
line_count_selected = max_pos.lnum - min_pos.lnum + 1;
}
-#endif
for (lnum = 1; lnum <= curbuf->b_ml.ml_line_count; ++lnum)
{
@@ -6762,7 +6629,6 @@ cursor_pos_info()
last_check = byte_count + 100000L;
}
-#ifdef FEAT_VISUAL
/* Do extra processing for VIsual mode. */
if (VIsual_active
&& lnum >= min_pos.lnum && lnum <= max_pos.lnum)
@@ -6773,13 +6639,13 @@ cursor_pos_info()
switch (VIsual_mode)
{
case Ctrl_V:
-# ifdef FEAT_VIRTUALEDIT
+#ifdef FEAT_VIRTUALEDIT
virtual_op = virtual_active();
-# endif
+#endif
block_prep(&oparg, &bd, lnum, 0);
-# ifdef FEAT_VIRTUALEDIT
+#ifdef FEAT_VIRTUALEDIT
virtual_op = MAYBE;
-# endif
+#endif
s = bd.textstart;
len = (long)bd.textlen;
break;
@@ -6811,7 +6677,6 @@ cursor_pos_info()
}
}
else
-#endif
{
/* In non-visual mode, check for the line the cursor is on */
if (lnum == curwin->w_cursor.lnum)
@@ -6833,7 +6698,6 @@ cursor_pos_info()
if (!curbuf->b_p_eol && curbuf->b_p_bin)
byte_count -= eol_size;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (VIsual_mode == Ctrl_V && curwin->w_curswant < MAXCOL)
@@ -6864,7 +6728,6 @@ cursor_pos_info()
byte_count_cursor, byte_count);
}
else
-#endif
{
p = ml_get_curline();
validate_virtcol();
diff --git a/src/option.c b/src/option.c
index b1c888d8c..cbaa76368 100644
--- a/src/option.c
+++ b/src/option.c
@@ -1629,11 +1629,7 @@ static struct vimoption
#endif
SCRIPTID_INIT},
{"keymodel", "km", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
-#ifdef FEAT_VISUAL
(char_u *)&p_km, PV_NONE,
-#else
- (char_u *)NULL, PV_NONE,
-#endif
{(char_u *)"", (char_u *)0L} SCRIPTID_INIT},
{"keywordprg", "kp", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
(char_u *)&p_kp, PV_KP,
@@ -2190,19 +2186,11 @@ static struct vimoption
(char_u *)&p_secure, PV_NONE,
{(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT},
{"selection", "sel", P_STRING|P_VI_DEF,
-#ifdef FEAT_VISUAL
(char_u *)&p_sel, PV_NONE,
-#else
- (char_u *)NULL, PV_NONE,
-#endif
{(char_u *)"inclusive", (char_u *)0L}
SCRIPTID_INIT},
{"selectmode", "slm", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
-#ifdef FEAT_VISUAL
(char_u *)&p_slm, PV_NONE,
-#else
- (char_u *)NULL, PV_NONE,
-#endif
{(char_u *)"", (char_u *)0L} SCRIPTID_INIT},
{"sessionoptions", "ssop", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
#ifdef FEAT_SESSION
@@ -2979,13 +2967,9 @@ static char *(p_wop_values[]) = {"tagfile", NULL};
static char *(p_wak_values[]) = {"yes", "menu", "no", NULL};
#endif
static char *(p_mousem_values[]) = {"extend", "popup", "popup_setpos", "mac", NULL};
-#ifdef FEAT_VISUAL
static char *(p_sel_values[]) = {"inclusive", "exclusive", "old", NULL};
static char *(p_slm_values[]) = {"mouse", "key", "cmd", NULL};
-#endif
-#ifdef FEAT_VISUAL
static char *(p_km_values[]) = {"startsel", "stopsel", NULL};
-#endif
#ifdef FEAT_BROWSE
static char *(p_bsdir_values[]) = {"current", "last", "buffer", NULL};
#endif
@@ -6578,7 +6562,6 @@ did_set_string_option(opt_idx, varp, new_value_alloced, oldval, errbuf,
}
#endif
-#ifdef FEAT_VISUAL
/* 'selection' */
else if (varp == &p_sel)
{
@@ -6593,7 +6576,6 @@ did_set_string_option(opt_idx, varp, new_value_alloced, oldval, errbuf,
if (check_opt_strings(p_slm, p_slm_values, TRUE) != OK)
errmsg = e_invarg;
}
-#endif
#ifdef FEAT_BROWSE
/* 'browsedir' */
@@ -6605,7 +6587,6 @@ did_set_string_option(opt_idx, varp, new_value_alloced, oldval, errbuf,
}
#endif
-#ifdef FEAT_VISUAL
/* 'keymodel' */
else if (varp == &p_km)
{
@@ -6617,7 +6598,6 @@ did_set_string_option(opt_idx, varp, new_value_alloced, oldval, errbuf,
km_startsel = (vim_strchr(p_km, 'a') != NULL);
}
}
-#endif
/* 'mousemodel' */
else if (varp == &p_mousem)
diff --git a/src/option.h b/src/option.h
index 5144c3373..4ccde58a2 100644
--- a/src/option.h
+++ b/src/option.h
@@ -572,9 +572,7 @@ EXTERN char_u *p_isi; /* 'isident' */
EXTERN char_u *p_isp; /* 'isprint' */
EXTERN int p_js; /* 'joinspaces' */
EXTERN char_u *p_kp; /* 'keywordprg' */
-#ifdef FEAT_VISUAL
EXTERN char_u *p_km; /* 'keymodel' */
-#endif
#ifdef FEAT_LANGMAP
EXTERN char_u *p_langmap; /* 'langmap'*/
#endif
@@ -681,10 +679,8 @@ EXTERN char_u *p_sbo; /* 'scrollopt' */
#endif
EXTERN char_u *p_sections; /* 'sections' */
EXTERN int p_secure; /* 'secure' */
-#ifdef FEAT_VISUAL
EXTERN char_u *p_sel; /* 'selection' */
EXTERN char_u *p_slm; /* 'selectmode' */
-#endif
#ifdef FEAT_SESSION
EXTERN char_u *p_ssop; /* 'sessionoptions' */
EXTERN unsigned ssop_flags;
diff --git a/src/os_msdos.c b/src/os_msdos.c
index 8cc0ecc33..10c70b2e3 100644
--- a/src/os_msdos.c
+++ b/src/os_msdos.c
@@ -2270,9 +2270,7 @@ clip_mch_request_selection(VimClipboard *cbd)
default:
case 'L': type = MLINE; break;
case 'C': type = MCHAR; break;
-#ifdef FEAT_VISUAL
case 'B': type = MBLOCK; break;
-#endif
}
}
@@ -2799,9 +2797,7 @@ Win16SetClipboardData(
default:
case MLINE: clip_sel_type = "L"; break;
case MCHAR: clip_sel_type = "C"; break;
-#ifdef FEAT_VISUAL
case MBLOCK: clip_sel_type = "B"; break;
-#endif
}
movedata(
diff --git a/src/os_qnx.c b/src/os_qnx.c
index d482b34fa..a8f12fa87 100644
--- a/src/os_qnx.c
+++ b/src/os_qnx.c
@@ -78,9 +78,7 @@ clip_mch_request_selection(VimClipboard *cbd)
default: /* fallthrough to line type */
case 'L': type = MLINE; break;
case 'C': type = MCHAR; break;
-#ifdef FEAT_VISUAL
case 'B': type = MBLOCK; break;
-#endif
}
is_type_set = TRUE;
}
@@ -143,9 +141,7 @@ clip_mch_set_selection(VimClipboard *cbd)
default: /* fallthrough to MLINE */
case MLINE: *vim_clip = 'L'; break;
case MCHAR: *vim_clip = 'C'; break;
-#ifdef FEAT_VISUAL
case MBLOCK: *vim_clip = 'B'; break;
-#endif
}
vim_strncpy(text_clip, str, len);
diff --git a/src/os_win32.h b/src/os_win32.h
index 29fe5e4fb..8553910e3 100644
--- a/src/os_win32.h
+++ b/src/os_win32.h
@@ -68,7 +68,7 @@
#endif
#define USE_FNAME_CASE /* adjust case of file names */
-#if !defined(FEAT_CLIPBOARD) && defined(FEAT_VISUAL) && defined(FEAT_MOUSE)
+#if !defined(FEAT_CLIPBOARD) && defined(FEAT_MOUSE)
# define FEAT_CLIPBOARD /* include clipboard support */
#endif
#if defined(__DATE__) && defined(__TIME__)
diff --git a/src/quickfix.c b/src/quickfix.c
index 4451d89cd..4b216adf7 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -2347,9 +2347,7 @@ ex_copen(eap)
else
height = QF_WINHEIGHT;
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
#ifdef FEAT_GUI
need_mouse_correct = TRUE;
#endif
diff --git a/src/regexp.c b/src/regexp.c
index f1e8909b2..32a51884b 100644
--- a/src/regexp.c
+++ b/src/regexp.c
@@ -4179,9 +4179,8 @@ reg_prev_class()
- (*mb_head_off)(regline, reginput - 1), reg_buf);
return -1;
}
-
#endif
-#ifdef FEAT_VISUAL
+
static int reg_match_visual __ARGS((void));
/*
@@ -4258,7 +4257,6 @@ reg_match_visual()
}
return TRUE;
}
-#endif
#define ADVANCE_REGINPUT() mb_ptr_adv(reginput)
@@ -4440,9 +4438,7 @@ regmatch(scan)
break;
case RE_VISUAL:
-#ifdef FEAT_VISUAL
if (!reg_match_visual())
-#endif
status = RA_NOMATCH;
break;
diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c
index 787b34366..afcbed474 100644
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -6403,14 +6403,12 @@ nfa_regmatch(prog, start, submatch, m)
break;
case NFA_VISUAL:
-#ifdef FEAT_VISUAL
result = reg_match_visual();
if (result)
{
add_here = TRUE;
add_state = t->state->out;
}
-#endif
break;
case NFA_MOPEN1:
diff --git a/src/screen.c b/src/screen.c
index a030207ae..f80213720 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -446,8 +446,6 @@ redrawWinline(lnum, invalid)
#endif
}
-#if defined(FEAT_RUBY) || defined(FEAT_PERL) || defined(FEAT_VISUAL) || \
- (defined(FEAT_CLIPBOARD) && defined(FEAT_X11)) || defined(PROTO)
/*
* update all windows that are editing the current buffer
*/
@@ -458,7 +456,6 @@ update_curbuf(type)
redraw_curbuf_later(type);
update_screen(type);
}
-#endif
/*
* update_screen()
@@ -596,14 +593,12 @@ update_screen(type)
&& curwin->w_botfill == curwin->w_old_botfill
#endif
&& curwin->w_topline == curwin->w_lines[0].wl_lnum)
-#ifdef FEAT_VISUAL
|| (type == INVERTED
&& VIsual_active
&& curwin->w_old_cursor_lnum == curwin->w_cursor.lnum
&& curwin->w_old_visual_mode == VIsual_mode
&& (curwin->w_valid & VALID_VIRTCOL)
&& curwin->w_old_curswant == curwin->w_curswant)
-#endif
))
curwin->w_redr_type = type;
@@ -1030,10 +1025,8 @@ win_update(wp)
updating. 0 when no mid area updating. */
int bot_start = 999;/* first row of the bot area that needs
updating. 999 when no bot area updating */
-#ifdef FEAT_VISUAL
int scrolled_down = FALSE; /* TRUE when scrolled down when
w_topline got smaller a bit */
-#endif
#ifdef FEAT_SEARCH_EXTRA
matchitem_T *cur; /* points to the match list */
int top_to_mod = FALSE; /* redraw above mod_top */
@@ -1354,9 +1347,7 @@ win_update(wp)
/* Need to update rows that are new, stop at the
* first one that scrolled down. */
top_end = i;
-#ifdef FEAT_VISUAL
scrolled_down = TRUE;
-#endif
/* Move the entries that were scrolled, disable
* the entries for the lines to be redrawn. */
@@ -1513,7 +1504,6 @@ win_update(wp)
type = NOT_VALID;
}
-#ifdef FEAT_VISUAL
/* check if we are updating or removing the inverted part */
if ((VIsual_active && buf == curwin->w_buffer)
|| (wp->w_old_cursor_lnum != 0 && type != NOT_VALID))
@@ -1708,7 +1698,6 @@ win_update(wp)
wp->w_old_visual_lnum = 0;
wp->w_old_visual_col = 0;
}
-#endif /* FEAT_VISUAL */
#if defined(FEAT_SYN_HL) || defined(FEAT_SEARCH_EXTRA)
/* reset got_int, otherwise regexp won't work */
@@ -2670,7 +2659,6 @@ fold_line(wp, fold_count, foldinfo, lnum, row)
* 6. set highlighting for the Visual area an other text.
* If all folded lines are in the Visual area, highlight the line.
*/
-#ifdef FEAT_VISUAL
if (VIsual_active && wp->w_buffer == curwin->w_buffer)
{
if (ltoreq(curwin->w_cursor, VIsual))
@@ -2718,7 +2706,6 @@ fold_line(wp, fold_count, foldinfo, lnum, row)
}
}
}
-#endif
#ifdef FEAT_SYN_HL
/* Show 'cursorcolumn' in the fold line. */
@@ -2876,10 +2863,8 @@ win_line(wp, lnum, startrow, endrow, nochange)
int fromcol, tocol; /* start/end of inverting */
int fromcol_prev = -2; /* start of inverting after cursor */
int noinvcur = FALSE; /* don't invert the cursor */
-#ifdef FEAT_VISUAL
pos_T *top, *bot;
int lnum_in_visual_area = FALSE;
-#endif
pos_T pos;
long v;
@@ -3090,7 +3075,6 @@ win_line(wp, lnum, startrow, endrow, nochange)
*/
fromcol = -10;
tocol = MAXCOL;
-#ifdef FEAT_VISUAL
if (VIsual_active && wp->w_buffer == curwin->w_buffer)
{
/* Visual is after curwin->w_cursor */
@@ -3183,9 +3167,7 @@ win_line(wp, lnum, startrow, endrow, nochange)
/*
* handle 'incsearch' and ":s///c" highlighting
*/
- else
-#endif /* FEAT_VISUAL */
- if (highlight_match
+ else if (highlight_match
&& wp == curwin
&& lnum >= curwin->w_cursor.lnum
&& lnum <= curwin->w_cursor.lnum + search_match_lines)
@@ -3324,7 +3306,6 @@ win_line(wp, lnum, startrow, endrow, nochange)
mb_ptr_adv(ptr);
}
-#if defined(FEAT_SYN_HL) || defined(FEAT_VIRTUALEDIT) || defined(FEAT_VISUAL)
/* When:
* - 'cuc' is set, or
* - 'colorcolumn' is set, or
@@ -3333,27 +3314,16 @@ win_line(wp, lnum, startrow, endrow, nochange)
* the end of the line may be before the start of the displayed part.
*/
if (vcol < v && (
-# ifdef FEAT_SYN_HL
- wp->w_p_cuc
- || draw_color_col
-# if defined(FEAT_VIRTUALEDIT) || defined(FEAT_VISUAL)
- ||
-# endif
-# endif
-# ifdef FEAT_VIRTUALEDIT
- virtual_active()
-# ifdef FEAT_VISUAL
- ||
-# endif
-# endif
-# ifdef FEAT_VISUAL
- (VIsual_active && wp->w_buffer == curwin->w_buffer)
-# endif
- ))
+#ifdef FEAT_SYN_HL
+ wp->w_p_cuc || draw_color_col ||
+#endif
+#ifdef FEAT_VIRTUALEDIT
+ virtual_active() ||
+#endif
+ (VIsual_active && wp->w_buffer == curwin->w_buffer)))
{
vcol = v;
}
-#endif
/* Handle a character that's not completely on the screen: Put ptr at
* that character but skip the first few screen characters. */
@@ -4500,9 +4470,7 @@ win_line(wp, lnum, startrow, endrow, nochange)
&& ((wp->w_p_list && lcs_eol > 0)
|| ((fromcol >= 0 || fromcol_prev >= 0)
&& tocol > vcol
-#ifdef FEAT_VISUAL
&& VIsual_mode != Ctrl_V
-#endif
&& (
# ifdef FEAT_RIGHTLEFT
wp->w_p_rl ? (col >= 0) :
@@ -4854,11 +4822,9 @@ win_line(wp, lnum, startrow, endrow, nochange)
#endif
if (lcs_eol == lcs_eol_one
&& ((area_attr != 0 && vcol == fromcol
-#ifdef FEAT_VISUAL
&& (VIsual_mode != Ctrl_V
|| lnum == VIsual.lnum
|| lnum == curwin->w_cursor.lnum)
-#endif
&& c == NUL)
#ifdef FEAT_SEARCH_EXTRA
/* highlight 'hlsearch' match at end of line */
@@ -9659,10 +9625,7 @@ showmode()
do_mode = ((p_smd && msg_silent == 0)
&& ((State & INSERT)
|| restart_edit
-#ifdef FEAT_VISUAL
- || VIsual_active
-#endif
- ));
+ || VIsual_active));
if (do_mode || Recording)
{
/*
@@ -9790,7 +9753,6 @@ showmode()
if ((State & INSERT) && p_paste)
MSG_PUTS_ATTR(_(" (paste)"), attr);
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
char *p;
@@ -9810,7 +9772,6 @@ showmode()
}
MSG_PUTS_ATTR(_(p), attr);
}
-#endif
MSG_PUTS_ATTR(" --", attr);
}
@@ -9839,11 +9800,9 @@ showmode()
msg_clr_cmdline();
#ifdef FEAT_CMDL_INFO
-# ifdef FEAT_VISUAL
/* In Visual mode the size of the selected area must be redrawn. */
if (VIsual_active)
clear_showcmd();
-# endif
/* If the last window has no status line, the ruler is after the mode
* message and must be redrawn */
diff --git a/src/search.c b/src/search.c
index 0341a5e47..efe9e1c35 100644
--- a/src/search.c
+++ b/src/search.c
@@ -506,7 +506,7 @@ last_pat_prog(regmatch)
#endif
/*
- * lowest level search function.
+ * Lowest level search function.
* Search for 'count'th occurrence of pattern 'pat' in direction 'dir'.
* Start at position 'pos' and return the found position in 'pos'.
*
@@ -3198,7 +3198,6 @@ current_word(oap, count, include, bigword)
cls_bigword = bigword;
clearpos(&start_pos);
-#ifdef FEAT_VISUAL
/* Correct cursor when 'selection' is exclusive */
if (VIsual_active && *p_sel == 'e' && lt(VIsual, curwin->w_cursor))
dec_cursor();
@@ -3208,7 +3207,6 @@ current_word(oap, count, include, bigword)
* character, select the word and/or white space under the cursor.
*/
if (!VIsual_active || equalpos(curwin->w_cursor, VIsual))
-#endif
{
/*
* Go to start of current word or white space.
@@ -3245,7 +3243,6 @@ current_word(oap, count, include, bigword)
include_white = TRUE;
}
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
/* should do something when inclusive == FALSE ! */
@@ -3253,7 +3250,6 @@ current_word(oap, count, include, bigword)
redraw_curbuf_later(INVERTED); /* update the inversion */
}
else
-#endif
{
oap->start = start_pos;
oap->motion_type = MCHAR;
@@ -3267,7 +3263,6 @@ current_word(oap, count, include, bigword)
while (count > 0)
{
inclusive = TRUE;
-#ifdef FEAT_VISUAL
if (VIsual_active && lt(curwin->w_cursor, VIsual))
{
/*
@@ -3288,7 +3283,6 @@ current_word(oap, count, include, bigword)
}
}
else
-#endif
{
/*
* Move cursor forward one word and/or white area.
@@ -3334,18 +3328,15 @@ current_word(oap, count, include, bigword)
back_in_line();
if (cls() == 0 && curwin->w_cursor.col > 0)
{
-#ifdef FEAT_VISUAL
if (VIsual_active)
VIsual = curwin->w_cursor;
else
-#endif
oap->start = curwin->w_cursor;
}
}
curwin->w_cursor = pos; /* put cursor back at end */
}
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (*p_sel == 'e' && inclusive && ltoreq(VIsual, curwin->w_cursor))
@@ -3357,7 +3348,6 @@ current_word(oap, count, include, bigword)
}
}
else
-#endif
oap->inclusive = inclusive;
return OK;
@@ -3384,7 +3374,6 @@ current_sent(oap, count, include)
pos = start_pos;
findsent(FORWARD, 1L); /* Find start of next sentence. */
-#ifdef FEAT_VISUAL
/*
* When the Visual area is bigger than one character: Extend it.
*/
@@ -3471,7 +3460,6 @@ extend:
}
return OK;
}
-#endif
/*
* If the cursor started on a blank, check if it is just before the start
@@ -3521,7 +3509,6 @@ extend:
find_first_blank(&start_pos);
}
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
/* Avoid getting stuck with "is" on a single space before a sentence. */
@@ -3534,7 +3521,6 @@ extend:
redraw_curbuf_later(INVERTED); /* update the inversion */
}
else
-#endif
{
/* include a newline after the sentence, if there is one */
if (incl(&curwin->w_cursor) == -1)
@@ -3574,9 +3560,7 @@ current_block(oap, count, include, what, other)
/*
* If we start on '(', '{', ')', '}', etc., use the whole block inclusive.
*/
-#ifdef FEAT_VISUAL
if (!VIsual_active || equalpos(VIsual, curwin->w_cursor))
-#endif
{
setpcmark();
if (what == '{') /* ignore indent */
@@ -3587,7 +3571,6 @@ current_block(oap, count, include, what, other)
/* cursor on '(' or '{', move cursor just after it */
++curwin->w_cursor.col;
}
-#ifdef FEAT_VISUAL
else if (lt(VIsual, curwin->w_cursor))
{
old_start = VIsual;
@@ -3595,7 +3578,6 @@ current_block(oap, count, include, what, other)
}
else
old_end = VIsual;
-#endif
/*
* Search backwards for unclosed '(', '{', etc..
@@ -3641,7 +3623,6 @@ current_block(oap, count, include, what, other)
if (decl(&curwin->w_cursor) != 0)
break;
}
-#ifdef FEAT_VISUAL
/*
* In Visual mode, when the resulting area is not bigger than what we
* started with, extend it to the next block, and then exclude again.
@@ -3666,11 +3647,9 @@ current_block(oap, count, include, what, other)
curwin->w_cursor = *end_pos;
}
else
-#endif
break;
}
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (*p_sel == 'e')
@@ -3683,7 +3662,6 @@ current_block(oap, count, include, what, other)
showmode();
}
else
-#endif
{
oap->start = start_pos;
oap->motion_type = MCHAR;
@@ -3807,17 +3785,13 @@ current_tagblock(oap, count_arg, include)
old_pos = curwin->w_cursor;
old_end = curwin->w_cursor; /* remember where we started */
old_start = old_end;
-#ifdef FEAT_VISUAL
if (!VIsual_active || *p_sel == 'e')
-#endif
decl(&old_end); /* old_end is inclusive */
/*
* If we start on "<aaa>" select that block.
*/
-#ifdef FEAT_VISUAL
if (!VIsual_active || equalpos(VIsual, curwin->w_cursor))
-#endif
{
setpcmark();
@@ -3843,7 +3817,6 @@ current_tagblock(oap, count_arg, include)
old_end = curwin->w_cursor;
}
}
-#ifdef FEAT_VISUAL
else if (lt(VIsual, curwin->w_cursor))
{
old_start = VIsual;
@@ -3851,7 +3824,6 @@ current_tagblock(oap, count_arg, include)
}
else
old_end = VIsual;
-#endif
again:
/*
@@ -3951,7 +3923,6 @@ again:
}
}
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
/* If the end is before the start there is no text between tags, select
@@ -3966,7 +3937,6 @@ again:
showmode();
}
else
-#endif
{
oap->start = start_pos;
oap->motion_type = MCHAR;
@@ -4010,7 +3980,6 @@ current_par(oap, count, include, type)
start_lnum = curwin->w_cursor.lnum;
-#ifdef FEAT_VISUAL
/*
* When visual area is more than one line: extend it.
*/
@@ -4064,7 +4033,6 @@ extend:
curwin->w_cursor.col = 0;
return retval;
}
-#endif
/*
* First move back to the start_lnum of the paragraph or white lines
@@ -4136,7 +4104,6 @@ extend:
while (start_lnum > 1 && linewhite(start_lnum - 1))
--start_lnum;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
/* Problem: when doing "Vipipip" nothing happens in a single white
@@ -4149,7 +4116,6 @@ extend:
showmode();
}
else
-#endif
{
oap->start.lnum = start_lnum;
oap->start.col = 0;
@@ -4247,7 +4213,6 @@ current_quote(oap, count, include, quotechar)
int col_end;
int col_start = curwin->w_cursor.col;
int inclusive = FALSE;
-#ifdef FEAT_VISUAL
int vis_empty = TRUE; /* Visual selection <= 1 char */
int vis_bef_curs = FALSE; /* Visual starts before cursor */
int inside_quotes = FALSE; /* Looks like "i'" done before */
@@ -4331,17 +4296,11 @@ current_quote(oap, count, include, quotechar)
}
}
else
-#endif
- if (line[col_start] == quotechar
-#ifdef FEAT_VISUAL
- || !vis_empty
-#endif
- )
+ if (line[col_start] == quotechar || !vis_empty)
{
int first_col = col_start;
-#ifdef FEAT_VISUAL
if (!vis_empty)
{
if (vis_bef_curs)
@@ -4349,7 +4308,7 @@ current_quote(oap, count, include, quotechar)
else
first_col = find_prev_quote(line, col_start, quotechar, NULL);
}
-#endif
+
/* The cursor is on a quote, we don't know if it's the opening or
* closing quote. Search from the start of the line to find out.
* Also do this when there is a Visual area, a' may leave the cursor
@@ -4406,14 +4365,9 @@ current_quote(oap, count, include, quotechar)
/* Set start position. After vi" another i" must include the ".
* For v2i" include the quotes. */
- if (!include && count < 2
-#ifdef FEAT_VISUAL
- && (vis_empty || !inside_quotes)
-#endif
- )
+ if (!include && count < 2 && (vis_empty || !inside_quotes))
++col_start;
curwin->w_cursor.col = col_start;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
/* Set the start of the Visual area when the Visual area was empty, we
@@ -4433,7 +4387,6 @@ current_quote(oap, count, include, quotechar)
}
}
else
-#endif
{
oap->start = curwin->w_cursor;
oap->motion_type = MCHAR;
@@ -4441,14 +4394,10 @@ current_quote(oap, count, include, quotechar)
/* Set end position. */
curwin->w_cursor.col = col_end;
- if ((include || count > 1
-#ifdef FEAT_VISUAL
- /* After vi" another i" must include the ". */
+ if ((include || count > 1 /* After vi" another i" must include the ". */
|| (!vis_empty && inside_quotes)
-#endif
) && inc_cursor() == 2)
inclusive = TRUE;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
if (vis_empty || vis_bef_curs)
@@ -4480,7 +4429,6 @@ current_quote(oap, count, include, quotechar)
}
}
else
-#endif
{
/* Set inclusive and other oap's flags. */
oap->inclusive = inclusive;
@@ -4491,7 +4439,6 @@ current_quote(oap, count, include, quotechar)
#endif /* FEAT_TEXTOBJ */
-#if defined(FEAT_VISUAL) || defined(PROTO)
static int is_one_char __ARGS((char_u *pattern));
/*
@@ -4690,7 +4637,6 @@ is_one_char(pattern)
vim_regfree(regmatch.regprog);
return result;
}
-#endif /* FEAT_VISUAL */
#if defined(FEAT_LISP) || defined(FEAT_CINDENT) || defined(FEAT_TEXTOBJ) \
|| defined(PROTO)
diff --git a/src/spell.c b/src/spell.c
index 82bf2dba6..768c7c5f9 100644
--- a/src/spell.c
+++ b/src/spell.c
@@ -10191,7 +10191,6 @@ spell_suggest(count)
if (no_spell_checking(curwin))
return;
-#ifdef FEAT_VISUAL
if (VIsual_active)
{
/* Use the Visually selected text as the bad word. But reject
@@ -10209,10 +10208,8 @@ spell_suggest(count)
++badlen;
end_visual_mode();
}
- else
-#endif
- /* Find the start of the badly spelled word. */
- if (spell_move_to(curwin, FORWARD, TRUE, TRUE, NULL) == 0
+ /* Find the start of the badly spelled word. */
+ else if (spell_move_to(curwin, FORWARD, TRUE, TRUE, NULL) == 0
|| curwin->w_cursor.col > prev_cursor.col)
{
/* No bad word or it starts after the cursor: use the word under the
diff --git a/src/structs.h b/src/structs.h
index 3f0a948b8..7a3d69219 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -346,9 +346,7 @@ struct u_header
#endif
int uh_flags; /* see below */
pos_T uh_namedm[NMARKS]; /* marks before undo/after redo */
-#ifdef FEAT_VISUAL
visualinfo_T uh_visual; /* Visual areas before undo/after redo */
-#endif
time_t uh_time; /* timestamp when the change was made */
long uh_save_nr; /* set when the file was saved after the
changes in this block */
@@ -1406,12 +1404,10 @@ struct file_buffer
pos_T b_namedm[NMARKS]; /* current named marks (mark.c) */
-#ifdef FEAT_VISUAL
/* These variables are set when VIsual_active becomes FALSE */
visualinfo_T b_visual;
-# ifdef FEAT_EVAL
+#ifdef FEAT_EVAL
int b_visual_mode_eval; /* b_visual.vi_mode for visualmode() */
-# endif
#endif
pos_T b_last_cursor; /* cursor position when last unloading this
@@ -1980,7 +1976,6 @@ struct window_S
time through cursupdate() to the
current virtual column */
-#ifdef FEAT_VISUAL
/*
* the next six are used to update the visual part
*/
@@ -1991,7 +1986,6 @@ struct window_S
linenr_T w_old_visual_lnum; /* last known start of visual part */
colnr_T w_old_visual_col; /* last known start of visual part */
colnr_T w_old_curswant; /* last known value of Curswant */
-#endif
/*
* "w_topline", "w_leftcol" and "w_skipcol" specify the offsets for
@@ -2293,10 +2287,8 @@ typedef struct oparg_S
(inclusive) */
int empty; /* op_start and op_end the same (only used by
do_change()) */
-#ifdef FEAT_VISUAL
int is_VIsual; /* operator on Visual area */
int block_mode; /* current operator is Visual block mode */
-#endif
colnr_T start_vcol; /* start col for block mode operator */
colnr_T end_vcol; /* end col for block mode operator */
#ifdef FEAT_AUTOCMD
diff --git a/src/syntax.c b/src/syntax.c
index 4352b9df8..5b86a29da 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -6837,10 +6837,8 @@ static char *(highlight_init_light[]) =
CENT("SignColumn term=standout ctermbg=Grey ctermfg=DarkBlue",
"SignColumn term=standout ctermbg=Grey ctermfg=DarkBlue guibg=Grey guifg=DarkBlue"),
#endif
-#ifdef FEAT_VISUAL
CENT("Visual term=reverse",
"Visual term=reverse guibg=LightGrey"),
-#endif
#ifdef FEAT_DIFF
CENT("DiffAdd term=bold ctermbg=LightBlue",
"DiffAdd term=bold ctermbg=LightBlue guibg=LightBlue"),
@@ -6927,10 +6925,8 @@ static char *(highlight_init_dark[]) =
CENT("SignColumn term=standout ctermbg=DarkGrey ctermfg=Cyan",
"SignColumn term=standout ctermbg=DarkGrey ctermfg=Cyan guibg=Grey guifg=Cyan"),
#endif
-#ifdef FEAT_VISUAL
CENT("Visual term=reverse",
"Visual term=reverse guibg=DarkGrey"),
-#endif
#ifdef FEAT_DIFF
CENT("DiffAdd term=bold ctermbg=DarkBlue",
"DiffAdd term=bold ctermbg=DarkBlue guibg=DarkBlue"),
diff --git a/src/term.c b/src/term.c
index 699e356f9..35a6af9ba 100644
--- a/src/term.c
+++ b/src/term.c
@@ -3456,12 +3456,9 @@ setmouse()
return;
}
-# ifdef FEAT_VISUAL
if (VIsual_active)
checkfor = MOUSE_VISUAL;
- else
-# endif
- if (State == HITRETURN || State == ASKMORE || State == SETWSIZE)
+ else if (State == HITRETURN || State == ASKMORE || State == SETWSIZE)
checkfor = MOUSE_RETURN;
else if (State & INSERT)
checkfor = MOUSE_INSERT;
diff --git a/src/ui.c b/src/ui.c
index 18021c21e..fc91de655 100644
--- a/src/ui.c
+++ b/src/ui.c
@@ -2610,13 +2610,11 @@ retnomove:
if (on_sep_line)
return IN_SEP_LINE;
#endif
-#ifdef FEAT_VISUAL
if (flags & MOUSE_MAY_STOP_VIS)
{
end_visual_mode();
redraw_curbuf_later(INVERTED); /* delete the inversion */
}
-#endif
#if defined(FEAT_CMDWIN) && defined(FEAT_CLIPBOARD)
/* Continue a modeless selection in another window. */
if (cmdwin_type != 0 && row < W_WINROW(curwin))
@@ -2686,32 +2684,30 @@ retnomove:
}
#endif
-#ifdef FEAT_VISUAL
/* Before jumping to another buffer, or moving the cursor for a left
* click, stop Visual mode. */
if (VIsual_active
&& (wp->w_buffer != curwin->w_buffer
|| (!on_status_line
-# ifdef FEAT_VERTSPLIT
+#ifdef FEAT_VERTSPLIT
&& !on_sep_line
-# endif
-# ifdef FEAT_FOLDING
+#endif
+#ifdef FEAT_FOLDING
&& (
-# ifdef FEAT_RIGHTLEFT
+# ifdef FEAT_RIGHTLEFT
wp->w_p_rl ? col < W_WIDTH(wp) - wp->w_p_fdc :
-# endif
+# endif
col >= wp->w_p_fdc
-# ifdef FEAT_CMDWIN
+# ifdef FEAT_CMDWIN
+ (cmdwin_type == 0 && wp == curwin ? 0 : 1)
-# endif
- )
# endif
+ )
+#endif
&& (flags & MOUSE_MAY_STOP_VIS))))
{
end_visual_mode();
redraw_curbuf_later(INVERTED); /* delete the inversion */
}
-#endif
#ifdef FEAT_CMDWIN
if (cmdwin_type != 0 && wp != curwin)
{
@@ -2801,14 +2797,12 @@ retnomove:
#endif
else /* keep_window_focus must be TRUE */
{
-#ifdef FEAT_VISUAL
/* before moving the cursor for a left click, stop Visual mode */
if (flags & MOUSE_MAY_STOP_VIS)
{
end_visual_mode();
redraw_curbuf_later(INVERTED); /* delete the inversion */
}
-#endif
#if defined(FEAT_CMDWIN) && defined(FEAT_CLIPBOARD)
/* Continue a modeless selection in another window. */
@@ -2933,7 +2927,6 @@ retnomove:
if (mouse_comp_pos(curwin, &row, &col, &curwin->w_cursor.lnum))
mouse_past_bottom = TRUE;
-#ifdef FEAT_VISUAL
/* Start Visual mode before coladvance(), for when 'sel' != "old" */
if ((flags & MOUSE_MAY_VIS) && !VIsual_active)
{
@@ -2947,7 +2940,6 @@ retnomove:
if (p_smd && msg_silent == 0)
redraw_cmdline = TRUE; /* show visual mode later */
}
-#endif
curwin->w_curswant = col;
curwin->w_set_curswant = FALSE; /* May still have been TRUE */
diff --git a/src/undo.c b/src/undo.c
index 94918e0f6..fcc9a3bfe 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -532,9 +532,7 @@ u_savecommon(top, bot, newbot, reload)
/* save named marks and Visual marks for undo */
mch_memmove(uhp->uh_namedm, curbuf->b_namedm, sizeof(pos_T) * NMARKS);
-#ifdef FEAT_VISUAL
uhp->uh_visual = curbuf->b_visual;
-#endif
curbuf->b_u_newhead = uhp;
if (curbuf->b_u_oldhead == NULL)
@@ -1014,16 +1012,7 @@ serialize_uhp(fp, buf, uhp)
/* Assume NMARKS will stay the same. */
for (i = 0; i < NMARKS; ++i)
serialize_pos(uhp->uh_namedm[i], fp);
-#ifdef FEAT_VISUAL
serialize_visualinfo(&uhp->uh_visual, fp);
-#else
- {
- visualinfo_T info;
-
- memset(&info, 0, sizeof(visualinfo_T));
- serialize_visualinfo(&info, fp);
- }
-#endif
put_time(fp, uhp->uh_time);
/* Optional fields. */
@@ -1082,14 +1071,7 @@ unserialize_uhp(fp, file_name)
uhp->uh_flags = get2c(fp);
for (i = 0; i < NMARKS; ++i)
unserialize_pos(&uhp->uh_namedm[i], fp);
-#ifdef FEAT_VISUAL
unserialize_visualinfo(&uhp->uh_visual, fp);
-#else
- {
- visualinfo_T info;
- unserialize_visualinfo(&info, fp);
- }
-#endif
uhp->uh_time = get8ctime(fp);
/* Optional fields. */
@@ -2406,9 +2388,7 @@ u_undoredo(undo)
int old_flags;
int new_flags;
pos_T namedm[NMARKS];
-#ifdef FEAT_VISUAL
visualinfo_T visualinfo;
-#endif
int empty_buffer; /* buffer became empty */
u_header_T *curhead = curbuf->b_u_curhead;
@@ -2430,9 +2410,7 @@ u_undoredo(undo)
* save marks before undo/redo
*/
mch_memmove(namedm, curbuf->b_namedm, sizeof(pos_T) * NMARKS);
-#ifdef FEAT_VISUAL
visualinfo = curbuf->b_visual;
-#endif
curbuf->b_op_start.lnum = curbuf->b_ml.ml_line_count;
curbuf->b_op_start.col = 0;
curbuf->b_op_end.lnum = 0;
@@ -2602,13 +2580,11 @@ u_undoredo(undo)
curbuf->b_namedm[i] = curhead->uh_namedm[i];
curhead->uh_namedm[i] = namedm[i];
}
-#ifdef FEAT_VISUAL
if (curhead->uh_visual.vi_start.lnum != 0)
{
curbuf->b_visual = curhead->uh_visual;
curhead->uh_visual = visualinfo;
}
-#endif
/*
* If the cursor is only off by one line, put it at the same position as
diff --git a/src/version.c b/src/version.c
index 065184ebb..36ff41f22 100644
--- a/src/version.c
+++ b/src/version.c
@@ -642,15 +642,11 @@ static char *(features[]) =
#else
"-virtualedit",
#endif
-#ifdef FEAT_VISUAL
"+visual",
-# ifdef FEAT_VISUALEXTRA
+#ifdef FEAT_VISUALEXTRA
"+visualextra",
-# else
- "-visualextra",
-# endif
#else
- "-visual",
+ "-visualextra",
#endif
#ifdef FEAT_VIMINFO
"+viminfo",
@@ -739,6 +735,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 212,
+/**/
211,
/**/
210,
diff --git a/src/window.c b/src/window.c
index 66cee28ce..02eb903fb 100644
--- a/src/window.c
+++ b/src/window.c
@@ -130,9 +130,7 @@ do_window(nchar, Prenum, xchar)
case Ctrl_S:
case 's':
CHECK_CMDWIN
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
#ifdef FEAT_QUICKFIX
/* When splitting the quickfix window open a new buffer in it,
* don't replicate the quickfix buffer. */
@@ -150,9 +148,7 @@ do_window(nchar, Prenum, xchar)
case Ctrl_V:
case 'v':
CHECK_CMDWIN
-# ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-# endif
# ifdef FEAT_QUICKFIX
/* When splitting the quickfix window open a new buffer in it,
* don't replicate the quickfix buffer. */
@@ -170,9 +166,7 @@ do_window(nchar, Prenum, xchar)
case Ctrl_HAT:
case '^':
CHECK_CMDWIN
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
STRCPY(cbuf, "split #");
if (Prenum)
vim_snprintf((char *)cbuf + 7, sizeof(cbuf) - 7,
@@ -184,9 +178,7 @@ do_window(nchar, Prenum, xchar)
case Ctrl_N:
case 'n':
CHECK_CMDWIN
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
#ifdef FEAT_QUICKFIX
newwindow:
#endif
@@ -206,18 +198,14 @@ newwindow:
/* quit current window */
case Ctrl_Q:
case 'q':
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
do_cmdline_cmd((char_u *)"quit");
break;
/* close current window */
case Ctrl_C:
case 'c':
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
do_cmdline_cmd((char_u *)"close");
break;
@@ -226,9 +214,7 @@ newwindow:
case Ctrl_Z:
case 'z':
CHECK_CMDWIN
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
do_cmdline_cmd((char_u *)"pclose");
break;
@@ -248,9 +234,7 @@ newwindow:
case Ctrl_O:
case 'o':
CHECK_CMDWIN
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
do_cmdline_cmd((char_u *)"only");
break;
@@ -399,18 +383,14 @@ newwindow:
case Ctrl_R:
case 'r':
CHECK_CMDWIN
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
win_rotate(FALSE, (int)Prenum1); /* downwards */
break;
/* rotate windows upwards */
case 'R':
CHECK_CMDWIN
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
win_rotate(TRUE, (int)Prenum1); /* upwards */
break;
@@ -499,9 +479,7 @@ newwindow:
case ']':
case Ctrl_RSB:
CHECK_CMDWIN
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
if (Prenum)
postponed_split = Prenum;
else
@@ -612,9 +590,7 @@ wingotofile:
#endif
case ']':
case Ctrl_RSB:
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
if (Prenum)
postponed_split = Prenum;
else
@@ -3726,9 +3702,7 @@ leave_tabpage(new_curbuf, trigger_leave_autocmds)
{
tabpage_T *tp = curtab;
-#ifdef FEAT_VISUAL
reset_VIsual_and_resel(); /* stop Visual mode */
-#endif
#ifdef FEAT_AUTOCMD
if (trigger_leave_autocmds)
{
@@ -4029,12 +4003,10 @@ win_goto(wp)
return;
#endif
-#ifdef FEAT_VISUAL
if (wp->w_buffer != curbuf)
reset_VIsual_and_resel();
else if (VIsual_active)
wp->w_cursor = curwin->w_cursor;
-#endif
#ifdef FEAT_GUI
need_mouse_correct = TRUE;
@@ -6037,7 +6009,6 @@ grab_file_name(count, file_lnum)
long count;
linenr_T *file_lnum;
{
-# ifdef FEAT_VISUAL
if (VIsual_active)
{
int len;
@@ -6048,7 +6019,6 @@ grab_file_name(count, file_lnum)
return find_file_name_in_path(ptr, len,
FNAME_MESS|FNAME_EXP|FNAME_REL, count, curbuf->b_ffname);
}
-# endif
return file_name_at_cursor(FNAME_MESS|FNAME_HYP|FNAME_EXP|FNAME_REL, count,
file_lnum);