¿Cómo convertir caracteres de nueva línea de DOS / Windows a formato Unix dentro de GNU Emacs?

38

¿Hay alguna manera de decirle a GNU Emacs que convierta los caracteres de nueva línea de DOS / Windows en un archivo a formato Unix?

Charo
fuente
Puede hacer clic en el pequeño botón en la línea de modo y volver a guardar.
abo-abo
@ abo-abo: ¿Qué botoncito?
Charo
2
El segundo de la izquierda, con un estilo Unix :.
abo-abo
2
Con DOS, lo es (DOS).
abo-abo

Respuestas:

43

Si la línea de modo muestra un (DOS)indicador, haga clic en ella dos veces para :cambiar al significado de las líneas nuevas de Unix y luego guarde el archivo.

Si no puede hacer clic en la línea de modo o prefiere una solución basada en el teclado, ejecute el comando C-x RET f( set-buffer-file-coding-system) y escriba unix. Esto cambiará la codificación de las nuevas líneas sin cambiar la codificación de otros caracteres. (También puede cambiar la codificación de otros caracteres escribiendo algo como utf-8-unix).

Gilles 'SO- deja de ser malvado'
fuente
1
C-x RET f (set-buffer-file-coding-system) ->M-x set-buffer-file-coding-system RET
CodyChan
@CodyChan C-x RET fes el enlace predeterminado para set-buffer-file-coding-system.
Gilles 'SO- deja de ser malvado'
Ligé una función a C-x C-m, y actualmente estoy usando Emacs en la terminal de forma remota, cuando ejecuto C-x RETen Emacs, dice que está ligado a la función a la que me uní C-x C-m, creo que es M-x adecuado para todos.
CodyChan
1
@CodyChan Doy los enlaces predeterminados (como la documentación de Emacs) porque es útil para la mayoría de los lectores. Obviamente, si ha cambiado los enlaces predeterminados, no puede usar los enlaces predeterminados. Puede usar M-xcon el nombre de la función que se indica entre paréntesis, no tiene sentido repetirlo. Tenga en cuenta que RETes lo mismo que C-m, que es lo que envía la tecla Retorno en un terminal, un enlace que solo se aplicaría a la tecla Retorno en una GUI return.
Gilles 'SO- deja de ser malvado'
4

Guarde el archivo y Emacs usará automáticamente el carácter de línea nueva correcto al escribir el búfer en el archivo, de acuerdo con el valor de buffer-file-coding-system.

Para saber cuál es el valor de buffer-file-coding-system, llame describe-variableentonces buffer-file-coding-systemo ejecute el describe-coding-systemcomando que puede hacer haciendo clic en el segundo carácter de la línea de modo o presionando C-h C. Para establecer su valor, llame a set-buffer-file-coding-system( C-x RET f) y tab para elegir el que desee.

Nsukami _
fuente