Błąd kodowania menedżera pakietów

9

Po uruchomieniu package-list-packagespojawia się następujący błąd.

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: 野 鳥

Jak ustawić domyślne kodowanie menedżera pakietów utf-8?

Matthew Piziak
źródło
Czy (set-default buffer-file-coding-system 'utf-8)pomaga
PythonNut
2
W rzeczywistości jednak należy coś zrobić po tej stronie serwera.
Sean Allred

Odpowiedzi:

8

W zależności od preferencji możesz użyć następującego wiersza w swoim, .emacsaby ustawić domyślny system kodowania na utf-8. To rozwiązało problem i nie zauważyłem jeszcze żadnych negatywnych skutków ubocznych.

(prefer-coding-system 'utf-8)
Ryan
źródło
Tylko upewnij się, że umieścisz formularz przed czymś takim(require 'package)
Sean Allred
1

Jeśli potrzebujesz domyślnego kodowania innego niż utf-8, możesz skorzystać z porady dotyczącej funkcji list-pack, aby wymusić użycie kodowania utf-8: np .:

(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)

W moim codziennym użyciu muszę używać:

(prefer-coding-system 'windows-1252)

Więc doradziłem funkcję list-pakiet ... mam nadzieję, że to może pomóc.

Pierre Téchoueyres
źródło
0

Czy masz taki wiersz w swoim pliku init?

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

Jeśli tak, spróbuj go usunąć.

Malabarba
źródło