Wil*_*czy 34 command-line ipython
当我使用 ipython 或 ipython3 时,我可以使用 %edit 命令打开一个编辑器来编写我的 python 脚本。我的问题是默认编辑器是 vim,我真的不知道如何使用该编辑器。我想做的是将编辑器更改为 nano 或 gedit。我想继续使用终端,我更愿意将其更改为 nano 编辑器。
当我输入“编辑?” 命令进入 ipython 终端,它说:
%edit 运行 IPython 的编辑器钩子。此钩子的默认版本设置为调用 $EDITOR 环境变量指定的编辑器。如果没有找到,它会在 Linux/Unix 下默认为 vi,在 Windows 下默认为记事本。有关如何更改编辑器挂钩的信息,请参阅此文档字符串的末尾。
然后当我看到该文档字符串的结尾时,我看到了:
更改默认编辑器挂钩:
如果你想编写自己的编辑器钩子,你可以把它放在一个你在启动时加载的配置文件中。默认挂钩在 IPython.core.hooks 模块中定义,您可以将其用作进一步修改的起始示例。该文件还包含有关如何在定义后设置新挂钩以供使用的一般说明。
很抱歉成为这样的新手,但我在这里迷路了。我不确定如何访问 IPython.core.hooks 模块,或者只是将环境变量 $EDITOR 设置为 nano。
有什么建议?
Dan*_*ela 52
您可以$EDITOR
使用以下命令设置变量:
export EDITOR="/usr/bin/nano"
Run Code Online (Sandbox Code Playgroud)
这将为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"
Run Code Online (Sandbox Code Playgroud)
检查变量是否已定义:
$ echo $EDITOR
/usr/bin/nano
Run Code Online (Sandbox Code Playgroud)
编者注:通常最好将环境变量放在您自己的 中~/.profile
,如果出现问题,这更容易修复。
Sto*_*rux 20
添加行
export EDITOR=nano
Run Code Online (Sandbox Code Playgroud)
您~/.profile
并~/.bashrc
在下面的图片。千万不能把引号nano
然后运行
source ~/.profile
source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
在提示之后修改.profile
和.bashrc
对修改生效。
现在%edit
inipython
将打开nano
。
~/.bashrc
将被要求 interactive + non-loginshell
而
~/.profile
将被要求interactive + login shell
在您的情况下,只需将其添加到~/.bashrc
而不是~/.profile
.