Comment changer le message du mini-tampon par défaut?


10

Une fois le fichier init terminé, je reçois ce message dans le mini-tampon:

Pour plus d'informations sur GNU Emacs et le système GNU, tapez Ch Ca.

Par quoi est-il déclenché et comment puis-je le changer?

Réponses:


18

display-startup-echo-area-messagedéclenche cette petite publicité à moins que vous n'utilisiez la personnalisation et que vous l'ayez définie là ou que vous l'ayez définie dans votre user-init-file(car elle va de l'avant et analyse ce fichier pour quelque chose qui ressemble à ça, voir la définition de display-startup-echo-area-messagepour les détails sanglants).

Il existe cependant un moyen de le remplacer par quelque chose de complètement différent, simplement en le redéfinissant dans votre configuration Emacs:

(defun display-startup-echo-area-message ()
  (message "Que le piratage commence!"))

3

Cela est déclenché par display-startup-echo-area-message, qui est appelé au démarrage.

Ce message particulier est rendu intentionnellement difficile à supprimer (je suppose que le projet GNU estime qu'il a besoin de la publicité). Vous pouvez toujours le désactiver en personnalisant inhibit-startup-echo-area-message:

M-x customize-variable inhibit-startup-echo-area-message RET

Désolé, mais suis-je le seul à avoir essayé cette astuce sans voir de changements?
Nsukami _

Pour info: cela a été rendu intentionnellement difficile dans le cas où Emacs est installé par un administrateur système sur une machine partagée par de nombreux utilisateurs, de sorte que l'administrateur système ne peut pas simplement définir le message inhibit-startup-echo-area-message sur t globalement. C'est probablement un cas d'utilisation relativement rare de nos jours.
Stefan

2

Le texte d'aide pour les inhibit-startup-echo-area-messageétats:

Non nul inhibe le message initial de zone d'écho de démarrage. La définition de cette variable ne prend effet que si vous le faites avec le tampon de personnalisation ou si votre fichier init contient une ligne de ce formulaire:

(setq inhibit-startup-echo-area-message "YOUR-USER-NAME")

Si votre fichier init est compilé en octets, utilisez plutôt le formulaire suivant:

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

1

Si vous utilisez une configuration Emacs partagée entre des machines (par exemple via le contrôle de version) et ne pouvez pas entrer votre nom d'utilisateur de manière explicite, vous pouvez utiliser:

(put 'inhibit-startup-echo-area-message 'saved-value t)
(setq inhibit-startup-echo-area-message (user-login-name))

... selon les conseils de la liste de diffusion des bogues . Cela définit la saved-valuepropriété de la variable inhibit-startup-echo-area-messageavant de la définir sur votre nom de connexion, ce qui contourne la fonctionnalité de sécurité prévue (de laisser un utilisateur sans instructions pour obtenir de l'aide s'il copie et colle le code init).

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.