mirror of
https://github.com/vim/vim.git
synced 2025-09-23 03:43:49 -04:00
patch 8.2.4744: a terminal window can't use the bell
Problem: A terminal window can't use the bell. Solution: Add bell support for the terminal window. (closes #10178)
This commit is contained in:
@@ -1265,6 +1265,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
separated list of items. For each item that is present, the bell
|
separated list of items. For each item that is present, the bell
|
||||||
will be silenced. This is most useful to specify specific events in
|
will be silenced. This is most useful to specify specific events in
|
||||||
insert mode to be silenced.
|
insert mode to be silenced.
|
||||||
|
You can also make it flash by using 'visualbell'.
|
||||||
|
|
||||||
item meaning when present ~
|
item meaning when present ~
|
||||||
all All events.
|
all All events.
|
||||||
@@ -1290,6 +1291,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
register Unknown register after <C-R> in |Insert-mode|.
|
register Unknown register after <C-R> in |Insert-mode|.
|
||||||
shell Bell from shell output |:!|.
|
shell Bell from shell output |:!|.
|
||||||
spell Error happened on spell suggest.
|
spell Error happened on spell suggest.
|
||||||
|
term Bell from |:terminal| output.
|
||||||
wildmode More matches in |cmdline-completion| available
|
wildmode More matches in |cmdline-completion| available
|
||||||
(depends on the 'wildmode' setting).
|
(depends on the 'wildmode' setting).
|
||||||
|
|
||||||
|
@@ -1696,7 +1696,7 @@ gui_mch_haskey(char_u *name)
|
|||||||
void
|
void
|
||||||
gui_mch_beep(void)
|
gui_mch_beep(void)
|
||||||
{
|
{
|
||||||
MessageBeep(MB_OK);
|
MessageBeep((UINT)-1);
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* Invert a rectangle from row r, column c, for nr rows and nc columns.
|
* Invert a rectangle from row r, column c, for nr rows and nc columns.
|
||||||
|
@@ -451,7 +451,8 @@ EXTERN unsigned bo_flags;
|
|||||||
#define BO_REG 0x8000
|
#define BO_REG 0x8000
|
||||||
#define BO_SH 0x10000
|
#define BO_SH 0x10000
|
||||||
#define BO_SPELL 0x20000
|
#define BO_SPELL 0x20000
|
||||||
#define BO_WILD 0x40000
|
#define BO_TERM 0x40000
|
||||||
|
#define BO_WILD 0x80000
|
||||||
|
|
||||||
#ifdef FEAT_WILDIGN
|
#ifdef FEAT_WILDIGN
|
||||||
EXTERN char_u *p_bsk; // 'backupskip'
|
EXTERN char_u *p_bsk; // 'backupskip'
|
||||||
|
@@ -20,7 +20,7 @@ static char *(p_bo_values[]) = {"all", "backspace", "cursor", "complete",
|
|||||||
"copy", "ctrlg", "error", "esc", "ex",
|
"copy", "ctrlg", "error", "esc", "ex",
|
||||||
"hangul", "insertmode", "lang", "mess",
|
"hangul", "insertmode", "lang", "mess",
|
||||||
"showmatch", "operator", "register", "shell",
|
"showmatch", "operator", "register", "shell",
|
||||||
"spell", "wildmode", NULL};
|
"spell", "term", "wildmode", NULL};
|
||||||
static char *(p_nf_values[]) = {"bin", "octal", "hex", "alpha", "unsigned", NULL};
|
static char *(p_nf_values[]) = {"bin", "octal", "hex", "alpha", "unsigned", NULL};
|
||||||
static char *(p_ff_values[]) = {FF_UNIX, FF_DOS, FF_MAC, NULL};
|
static char *(p_ff_values[]) = {FF_UNIX, FF_DOS, FF_MAC, NULL};
|
||||||
#ifdef FEAT_CRYPT
|
#ifdef FEAT_CRYPT
|
||||||
|
@@ -3385,12 +3385,22 @@ handle_postponed_scrollback(term_T *term)
|
|||||||
limit_scrollback(term, &term->tl_scrollback, TRUE);
|
limit_scrollback(term, &term->tl_scrollback, TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Called when the terminal wants to ring the system bell.
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
handle_bell(void *user UNUSED)
|
||||||
|
{
|
||||||
|
vim_beep(BO_SH);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static VTermScreenCallbacks screen_callbacks = {
|
static VTermScreenCallbacks screen_callbacks = {
|
||||||
handle_damage, // damage
|
handle_damage, // damage
|
||||||
handle_moverect, // moverect
|
handle_moverect, // moverect
|
||||||
handle_movecursor, // movecursor
|
handle_movecursor, // movecursor
|
||||||
handle_settermprop, // settermprop
|
handle_settermprop, // settermprop
|
||||||
NULL, // bell
|
handle_bell, // bell
|
||||||
handle_resize, // resize
|
handle_resize, // resize
|
||||||
handle_pushline, // sb_pushline
|
handle_pushline, // sb_pushline
|
||||||
NULL // sb_popline
|
NULL // sb_popline
|
||||||
|
@@ -746,6 +746,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
4744,
|
||||||
/**/
|
/**/
|
||||||
4743,
|
4743,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user