13 Stimmen

Erstellen von Makros in Intellij

Ich versuche, ein Makro zu erstellen, das eine Auswahl von Text nimmt und einige Suchen/Ersetzen auf sie mit einer Regex läuft. Ich habe dieses Makro in Intellij aufgezeichnet, aber wenn ich es ausführe, bekomme ich nur das Dialogfeld "Suchen/Ersetzen" geöffnet. Es wird kein Suchen/Ersetzen ausgeführt.

Hatte jemand Glück mit der Erstellung eines suchen/ersetzen Makro in intellij?

0 Stimmen

0 Stimmen

Früher habe ich AutoIT unter Windows zur Erstellung von Makros verwendet. Es ist ein sehr leistungsfähiges Makro. Wenn Sie Windows verwenden, können Sie es vielleicht nur als Workaround ausprobieren.

0 Stimmen

Wenn Sie den Regexp und die Ersetzung bereits im Suchen/Ersetzen-Dialog/der Leiste haben, schließen Sie die Leiste und verwenden Sie einfach die Hotkeys (f3), um das nächste Vorkommen mit dem zuletzt in Suchen/Ersetzen eingegebenen Element auszuwählen, und dann (Strg+r), um die Ersetzung durchzuführen. Danach wird etwas ausgewählt, so dass Sie esc drücken müssen, da sonst das nächste f3 versucht, den ausgewählten Text zu finden, und Sie wollen, dass die alte Regexp verwendet wird.

3voto

osundblad Punkte 2575

Ich kann das Makro "Suchen/Ersetzen" auch nicht zum Laufen bringen, aber ich kann Ihnen zwei Tipps geben, die Ihr Problem lösen könnten:

  1. Wenn es sich nur um einige wenige Orte/Zeiten handelt, an denen Sie die Suche/Ersetzung durchführen müssen, werden frühere Ersetzungen gespeichert (Pfeil nach unten in den Feldern Suchen/Ersetzen).

  2. Schreiben Sie ein Plugin (ja, das ist wirklich nicht schwer), um dies zu tun. Ich war überrascht, wie einfach es war, auch wenn die Dokumentation verbessert werden könnte.

Und eine zusätzliche Möglichkeit habe ich mir gerade ausgedacht:

  1. Öffnen Sie die Datei in Emacs Record Replace Macro (oder schreiben Sie eine Elisp-Funktion, um es zu tun), das ist die Art, wie ich es getan hätte, bis ich gelernt habe, wie einfach es war, Idea Plugins zu machen.

2 Stimmen

Kannst du zufällig deinen Plugin-Code online stellen, ich denke, das wäre sehr hilfreich für alle ;)

0 Stimmen

Ich habe kein allgemeines Suchen/Ersetzen-Plugin (ich habe einige andere Funktionen, die ich in Emacs vermisst habe). Aber wenn ich etwas Zeit frei bekomme, werde ich eines schreiben.

0 Stimmen

@osundblad haben Sie das Plugin schon geschrieben?

2voto

Stanislaw Osinski Punkte 1221

Dies scheint ein langjähriger Fehler in IntelliJ. Ein Workaround, der bei mir funktioniert hat, war dieser:

  • Installieren Sie die IdeaVim-Plugin .
  • Wenn Sie ein Makro aufzeichnen, das eine Suche erfordert, aktivieren Sie den Vim-Modus (Werkzeuge -> Vim-Emulation) während des Makros, positionieren Sie den Cursor mit den Standard-Vim-Maßnahmen und deaktivieren Sie den Vim-Modus.

Im Allgemeinen kann die Vim-Emulation für IntelliJ-Makros sehr nützlich sein.

-4voto

badp Punkte 11166

Wenn alles andere fehlschlägt, könnte tou versuchen AutoIT , AutoHotKey , Applescript o andere Makrosysteme für allgemeine Zwecke.

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