Pare o emacs perguntando se um tema é seguro

8

Defino meu tema com load-theme em uma macro de pacote de uso carregada na inicialização. O tema também foi instalado com o use-package, do repositório.

A cada início, o emacs me pergunta se eu realmente quero carregar o tema, caso não seja seguro, como posso dizer para ele parar?

Nicolas Scotto Di Perto
fonte
Também deve perguntar se você deseja que sua escolha seja lembrada pelo emacs para sessões futuras, mas parece que não lhe pergunta isso, estou certo? Caso contrário, não sei por que. Tente usar M-x load-themee selecionar o tema que deseja usar e veja se ele oferece a opção de reconhecê-lo seguro no futuro. Eu apenas tentei instalar um novo tema e carregá-lo dessa maneira, e funcionou para mim. O hash do tema precisa ser adicionado, custom-safe-themesmas não sei como fazer isso manualmente - provavelmente você não deveria.
Elethan
Se tudo mais falhar, você poderá adicionar (setq custom-safe-themes t)ao seu arquivo init antes de carregar o seu tema. Isto irá tratar todos os temas como seguro, o que poderia ser um risco em teoria, mas se você só está instalando temas de fontes confiáveis, não vejo qualquer problema
elethan
Quando o M-x load-themeemacs não me pergunta se ainda é seguro, mas quando eu o carrego de um arquivo .el na inicialização, ele ainda me pergunta se eu quero executar o código lisp. (setq custom-safe-themes t)funciona para mim, então testarei novos temas em uma sessão antes de carregá-los. Obrigado
Nicolas Scotto Di Perto

Respostas:

19

Defina o segundo argumento da load-themefunção. De sua doutrina:

Se o tema não for considerado seguro por 'temas personalizados de segurança', solicite confirmação ao usuário antes de carregá-lo. Mas se o arg NO-CONFIRM opcional não for nulo, carregue o tema sem aviso.

Por exemplo:

(load-theme 'solarized-dark t)

carregará o solarized-darktema sem perguntar.

undostres
fonte
Oh, obrigado, esse é o caminho certo!
Nicolas Scotto Di Perto