Errore di codifica del gestore pacchetti


9

Durante l'esecuzione package-list-packages, viene visualizzato il seguente errore.

These default coding systems were tried to encode text
in the buffer ` *temp*':
  (iso-latin-1-dos (3242 . 37326) (3243 . 40165))
However, each of them encountered characters it couldn't encode:
  iso-latin-1-dos cannot encode these: 野 鳥

Come posso impostare la codifica predefinita del gestore pacchetti in modo che sia utf-8?


Does (set-default buffer-file-coding-system 'utf-8)aiuto?
PythonNut,

2
In realtà, però, qualcosa dovrebbe essere fatto su questo lato server.
Sean Allred

Risposte:


8

A seconda delle tue preferenze, puoi usare la seguente riga in .emacsper impostare il tuo sistema di codifica predefinito su utf-8. Ciò ha risolto il problema per me e non ho ancora notato altri effetti collaterali negativi.

(prefer-coding-system 'utf-8)

Assicurati di posizionare il modulo prima di qualcosa del genere(require 'package)
Sean Allred

1

Se hai bisogno di una codifica predefinita diversa da utf-8, puoi usare un consiglio intorno alla funzione list-package per forzare l'uso della codifica utf-8: ex:

(defun pte/list-packages (org-fun &rest args)
  "Ensure to set `buffer-file-coding-system' to utf-8 before calling `list-packages'."
  (let ((buffer-file-coding-system 'utf-8))
    (apply org-fun args)))

(advice-add 'list-packages :around #'pte/list-packages)

Nel mio uso quotidiano ho bisogno di usare:

(prefer-coding-system 'windows-1252)

Quindi ho consigliato la funzione elenco-pacchetti ... spero che questo possa aiutare.


0

Hai una linea come questa nel tuo file init?

(set-language-environment "Latin-1")

In tal caso, prova a rimuoverlo.

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.