Seite 1 von 1
zeilen einreihen
Verfasst: Sonntag 5. Januar 2014, 08:07
von zar1
Ich schreibe im Moment ein paar Scripte mit sehr vielen Loops und ich muss jedes mal wenn ich zb einen Loop hinzufüge, der dann vor drei anderen Loops steht, jedes mal die anderen loops mit einreihen gibt es nicht einen schnelleren weg mitdem man alle loops die drauf folgen einreihen kann und nicht zeile für zeile das einzeln regeln muss ?
Re: zeilen einreihen
Verfasst: Sonntag 5. Januar 2014, 09:33
von bwbg
So ziemlich jeder* Editor erledigt das mit etwas Markieren und einem Tastendruck (meistens Tab).
Andererseits solltest Du wohl eher über ein besseres Design nachdenken.
*) Ausnahme sind hier Vim und Emacs. Man braucht sicherlich ein paar Tastenanschläge mehr, wird jedoch wesentlich schneller sein

Re: zeilen einreihen
Verfasst: Sonntag 5. Januar 2014, 10:07
von Sirius3
Mein vim rückt mit 7>> die nächsten 7 Zeilen ein. Du solltest aber mit :set et und :set sw=4 noch die richtige Einrücktiefe einstellen.
Re: zeilen einreihen
Verfasst: Sonntag 5. Januar 2014, 10:13
von /me
Wie bereits gesagt: Mit jedem auch nur einigermaßen vernünftigen Editor ist das problemlos machbar. Ab einer gewissen Verschachtelungstiefe solltest du aber vielleicht ohnehin mal über den gezielten Einsatz von Funktionen nachdenken.
Re: zeilen einreihen
Verfasst: Sonntag 5. Januar 2014, 11:09
von BlackJack
@zar1: Es hat eine Weile gebraucht bis ich „einreihen” verstanden habe. Ehrlich gesagt bis ich die anderen Antworten gelesen habe, die offenbar besser geraten haben als ich — das Wort hätte eigentlich „ein*rücken*” sein sollen.
Ich schliesse mich den Vorrednern an: a) jeder vernünftige Editor kann so etwas und b) wenn es mehr als zwei oder drei verschachtelte Schleifen werden, wird der Code in der Regel zu komplex für *eine* Funktion und man sollte überlegen wie man eine oder mehrere innere Schleifen sinnvoll in eine neue Funktion heraus ziehen kann. Oder ob man nicht vielleicht statt einer Schleife eine Funktion anwenden kann wo schon eine Schleife „drin steckt”, also `map()`, `filter()`, irgendwas aus dem `itertools`-Modul oder anderen Modulen.
Nochmal zu a): Es kann auch sein das der Editor noch mehr dabei helfen kann, zum Beispiel gibt es welche mit einem Tastenkürzel welches alle zusammenhängenden Zeilen markiert die gleich weit oder tiefer als die aktuelle Zeile eingerückt ist. Damit kann man dann in der ersten Zeile von bereits vorhandenen verschachtelten Schleifen diese alle auf einen Schlag markieren ohne das „manuell” von der ersten bis zur letzten Zeile machen zu müssen. Es kann sich durchaus lohnen sich mal einen paar Stunden nur mit dem Editor auseinander zu setzen und zu lernen was der so alles an Funktionen bietet, insbesondere an Tastenkürzeln und Automatismen.
Re: zeilen einreihen
Verfasst: Sonntag 5. Januar 2014, 12:04
von bwbg
@BlackJack: Das hat mit Raten nichts zu tun. Mit Kindern und Frau läuft man permanent im quirks-mode

Re: zeilen einreihen
Verfasst: Sonntag 5. Januar 2014, 12:24
von BlackJack
Vielleicht lag's auch daran das ich noch nicht gefrühstückt hatte.
