簡體   English   中英

如何在vim-airline的操作員掛起模式下顯示重新映射的密鑰而不是原始密鑰?

[英]How to display remapped key instead of original key in operator-pending mode in vim-airline?

一年前我發現了 Vim,我越來越沉迷於它。

我重新映射了我的法語 dvorak-like bépo 布局的每個鍵,以堅持正常模式的 qwerty 布局,如本頁上的“重新配置totale des touches”中所述: https://bepo.fr/wiki/Vim ,主要是因為我學習了 Vim 冒險游戲。

它工作得很好:

例如, yr重新映射為cl :該命令將字符向右剪切並進入插入模式。

但是,vim 狀態行在顯示 c 之前顯示 y 一秒鍾:

在 nvim 狀態行中顯示 y 而不是 c

我改變了我的映射:

noremap y c

對此:

map <nowait> y c

沒有成功。

任何人都知道是否可以立即顯示重新映射的操作員掛起鍵,即在我的情況下為“c”?

這與 vim-airline 或任何其他插件無關。

由於showcmd標准選項,會顯示掛起的運算符。 AFAIK,除了完全禁用它( set noshowcmd )或修補 Vim 的源代碼外,沒有辦法改變它。

一個更簡單的解決方案是使用langmap ,而不是重新映射每個組合鍵。 這為顯示重新映射的命令鍵提供了額外的好處。

來自:h langmap

This option allows switching your keyboard into a special language
mode.  When you are typing text in Insert mode the characters are
inserted directly.  When in Normal mode the 'langmap' option takes
care of translating these special characters to the original meaning
of the key.  This means you don't have to change the keyboard mode to
be able to execute Normal mode commands.

要測試它:

:set langmap=éw在正常模式下將é重新映射為w

:set showcmd在狀態行中顯示w而不是é

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM