Szukam edytora tekstowego z interfejsem GUI, który jest w stanie przeprowadzić wyszukiwanie wielu wzorców i zastąpić je wszystkie naraz. Jeśli źródłem byłby plik tekstowy, można to zrobić w trybie wiersza poleceń za pomocą sed
, ale tekst pochodzi ze schowka (nie ma innej możliwości).
Muszę: wkleić tekst ze schowka (najwyżej 5-50 słów) w edytorze tekstu, nacisnąć przycisk „zamień” zestawem 10 predefiniowanych wzorów zastępowania i skopiować wynik do schowka. Ta sekwencja zostanie wykonana około 3000 razy ...
software-recommendation
text-editor
zawsze pytaj
źródło
źródło
Odpowiedzi:
... dlaczego nie użyć skryptu? Sprawdź
xclip
(sudo apt-get install xclip
)wyśle schowek na standardowe wyjście, a
-i
ty możesz go zastąpić. Więczastosuje zmianę do zaznaczenia, a teraz możesz go wkleić.
Jeśli chcesz coś graficznego, możesz osadzić skrypt w yad :
Zostanie wyświetlone takie okno dialogowe:
Zauważ, że skrypt zmodyfikuje bufor schowka (wklei) i wydrukuje go. Aby na przykład osadzić to w edytorze,
vim
możesz wykonać następujące czynności:Dodaj do
.vimrc
:uruchom na przykład gvim.
Teraz skopiuj tekst, przejdź do edytora i naciśnij F4. Wybierz zmianę, którą chcesz zastosować.
Tekst pojawi się w edytorze. Jeśli wszystko jest w porządku, możesz je wkleić. Inaczej
Edytuj tekst i skopiuj go ponownie. (W
gvim
, możesz zaznaczyć tekst za pomocą myszy i po prostu wybrać wklej --- lub nauczyć sięvim
poleceń, cokolwiek).Z pewnością można go zoptymalizować (prawdopodobnie możesz łatwo zdefiniować inny klawisz, aby wybrać i wkleić zmodyfikowany tekst, aby mieć jeszcze mniej naciśnięć klawiszy)
źródło
Możesz to wszystko zrobić w wierszu poleceń, wciąż używając czegoś podobnego
xsel
lub,xclip
aby pobrać bieżący schowek, a następnie włożyć do niego wynik. Oto mały przykład, który pokazuje, żesed
jest używany do wielokrotnego zastępowania.Zwroty
123
źródło
Przedstawiam wam edytor Vima! (lub Gvim do implementacji graficznej)
Za pomocą tego edytora tekstu możesz zrobić prawie wszystko. Opiera się na skrótach klawiaturowych, takich jak
i
wprowadzanie tekstu idd
usuwanie linii tekstu,dw
usuwanie słów,d2w
usuwanie dwóch słów.W twoim przypadku: aby wkleić tekst ze schowka, użyj
"*p
Aby zamienić tekst, użyj tutaj
:s/foo/bar/g
zastępując foo paskiem.źródło
|
, np:%s/foo/bar/g | %s/brown/fox/g | %s/lorum/ipsun/g
. Lub umieść polecenia pojedynczo w pliku i użyj:source commandfile.vim
do uruchomienia poleceń. Lub utwórz makro ...