C'è un modo per indentare una selezione di righe in vim, come abbiamo negli editor di testo in cui selezioniamo un gruppo di linee e premiamo tab (o maiuscole) per rientrare/non trascinare il selezionato Linee? Sto parlando di indentazione generale e non correlato all'indentazione del codice.indentazione di un gruppo di righe in VIM
risposta
Utilizzare la modalità visiva come suggerisce Peter. Puoi anche utilizzare X >> dove X
è il numero di righe che desideri indentare. Per esempio. 5 >> fa rientrare cinque righe dalla riga corrente e in basso.
Una delle cose che faccio di più, a causa di Stack Overflow e scrittura di esempi di codice, è '> G', per rientrare dalla posizione corrente alla fine del file. Scrivo generalmente in Ruby, quindi, in realtà '> G'. Perché i Rubyists usano un rientro a due spazi e SO ne richiede quattro, ma YMMV. –
È possibile selezionare un insieme di linee con modalità linea visiva (tramite spostamento + V), e quindi digitare
>
e, a dedent,
<
È anche possibile aggiungere argomenti numerici. Scopri di non aver indentato abbastanza? Hit gv per riselezionare la selezione precedente.
Durante la digitazione in modalità normale, provare Ctrl +T o Ctrl +D far rientrare o dedent.
Non dovrebbe essere 'outdent' invece di 'dedent'? –
@Vinko dovrebbe essere, ma non lo è :) un outdent è un rientro all'indietro; una deduzione è un trattino annullato. forse dovrebbe davvero essere annullato. – Peter
Non è necessario riselezionare le linee per indentare altro. Basta usare il comando punto:> ... rientri quattro volte. –
Come suggerito dalle altre risposte è possibile utilizzare >. In alternativa, si può automaticamente correttamente indentare il codice selezionando l'insieme di linea in modo visivo (usando spostamento + V), e quindi utilizzando =, o utilizzando == per far rientrare la riga corrente.
uso le seguenti mapping far rientrare/unindent:
vmap <TAB> >gv
vmap <S-TAB> <gv
Usare TAB per il rientro e shift-TAB per unindent linee selezionate visivamente.
Se è selezionato un blocco Vim fa rientrare/separare ciò che è corretto all'inizio del blocco .
Funziona Perfetto anche per me! @ MacVim –
C'è una Fusioni Vim su questo argomento:
http://vimcasts.org/episodes/indentation-commands/
mi piace Vim Casts. Sono informativi e piacevoli da guardare.
- 1. Modifica formato indentazione vim
- 2. VIM e Scala - problemi di indentazione?
- 3. Haskell e Vim: Indentazione corretta
- 4. Elimina alcune righe in un gruppo di righe in R
- 5. Rientro indentazione con CSS in Vim
- 6. Righe di gruppo in DataGridView
- 7. Esiste un buon script di indentazione Haskell per Vim?
- 8. Indentazione combinata di indentazione e sintassi HTML, PHP e Javascript in vim
- 9. vim e C++ 11 lambda: indentazione automatica
- 10. Prevent (g) vim dai commenti auto-indentazione
- 11. indentazione adattiva in emacs?
- 12. Cambia stile indentazione R in vim con plug-in Vim-R
- 13. (Oracle) come righe di gruppo per l'impaginazione
- 14. Corrispondenza/gruppo di righe duplicate (indici)
- 15. Come faccio a rendere l'intestazione del testo corrispondente al livello di indentazione corrente in vim?
- 16. Correzione di righe di commento troppo lunghe in Vim
- 17. indentazione corretta di PHP?
- 18. Vim - Rientro di più righe con scheda
- 19. Come seleziono un numero fisso di righe per ogni gruppo?
- 20. Copia righe in modalità visiva in vim
- 21. Funzione chiamata vim su un gruppo in stringa sostitutiva
- 22. Gruppo diverse righe in uno di stringhe che conciliano
- 23. Aggiunta di spazio verticale tra le righe in vim
- 24. Pandas Numero righe all'interno Gruppo
- 25. vim phpdoc righe commento autoindent
- 26. Taglia e incolla più righe in vim
- 27. Come concatenare rapidamente due righe in Vim?
- 28. Come aggiungere una parola all'inizio di più righe in vim?
- 29. XCode: indentazione dell'argomento di funzione
- 30. Contare il numero di righe all'interno di ciascun gruppo
Ho eseguito uno screencast su questo argomento: http://vimcasts.org/episodes/indentation-commands/ – nelstrom
possibile duplicato di [Rientro più righe rapidamente in vi] (http://stackoverflow.com/questions/235839/ indent-multiple-lines-quickly-in-vi) – user