Ich suche einen GUI-Texteditor, der in der Lage ist, mehrere Muster gleichzeitig zu suchen und zu ersetzen. Wenn die Quelle eine Textdatei wäre, kann dies im Befehlszeilenmodus mit erfolgen sed
, der Text stammt jedoch aus der Zwischenablage (auf keine andere Weise möglich).
Ich muss: den Text aus der Zwischenablage (höchstens 5-50 Wörter) in den Texteditor einfügen, auf die Schaltfläche "Ersetzen" mit einem Satz von 10 vordefinierten Ersetzungsmustern klicken und das Ergebnis in die Zwischenablage kopieren. Diese Sequenz wird ungefähr 3000 Mal durchgeführt ...
software-recommendation
text-editor
immer fragen
quelle
quelle
Antworten:
... warum nicht ein Skript verwenden? Check
xclip
(sudo apt-get install xclip
)sendet die Zwischenablage an die Standardausgabe und mit können
-i
Sie die Zwischenablage ersetzen. DamitDie Änderung wird auf die Auswahl angewendet, und jetzt können Sie sie einfügen.
Wenn Sie eine grafische Darstellung wünschen, können Sie das Skript mit yad einbetten :
Das zeigt Ihnen einen Dialog wie diesen:
Beachten Sie, dass das Skript sowohl den Puffer in der Zwischenablage (Einfügen) ändert als auch druckt. Um dies beispielsweise in einen Editor einzubetten
vim
, können Sie Folgendes tun:Fügen Sie Ihrem hinzu
.vimrc
:Führen Sie zum Beispiel gvim aus.
Jetzt kopieren Sie den Text, gehen zum Editor und drücken F4. Wählen Sie die Änderung aus, die Sie anwenden möchten.
Der Text wird im Editor angezeigt. Wenn es in Ordnung ist, können Sie es einfügen. Andernfalls
Bearbeiten Sie den Text und kopieren Sie ihn erneut. (In
gvim
können Sie den Text mit der Maus auswählen und einfach Einfügen auswählen --- oder dievim
Befehle lernen , was auch immer).Es könnte sicher optimiert werden (Sie können wahrscheinlich leicht eine andere Taste definieren, um den geänderten Text auszuwählen und einzufügen, so dass Sie noch weniger Tastendruck verwenden müssen).
quelle
Sie können dies alles in der Befehlszeile tun, indem Sie noch etwas wie
xsel
oder verwendenxclip
, um die aktuelle Zwischenablage abzurufen und das Ergebnis dann wieder in die Zwischenablage einzufügen. Hier ist ein kleines Beispiel, das zeigtsed
, wie mehrere Ersetzungen durchgeführt werden.Kehrt zurück
123
quelle
Ich präsentiere Ihnen den Vim-Editor! (oder Gvim für die grafische Implementierung)
Mit diesem Texteditor können Sie so ziemlich alles machen. Es basiert auf Tastaturkürzeln wie
i
zum Eingeben von Text unddd
zum Löschen von Textzeilen,dw
zum Löschen von Wörtern undd2w
zum Löschen von zwei Wörtern.In Ihrem Fall: Um Ihren Text aus der Zwischenablage einzufügen, verwenden Sie
"*p
Und um Text zu ersetzen,
:s/foo/bar/g
ersetzen Sie hier foo durch bar.quelle
|
, indem Sie beispielsweise Folgendes verwenden ::%s/foo/bar/g | %s/brown/fox/g | %s/lorum/ipsun/g
. Oder fügen Sie die Befehle zeilenweise in eine Datei ein und verwenden Sie sie:source commandfile.vim
, um die Befehle auszuführen. Oder erstellen Sie ein Makro ...