Kiedy kopiuję tekst nie-ascii z Windows i wklejam do Emacsa, pojawia się on jako sekwencja ósemkowa. Na przykład, jeśli wkleję ä do Emacsa, pojawi się on jako \ 344.
Mógłbym wpisać Cq 344, aby odzyskać ä z powrotem w Emacsie. To denerwujące, ale jest do zaakceptowania, jeśli jest tylko jedna postać. Ale jeśli jest wiele znaków zamienionych w ósemkowe sekwencje specjalne, wygodnie byłoby uruchomić polecenie w regionie, aby przekonwertować wszystko w środku. Czy jest już takie polecenie? Jeśli nie, jak napisałbyś funkcję, aby to zrobić?
[Ustawiam mój domyślny system kodowania na utf-8 w moim pliku .emacs i używam tego samego pliku .emacs w systemie Windows i Linux. Ale problem występuje tylko podczas kopiowania z aplikacji Windows do Emacsa. Kopiowanie z Emacsa do innej aplikacji Windows działa dobrze.]
set-clipboard-coding-system
. Spróbuj C-h a coding-system
sprawdzić, jakie inne funkcje w tej grupie są dostępne.
emacs -Q
, a jeśli widzi ten problem istnieje już M-x report-emacs-bug
.
insert-file-literally
(i było już za późno, aby cofnąć lub usunąć / ponownie wstawić plik).
revert-buffer-with-coding-system
(zobacz dokumentację). Emacs pokazuje znaki w ten sposób, ponieważ skopiowałeś je ze środowiska, które było w innym systemie kodowania (zakładając, że ANSI z tak zwanymi wysokimi znakami ASCII używanymi do renderowania alfabetu łacińskiego za pomocą znaków diakrytycznych), ale twój bufor musi używać czegoś takiego jak UTF-8 (dla które znaki ASCII z zestawem wysokich bitów nie mają znaczenia, tzn. są nieprawidłowe).