2013-03-26 11 views
28

Utilizzo dell'opzione set eol Vim aggiunge automaticamente una nuova riga alla fine del file quando viene salvato. Ho questa opzione, ma mi piacerebbe poter vedere questa nuova riga in Vim, quindi so che è effettivamente lì.Vim show newline alla fine del file

Ad esempio, con un file in Vim: Vim screenshot

E lo stesso file in TextMate: TextMate screenshot

Questo mi ha sempre trucchi e finisco per l'aggiunta di una seconda nuova linea e finiscono per rendersi conto in seguito. Questa stessa esatta domanda è stata pubblicata here ma la risposta che è stata accettata non ha risposto a questa parte della domanda.

Utilizzando set list: List screenshot

posso vedere c'è un personaggio $ che denota una nuova riga dopo l'ultima riga, ma questo cucciolate anche il resto del file con questi. So che potrei impostare un interruttore per questo, ma preferirei davvero il comportamento simile a TextMate.

+0

La chiave ('~') significa nessuna nuova riga. Non è abbastanza? –

+3

@BillyChan Voglio vedere che c'è una nuova riga alla fine. Che c'è negli screenshot, anche se c'è una tilde sulla stessa linea, quindi non ha molto senso? –

+0

Io stesso troverei che vedere '$' molto confuso quindi non mi preoccuperei di quello :) Vedi se altri ragazzi hanno una buona risposta per te. –

risposta

17

'endofline' è attivato per impostazione predefinita, quindi non è necessario nel tuo ~/.vimrc.

EOL o "newline" non significa "c'è una riga vuota dopo qui", significa "questo segna la fine della riga, qualsiasi altro carattere deve essere visualizzato su un'altra riga". "newline"! = "new line".

L'ultima riga del file è # 21 e termina con un carattere "newline". Dal momento che non c'è una riga vera dopo quel carattere "newline", nessuna riga # 22, che mostra una linea # 22, non è solo sbagliata ma fuorviante.

Il comportamento di TextMate è errato.

Il comportamento di Vim è corretto.

Se vuoi che Vim mostri una linea # 22, dovrai aggiungere esplicitamente quella linea, ma suona piuttosto stupida per me.

+8

Una cosa da notare è che questo comportamento è di ogni editor di testo OS X nativo, non solo TextMate –

+0

Potresti pubblicare il tuo file? Non vedo quella fastidiosa linea qui sulle due ultime versioni di textmate che ho appena scaricato. – romainl

+3

vai alla tua ultima riga, premi invio, salvalo, apri in vim, quella linea appena creata non sarà lì. –