如何找到并设置$ EDITOR环境变量?


27

当我使用ipython或ipython3时,我可以使用%edit命令打开一个编辑器以写入我的python脚本。我的问题是默认编辑器是vim,但我确实不知道如何使用该编辑器。我想做的是将编辑器更改为nano或gedit。我想留在终端上,我希望将其更改为nano编辑器。

当我输入“编辑?”时 命令进入ipython终端,它说:

%edit运行IPython的编辑器挂钩。该挂钩的默认版本设置为调用$ EDITOR环境变量指定的编辑器。如果未找到,则在Linux / Unix下默认为vi,在Windows下默认为记事本。有关如何更改编辑器挂钩的信息,请参见此文档字符串的末尾。

然后,当我看到该文档字符串的末尾时,我将看到以下内容:

更改默认的编辑器挂钩:

如果您希望编写自己的编辑器挂钩,则可以将其放入在启动时加载的配置文件中。默认钩子在IPython.core.hooks模块中定义,您可以将其用作进一步修改的起始示例。该文件还具有有关在定义新钩子后如何使用的一般说明。

抱歉成为这样的新手,但我在这里迷路了。我不确定如何进入IPython.core.hooks模块,或者只是将环境变量$ EDITOR设置为nano。

有什么建议么?

Answers:


37

您可以$EDITOR使用以下命令设置变量:

export EDITOR="/usr/bin/nano"

这将为EDITOR当前会话定义变量,并将其传递到其所有子进程的环境中。要永久设置它,您必须在系统配置文件之一中对其进行定义。您可以执行的最高级别是将其设置为/etc/environment。这是全局定义的:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
EDITOR="/usr/bin/nano"

检查是否定义了变量:

$ echo $EDITOR
/usr/bin/nano

编者注:通常最好将环境变量放在自己的环境中~/.profile,如果出现问题,则更容易解决。


我在/ etc / environment文件中添加了'EDITOR =“ / usr / bin / nano”'行,但是它似乎不起作用。我需要重启吗?
2014年

现在重新启动系统,设置将适用。
Danatela 2014年

开始一个新的会话,您就完成了!
Luis Siquot 2015年

3
您无需重启即可使更改生效,只需source /etc/environment在编辑文件后运行即可。
cremefraiche

@cremefraiche恐怕那是不正确的。它不是脚本文件,因此您无法“获取”它。对于其他常用配置文件(例如.profile),它是正确的。最好的办法是注销并重新登录。那是唯一读取该文件的时间。阅读以下简短内容:help.ubuntu.com/community/…–
Haggra

18

加线

export EDITOR=nano

给您~/.profile~/.bashrc如下图所示。千万不能把引号nano

在此处输入图片说明

然后运行

source ~/.profile 
source ~/.bashrc

在提示之后修改.profile.bashrc对修改生效。

在此处输入图片说明

现在,%editipython将打开nano

~/.bashrc 将被要求 interactive + non-loginshell

~/.profile将被要求interactive + login shell

你的情况是不够的,只是添加它~/.bashrc来代替~/.profile


1
.bashrc应为击特定设置(例如,壳的选项,别名等),而仅使用.profile应该被用于设置等环境变量EDITOR(其用于通过诸如程序sudoeditgit等)。参见unix.stackexchange.com/a/3085/22812unix.stackexchange.com/a/42765/22812
安东尼·G-莫妮卡的大法官
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.