Every time I start Emacs I see a page of help text and a bunch of messages suggesting that I try the tutorial. How do I stop this from happening?
-
2Alternatively (if you believe the information displayed might still be useful to you, but want to be able to get rid of it quickly), note that typing `q` will kill that buffer. – phils Jun 17 '12 at 21:29
-
Any update for emacs 27.1? Apparently none of the answers below work – Daniel Vartanov Dec 12 '20 at 12:40
6 Answers
Emacs has a couple of variables which inhibit these actions. If you edit your emacs control file (.emacs) and insert the following:
;; inhibit-startup-echo-area-message MUST be set to a hardcoded
;; string of your login name
(setq inhibit-startup-echo-area-message "USERNAME")
(setq inhibit-startup-message t)
that should solve your problem. They basically set the inhibit parameters to true to prevent the behavior you want to get rid of.

- 854,327
- 234
- 1,573
- 1,953
-
2Do `M-x describe-variable` and enter `user-login-name`; pass whatever is shown as arg. to the function as constant string. Say if it shows `JoeCoder` then in `.emacs` call `(setq inhibit-startup-echo-area-message "JoeCoder")` additionally put `(setq inhibit-startup-message t)`. Oh, also it works only when the former `setq` is independant i.e. no other symbols should be set in this call; see [here](https://www.gnu.org/software/emacs/manual/html_node/elisp/Startup-Summary.html#index-inhibit_002dstartup_002decho_002darea_002dmessage) for the reason. – legends2k May 27 '15 at 14:15
Put the following in your .emacs
:
(setq inhibit-startup-message t) (setq inhibit-startup-echo-area-message t)

- 36,964
- 10
- 32
- 35
You can customize message in minibuffer therefore remove fanfare:
;; Hide advertisement from minibuffer
(defun display-startup-echo-area-message ()
(message ""))

- 3,240
- 1
- 30
- 36
-
1Your example is good for users who wish to put a *different* message. If a user just wishes to suppress the message entirely, the following could be used: `(defun display-startup-echo-area-message () )` – lawlist Feb 15 '15 at 21:06
Put the following in your personal init file (ususally ~/.emacs.el
):
(setq inhibit-startup-message t)
(Or (setq inhibit-startup-screen t)
in with older Emacs versions.)
You can also turn off the message "For information about GNU Emacs and the GNU system, type C-h C-a." in the echo with the variable inhibit-startup-echo-area-message
, but it is not enough to set it to t
; you must set it to your username. See the documentation for inhibit-startup-echo-area-message
.

- 17,438
- 13
- 70
- 88
-
2Yeah, not even `(setq inhibit-startup-echo-area-message (user-login-name))` works, ffs. – trojanfoe May 18 '11 at 10:51
-
@VebjornLjosa: When I put my name there, it gets away with the GNU standard message but instead I get a three-line message: "#[nil "\300C\207" [t] 2]" – Emanuel Berg Jun 15 '12 at 17:33
-
@EmanuelBerg, yes those three lines are whatever is left in the buffer from before (i.e., the last entry in the `*Messages*` buffer). – Vebjorn Ljosa Jun 15 '12 at 19:46
-
Alright, but then it is not meaningful to use the fix as that cryptic message is three-lines, and even more annoying than the GNU one. Or did you find a way to circumvent this, possibly by appending a blank line to the *Messages* buffer? – Emanuel Berg Jun 16 '12 at 13:10
-
@EmanuelBerg: Doing `(delete-minibuffer-contents)` in `.emacs.el` may not help because the message you see may be produced in one of the hooks that run later. See http://www.gnu.org/software/emacs/manual/html_node/elisp/Startup-Summary.html. – Vebjorn Ljosa Jun 17 '12 at 09:02
-
Got it, `(setq inhibit-startup-echo-area-message (lambda () (user-login-name)))` `(add-hook 'emacs-startup-hook (lambda () (message "Custom message")))` – Carlo Espino Jan 28 '14 at 22:39
-
Add the below to your init file
(setq inhibit-startup-message t
inhibit-startup-echo-area-message t)