Emacs: как сделать его редактором в полночь командира?

Мой вопрос о Полуночном командире. Я отключил использование внутреннего редактора (в Параметры -> Конфигурация) и положил в .bashrc:

export EDITOR='emacsclient -n'

еще - нажатие F4 ничего не дает, нажатие F3 - открывает в vi, Есть ли способ сделать emacsclient быть текстовым редактором по умолчанию в mc?

5 ответов

Решение

Я нашел способ: можно использовать функцию макроса mc. Для этого сделайте файл:

e   Open in emacsclient
    emacsclient -n %s

и сохранить его как ~/.mc/menu или же ~/.mc.menu, После этого на пресс F2 - Вы получите список своих функций. И будет функция Open in emacs - который будет доступен e, Итак, два ключа F2-e открыть текущий файл (или все выбранные файлы) в emacsclient -n,

Удалите ~/.selected_editor, затем, когда вы в следующий раз нажмете F4, MC предложит выбрать редактор. Или вы можете напрямую изменить его.

$ cat .selected_editor
# Generated by /usr/bin/select-editor
SELECTED_EDITOR="/usr/bin/vim.basic" 

Это работает на Ubuntu. Я пробовал любые другие способы установить редактор по умолчанию, который не поможет.

Запустите MC как обычно. В командной строке справа над нижним рядом пунктов меню введите "select-editor" без кавычек. Это должно открыть меню со списком всех ваших установленных редакторов. Это работает для меня на всех моих текущих машинах Linux.

Вот еще одно решение: отредактируйте файл расширения и добавьте Edit-запись.
(Извините, недостаточно репутации, чтобы добавить это в качестве комментария к ответу Густава Бертрама.)

Обязательно используйте встроенную функциональность MidnightCommander, так как расположение конфигурационных файлов в некоторых версиях MC может меняться.

Так нажмите F9 или же ESC,9 (чтобы открыть меню), затем перейдите к Command -> Edit Extension File,
В редакторе найдите последний блок, который выглядит так:

# Default target for anything not described above
default /*
            Open=
            View=

Измените его на что-то подобное (обратите внимание на Edit -линия!!!):

# 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 по-прежнему использует предпочитаемый редактор (например, nano) для редактирования конфигурационных файлов при их открытии изнутри MC.

Я изменяю файл ~/.mc/bindings:

### Default ###

# Default target for anything not described above
default/*
    Open=%var{EDITOR:emacs} %f &
    View=

Таким образом, я все еще могу просматривать файлы с помощью F3, но F4 или ввод обычно редактируют их с помощью Emacs.

Кстати, амперсанд так, что файл будет всплывать в X, а я могу продолжить в mc. Возможно, вам придется удалить это, если вы работаете только в командной строке.

ОБНОВЛЕНИЕ: если у вас нет ~/.mc/bindings файл, внутри mc, нажмите F9 ce (Меню, Команды, Изменить файл расширения), и он должен получить вас там.

Кроме того, вам нужно отключить функцию внутреннего редактирования, перейдя в F9 oct (Меню, Параметры, Конфигурация, использовать Внутреннее редактирование), сняв флажок и сохранив параметры.

Другие вопросы по тегам