Встановіть emacs -nw як редактор за замовчуванням


13

Під час редагування таких файлів sudoers, я хочу використовувати emacs замість nano. Тому я виконував цю команду

sudo update-alternatives --config editor

І я вибрав emacs. Єдине питання полягає в тому, що мені подобається emacs в режимі вікна (прапор -nw), і я відключив emacs emacs='emacs -nw'так, що я не можу нормально використовувати режим вікна, але я не знаю, як зробити моїм редактором за замовчуванням в режимі без вікна

Іншими словами, мені потрібно отримати команду sudo visudoта подібні команди, які відкривають редактори для відкриття файлу emacs -nw. Як я можу це зробити? Я на Ubuntu 12.04.


Це не пов'язано, але якщо ви збираєтесь використовувати `emacs -nw 'в якості редактора терміналів за замовчуванням, ви можете розглянути emacsclient і запустити emacs як демон. В іншому випадку я думаю, що запуску було б занадто повільно. З сервером emacs це практично миттєвий запуск, і це не складно налаштувати.
Додгі

Відповіді:


8

Створіть сценарій, який запускає emacs з прапорцем -nw, наприклад / usr / local / bin / emacs-nw.

#!/bin/sh

emacs -nw "$@"

Встановіть його за допомогою альтернатив оновлення - встановіть.

sudo update-alternatives --install /usr/bin/editor editor /usr/local/bin/emacs-nw 2

Налаштуйте редактор для вашого нового сценарію.

sudo update-alternatives --set editor /usr/local/bin/emacs-nw

2
Для тих , хто не використовує ДОПОВНЕНО альтернативи ознак системи, chmod +x /usr/local/bin/emacs-nwі export EDITOR='emacs-nw'в .bashrcробити трюк.
smonff

1
Просто оновлення змінної оболонки EDITOR для виклику emacs -nwє більш традиційним і не передбачає всього цього дивного створення файлів для такого простого завдання. Чому це краще?
vaer-k

6

Додайте до свого ~/.bashrcфайлу (або конфігураційний файл для вашої оболонки, якщо це не Bash).

export EDITOR="emacs -nw"

Це повинно встановити (та експортувати) змінну env, встановивши ваш редактор за замовчуванням як Emacs у не графічному режимі.


Після налаштування, EDITORяк би ви відкрили Emacs у графічному режимі?
Манолет

2
@Manolete ви можете використовувати command emacs, це запустить Emacs без псевдонімів тощо. Звичайно, можна і unalias emacsна сеанс.
Кирреман

@Manolete Фактично запуск emacs з emacsкомандного рядка або натискання на його піктограму все одно запустить графічну форму. Команда, наведена вище в моєму пості, просто встановлює змінну середовища EDITOR на "emacs -nw", вона фактично не створює псевдонім. Він просто повідомляє оболонці, що кращим редактором є emacs -nw. emacsвсе одно запустить графічну форму.
haziz

1

У мене є наступне налаштування в моєму ~/.bashrc

export EDITOR="emacsclient -t -a=\"\""

Це спершу спробує підключити сервер демона emacs, якщо він уже запущений, інакше спочатку запустіть сервер демона, а потім знову підключіться.

Так само в мене є наступне налаштування в моєму ~/.gitconfig

[core]
    editor = emacsclient -t -a=\\\"\\\"
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.