Kesalahan penyandian manajer paket


9

Setelah berjalan package-list-packages, saya mendapatkan kesalahan berikut.

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

Bagaimana saya bisa mengatur pengkodean manajer paket default menjadi utf-8?


Apakah (set-default buffer-file-coding-system 'utf-8)membantu?
PythonNut

2
Pada kenyataannya, sesuatu harus dilakukan tentang sisi server ini.
Sean Allred

Jawaban:


8

Bergantung pada preferensi Anda, Anda dapat menggunakan baris berikut di Anda .emacsuntuk mengatur sistem pengkodean default ke utf-8. Itu menyelesaikan masalah bagi saya, dan saya belum melihat efek samping negatif lainnya.

(prefer-coding-system 'utf-8)

Pastikan Anda menempatkan formulir sebelum sesuatu seperti(require 'package)
Sean Allred

1

Jika Anda memerlukan pengkodean default yang berbeda dari utf-8, Anda dapat menggunakan saran di sekitar fungsi paket-paket untuk memaksa penggunaan pengkodean 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)

Dalam penggunaan sehari-hari saya perlu menggunakan:

(prefer-coding-system 'windows-1252)

Jadi saya sudah menyarankan fungsi daftar-paket ... harap ini bisa membantu.


0

Apakah Anda memiliki garis seperti ini di file init Anda?

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

Jika demikian, coba hapus.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.