Oh, it was reverted. Nevermind then. On Thursday, November 6, 2025 at 10:50:03 AM UTC+11 Maxim Kim wrote:
> I have 9.1.1896 and there is no help topics for <OSC> and <xOSC> > > <Bslash> backslash \ 92 *backslash* *<Bslash>* > <Bar> vertical bar | 124 *<Bar>* > > <Del> delete 127 > <CSI> command sequence intro ALT-Esc 155 *<CSI>* > <xCSI> CSI when typed in the GUI *<xCSI>* > > <EOL> end-of-line (can be <CR>, <NL> or <CR><NL>, > depends on system and 'fileformat') *<EOL>* > > > > On Thursday, November 6, 2025 at 9:14:34 AM UTC+11 Christian Brabandt > wrote: > >> patch 9.1.1895: OSC terminal response hard to detect >> >> Commit: >> https://github.com/vim/vim/commit/8707b7a15b8a22ee4f60e1f9e7d3d417b20e60d2 >> Author: Foxe Chen <[email protected]> >> Date: Sat Nov 1 16:26:18 2025 +0000 >> >> patch 9.1.1895: OSC terminal response hard to detect >> >> Problem: OSC terminal response hard to detect >> Solution: Add the <OSC> and <xOSC> pseudo keys >> (Foxe Chen) >> >> closes: #18660 >> >> Signed-off-by: Foxe Chen <[email protected]> >> Signed-off-by: Christian Brabandt <[email protected]> >> >> diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt >> index 46aa9428f..828d2852d 100644 >> --- a/runtime/doc/intro.txt >> +++ b/runtime/doc/intro.txt >> @@ -1,4 +1,4 @@ >> -*intro.txt* For Vim version 9.1. Last change: 2025 Oct 12 >> +*intro.txt* For Vim version 9.1. Last change: 2025 Nov 01 >> >> >> VIM REFERENCE MANUAL by Bram Moolenaar >> @@ -450,6 +450,8 @@ notation meaning equivalent decimal value(s) ~ >> <Del> delete 127 >> <CSI> command sequence intro ALT-Esc 155 *<CSI>* >> <xCSI> CSI when typed in the GUI *<xCSI>* >> +<OSC> operating system command 157 *<OSC>* >> +<xOSC> finished OSC response *<xOSC>* >> >> <EOL> end-of-line (can be <CR>, <NL> or <CR><NL>, >> depends on system and 'fileformat') *<EOL>* >> diff --git a/runtime/doc/tags b/runtime/doc/tags >> index 8fd8cbae1..09ba497ef 100644 >> --- a/runtime/doc/tags >> +++ b/runtime/doc/tags >> @@ -3841,6 +3841,7 @@ $quote eval.txt /*$quote* >> <NL> motion.txt /*<NL>* >> <Nop> map.txt /*<Nop>* >> <Nul> intro.txt /*<Nul>* >> +<OSC> intro.txt /*<OSC>* >> <PageDown> scroll.txt /*<PageDown>* >> <PageUp> scroll.txt /*<PageUp>* >> <Plug> map.txt /*<Plug>* >> @@ -3961,6 +3962,7 @@ $quote eval.txt /*$quote* >> <xHome> term.txt /*<xHome>* >> <xHome>-xterm term.txt /*<xHome>-xterm* >> <xLeft> term.txt /*<xLeft>* >> +<xOSC> intro.txt /*<xOSC>* >> <xRight> term.txt /*<xRight>* >> <xUp> term.txt /*<xUp>* >> = change.txt /*=* >> diff --git a/src/keymap.h b/src/keymap.h >> index e993e0999..d30097950 100644 >> --- a/src/keymap.h >> +++ b/src/keymap.h >> @@ -280,6 +280,7 @@ enum key_extra >> , KE_SID = 106 // <SID> special key, followed by {nr}; >> , KE_ESC = 107 // used for K_ESC >> , KE_WILD = 108 // triggers wildmode completion >> + , KE_OSC = 109 // OSC sequence >> }; >> >> /* >> @@ -478,6 +479,7 @@ enum key_extra >> #define K_MOUSERIGHT TERMCAP2KEY(KS_EXTRA, KE_MOUSERIGHT) >> >> #define K_CSI TERMCAP2KEY(KS_EXTRA, KE_CSI) >> +#define K_OSC TERMCAP2KEY(KS_EXTRA, KE_OSC) >> #define K_SNR TERMCAP2KEY(KS_EXTRA, KE_SNR) >> #define K_PLUG TERMCAP2KEY(KS_EXTRA, KE_PLUG) >> #define K_CMDWIN TERMCAP2KEY(KS_EXTRA, KE_CMDWIN) >> diff --git a/src/misc2.c b/src/misc2.c >> index 8380e745c..fcbf0dd1c 100644 >> --- a/src/misc2.c >> +++ b/src/misc2.c >> @@ -1053,6 +1053,7 @@ static struct key_name_entry >> {TRUE, NL, STRING_INIT("NewLine"), TRUE}, >> {TRUE, NL, STRING_INIT("NL"), FALSE}, >> {TRUE, K_ZERO, STRING_INIT("Nul"), FALSE}, >> + {TRUE, OSC, STRING_INIT("OSC"), FALSE}, >> {TRUE, K_PAGEDOWN, STRING_INIT("PageDown"), FALSE}, >> {TRUE, K_PAGEUP, STRING_INIT("PageUp"), FALSE}, >> {TRUE, K_PE, STRING_INIT("PasteEnd"), FALSE}, >> @@ -1111,6 +1112,7 @@ static struct key_name_entry >> {TRUE, K_XF4, STRING_INIT("xF4"), FALSE}, >> {TRUE, K_XHOME, STRING_INIT("xHome"), FALSE}, >> {TRUE, K_XLEFT, STRING_INIT("xLeft"), FALSE}, >> + {TRUE, K_OSC, STRING_INIT("xOSC"), FALSE}, >> {TRUE, K_XRIGHT, STRING_INIT("xRight"), FALSE}, >> {TRUE, K_XUP, STRING_INIT("xUp"), FALSE}, >> {TRUE, K_ZEND, STRING_INIT("zEnd"), FALSE}, >> diff --git a/src/term.c b/src/term.c >> index 4c365b19b..39005b242 100644 >> --- a/src/term.c >> +++ b/src/term.c >> @@ -5933,7 +5933,6 @@ handle_osc(char_u *tp, int len, char_u *key_name, >> int *slen) >> last_char = ((char_u *)osc_state.buf.ga_data)[osc_state.buf.ga_len - 1]; >> >> key_name[0] = (int)KS_EXTRA; >> - key_name[1] = (int)KE_IGNORE; >> >> // Read data and append to buffer. If we reach a terminator, then >> // finally set the vim var. >> @@ -5945,6 +5944,8 @@ handle_osc(char_u *tp, int len, char_u *key_name, >> int *slen) >> { >> osc_state.processing = FALSE; >> >> + key_name[1] = (int)KE_OSC; >> + >> ga_concat_len(&osc_state.buf, tp, i + 1 + (tp[i] == ESC)); >> ga_append(&osc_state.buf, NUL); >> *slen = i + 1 + (tp[i] == ESC); >> @@ -5962,6 +5963,8 @@ handle_osc(char_u *tp, int len, char_u *key_name, >> int *slen) >> return OK; >> } >> >> + key_name[1] = (int)KE_IGNORE; >> + >> #ifdef ELAPSED_FUNC >> if (ELAPSED_FUNC(osc_state.start_tv) >= p_ost) >> { >> diff --git a/src/version.c b/src/version.c >> index b8a4d78a8..e42edad47 100644 >> --- a/src/version.c >> +++ b/src/version.c >> @@ -729,6 +729,8 @@ static char *(features[]) = >> >> static int included_patches[] = >> { /* Add new patch number below this line */ >> +/**/ >> + 1895, >> /**/ >> 1894, >> /**/ >> > -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/vim_dev/7f355cd0-f17d-43db-a98e-f67ae129e62cn%40googlegroups.com.
