在我当前的.zshrc
文件中我有
bindkey -M viins -s '^tm' '^[Iman ^[Ela ^[d$'
但这不起作用,但是当我删除时米从快捷方式,现在只有^t
快捷方式可以工作。我想要它^tm
。
有任何想法吗?
答案1
它有效,但你必须快。您可以绑定字符序列,但想法是将其绑定到键发送字符序列。
例如,当您按下该Home键时,许多终端会发送^[[1~
.第一个字符是 ESC,它也在 vi 插入模式下绑定。因此,重要的是,绑定某些东西ESC[1~
并不会ESC
单独停止工作。
zsh
使用该$KEYTIMEOUT
设置(默认为 0.4 秒)来决定等待下一个按键的时间,以决定是按多字符按键还是按顺序按多个单字符按键。
现在,如果没有其他以 开头的键映射^T
,特别是如果没有^T
单独的映射,则zsh
可以无限期地等待该m
。^T
恰好映射到self-insert
默认的 viins 键盘映射中,这不是很有用。所以你可以简单地删除它:
bindkey -Mviins -r '^T'
哪个应该做你想做的事。
顺便说一句,您可能想将其绑定到run-help
小部件。