Jak zmienić domyślny komunikat minibufora?

10

Po zakończeniu ładowania pliku init otrzymuję ten komunikat w minibuforze:

Aby uzyskać informacje o GNU Emacs i systemie GNU, wpisz Ch Ca.

Co to jest uruchamiane i jak to zmienić?

caisah
źródło

Odpowiedzi:

18

display-startup-echo-area-messagewyzwala tę małą reklamę, chyba że używasz dostosowywania i ustawiłeś ją tam lub ustawiłeś w swoim user-init-file(ponieważ tak naprawdę idzie do przodu i skanuje ten plik w poszukiwaniu czegoś takiego, zobacz definicję display-startup-echo-area-messagekrwawych szczegółów).

Istnieje jednak sposób na zastąpienie go czymś zupełnie innym, po prostu poprzez redefiniowanie go w konfiguracji Emacsa:

(defun display-startup-echo-area-message ()
  (komunikat „Rozpocznij hakowanie!”))
wasamasa
źródło
3

Jest to uruchamiane przez display-startup-echo-area-message, który jest wywoływany podczas uruchamiania.

Ta konkretna wiadomość jest celowo trudna do usunięcia (wydaje mi się, ponieważ projekt GNU uważa, że ​​potrzebuje reklamy). Nadal możesz go wyłączyć, dostosowując inhibit-startup-echo-area-message:

M-x customize-variable inhibit-startup-echo-area-message RET
Sigma
źródło
Przepraszam, ale czy tylko ja wypróbowałem tę wskazówkę, nie widząc żadnych zmian?
Nsukami _
Do Twojej wiadomości: celowo utrudniono to w przypadku, gdy Emacs jest instalowany przez sysadmin na maszynie współdzielonej przez wielu użytkowników, więc sysadmin nie może po prostu ustawić globalnie t komunikatu o hamowaniu-uruchomieniu-echo-obszaru. Prawdopodobnie jest to obecnie stosunkowo rzadki przypadek użycia.
Stefan
2

Tekst pomocy dla inhibit-startup-echo-area-messagestanów:

Brak wartości zero hamuje komunikat początkowego obszaru echa uruchamiania. Ustawienie tej zmiennej obowiązuje tylko wtedy, gdy zrobisz to z buforem dostosowywania lub jeśli plik init zawiera wiersz tego formularza:

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

Jeśli twój plik init jest skompilowany bajtowo, użyj następującego formularza:

(eval '(setq inhibit-startup-echo-area-message "YOUR-USER-NAME"))
Colin Bell
źródło
1

Jeśli używasz konfiguracji Emacsa współdzielonej między komputerami (np. Poprzez kontrolę wersji) i nie możesz jawnie wpisać swojej nazwy użytkownika, możesz użyć:

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

... zgodnie z radą z listy mailingowej błędów . To ustawia saved-valuewłaściwość zmiennej inhibit-startup-echo-area-messageprzed ustawieniem jej na nazwę logowania, co obchodzi zamierzoną funkcję bezpieczeństwa (pozostawianie użytkownika bez instrukcji uzyskania pomocy, jeśli skopiuje i wklei kod inicjujący).

obrzydliwie
źródło