升级后 vim 中的 Ctrl-Backspace 损坏

升级后 vim 中的 Ctrl-Backspace 损坏

在 FreeBSD 下,xterm以下设置使 vim 在按ctrl+ (“Control+Backspace”) 后删除最后一个单词:

set backspace=indent,eol,start
inoremap <C-?> <C-W>
cnoremap <C-?> <C-W>

无论出于何种原因,在上次系统升级后,此功能不再起作用。相反,它会导致 vim 插入^?到文档中。

如果在 .vim 内部使用 vim,它会按预期工作screen

笔记:

  • 在 xterm 下的 vim 中按ctrl+ v, ctrl+插入。?^[[27;6;63~
  • 在屏幕下的 vim 中按ctrl+ v, ctrl+插入。?^?

vim --version给出:

VIM - Vi IMproved 8.1 (2018 May 18, compiled Nov 24 2019 15:10:11)
Included patches: 1-2237
Compiled by root@120amd64-default-job-19
Huge version with GTK3 GUI.  Features included (+) or not (-):
+acl               -farsi             +mouse_sysmouse    -tag_any_white
+arabic            +file_in_path      +mouse_urxvt       -tcl
+autocmd           +find_in_path      +mouse_xterm       +termguicolors
+autochdir         +float             +multi_byte        +terminal
-autoservername    +folding           +multi_lang        +terminfo
+balloon_eval      -footer            -mzscheme          +termresponse
+balloon_eval_term +fork()            +netbeans_intg     +textobjects
+browse            +gettext           +num64             +textprop
++builtin_terms    -hangul_input      +packages          +timers
+byte_offset       +iconv             +path_extra        +title
+channel           +insert_expand     +perl              +toolbar
+cindent           +job               +persistent_undo   +user_commands
+clientserver      +jumplist          +postscript        +vartabs
+clipboard         +keymap            +printer           +vertsplit
+cmdline_compl     +lambda            +profile           +virtualedit
+cmdline_hist      +langmap           -python            +visual
+cmdline_info      +libcall           +python3           +visualextra
+comments          +linebreak         +quickfix          +viminfo
+conceal           +lispindent        +reltime           +vreplace
+cryptv            +listcmds          +rightleft         +wildignore
+cscope            +localmap          +ruby              +wildmenu
+cursorbind        -lua               +scrollbind        +windows
+cursorshape       +menu              +signs             +writebackup
+dialog_con_gui    +mksession         +smartindent       +X11
+diff              +modify_fname      -sound             -xfontset
+digraphs          +mouse             +spell             +xim
+dnd               +mouseshape        +startuptime       +xpm
-ebcdic            +mouse_dec         +statusline        +xsmp_interact
+emacs_tags        -mouse_gpm         -sun_workshop      +xterm_clipboard
+eval              -mouse_jsbterm     +syntax            -xterm_save
+ex_extra          +mouse_netterm     +tag_binary        
+extra_search      +mouse_sgr         -tag_old_static    

有什么想法可以解决这个问题,以便vim 中的ctrl+删除最后一个单词吗?

答案1

看起来^[[27;6;63~像 xterm 的修改其他键功能,这并不是最近的。

这很奇怪,因为最近 vim 在这方面有所改变,但 xterm 没有改变。问题提到了这一点:

VIM - Vi IMproved 8.1 (2018 May 18, compiled Nov 24 2019 15:10:11)

但没有提到 xterm 版本。 xterm 中的相关更改仅用于文档(请参阅常见问题解答我的程序如何区分 control-I 和 tab?)。最近对 vim 的更改开启了modifyOtherKeysxterm 的功能。布拉姆解决了一个问题十月(仍晚于“8.1”)。

相关内容