Saya mencari editor teks GUI yang mampu melakukan pencarian multi-pola dan mengganti semuanya sekaligus. Jika sumbernya berupa file teks, itu bisa dilakukan dengan mode baris perintah sed
, tetapi teksnya berasal dari clipboard (tidak ada cara lain yang memungkinkan).
Saya perlu: menempelkan teks dari clipboard (paling banyak 5-50 kata) di editor teks, tekan tombol 'replace' dengan 10 pola ganti yang telah ditentukan, dan salin hasilnya ke clipboard. Urutan ini akan dilakukan sekitar 3000 kali ...
software-recommendation
text-editor
selalu bertanya
sumber
sumber
Jawaban:
... mengapa tidak menggunakan skrip? Periksa
xclip
(sudo apt-get install xclip
)akan mengirim clipboard ke output standar, dan dengan
-i
Anda dapat mengganti clipboard. Begituakan menerapkan perubahan pada pilihan, dan sekarang Anda dapat menempelkannya.
Jika Anda menginginkan sesuatu yang grafis, Anda dapat menyematkan skrip dengan yad :
Itu akan menampilkan dialog seperti ini:
Perhatikan bahwa skrip akan memodifikasi buffer clipboard (tempel) dan mencetaknya. Untuk menanamkan ini di editor, misalnya
vim
, Anda dapat melakukan hal berikut:Tambahkan ke Anda
.vimrc
:jalankan misalnya gvim.
Sekarang Anda menyalin teks, pergi ke editor, tekan F4. Pilih perubahan yang ingin Anda terapkan.
Teks akan muncul di editor. Jika tidak apa-apa, Anda dapat menempelnya. Jika tidak
Edit teks dan salin lagi. (Dalam
gvim
, Anda dapat memilih teks dengan mouse dan cukup pilih tempel --- atau pelajarivim
perintah, apa pun).Itu bisa dioptimalkan untuk pasti (Anda mungkin dapat dengan mudah menentukan kunci lain untuk memilih dan menempelkan teks yang dimodifikasi sehingga Anda memiliki penekanan tombol yang lebih sedikit untuk digunakan)
sumber
Anda dapat melakukan ini semua di baris perintah masih menggunakan sesuatu seperti
xsel
atauxclip
untuk mengambil clipboard saat ini dan kemudian memasukkan hasilnya kembali ke dalamnya. Berikut adalah sedikit contoh yang menunjukkansed
sedang digunakan untuk melakukan banyak penggantian.Kembali
123
sumber
Saya persembahkan kepada Anda editor Vim! (atau Gvim untuk implementasi grafis)
Dengan editor teks ini Anda dapat melakukan hampir semua hal. Ini didasarkan pada cara pintas keyboard seperti
i
untuk memasukkan teks dandd
untuk menghapus baris teks,dw
untuk menghapus kata-kata,d2w
untuk menghapus dua kata.Dalam kasus Anda: untuk menempelkan teks Anda dari penggunaan papan klip
"*p
Dan untuk mengganti teks gunakan
:s/foo/bar/g
ganti foo dengan bilah di sini.sumber
|
, misalnya::%s/foo/bar/g | %s/brown/fox/g | %s/lorum/ipsun/g
. Atau letakkan perintah satu baris setiap kali dalam file dan gunakan:source commandfile.vim
untuk menjalankan perintah. Atau buat makro ...