如何为视觉指定编辑器



我执行了这两个命令:

export VISUAL=/usr/bin/vim
export EDITOR=/usr/bin/vim

我检查了它们是否被 env 正确更新.但是当我运行sudo visudo时,我得到了一个奇怪的编辑器.

虽然我不认识编辑器,但在控制台的底部它是这样说的:

-----Mg: sudoers.tmp                  (fundamental)----Top------------------
(Read 29 lines)

这个编辑器没用,因为我无法移动光标。我能做的就是关闭控制台。

是什么让这个奇怪的编辑器运行?我应该执行什么命令来更改编辑器?

:man visudo(第二段(:

有一个包含一个或多个编辑器的硬编码列表,visudo 将使用 在编译时设置,可以通过编辑器 sudoers 默认覆盖 变量。 此列表默认为/usr/local/bin/vi。 通常,视觉 不支持可视化或编辑器环境变量,除非它们 在上述编辑器列表中包含一个编辑器。 但是,如果 visudo 配置了 --with-env-editor 选项或env_editor默认值 变量在 sudoers 中设置,visudo 将使用编辑器定义的任何 可视化或编辑器。 请注意,这可能是一个安全漏洞,因为它允许 用户只需设置 VISUAL 或 编辑 器。

因此,要配置另一个编辑器,您需要更改/etc/sudoers配置并添加例如Defaults editor /usr/bin/vim行。

奇怪的是,Vim应该已经是默认编辑器了?!根据您的输出,这可能来自 Vim(终端损坏(或其他编辑器(您可以检查进程树(。

它是一个名为 mg 的类似 emacs 的编辑器,你可以/应该阅读它的手册页,$ man mg,以了解它是如何工作的。

至于它如何以及为什么成为您的默认编辑器......你应该看看你的初始化文件。

相关内容

  • 没有找到相关文章

最新更新