Невозможно скрыть экран приветствия в Emacs

97

Я хочу скрыть экран приветствия.

Мой .emacsфайл:

 (setq c-basic-offset 4) ; indents 4 chars                                                                                                              
 (setq tab-width 4)          ; and 4 char wide for TAB
 (setq indent-tabs-mode nil) ; And force use of spaces

 (turn-on-font-lock)       ; same as syntax on in Vim

 (setq width (max width (+ (length str) 1)))   ;line numbers

 (setq inhibit-splash-screen t)         ; hide welcome screen

Я безуспешно пытался запустить последнюю строку кода в моем .emacs.

Как вы можете скрыть экран приветствия в Emacs?

Лео Леопольд Герц 준영
источник

Ответы:

174

Добавьте в свой $HOME/.emacs:

(setq inhibit-startup-screen t)

В следующий раз, когда вы запустите Emacs, экран приветствия не должен появиться. Если у вас уже открыт Emacs с экраном приветствия, вы можете убить его, нажав C-x k(Control-x, затем k).

Бастьен Леонар
источник
9
Это билет. Обратите внимание, что ignit-splash-screen - это относительно новое имя переменной (не могу вспомнить, ввел ее в emacs 22 или 23). Перед этим используйте сообщение ignit-startup-message, как говорит Бастьен.
Джаррет Харди,
4
Фактически вы можете просто убить его, нажав q.
Робин Грин
26
(setq inhibit-splash-screen t)
(setq inhibit-startup-message t)

В качестве альтернативы вы можете:

alias emacs='emacs --no-splash'
Роб Уэллс
источник
1
My emacsговорит, что inhibit-splash-screenэто псевдоним для inhibit-startup-screen.
x-yuri
На самом деле оба inhibit-splash-screen inhibit-startup-messageявляются псевдонимами для inhibit-startup-screen.
mimoralea 01
1
Имейте в виду, что вам нужно будет сделать это для каждой используемой оболочки. ИМО, вам лучше для начала правильно настроить редактор, хотя хорошее предложение быстрого исправления.
byxor
17

Вы можете легко сделать это через меню emac ...

Параметры -> настроить emacs -> группа настройки верхнего уровня

затем выберите группу среды, затем инициализацию и включите запрет экрана запуска.

Зак Маррапез
источник
Я использую Emacs в терминале. У меня нет этих меню. Как я могу сделать то же самое без меню?
Лео Леопольд Герц,
7
Вы всегда можете попасть в меню, даже если Emacs запущен в терминале, просто нажмите F10или введите M-x menu-bar-open.
viam0Zah
5

В моем .emacs у меня есть (setq ignit-startup-message t), и это работает для меня.

В руководстве gnu emacs говорится, что ignit-startup-message - это старая версия, а ignit-splash-screen - более новая версия. Я не знаю, в какой версии это изменилось. http://www.gnu.org/software/emacs/manual/html_node/emacs/Initial-Options.html

Зимбу668
источник
5

В Emacs 24 inhibit-splash-screenи inhibit-startup-messageявляются псевдонимами для inhibit-startup-screen, поэтому простое добавление (setq inhibit-startup-screen t) в ваш .emacsфайл решит проблему.

Учитывая эту конфигурацию, ваш буфер запуска сейчас *scratch*, если вы хотите еще изменить буфер по умолчанию, M-h v initial-buffer-choice <RET>поможет.

Официальный документ: http://www.gnu.org/software/emacs/manual/html_node/elisp/Startup-Summary.html

Джош
источник
4

Вы можете использовать для initial-scratch-messageпеременной set значение nil, чтобы скрыть начальное сообщение или установить все, что вы хотите, чтобы ваше сообщение отображалось.

(setq initial-scratch-message nil)

или

(setq initial-scratch-message ";; Happy Hacking")

Надеюсь, это помогло.

NgaNguyenDuy
источник