vim - tmux 使用了错误版本的 Vim
问题描述
brew install vim
我使用and安装了 Vim 和 tmux brew install tmux
,当vim --version
使用 zsh 作为默认 shell 在 tmux 之外运行时,我得到了这个:
macOS version - arm64
Included patches: 1-3550
Compiled by Homebrew
这就是我想要的。但是,vim --version
在 tmux 会话中运行时,我得到了这个:
macOS version
Included patches: 1-2029
Compiled by root@apple.com
这不是我想要的。
我在想这可能与我的处理器的 arm64 架构有关。我用这个终端命令安装了 Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
我将不胜感激任何反馈。谢谢!
解决方案
解决了!我注意到在type -a vim
tmux 会话之外输入时,我得到:
vim is /opt/homebrew/bin/vim
vim is /usr/bin/vim
但是,在 tmux 会话中输入时,type -a vim
我得到了:
vim is /usr/bin/vim
vim is /opt/homebrew/bin/vim
这意味着,由于某种未知的原因,不同版本的 vim 的路径在 tmux 会话中被交换了。
我通过将以下内容放入我的 .zshrc 中解决了这个问题:
alias vi=/opt/homebrew/bin/vim
alias vim=/opt/homebrew/bin/vim
这是有效的,因为它强制vi
andvim
命令使用我在 .zshrc 中指定的路径中找到的 vim 版本。
我希望这可以帮助任何有同样问题的人。
推荐阅读
- macos - 如何使用 NSFilePromiseProvider 写入粘贴板
- javascript - 在用户输入时“立即”比较日期值
- statistics - SARIMAX ValueError:xnames 和 params 的长度不同
- php - 删除基于 1 个标记的 XML 行块,保留其余部分
- android - ios和android的react native推送通知
- spring-cloud - 多个@SqsListeners的Spring Cloud AWS SQS SimpleMessageListenerContainerFactory配置
- dictionary - 为什么地图中没有键
- c# - 可以提取基类中断二进制序列化
- gcc - 尝试使用 GCC 编译 x86 程序集,但收到有关缺少括号和“表达式后出现垃圾”的错误
- string - MongoDB:如何将字符串解析为正确的日期格式