我正在尝试将Vim命令映射到ctrl+pgup
和ctrl+pgdn
组合键。这些键的vim语法不起作用(即<PageUp>
和<PageDown>
,或<C-PageUp>
和<C-PageDown>
)。
由于默认的vim语法不起作用,我猜测终端没有发送字符代码ctrl+pgup
以及ctrl+pgdn
期望的Vim。如果是这样,我不确定如何找出文字键码是什么。我在Arch Linux上使用xfce4-terminal。
这是我尝试过的:
常用方法:
map <C-PageUp> :bp<cr>
使用以下答案的方法从命令行进行设置:为什么<C-PageUp>和<C-PageDown>在vim中不起作用?
:map <CTRL-V><CTRL-PAGEUP> :bp<cr>
当我在命令行中键入上面的命令时,没有任何显示:
map :bp<cr>
维姆说No mapping found
。
该方法来自Vim Wiki:http ://vim.wikia.com/wiki/Mapping_keys_in_Vim_- 教程(Part_2)#Key_notation
set <PageUp>=<type Ctrl-V><type PageUp> "^[[5~
map <C-PageUp> :bp<cr>
该答案的修改:
set <C-PageUp>=<type Ctrl-V><type Ctrl+PageUp> "^M
map <C-PageUp> :bp<cr>
意识到这<type *>
是一个用户命令后,我执行了这些命令,并vim粘贴了输出。我替换<type *>
为以下输出:
set <PageUp>=^[[5~
map <C-PageUp> :bp<cr>
" Also:
set <PageUp>=[[5~
map <C-PageUp> :bp<cr>
" Also:
set <PageUp>=<^[[5~>
map <C-PageUp> :bp<cr>
" Also:
set <PageUp>=<[[5~>
map <C-PageUp> :bp<cr>
" Also:
set <C-PageUp>=^M
map <C-PageUp> :bp<cr>
" Also:
set <C-PageUp>=<^M>
map <C-PageUp> :bp<cr>
尝试5中的所有方法,但无需先设置选项。例如:
map <C-[[5~> :bp<cr>
此答案中的方法:https : //groups.google.com/forum/#!topic/ vim_use/ j85-2xQkb7s
map [5~ :bp<cr>
此答案中的方法:https : //superuser.com/questions/322983/how-to-let-ctrl-page-down-switch-tabs-inside-vim-in-terminal-app
map \033[5;5~ :bp<cr>
设置不同的术语选项:
set term=xterm
" Also:
set term=xterm-256color
我的$TERM
环境变量设置为xterm
。
使用此答案提示的某些方法:通常在https://superuser.com/questions/480215/how-to-map-pagedown-and-pageup-keys-to-function-正常
map <Esc>[5~ :bp<cr>
map <kpp> :bp<cr>
.vim/after/plugin/
而不是in 尝试上述所有操作.vimrc
。:MBEbp
代替尝试上述所有操作:bp
。我还能尝试什么?
好吧,我知道了。我忽略了一些非常简单的事情,这对我来说通常就是这种情况。
ctrlpgup并且ctrlpgdn已经是xfce4-terminal本身中的键盘快捷键(用于切换Terminal标签)。为了允许Vim使用这些组合键,终端本身不能使用它们。所以这是xfce4-terminal而不是Vim的问题。
可以使用此处描述的方法取消设置xfce4-terminal快捷方式:https : //unix.stackexchange.com/questions/159979/xfce4-terminal-disable-individual-shortcut
简而言之,过程如下:
打开~/.config/xfce4/terminal/accels.scm
并取消注释/编辑行:
(gtk_accel_path "<Actions>/terminal-window/next-tab" "")
(gtk_accel_path "<Actions>/terminal-window/prev-tab" "")
(您可以通过打开新窗口并单击菜单栏中的选项卡来验证此更改:“ 上一个选项卡”和“ 下一个选项卡”项不应再在其右侧显示快捷方式。)
将此命令放在.vimrc
:
map <C-PageUp> :bp<CR>
map <C-PageDown> :bn<CR>
nmap
而是考虑将快捷方式限制为NORMAL模式。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句