Como converter caracteres de nova linha do DOS / Windows para o formato Unix no GNU Emacs?

38

Existe uma maneira de dizer ao GNU Emacs para converter caracteres de nova linha do DOS / Windows em um arquivo para o formato Unix?

Charo
fonte
Você pode clicar no pequeno botão na modelagem e salvar novamente.
abo-abo
@ abo-abo: Qual pequeno botão?
Charo
2
O segundo da esquerda, com o estilo Unix :.
abo-abo
2
Com o DOS, é (DOS).
abo-abo

Respostas:

43

Se a linha de modo mostrar um (DOS)indicador, clique nele duas vezes para alternar para :novas linhas do Unix e, em seguida, salve o arquivo.

Se você não conseguir clicar na linha de modo ou preferir uma solução baseada em teclado, execute o comando C-x RET f( set-buffer-file-coding-system) e digite unix. Isso alterará a codificação de novas linhas sem alterar a codificação de outros caracteres. (Você também pode alterar a codificação de outros caracteres digitando algo parecido utf-8-unix.)

Gilles 'SO- parar de ser mau'
fonte
11
C-x RET f (set-buffer-file-coding-system) ->M-x set-buffer-file-coding-system RET
CodyChan
@CodyChan C-x RET fé a ligação padrão para set-buffer-file-coding-system.
Gilles 'SO- stop be evil'
Eu vinculei uma função a C-x C-m, e atualmente estou usando o Emacs no terminal remotamente, quando executo C-x RETno Emacs, ele diz que está vinculado à função à qual vinculei C-x C-m, acho que M-x combina com todos.
CodyChan
11
@CodyChan Dou as ligações padrão (como a documentação do Emacs) porque é útil para a maioria dos leitores. Obviamente, se você alterou as ligações padrão, não poderá usá-las. Você pode usar M-xcom o nome da função indicado entre parênteses, não há sentido em repeti-lo. Observe que RETé a mesma coisa C-mque é o que a chave Return envia em um terminal - uma ligação que só se aplicava à chave Return em uma GUI usaria return.
Gilles 'SO- stop be evil'
4

Salve o arquivo e o Emacs usará automaticamente o caractere de nova linha correto ao gravar o buffer no arquivo, de acordo com o valor de buffer-file-coding-system.

Para saber qual é o valor do sistema de codificação de arquivo buffer, chame describe-variable-o buffer-file-coding-systemou execute o describe-coding-systemcomando que você pode executar clicando no segundo caractere da linha de modo ou pressionando C-h C. Para definir seu valor, chame set-buffer-file-coding-system( C-x RET f) e tab para escolher o que você deseja.

Nsukami _
fonte