如何更改 Debian (squeeze) 发行版中的默认文本编辑器

如何更改 Debian (squeeze) 发行版中的默认文本编辑器

“乔自己的编辑”对我来说并不自然。如何更改为使用 nano 或 vim?

我试过了

export EDITOR=nano

但似乎并没有受到尊重。我visudo也想尊重这一点。

答案1

要在系统级别更改默认编辑器:

sudo update-alternatives --config editor

然后按照屏幕上的提示进行操作。

答案2

更改帐户默认编辑器的方法设置EDITOR环境变量。如果这对你不起作用,那么你就做了一些不寻常的事情。检查您是否还定义了VISUAL,或者如果定义了,请为这两个变量指定相同的值(请参阅VISUAL 与 EDITOR — 有什么区别?)。将这些行添加到您的~/.profile(注意:~/.bashrc):

EDITOR=nano
VISUAL=$EDITOR
export EDITOR VISUAL

在下面Debian 政策,所有程序都应该支持EDITORVISUAL设置默认编辑器。

在 Debian 及其衍生版本下,您可以使用替代机制设置系统范围的默认编辑器,正如史蒂夫·罗比拉德提到的:update-alternatives --config editor以 root 身份运行。

答案3

上面提到的解决方案有效,但不可编写脚本。如果您想以可编写脚本(非交互式)的方式执行此操作,您应该使用 --set:

# update-alternatives --set editor /usr/bin/vim.basic

您可以通过以下方式获取选项列表:

$ update-alternatives --list editor

答案4

我遇到了同样的问题,但是通过 update-alternatives 设置它并不能完全解决 Raspbian Buster (10.2) 上的问题。虽然我将 vim.basic 设置为默认编辑器(手动使用 update-alternatives --config 编辑器),但它的优先级只有 30,而 nano 的优先级为 40。

root@rsyslog:~/scripts# update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
  0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
* 3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    15        manual mode

Press <enter> to keep the current choice[*], or type selection number: 

我开始查看常用的配置文件和点文件,并发现了以下文件:

root@rsyslog:~/scripts# cat /root/.selected_editor 
# Generated by /usr/bin/select-editor
SELECTED_EDITOR="/bin/nano"
root@rsyslog:~/scripts#

设置 vim.basic 之后通过/usr/bin/选择编辑器,该文件包含 vim.basic:

root@rsyslog:~/scripts# /usr/bin/select-editor

Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/vim.basic
  3. /usr/bin/vim.tiny
  4. /bin/ed

Choose 1-4 [1]: 2
root@rsyslog:~/scripts# cat /root/.selected_editor 
# Generated by /usr/bin/select-editor
SELECTED_EDITOR="/usr/bin/vim.basic"
root@rsyslog:~/scripts# 

现在我可以再次使用 VIM 执行 crontab -e :)。

相关内容