Domanda

Ho usato TextMate per lavorare con codice Ruby per oltre un anno. Recentemente sono passato ad usare mvim. Quando apro alcuni dei file in mvim ottengo blocchi vuoti. Guardate questa foto per ottenere una sensazione di esso.

Qualche idea su come sbarazzarsi di loro?

Grazie

È stato utile?

Soluzione

Altri hanno spiegato che questo potrebbe essere sia una ricerca evidenziando spazi o tabulazioni o (più probabile) potrebbe essere culminante progettato per presentarsi indentazione misto (particolarmente utile in python per quello che vale). Trovo che questo sia molto utile personale.

In ogni caso, ci sono una serie di opzioni per risolvere il tuo evidenziazione a seconda della causa:

Per pulire fine di riga (come detto da caos), usare qualcosa come:

:%s/ \+//

Probabilmente la più utile uno: riordinare la tabulazione:

Se stai usando gli spazi per l'indentazione:

:set expandtab
:retab

Se utilizzi le schede:

:set noexpandtab
:retab!

Se stai usando schede per l'indentazione e spazi altrove:

:set expandtab
:retab
:set noexpandtab
:execute '%s@^\( \{'.&ts.'}\)\+@\=repeat("\t", len(submatch(0))/'.&ts.')@'

Ho l'ultima riga associato a un comando chiamato :RetabIndents. Tutti coloro supporre che l'impostazione sia corretta tabstop (dovrebbe essere impostato con set ts=2 basato sulla vostra immagine). Personalmente, mi piacerebbe anche raccomandare mantenendo shiftwidth pari a tabstop, così set ts=2 sw=2.

possono anche essere in grado di cavarsela con una semplice gg=G (auto-trattino l'intero file). Tuttavia, questo non funzionerà in alcune lingue (in particolare Python come non c'è modo per qualsiasi editor di sapere quali linee dovrebbero essere rientrati a quale livello).

Per spegnere basata sulla ricerca evidenziando temporaneamente:

:noh

o permanentemente (mettere questo in Vimrc):

:set nohlsearch

O una rapida scorciatoia per quando avete usato e non lo vogliono più:

:nnoremap <ESC> :noh<CR><ESC>

Per spegnere rientro evidenziazione, dovrete identificare quali evidenziando gruppo viene utilizzato, che è un po 'complicato ed è probabilmente più facile da leggere solo il tuo Vimrc, ma se si vuole veramente per cercarlo, sposta il cursore ad uno dei personaggi evidenziati e inserire (tratto da qui ):

:echo "hi<" . synIDattr(synID(line("."),col("."),1),"name") . '> trans<' . synIDattr(synID(line("."),col("."),0),"name") . "> lo<" . synIDattr(synIDtrans(synID(line("."),col("."),1)),"name") . ">"<CR>

È possibile deselezionare il gruppo evidenziando ricercando il nome che viene riportato sulla riga di comando nel vostro / .vimrc / _vimrc configurazione / vimfiles .vim e commentando fuori qualcosa di rilevante.

Per ulteriori informazioni

:help :s
:help 'expandtab'
:help :retab
:help :execute
:help 'tabstop'

:help :noh
:help 'hlsearch'

Altri suggerimenti

E 'Sembra evidenziazione di spazi bianchi ridondante (vedi linea 214, per esempio)

C'è qualcosa nella tua .vimrc lungo le linee di ..

highlight RedundantSpaces ctermbg=grey guibg=grey
match     RedundantSpaces /\s\+$\| \+\ze\t/

.. provare commentando fuori, e vedere se questo risolve il problema

Credo che il motivo è evidenziando il rientro è vim è configurato per aspettare le schede, senza spazi (o viceversa) - ancora una volta assicurati che il tuo .vimrc è configurato correttamente (per esempio, utilizzando soft-tabs)

Sembra che si potrebbe avere un modello di ricerca memorizzato che mette in evidenza spazi all'inizio della riga:. /^ + e il tuo colore di evidenziazione è grigio chiaro

Per sbarazzarsi di esso, prova a cercare qualcosa d'altro:. /asdf<ENTER>

Se si vuole sbarazzarsi di appendere gli spazi sulle estremità delle linee (hanno sempre infastidire l'inferno fuori di me, onestamente), questo comando li metterà a nudo da un dato file:

:%s/  *$//

Come detto Seth, questi sono spazi. In sostanza, mvim sta mostrando gli spazi che vengono inseriti nel file colorando loro grigio anziché nero.

Personalmente, penso che questa è una caratteristica, è possibile utilizzare questo schema di evidenziazione per identificare dove si può avere spazi finali, e può essere utilizzato per rendere il più ordinato codice di look.

Si potrebbe probabilmente farlo andare via regolando le opzioni di evidenziazione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top