Come convertire i caratteri newline DOS / Windows in formato Unix in GNU Emacs?


38

C'è un modo per dire a GNU Emacs di convertire i caratteri newline DOS / Windows in un file in formato Unix?


Puoi fare clic sul piccolo pulsante nella modeline e salvare di nuovo.
abo-ABO

@ abo-abo: quale piccolo pulsante?
Charo,

2
Il secondo da sinistra, con lo stile Unix sembra :.
abo-ABO

2
Con DOS, lo è (DOS).
abo-ABO

Risposte:


43

Se la riga della modalità mostra un (DOS)indicatore, fare clic due volte su di essa per passare al :significato di newline Unix e quindi salvare il file.

Se non puoi fare clic sulla riga della modalità o preferisci una soluzione basata su tastiera, esegui il comando C-x RET f( set-buffer-file-coding-system) e digita unix. Questo cambierà la codifica delle nuove righe senza cambiare la codifica di altri caratteri. (Puoi anche cambiare la codifica di altri caratteri digitando qualcosa di simile utf-8-unix.)


1
C-x RET f (set-buffer-file-coding-system) ->M-x set-buffer-file-coding-system RET
CodyChan,

@CodyChan C-x RET fè l'associazione predefinita per set-buffer-file-coding-system.
Gilles 'SO- smetti di essere malvagio' il

Ho legato una funzione a C-x C-m, e attualmente sto usando Emacs nel terminale da remoto, quando eseguo C-x RETin Emacs, dice che è legato alla funzione a cui sono legato C-x C-m, penso che sia M-x adatto a tutti.
CodyChan,

1
@CodyChan Fornisco i collegamenti predefiniti (come la documentazione di Emacs) perché è utile per la maggior parte dei lettori. Ovviamente, se hai modificato i binding predefiniti, non puoi utilizzare i binding predefiniti. È possibile utilizzare M-xcon il nome della funzione indicato tra parentesi, non ha senso ripeterlo. Si noti che RETè la stessa cosa di C-m, che è ciò che la chiave Return invia su un terminale, che userebbe un'associazione applicata solo alla chiave Return in una GUI return.
Gilles 'SO- smetti di essere malvagio' il

4

Salvare il file ed Emacs utilizzerà automaticamente il carattere newline corretto durante la scrittura del buffer su file, in base al valore di buffer-file-coding-system.

Per sapere qual è il valore del buffer-file-coding-system, chiama describe-variablequindi buffer-file-coding-systemo esegui il describe-coding-systemcomando che puoi fare facendo clic sul secondo carattere della riga della modalità o premendo C-h C. Per impostarne il valore, chiama set-buffer-file-coding-system( C-x RET f) e la scheda per scegliere quello che desideri.

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.