Emacs chiede sempre di fidarsi del tema del colore all'avvio


10

Il mio Emacs mi chiede sempre se dovrebbe fidarsi o meno del tema del colore selezionato. Rispondo sempre ye ydi fidarmi e ricordare la mia scelta. Sto caricando il tema colore manualmente:

(load-theme 'my-favourite-theme)

Suppongo che ciò sia dovuto al fatto che semplici personalizzazioni sono posizionate sotto il caricamento del tema colore. È un modo per risolverlo? O dovrei semplicemente delegare il caricamento del tema colore anche a semplici personalizzazioni?


2
load-themeha argomenti opzionali: (load-theme THEME &optional NO-CONFIRM NO-ENABLE)- Se usato direttamente nel file init, dovrebbe essere chiamato con un argomento NO-CONFIRM diverso da zero. . . In altre parole, utilizzare: (load-theme 'my-favourite-theme t)
elenco delle leggi del

1
quindi ho bisogno (load-theme 'name t nil)o solo (load-theme 'name t)?
Geradlus_RU,

2
Argomenti opzionali che nildevono essere inclusi SOLO se un successivo argomento facoltativo non è nil. Ad esempio, se si desidera che sia il primo argomento facoltativo nile il secondo argomento facoltativo t, nilsarebbe necessario per il primo argomento. Poiché il secondo argomento facoltativo è nil- è possibile ometterlo o includerlo - non fa alcuna differenza. A volte lo uso nilper argomenti opzionali quando non vi sono nilargomenti non opzionali successivi solo per sapere quanti argomenti opzionali sono possibili per una particolare funzione, ad esempio un promemoria visivo.
elenco delle leggi del

Ciò che @lawlist sta suggerendo è una soluzione alternativa, non una soluzione. È preferibile capire perché stai riscontrando questo problema in quanto potrebbe causare altri problemi. In effetti, ho visto questo problema in giro, quindi mi piacerebbe molto conoscerne il motivo.
Malabarba,

@Geradlus_RU Se non hai specificato l'argomento NO-CONFIRM t, emacs ti farà di nuovo quella domanda ogni volta che verrà aggiornato quel pacchetto di temi (perché il suo checksum .el cambia). È così? Se continui a ricevere questi messaggi ogni volta che avvii emacs (anche quando il tema .el non è stato aggiornato), assicurati che il checksum del tema sia stato salvato da emacs e venga letto anche da emacs durante l'avvio. Uno scenario possibile è che hai salvato custom.el come file separato (emacs sta memorizzando i temi sicuri in quelli) ma non stai caricando quel file in init.
Kaushal Modi,

Risposte:


10

Il tuo init.elfile probabilmente contiene uno snippet come questo:

(custom-set-variables
 ;; custom-set-variables was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
 ...)

Tra le altre cose, questo frammento è responsabile del salvataggio e del ripristino della custom-safe-themesvariabile. Pertanto, se ciò accade alla fine del file init (come di solito), probabilmente hai aggiunto la (load-theme ...)riga sopra di esso, il che spiega perché Emacs non è a conoscenza dei tuoi temi sicuri durante l'avvio.

Sposta semplicemente quello snippet nella parte superiore del file init e questo dovrebbe risolvere il tuo problema.


4

Sto usando moe-them , e giusto

(require 'moe-theme)
(moe-dark)

caricherò il tema senza errore / avviso / prompt , ma se M-x load-themeall'interno di Emacs, verrà richiesto qualcosa come "tratta il tema come sicuro", e ho scoperto una soluzione per questo:

(setq custom-safe-themes t)

Non so se questo risolverà il tuo problema, ma puoi provarlo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.