3 Stimmen

Wie kann ich eine Aktion n-mal in TextMate ausführen (sowohl Emacs als auch Vim können dies problemlos tun!)?

Emacs : C-U (79) # " ein hübscher 79-Zeichen-Längenteiler

VIM : 79-i-# " siehe oben

Textmate : ????

Oder wird einfach davon ausgegangen, dass wir einen Ruby-Aufruf machen oder irgendwo ein Snippet haben?

2voto

pjbeardsley Punkte 1421

Ich würde dafür einen Bündelbefehl erstellen.

Sie können die Auswahl des Editors als Eingabe für Ihr Skript verwenden und sie dann durch das Ergebnis der Ausführung ersetzen. Dieser Befehl nimmt zum Beispiel eine ausgewählte Zahl und druckt das Zeichen "#" so oft wie möglich.

python -c "print '#' * $TM_SELECTED_TEXT"

Natürlich können Sie in diesem Beispiel das Zeichen nicht spezifizieren, aber es gibt Ihnen eine Vorstellung davon, was möglich ist.

1voto

Matt Punkte 5332

Durch die Einnahme des

python -c "print '#' * $TM_SELECTED_TEXT"

einen Schritt weiter gehen, können Sie die Beispiele, die Sie in der Frage genannt haben, vervielfältigen.

Erstellen Sie einfach ein Snippet, genannt divider oder so ähnlich, setzen Sie die tab trigger in ein entsprechendes Feld '--' und geben Sie dann etwas ein wie z. B:

`python -c "print '_' * $TM_COLUMNS"`

Wenn Sie dann eingeben -- (Bindestrich Bindestrich Tab), sollten Sie eine Trennwand mit der richtigen Breite erhalten.

Sie haben zwar etwas von der Kürze verloren, die Sie von vim gewohnt sind, aber es ist viel einfacher, es wiederzuverwenden, und Sie müssen es nur einmal eingeben. Sie können auch jede beliebige Sprache verwenden.

1voto

Inspiriert durch die anderen Antworten. Erstellen Sie ein Snippet mit folgendem Inhalt:

`python -c "print ':'.join('$TM_SELECTED_TEXT'.split(':')[:-1]) * int('$TM_SELECTED_TEXT'.split(':')[-1])"`

und weisen Sie ihm optional eine Tastenfolge zu, z. B. CTRL-SHIFT-R

Wenn Sie eingeben -x:4 , wählen Sie es aus und rufen Sie das Snippet auf (z. B. mit seinem Kürzel), Sie erhalten "-x-x-x-x".

Sie können auch Folgendes verwenden ::4 um "::::" zu erhalten.

Die Zeichenfolge, die Sie wiederholen, ist in einfachen Anführungszeichen eingeschlossen, d. h. um ' zu wiederholen, müssen Sie \' verwenden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X