我一直在嘗試以幾種不同的方式映射 Ctrl + F8,但我就是無法讓它工作。經過一些研究,我發現 vim 不支援所有終端鍵碼,我必須將終端鍵碼分配給空的 vim 鍵碼(如 F13)。我跟著這一步一步指導,沒有成功。
我所做的是:
- 使用 cat 尋找 Ctrl + F8 的終端機 (URxvt) 鍵碼。結果是:^[[19^
- 將以下行新增至我的插件檔案:
set <F13>=^[[1;2B nnoremap <F13> :call foobar
有什麼建議麼?
答案1
【經過測試,我已將評論轉為答案。
您的set
命令未使用與掃描碼相同的值。另外,您需要確保使用轉義字元而不是^
和兩個字元[
。為了使這一過程變得簡單,而無需“硬編碼”轉義字符,我將使用:execute
:
:exe "set <F13>=\e[19^"
:nnoremap <F13> :echo "It works!"<CR>