默认在vim中打开py文件,无需输入“vim filename.py”

默认在vim中打开py文件,无需输入“vim filename.py”

我想知道是否可以在 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

相关内容