To: vim_dev@googlegroups.com
Subject: Patch 7.4.793
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------
Patch 7.4.793
Problem: Can't specify when not to ring the bell.
Solution: Add the 'belloff' option. (Christian Brabandt)
Files: runtime/doc/options.txt, src/edit.c, src/ex_getln.c,
src/hangulin.c, src/if_lua.c, src/if_mzsch.c, src/if_tcl.c,
src/message.c, src/misc1.c, src/normal.c, src/option.c,
src/option.h, src/proto/misc1.pro, src/search.c, src/spell.c
*** ../vim-7.4.792/runtime/doc/options.txt 2015-07-17 14:16:49.854596682 +0200
--- runtime/doc/options.txt 2015-07-21 17:17:27.562113662 +0200
***************
*** 1126,1131 ****
--- 1124,1170 ----
expression evaluates to a |List| this is equal to using each List item
as a string and putting "\n" in between them.
+ *'belloff'* *'bo'*
+ 'belloff' 'bo' string (default "")
+ global
+ {not in Vi}
+ Specifies for which events the bell will not be rung. It is a comma
+ separated list of items. For each item that is present, the bell
+ will be silenced. This is most useful to specify specific events in
+ insert mode to be silenced.
+
+ item meaning when present ~
+ all All events.
+ backspace When hitting <BS> or <Del> and deleting results in an
+ error.
+ cursor Fail to move around using the cursor keys or
+ <PageUp>/<PageDown> in |Insert-mode|.
+ complete Error occurred when using |i_CTRL-X_CTRL-K| or
+ |i_CTRL-X_CTRL-T|.
+ copy Cannot copy char from insert mode using |i_CTRL-Y| or
+ |i_CTRL-E|.
+ ctrlg Unknown Char after <C-G> in Insert mode.
+ error Other Error occurred (e.g. try to join last line)
+ (mostly used in |Normal-mode| or |Cmdline-mode|).
+ esc hitting <Esc> in |Normal-mode|.
+ ex In |Visual-mode|, hitting |Q| results in an error.
+ hangul Error occurred when using hangul input.
+ insertmode Pressing <Esc> in 'insertmode'.
+ lang Calling the beep module for Lua/Mzscheme/TCL.
+ mess No output available for |g<|.
+ showmatch Error occurred for 'showmatch' function.
+ operator Empty region error |cpo-E|.
+ register Unknown register after <C-R> in |Insert-mode|.
+ shell Bell from shell output |:!|.
+ spell Error happened on spell suggest.
+ wildmode More matches in |cmdline-completion| available
+ (depends on the 'wildmode' setting).
+
+ This is most useful, to fine tune when in insert mode the bell should
+ be rung. For normal mode and ex commands, the bell is often rung to
+ indicate that an error occurred. It can be silenced by adding the
+ "error" keyword.
+
*'binary'* *'bin'* *'nobinary'* *'nobin'*
'binary' 'bin' boolean (default off)
local to buffer
***************
*** 2720,2726 ****
makes a difference for error messages, the bell will be used always
for a lot of errors without a message (e.g., hitting <Esc> in Normal
mode). See 'visualbell' on how to make the bell behave like a beep,
! screen flash or do nothing.
*'errorfile'* *'ef'*
'errorfile' 'ef' string (Amiga default: "AztecC.Err",
--- 2762,2769 ----
makes a difference for error messages, the bell will be used always
for a lot of errors without a message (e.g., hitting <Esc> in Normal
mode). See 'visualbell' on how to make the bell behave like a beep,
! screen flash or do nothing. See 'belloff' to finetune when to ring the
! bell.
*'errorfile'* *'ef'*
'errorfile' 'ef' string (Amiga default: "AztecC.Err",
*** ../vim-7.4.792/src/edit.c 2015-07-17 13:42:17.778373909 +0200
--- src/edit.c 2015-07-21 17:17:27.566113624 +0200
***************
*** 982,988 ****
got_int = FALSE;
}
else
! vim_beep();
break;
}
doESCkey:
--- 982,988 ----
got_int = FALSE;
}
else
! vim_beep(BO_IM);
break;
}
doESCkey:
***************
*** 2210,2216 ****
hl_attr(HLF_E));
if (emsg_silent == 0)
{
! vim_beep();
setcursor();
out_flush();
ui_delay(2000L, FALSE);
--- 2210,2216 ----
hl_attr(HLF_E));
if (emsg_silent == 0)
{
! vim_beep(BO_COMPL);
setcursor();
out_flush();
ui_delay(2000L, FALSE);
***************
*** 8263,8269 ****
}
if (regname == NUL || !valid_yank_reg(regname, FALSE))
{
! vim_beep();
need_redraw = TRUE; /* remove the '"' */
}
else
--- 8263,8269 ----
}
if (regname == NUL || !valid_yank_reg(regname, FALSE))
{
! vim_beep(BO_REG);
need_redraw = TRUE; /* remove the '"' */
}
else
***************
*** 8281,8287 ****
}
else if (insert_reg(regname, literally) == FAIL)
{
! vim_beep();
need_redraw = TRUE; /* remove the '"' */
}
else if (stop_insert_mode)
--- 8281,8287 ----
}
else if (insert_reg(regname, literally) == FAIL)
{
! vim_beep(BO_REG);
need_redraw = TRUE; /* remove the '"' */
}
else if (stop_insert_mode)
***************
*** 8355,8361 ****
break;
/* Unknown CTRL-G command, reserved for future expansion. */
! default: vim_beep();
}
}
--- 8355,8361 ----
break;
/* Unknown CTRL-G command, reserved for future expansion. */
! default: vim_beep(BO_CTRLG);
}
}
***************
*** 8781,8792 ****
temp = curwin->w_cursor.col;
if (!can_bs(BS_EOL) /* only if "eol" included */
|| do_join(2, FALSE, TRUE, FALSE, FALSE) == FAIL)
! vim_beep();
else
curwin->w_cursor.col = temp;
}
! else if (del_char(FALSE) == FAIL) /* delete char under cursor */
! vim_beep();
did_ai = FALSE;
#ifdef FEAT_SMARTINDENT
did_si = FALSE;
--- 8781,8792 ----
temp = curwin->w_cursor.col;
if (!can_bs(BS_EOL) /* only if "eol" included */
|| do_join(2, FALSE, TRUE, FALSE, FALSE) == FAIL)
! vim_beep(BO_BS);
else
curwin->w_cursor.col = temp;
}
! else if (del_char(FALSE) == FAIL) /* delete char under cursor */
! vim_beep(BO_BS);
did_ai = FALSE;
#ifdef FEAT_SMARTINDENT
did_si = FALSE;
***************
*** 8861,8867 ****
&& curwin->w_cursor.col <= ai_col)
|| (!can_bs(BS_EOL) && curwin->w_cursor.col == 0))))
{
! vim_beep();
return FALSE;
}
--- 8861,8867 ----
&& curwin->w_cursor.col <= ai_col)
|| (!can_bs(BS_EOL) && curwin->w_cursor.col == 0))))
{
! vim_beep(BO_BS);
return FALSE;
}
***************
*** 9473,9479 ****
curwin->w_set_curswant = TRUE; /* so we stay at the end */
}
else
! vim_beep();
}
static void
--- 9473,9479 ----
curwin->w_set_curswant = TRUE; /* so we stay at the end */
}
else
! vim_beep(BO_CRSR);
}
static void
***************
*** 9533,9539 ****
curwin->w_set_curswant = TRUE;
}
else
! vim_beep();
}
static void
--- 9533,9539 ----
curwin->w_set_curswant = TRUE;
}
else
! vim_beep(BO_CRSR);
}
static void
***************
*** 9583,9589 ****
curwin->w_cursor.col = 0;
}
else
! vim_beep();
}
static void
--- 9583,9589 ----
curwin->w_cursor.col = 0;
}
else
! vim_beep(BO_CRSR);
}
static void
***************
*** 9602,9608 ****
curwin->w_set_curswant = TRUE;
}
else
! vim_beep();
}
static void
--- 9602,9608 ----
curwin->w_set_curswant = TRUE;
}
else
! vim_beep(BO_CRSR);
}
static void
***************
*** 9633,9639 ****
#endif
}
else
! vim_beep();
}
static void
--- 9633,9639 ----
#endif
}
else
! vim_beep(BO_CRSR);
}
static void
***************
*** 9665,9671 ****
#endif
}
else
! vim_beep();
}
static void
--- 9665,9671 ----
#endif
}
else
! vim_beep(BO_CRSR);
}
static void
***************
*** 9696,9702 ****
#endif
}
else
! vim_beep();
}
static void
--- 9696,9702 ----
#endif
}
else
! vim_beep(BO_CRSR);
}
static void
***************
*** 9728,9734 ****
#endif
}
else
! vim_beep();
}
#ifdef FEAT_DND
--- 9728,9734 ----
#endif
}
else
! vim_beep(BO_CRSR);
}
#ifdef FEAT_DND
***************
*** 10146,10152 ****
if (lnum < 1 || lnum > curbuf->b_ml.ml_line_count)
{
! vim_beep();
return NUL;
}
--- 10146,10152 ----
if (lnum < 1 || lnum > curbuf->b_ml.ml_line_count)
{
! vim_beep(BO_COPY);
return NUL;
}
***************
*** 10169,10175 ****
c = *ptr;
#endif
if (c == NUL)
! vim_beep();
return c;
}
--- 10169,10175 ----
c = *ptr;
#endif
if (c == NUL)
! vim_beep(BO_COPY);
return c;
}
*** ../vim-7.4.792/src/ex_getln.c 2015-07-17 13:22:43.153523709 +0200
--- src/ex_getln.c 2015-07-21 17:17:27.566113624 +0200
***************
*** 900,906 ****
firstc != '@');
}
else
! vim_beep();
}
#ifdef FEAT_WILDMENU
else if (xpc.xp_numfiles == -1)
--- 900,906 ----
firstc != '@');
}
else
! vim_beep(BO_WILD);
}
#ifdef FEAT_WILDMENU
else if (xpc.xp_numfiles == -1)
***************
*** 3710,3716 ****
if (i < xp->xp_numfiles)
{
if (!(options & WILD_NO_BEEP))
! vim_beep();
break;
}
}
--- 3710,3716 ----
if (i < xp->xp_numfiles)
{
if (!(options & WILD_NO_BEEP))
! vim_beep(BO_WILD);
break;
}
}
*** ../vim-7.4.792/src/hangulin.c 2010-05-15 13:04:11.000000000 +0200
--- src/hangulin.c 2015-07-21 17:17:27.566113624 +0200
***************
*** 824,830 ****
}
else if (n == AUTOMATA_ERROR)
{
! vim_beep();
return 0;
}
return len;
--- 824,830 ----
}
else if (n == AUTOMATA_ERROR)
{
! vim_beep(BO_HANGUL);
return 0;
}
return len;
*** ../vim-7.4.792/src/if_lua.c 2015-06-27 18:36:09.110432861 +0200
--- src/if_lua.c 2015-07-21 17:17:27.566113624 +0200
***************
*** 1354,1360 ****
static int
luaV_beep(lua_State *L UNUSED)
{
! vim_beep();
return 0;
}
--- 1354,1360 ----
static int
luaV_beep(lua_State *L UNUSED)
{
! vim_beep(BO_LANG);
return 0;
}
*** ../vim-7.4.792/src/if_mzsch.c 2015-07-10 16:12:43.146296071 +0200
--- src/if_mzsch.c 2015-07-21 17:17:27.566113624 +0200
***************
*** 1569,1575 ****
static Scheme_Object *
mzscheme_beep(void *data UNUSED, int argc UNUSED, Scheme_Object **argv UNUSED)
{
! vim_beep();
return scheme_void;
}
--- 1569,1575 ----
static Scheme_Object *
mzscheme_beep(void *data UNUSED, int argc UNUSED, Scheme_Object **argv UNUSED)
{
! vim_beep(BO_LANG);
return scheme_void;
}
*** ../vim-7.4.792/src/if_tcl.c 2013-10-02 14:25:39.000000000 +0200
--- src/if_tcl.c 2015-07-21 17:17:27.566113624 +0200
***************
*** 337,343 ****
Tcl_WrongNumArgs(interp, 1, objv, NULL);
return TCL_ERROR;
}
! vim_beep();
return TCL_OK;
}
--- 337,343 ----
Tcl_WrongNumArgs(interp, 1, objv, NULL);
return TCL_ERROR;
}
! vim_beep(BO_LANG);
return TCL_OK;
}
*** ../vim-7.4.792/src/message.c 2015-05-04 17:28:17.340445782 +0200
--- src/message.c 2015-07-21 17:17:27.570113585 +0200
***************
*** 2119,2126 ****
msg_screen_putchar(' ', attr);
while (msg_col & 7);
}
! else if (*s == BELL) /* beep (from ":sh") */
! vim_beep();
else
{
#ifdef FEAT_MBYTE
--- 2119,2126 ----
msg_screen_putchar(' ', attr);
while (msg_col & 7);
}
! else if (*s == BELL) /* beep (from ":sh") */
! vim_beep(BO_SH);
else
{
#ifdef FEAT_MBYTE
***************
*** 2363,2369 ****
* weird, typing a command without output results in one line. */
mp = msg_sb_start(last_msgchunk);
if (mp == NULL || mp->sb_prev == NULL)
! vim_beep();
else
{
do_more_prompt('G');
--- 2363,2369 ----
* weird, typing a command without output results in one line. */
mp = msg_sb_start(last_msgchunk);
if (mp == NULL || mp->sb_prev == NULL)
! vim_beep(BO_MESS);
else
{
do_more_prompt('G');
*** ../vim-7.4.792/src/misc1.c 2015-05-04 17:50:25.613605986 +0200
--- src/misc1.c 2015-07-21 17:50:42.098962486 +0200
***************
*** 3699,3744 ****
if (emsg_silent == 0)
{
flush_buffers(FALSE);
! vim_beep();
}
}
/*
! * give a warning for an error
*/
void
! vim_beep()
{
if (emsg_silent == 0)
{
! if (p_vb
#ifdef FEAT_GUI
! /* While the GUI is starting up the termcap is set for the GUI
! * but the output still goes to a terminal. */
! && !(gui.in_use && gui.starting)
#endif
! )
! {
! out_str(T_VB);
! }
! else
! {
! #ifdef MSDOS
! /*
! * The number of beeps outputted is reduced to avoid having to wait
! * for all the beeps to finish. This is only a problem on systems
! * where the beeps don't overlap.
! */
! if (beep_count == 0 || beep_count == 10)
{
! out_char(BELL);
! beep_count = 1;
}
else
! ++beep_count;
#else
! out_char(BELL);
#endif
}
/* When 'verbose' is set and we are sourcing a script or executing a
--- 3699,3748 ----
if (emsg_silent == 0)
{
flush_buffers(FALSE);
! vim_beep(BO_ERROR);
}
}
/*
! * Give a warning for an error.
*/
void
! vim_beep(val)
! unsigned val; /* one of the BO_ values, e.g., BO_OPER */
{
if (emsg_silent == 0)
{
! if (!((bo_flags & val) || (bo_flags & BO_ALL)))
! {
! if (p_vb
#ifdef FEAT_GUI
! /* While the GUI is starting up the termcap is set for the
! * GUI but the output still goes to a terminal. */
! && !(gui.in_use && gui.starting)
#endif
! )
{
! out_str(T_VB);
}
else
! {
! #ifdef MSDOS
! /*
! * The number of beeps outputted is reduced to avoid having to
! * wait for all the beeps to finish. This is only a problem on
! * systems where the beeps don't overlap.
! */
! if (beep_count == 0 || beep_count == 10)
! {
! out_char(BELL);
! beep_count = 1;
! }
! else
! ++beep_count;
#else
! out_char(BELL);
#endif
+ }
}
/* When 'verbose' is set and we are sourcing a script or executing a
*** ../vim-7.4.792/src/normal.c 2015-07-17 13:03:42.104357503 +0200
--- src/normal.c 2015-07-21 17:20:01.308637453 +0200
***************
*** 1880,1886 ****
VIsual_reselect = FALSE; /* don't reselect now */
if (empty_region_error)
{
! vim_beep();
CancelRedo();
}
else
--- 1880,1886 ----
VIsual_reselect = FALSE; /* don't reselect now */
if (empty_region_error)
{
! vim_beep(BO_OPER);
CancelRedo();
}
else
***************
*** 1897,1903 ****
{
if (!gui_yank)
{
! vim_beep();
CancelRedo();
}
}
--- 1897,1903 ----
{
if (!gui_yank)
{
! vim_beep(BO_OPER);
CancelRedo();
}
}
***************
*** 1915,1921 ****
VIsual_reselect = FALSE; /* don't reselect now */
if (empty_region_error)
{
! vim_beep();
CancelRedo();
}
else
--- 1915,1921 ----
VIsual_reselect = FALSE; /* don't reselect now */
if (empty_region_error)
{
! vim_beep(BO_OPER);
CancelRedo();
}
else
***************
*** 1989,1995 ****
case OP_ROT13:
if (empty_region_error)
{
! vim_beep();
CancelRedo();
}
else
--- 1989,1995 ----
case OP_ROT13:
if (empty_region_error)
{
! vim_beep(BO_OPER);
CancelRedo();
}
else
***************
*** 2023,2029 ****
#ifdef FEAT_VISUALEXTRA
if (empty_region_error)
{
! vim_beep();
CancelRedo();
}
else
--- 2023,2029 ----
#ifdef FEAT_VISUALEXTRA
if (empty_region_error)
{
! vim_beep(BO_OPER);
CancelRedo();
}
else
***************
*** 2056,2062 ****
restart_edit = restart_edit_save;
}
#else
! vim_beep();
#endif
break;
--- 2056,2062 ----
restart_edit = restart_edit_save;
}
#else
! vim_beep(BO_OPER);
#endif
break;
***************
*** 2066,2072 ****
if (empty_region_error)
#endif
{
! vim_beep();
CancelRedo();
}
#ifdef FEAT_VISUALEXTRA
--- 2066,2072 ----
if (empty_region_error)
#endif
{
! vim_beep(BO_OPER);
CancelRedo();
}
#ifdef FEAT_VISUALEXTRA
***************
*** 5359,5365 ****
* Ignore 'Q' in Visual mode, just give a beep.
*/
if (VIsual_active)
! vim_beep();
else if (!checkclearop(cap->oap))
do_exmode(FALSE);
}
--- 5359,5365 ----
* Ignore 'Q' in Visual mode, just give a beep.
*/
if (VIsual_active)
! vim_beep(BO_EX);
else if (!checkclearop(cap->oap))
do_exmode(FALSE);
}
***************
*** 9055,9061 ****
redraw_curbuf_later(INVERTED);
}
else if (no_reason)
! vim_beep();
clearop(cap->oap);
/* A CTRL-C is often used at the start of a menu. When 'insertmode' is
--- 9055,9061 ----
redraw_curbuf_later(INVERTED);
}
else if (no_reason)
! vim_beep(BO_ESC);
clearop(cap->oap);
/* A CTRL-C is often used at the start of a menu. When 'insertmode' is
*** ../vim-7.4.792/src/option.c 2015-07-19 14:42:16.569130206 +0200
--- src/option.c 2015-07-21 17:17:27.574113547 +0200
***************
*** 632,637 ****
--- 632,640 ----
{"beautify", "bf", P_BOOL|P_VI_DEF,
(char_u *)NULL, PV_NONE,
{(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT},
+ {"belloff", "bo", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
+ (char_u *)&p_bo, PV_NONE,
+ {(char_u *)"", (char_u *)0L} SCRIPTID_INIT},
{"binary", "bin", P_BOOL|P_VI_DEF|P_RSTAT,
(char_u *)&p_bin, PV_BIN,
{(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT},
***************
*** 5323,5328 ****
--- 5326,5332 ----
(void)opt_strings_flags(p_cmp, p_cmp_values, &cmp_flags, TRUE);
#endif
(void)opt_strings_flags(p_bkc, p_bkc_values, &bkc_flags, TRUE);
+ (void)opt_strings_flags(p_bo, p_bo_values, &bo_flags, TRUE);
#ifdef FEAT_SESSION
(void)opt_strings_flags(p_ssop, p_ssop_values, &ssop_flags, TRUE);
(void)opt_strings_flags(p_vop, p_ssop_values, &vop_flags, TRUE);
***************
*** 6997,7002 ****
--- 7001,7011 ----
else if (check_opt_strings(p_bs, p_bs_values, TRUE) != OK)
errmsg = e_invarg;
}
+ else if (varp == &p_bo)
+ {
+ if (opt_strings_flags(p_bo, p_bo_values, &bo_flags, TRUE) != OK)
+ errmsg = e_invarg;
+ }
#ifdef FEAT_MBYTE
/* 'casemap' */
*** ../vim-7.4.792/src/option.h 2015-07-17 14:16:49.850596721 +0200
--- src/option.h 2015-07-21 17:45:14.614105646 +0200
***************
*** 338,343 ****
--- 338,374 ----
# define BKC_BREAKHARDLINK 0x010
EXTERN char_u *p_bdir; /* 'backupdir' */
EXTERN char_u *p_bex; /* 'backupext' */
+ EXTERN char_u *p_bo; /* 'belloff' */
+ EXTERN unsigned bo_flags;
+ # ifdef IN_OPTION_C
+ static char *(p_bo_values[]) = {"all", "backspace", "cursor", "complete",
+ "copy", "ctrlg", "error", "esc", "ex",
+ "hangul", "insertmode", "lang", "mess",
+ "showmatch", "operator", "register", "shell",
+ "spell", "wildmode", NULL};
+ # endif
+
+ /* values for the 'beepon' option */
+ #define BO_ALL 0x0001
+ #define BO_BS 0x0002
+ #define BO_CRSR 0x0004
+ #define BO_COMPL 0x0008
+ #define BO_COPY 0x0010
+ #define BO_CTRLG 0x0020
+ #define BO_ERROR 0x0040
+ #define BO_ESC 0x0080
+ #define BO_EX 0x0100
+ #define BO_HANGUL 0x0200
+ #define BO_IM 0x0400
+ #define BO_LANG 0x0800
+ #define BO_MESS 0x1000
+ #define BO_MATCH 0x2000
+ #define BO_OPER 0x4000
+ #define BO_REG 0x8000
+ #define BO_SH 0x10000
+ #define BO_SPELL 0x20000
+ #define BO_WILD 0x40000
+
#ifdef FEAT_WILDIGN
EXTERN char_u *p_bsk; /* 'backupskip' */
#endif
*** ../vim-7.4.792/src/proto/misc1.pro 2014-12-17 14:36:10.363090985 +0100
--- src/proto/misc1.pro 2015-07-21 17:44:35.958476757 +0200
***************
*** 49,55 ****
int prompt_for_number __ARGS((int *mouse_used));
void msgmore __ARGS((long n));
void beep_flush __ARGS((void));
! void vim_beep __ARGS((void));
void init_homedir __ARGS((void));
void free_homedir __ARGS((void));
void free_users __ARGS((void));
--- 49,55 ----
int prompt_for_number __ARGS((int *mouse_used));
void msgmore __ARGS((long n));
void beep_flush __ARGS((void));
! void vim_beep __ARGS((unsigned val));
void init_homedir __ARGS((void));
void free_homedir __ARGS((void));
void free_users __ARGS((void));
*** ../vim-7.4.792/src/search.c 2015-07-10 14:43:29.556722605 +0200
--- src/search.c 2015-07-21 17:17:27.574113547 +0200
***************
*** 2469,2475 ****
}
if ((lpos = findmatch(NULL, NUL)) == NULL) /* no match, so beep */
! vim_beep();
else if (lpos->lnum >= curwin->w_topline && lpos->lnum < curwin->w_botline)
{
if (!curwin->w_p_wrap)
--- 2469,2475 ----
}
if ((lpos = findmatch(NULL, NUL)) == NULL) /* no match, so beep */
! vim_beep(BO_MATCH);
else if (lpos->lnum >= curwin->w_topline && lpos->lnum < curwin->w_botline)
{
if (!curwin->w_p_wrap)
*** ../vim-7.4.792/src/spell.c 2015-03-31 13:33:00.801524871 +0200
--- src/spell.c 2015-07-21 17:17:27.578113509 +0200
***************
*** 10201,10207 ****
* a multi-line selection. */
if (curwin->w_cursor.lnum != VIsual.lnum)
{
! vim_beep();
return;
}
badlen = (int)curwin->w_cursor.col - (int)VIsual.col;
--- 10201,10207 ----
* a multi-line selection. */
if (curwin->w_cursor.lnum != VIsual.lnum)
{
! vim_beep(BO_SPELL);
return;
}
badlen = (int)curwin->w_cursor.col - (int)VIsual.col;
*** ../vim-7.4.792/src/version.c 2015-07-21 15:48:13.593517912 +0200
--- src/version.c 2015-07-21 17:17:14.162242329 +0200
***************
*** 743,744 ****
--- 743,746 ----
{ /* Add new patch number below this line */
+ /**/
+ 793,
/**/
--
Eagles may soar, but weasels don't get sucked into jet engines.
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///