2008-09-28 10 views
21

Chaque fois que je lance Emacs, je vois une page de texte d'aide et un tas de messages suggérant que j'essaie le tutoriel. Comment puis-je empêcher cela de se produire?Comment faire pour que Emacs démarre sans fanfare?

+0

Sinon (si vous croyez que les informations affichées peut toujours vous être utile, mais vous voulez pouvoir vous en débarrasser rapidement), notez que le fait de taper 'q' va tuer ce tampon. – phils

Répondre

9

Mettez ce qui suit dans votre .emacs:

 
(setq inhibit-startup-message t) 
(setq inhibit-startup-echo-area-message t) 
+4

'(setq inhibit-startup-echo-area-message t)' ne fonctionne pas !! – antonio

22

Emacs a deux variables qui inhibent ces actions. Si vous éditez votre fichier de contrôle emacs (.emacs) et insérez ce qui suit:

;; 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) 

qui devrait résoudre votre problème. Ils définissent fondamentalement les paramètres d'inhibition à true pour empêcher le comportement que vous voulez vous débarrasser.

+2

Faites 'M-x describe-variable' et entrez' user-login-name'; passer tout ce qui est montré comme arg. à la fonction comme chaîne constante. Dites si ça montre 'JoeCoder' alors dans' .emacs' appelez '(setq inhibit-start-echo-area-message" JoeCoder ")' ajoutez en plus '(setq inhibit-startup-message t)'. Oh, aussi cela ne fonctionne que lorsque l'ancien 'setq' est indépendant, c'est-à-dire qu'aucun autre symbole ne devrait être défini dans cet appel; voir [ici] (https://www.gnu.org/software/emacs/manual/html_node/elisp/Startup-Summary.html#index-inhibit_002dstartup_002decho_002darea_002dmessage) pour la raison. – legends2k

1

Mettez ce qui suit dans votre fichier init personnel (ususally ~/.emacs.el):

(setq inhibit-startup-message t) 

Vous pouvez également désactiver le message « Pour des informations sur GNU (ou (setq inhibit-startup-screen t) avec les anciennes versions Emacs.) Emacs et le système GNU, tapez Ch Ca. " dans l'écho avec la variable inhibit-startup-echo-area-message, mais il ne suffit pas de le définir à t; Vous devez le définir sur votre nom d'utilisateur. Voir la documentation pour inhibit-startup-echo-area-message.

+2

Ouais, pas même '(setq inhibit-start-echo-area-message (nom-login-utilisateur))' fonctionne, ffs. – trojanfoe

+0

@VebjornLjosa: Quand je mets mon nom là, il s'en sort avec le message standard GNU mais à la place je reçois un message de trois lignes: "# [nil" \ 300C \ 207 "[t] 2]" –

+0

@EmanuelBerg, oui ces trois lignes sont ce qui reste dans le tampon d'avant (c'est-à-dire, la dernière entrée dans le tampon '* Messages *'). –

3

Vous pouvez personnaliser un message en minibuffer donc supprimer fanfare:

;; Hide advertisement from minibuffer 
(defun display-startup-echo-area-message() 
    (message "")) 
+1

Votre exemple est bon pour les utilisateurs qui souhaitent mettre un message * différent *. Si un utilisateur souhaite simplement supprimer complètement le message, ce qui suit pourrait être utilisé: '(defun display-startup-echo-area-message())' – lawlist

0

Si votre fichier init est compilé octet, utilisez le formulaire ci-dessous à la place:

(eval '(setq inhibit-startup-echo-area-message "YOUR-USER-NAME")) 
Questions connexes