gpt4 book ai didi

tmux - 如何在 tmux 中强制使用 emacs 样式的状态键?

转载 作者:行者123 更新时间:2023-12-01 09:29:23 26 4
gpt4 key购买 nike

tmux 1.8 有这个问题:我想设置 status-keys 'emacs' 的选项,因为我真的不喜欢在 vi 模式下输入命令。但是将以下行添加到 .tmux.conf 无效:

set -g status-keys emacs

重新启动 tmux 时, tmux show-options -g | grep keysemacs但实际行为是 vi 风格。

问题的根源是 $EDITOR环境变量,它设置为 vim就我而言。文件指出:
status-keys [vi | emacs]
Use vi or emacs-style key bindings in the status line,
for example at the command prompt. The default is emacs,
unless the VISUAL or EDITOR environment variables are set
and contain the string `vi'.

显然,当环境变量为“vim”时,它会强制使用 vi 状态键。

尽管有环境变量,有没有办法覆盖这种行为并让提示行为 emacs 风格?我显然可以解决这个问题(比如使用其他环境变量启动 tmux 并稍后恢复原始变量),但我希望有一个干净的解决方案。

谢谢!

最佳答案

我遇到了这个问题,我想我只是想通了。您是否也使用 ZSH(Z Shell)?

I found this post这表示如果您的 VISUAL 和/或 EDITOR 设置为 vi/vim,ZSH 也会切换到“vi 模式”。所以我在 tmux 中遇到的问题实际上是从 ZSH 冒出来的!

简而言之,确保您可以在 tmux 之外的 shell 中使用 emacs 样式的键。如果您使用的是 ZSH,您可以添加 bindkey -e.zshrc设置 emacs 绑定(bind)。然后在 .tmux.conf :

set -g mode-keys emacs
set -g status-keys emacs

关于tmux - 如何在 tmux 中强制使用 emacs 样式的状态键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18240683/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com