Ich möchte Folgendes anhand ihrer Schlüssel sortieren
case IndexError:
PyErr_SetString(PyExc_IndexError, exc.str.c_str());
break;
case ValueError:
PyErr_SetString(PyExc_ValueError, exc.str.c_str());
break;
case RuntimeError:
PyErr_SetString(PyExc_RuntimeError, exc.str.c_str());
break;
case IOError:
PyErr_SetString(PyExc_IOError, exc.str.c_str());
break;
so wird es
case IOError:
PyErr_SetString(PyExc_IOError, exc.str.c_str());
break;
case IndexError:
PyErr_SetString(PyExc_IndexError, exc.str.c_str());
break;
case RuntimeError:
PyErr_SetString(PyExc_RuntimeError, exc.str.c_str());
break;
case ValueError:
PyErr_SetString(PyExc_ValueError, exc.str.c_str());
break;
Im Wesentlichen sortiere ich nur die Zeilen
case IOError:
case IndexError:
case RuntimeError:
case ValueError:
Der Inhalt der anderen Zeilen (diejenigen, die nicht mit a beginnen case
) spielt keine Rolle, aber ich möchte, dass sie nach den Fällen sortiert werden.
multiple-lines
sort
Henricus V.
quelle
quelle
case
Sie das Ganze regenerieren können , da der Inhalt des s ähnlich ist. Holen Sie sich das sortierte*Error
s (von einemenum
? Vielleicht durchlaufensort(1)
?), Und erstellen Sie dann ein Makro, dasXError
incase XError: PyErr_SetString(PyExc_XError, exc.str.c_str()); break;
alle Enum-Werte konvertiert und ausgeführt wird.Antworten:
Der einfache Weg: Verbinden Sie die Zeilen in den logischen Blöcken, bevor Sie sortieren.
Im Detail:
:'<,'>s/\n /^A/
gv
:'<,'>sort
gv
:'<,'>s/^A/\r /g
^A
oben ist das Zeichen Ctrl-A(ASCIISOH
). Es kann sich um ein beliebiges Zeichen handeln, das nicht in den zu sortierenden Zeilen erscheint, aber Ctrl-Azur Rechnung passt. Sie können es als eingeben Ctrl-vCtrl-a.quelle
Idee: Verbinden wir die
n
Anzahl der Zeilen unter Groß- und Kleinschreibung mit einer einzelnen Zeile. Folgen Sie dem Prozess für alle Fälle. Verwenden Sie dann sort, um die Fälle zu sortieren. Dann schneiden Sie diese Linien zurück und rücken sie ein.Schritte:
1) Verbinden Sie die
n
folgenden Zeilen,case
indem Sie diese eingeben. (in deinem Fall ist n 3)2) Wählen Sie alle diese Fälle im visuellen Modus aus. Drücken Sie
v
otV
, um alle Fälle auszuwählen. Drücken Sie:
. Es wird so aussehen:'<,'>
. Geben Sie sort ein.3) Legen Sie die Falllinien darunter. Wählen Sie sie erneut aus, indem Sie gv drücken.
Dies teilt die Falllinien. Wenn Linien nicht richtig eingerückt sind, können Sie sie durch Auswahl von
gv
und dann ausrichten==
.Dies funktioniert für eine beliebige Anzahl von Zeilen, vorausgesetzt, Sie verwenden die für Ihren Zweck angepassten Schritte.
quelle