如何在Vim中设置元功能键组合?

Dav*_*ric 5 vim

我需要在非gui模式下重新定义Vim的键盘映射.

我根本不明白为什么以下命令不起作用:

:set <M-F5>=^[[15~

"E518: Unknown option: <M-F5>=^[[15~"
Run Code Online (Sandbox Code Playgroud)

而单独F5键或Meta与非功能键的映射确实有效:

:set <F5>=^[[15~

"ok"

:set <M-space>=^[[15~

"ok"
Run Code Online (Sandbox Code Playgroud)

如何用Vim中的功能键F1-F12重新定义Alt/Meta?

Thx提前.

大卫

更新:问题更 正在我的.vimrc中,我有以下键组合映射

autocmd Filetype python noremap <buffer> <silent> <M-F9> :w !pylint -E %<CR>
Run Code Online (Sandbox Code Playgroud)

但它只适用于gVim.遗憾的是,它不适用于非gui版本的Vim,因为Vim接收转义序列"^ [[20~"而不是直接的Meta-F9键码.

icy*_*com 2

这是 Vim wiki 中的一个示例:

inoremap <M-i> <Tab>
Run Code Online (Sandbox Code Playgroud)

看看这里:

如果这不起作用,请尝试以下操作:

inoremap <ESC>i <Tab>
Run Code Online (Sandbox Code Playgroud)

请注意,这是一个 hack,会产生一些奇怪的东西,你可能不得不忍受。

对于功能键,类似这样的操作应该有效:

nnoremap <ESC><F9> :ls<CR>
Run Code Online (Sandbox Code Playgroud)