Come ripristinare la codifica del testo in UTF-8 con emacs?


23

Improvvisamente alcuni dei miei file di testo, sto modificando con Emacssono cambiati e i caratteri speciali sono stati mostrati in un modo strano, ad es

\344invece di ä
\374invece di ü ... e così via.

In un altro file che ho ora

üper ü
äper ä ....

(Non so quale evento sia stato la causa di ciò, forse ho fatto qualcosa di sbagliato.)

Vorrei riconvertire il documento al suo stato originale (la mia codifica standard è UTF-8), in modo che venga visualizzato correttamente con ä, ö, ü, ... ma non so come farlo con emacs .

Risposte:


27

Se non hai modificato il file, puoi provare M-x revert-buffer-with-coding-system. Uno latin-1o utf-8dovrebbe funzionare, a seconda del file.

È inoltre possibile contrassegnare l'intero file con C-x he quindi provare M-x recode-region. Ti chiederà Text was really ine But was interpreted as. Per il primo file nella tua domanda, sembra che dovrebbe essere latin-1e utf-8, e per il secondo esempio probabilmente dovrebbe essere il contrario, utf-8e latin-1.

Dopo aver capito bene, puoi scegliere quale sistema di codifica salvare il file usando M-x set-buffer-file-coding-system(o C-x C-m fin breve).


Sfortunatamente, ho bisogno di quel comando abbastanza spesso, quindi vorrei definire una scorciatoia da tastiera per richiamare la regione di ricodifica (orig: latin-1, interpretata come utf-8-dos) con un solo tasto. Come posso definire un piccolo programma, che fa quello e che posso mappare su una chiave?
braccia,

1
È possibile registrarlo come macro, quindi denominarlo, associarlo e salvarlo come descritto qui: gnu.org/software/emacs/manual/html_node/emacs/…
legoscia,

1

Il modo più semplice che ho trovato è:

Cx RET r utf-8 RET


Benvenuto in superutente: anche se questo può o meno rispondere alla domanda, sarebbe una risposta migliore se tu potessi fornire qualche spiegazione ("quale evento è stato la causa, ecc.") E perché la tua soluzione funziona con dettagli e istruzioni facili da seguire ( il PO potrebbe o meno capire cosa bisogna fare e anche i futuri lettori potrebbero non essere sicuri). Se ritieni che la tua risposta sia corretta, esegui queste operazioni e modificale nuovamente. Per favore, prenditi un paio di minuti e leggi: - superuser.com/help .Risposta: superuser.com/help/how-to-answer , di nuovo benvenuto su superuser.Thankyou
mic84
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.