Toon posts:

[VIM 6.0] auto indent

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

Ik heb vim zo ingesteld dat hij automatisch mijn (java/c) broncode highlight en indent (inspringen).

Nu komt de volgende situatie nogal eens voor:
code:
1
2
3
4
5
public void bla {
    for (int i = 0; i < 100; i++) {
      System.out.println("Nummer : " + i);
    }
}

moet worden:
code:
1
2
3
4
5
6
7
public void bla {
   while (true) {
      for (int i = 0; i < 100; i++) {
        System.out.println("Nummer : " + i);
      }
   }
}

Ik ben dus de while lus vergeten... Nu moet ik voor het hele stuk vanaf de for-lus zeg maar, met de hand tabs of spaties gaan plaatsen om het weer fatsoenlijk te krijgen.

Is daar niet een handigere oplossing voor die ik nog niet ken?

Verwijderd

heel simpel

je selecteert het stuk text dat je wil indenten (met v of V) en dan doe je > om verder te identeren of < om terug te indenteren

indien het hierna nog niet genoeg ge-identeert is kun je met . het nog verder laten identeren

Dit alles in command-mode off course

  • odysseus
  • Registratie: Augustus 2000
  • Nu online

odysseus

Debian GNU/Linux Sid

Of je doet iets als 'set sw=4', waarna je kunt indenten met << en >> (in hele tabs, die je eerder hebt ingesteld op 4 spaties). Natuurlijk kun je ook meerdere keren laten inspringen met iets als 2>>. Helaas weet ik zo niet hoe je het geheel automatisch kunt laten gaan. Toch maar overstappen naar emacs dan?

* odysseus vreest dat hij nu een holy war start tussen vi- en emacs-lovers...

Leven is het meervoud van lef | In order to make an apple pie from scratch, you must first create the universe.