如何在UNIX中将“ vi”设置为默认编辑器?


135

我相信我可以做类似的事情export EDITOR=vi,但是我不确定确切输入什么内容以及输入位置。

如何将“ vi”设置为默认编辑器?


5
只是export EDITOR=vim在您的bashrc或zshrc或..rc中
肯特,

经常必须为此设置程序,例如git
timpone 13-4-24

3
在Ubuntu中(如所述),尝试运行:select-editor
Pablo A

Answers:


164

您应该将其添加到外壳的配置文件中。对于Bash,这是~/.bashrc~/.bash_profile。您还应该设置$VISUAL,因为某些程序(正确地)使用而不是$EDITOR(请参见VISUALvs.EDITOR)。此外,除非您知道原因,否则应将其设置为vim而不是vi

TL; DR,将以下内容添加到您的shell配置中(可能是~/.bashrc):

export VISUAL=vim
export EDITOR="$VISUAL"

不为我工作!我仍然看到一个数字:“ sudo crontab -e”,而不是编辑crontab!
Mohsen Abasi

@MohsenAbasi您是什么意思“我仍然看到一个数字?”。请检查EDITOR环境(env | grep EDITOR)和传递给sudosudo env | grep EDITOR)的环境是否都存在,因为系统的sudo安全策略可能会禁止使用它(man sudo有关详细信息,请参阅)。
安德鲁·马歇尔

我的意思是执行后,我仍然只看到一个数字(未打开'vim'编辑器):'sudo crontab -e'。由于在我的Ubuntu中没有默认的编辑器可用于编辑cron作业。要使用默认编辑器,您的解决方案对我没有任何帮助。“ DobesVandermeer”的唯一解决方案有效。
Mohsen Abasi

104

您还可以使用以下命令来设置默认的文本编辑器。

sudo update-alternatives --config editor

3
这也设置了默认值git,这正是我所需要的。
卡扎伊16-3-9

这也设置了默认值ranger,这正是我所需要的。PS:只是为了帮助索引试图这样做的人。
wviana '16

1
只有这个工作对我的Ubuntu服务器18.04
user3751385

17

正如Pablo Bianchi在评论中提到的那样,您可以运行

select-editor

它将询问您使用哪个编辑器。如果您没有选择vim,请运行

apt install vim

然后再试一次。


4

如果bash是您的shell,则将其插入.bash_profile主目录中;如果zsh是您的shell,则将其插入.zprofile;中。对于其他外壳,请参见相应的文档。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.