2010-12-30 5 views
5

Ho un sacco di file che ho bisogno di guardare. Tutte le linee in questi file terminano in^M (\ x0D) tranne l'ultima riga che termina in^M^J (\ x0D \ x0A).Come modificare un file in Vim con tutte le righe che terminano in^M tranne l'ultima riga che termina in^M^J

Ovviamente, Vim determina il tipo di file per essere DOS con l'effetto che l'intero contenuto del file è visualizzato su una sola riga in questo modo:

some text foo^Mmore text and^Ma few control-m^Ms and more and more 

Dal momento che non voglio cambiare contenuto dei file : c'è un settaggio in Vim che permette di guardare questi file con le nuove linee come mi aspetterei che fossero?

+0

http://vim.wikia.com/wiki/File_format – ajreal

risposta

3

Se non ti dispiace avere una linea in fondo contenente un singolo ^J carattere, è possibile impostare fileformats (notare il s alla fine) per mac e ricaricare il buffer:

:set fileformats=mac 
:edit 

o equivalentemente si potrebbe avviare l'editor come segue:

vim -R "+set fileformats=mac" "+edit" <filename> 

l'opzione -R (in sola lettura) è lì perché lei ha dichiarato che non desidera modificare i file.

Non ho trovato un modo che non implichi il ricaricamento del buffer.

+0

Grazie per l'input. Mi hai aiutato a capire che avevo bisogno di 'impostare fileformats = dos, unix, mac' invece di' dos, unix'. –

-1

Prova questo:

:set fileformat=unix 

Non può realmente verificare, però, dal momento che non ho quel tipo di file a portata di mano.

+0

L'ho già provato senza successo. –

+1

l'impostazione 'fileformat' o' fileencoding' mentre la modifica di un file non la ricarica. Avrà un effetto durante il salvataggio. Piuttosto 'e:! ++ ff = unix' per ricaricare. – Benoit

Problemi correlati