我想知道是否可以在 vim 中打开 python 文件,而无需在其前面输入“vim”。例如: 而不是:
vim filename.py
简单地
$ filename.py
将在 vim 中打开该文件。
我相信这不取决于.vimrc
或.bashrc
(.zshrc
就我而言),这会将.py
文件解释为可执行文件vim
或其他东西。我正在使用 ubuntu (wsl2) 和 zsh (oh-my-zsh)。可能以前有人问过这个问题,但我找不到这样的问题。谢谢。
答案1
令我个人惊讶的是,是的,有一种方法zsh
。 这个问题带我去这个答案谈论zsh
.中的“后缀别名”并不是说你的是重复的——第一个问题是关于bash
如何做到这一点;另一个答案只是关于“最喜欢的zsh
功能”。
要使用后缀别名来执行此操作:
alias -s py=vim
将其添加到您的~/.zshrc
以使其永久化。
就我个人而言,我建议不要这样做,至少有两个原因。首先也是最重要的,正如 @pizzapants184 在评论中指出的那样,这甚至覆盖了使用其路径执行 Python 文件的能力。例如,./run_me.py
即使它被设置为可执行文件,并且即使它有一个 shebang 行(例如#!/usr/bin/env python3
或#!/usr/bin/python3
),也不会执行。这是一个很巧妙的功能,但恕我直言,如果它“更智能”,那就太好了。
此外,额外的 3 个字符 (" vi
") 会成为肌肉记忆,在您尚未以这种方式配置或尚未zsh
安装的其他系统上为您提供良好的服务。
替代方法
虽然我仍然不一定推荐它,但您可以为单个文件设置 shebang 行,以强制它在vim
执行时加载:
- 作为文件的第一行(我们将其称为
edit_me.py
):#!/usr/bin/env vi
- 设置文件可执行:
chmod +x edit_me.py
- 运行它(例如
./edit_me.py
)将打开它(如果不可用vim
则回退到)。vi