我的问题是关于午夜指挥官的。我取消了内部编辑器的使用(在选项 - >配置中)并输入.bashrc
:
export EDITOR='emacsclient -n'
仍然 - 按 F4 什么都没有,按 F3 - 打开vi
。有没有办法emacsclient
成为默认的文本编辑器mc
?
删除~/.selected_editor,然后下次按F4时,MC会提示选择编辑器。或者,您可以直接更改它。
$ cat .selected_editor
# Generated by /usr/bin/select-editor
SELECTED_EDITOR="/usr/bin/vim.basic"
这适用于 Ubuntu。我已经尝试过任何其他设置默认编辑器的方法,但都无济于事。
我所做的是更改~/.mc/bindings文件:
### Default ###
# Default target for anything not described above
default/*
Open=%var{EDITOR:emacs} %f &
View=
这样我仍然可以使用 F3 查看文件,但 F4 或 enter 通常使用 Emacs 编辑它们。
顺便说一句,与号是这样文件将在 X 中弹出,我可以在 mc 中继续。如果您只在命令行上工作,您可能必须删除它。
更新:如果您没有~/.mc/bindings
文件,请在 mc 中按F9 ce(菜单、命令、编辑扩展文件),它应该可以让您到达那里。
此外,您需要关闭内部编辑选项,方法是转到F9 oct(菜单、选项、配置、使用内部编辑),取消选中该框,然后保存选项。
我找到了一种方法:可以使用 mc 的宏功能。为此制作一个文件:
e Open in emacsclient
emacsclient -n %s
并将其保存为~/.mc/menu
or ~/.mc.menu
。之后在 pressin 上F2
- 你会得到你的函数列表。并且会有一个功能Open in emacs
- 可由e
. 所以这两个键F2-e
打开当前文件(或所有选定的文件)在emacsclient -n
.
这是另一个解决方案:编辑扩展文件并添加一个编辑条目。
(抱歉,没有足够的声誉将此作为评论添加到 Gustav Bertram 的回答中。)
请务必使用 MidnightCommander 的内置功能,因为配置文件的位置似乎在某些 MC 版本之间发生变化。
所以按F9
或ESC,9
(打开菜单),然后转到Command -> Edit Extension File
。
在编辑器中,找到看起来像这样的最后一个块:
# Default target for anything not described above
default /*
Open=
View=
将其更改为类似的内容(注意添加的Edit
-line !!!):
# Default target for anything not described above
default/*
Open= %var{EDITOR:emacs} %f &
View=
Edit= %var{EDITOR:emacs} %f &
保存文件后,一定要关闭内部编辑器!!
(F9
或ESC,9
, Options -> Configuration
, " Use internal edit
" 必须取消选中)
这样(至少与更高版本的 MC 一起使用),您可以使用三种不同的编辑器(或命令行选项)来打开文件:“查看”(F3
)、“编辑”(F4
)和“打开”(Enter
)——每个都单独可配置。
注意#1:如果您添加了自定义view
命令,请不要忘记取消选中“ Use internal view
”下Options -> Configuration
。
注意#2:当从 MC 中打开配置文件时,MC 仍然使用其首选编辑器(例如 nano)来编辑配置文件。
像往常一样运行 MC。在菜单选择底行正上方的命令行中,键入不带引号的“select-editor”。这应该会打开一个菜单,其中列出了所有已安装的编辑器。这对我当前所有的 linux 机器都有效。