Vimperator - cara menggunakan url halaman saat ini sebagai argumen perintah shell

3

Saya perlu menggunakan url halaman saat ini sebagai argumen untuk memerintahkan yang saya jalankan melalui:!. Saya tidak ingin menyalinnya di sana dengan mouse atau mengetiknya.

Apakah ada cara untuk melakukan ini?

Maksud saya di sini adalah untuk mengirim ke Emacts url ini yang harus dimasukkan ke baris perintah di Vimperator secara otomatis, dan setelah itu saya ingin mengetik beberapa teks di sana dengan deskripsi halaman / tag.

Jarek
sumber

Jawaban:

1

Ini mungkin bukan cara terbaik untuk mencapai ini, tetapi ini adalah solusi yang telah saya gunakan. Perintah otomatis memiliki akses ke beberapa kata kunci (lihat http://vimperator.org/help/vimperator/autocommands.xhtml ), di antaranya kata kunci "url". Begitu

:au PageLoad * :!echo "<url>" >/tmp/mycurrenturl

menginstal autocommand yang menyimpan URL Anda di tmpfile tempat skrip Anda dapat mengaksesnya.

Saya akan sangat menghargai jika seseorang dapat memposting solusi yang lebih elegan.

teamchef
sumber
1

Menggunakan Vimperator 3.4 - dalam perintah yang ditentukan pengguna - Saya menggunakan URL buffer saat ini seperti ini:

command -nargs=0 <name> :execute "!echo " + content.location.href

Ini mendefinisikan perintah pengguna :<name>, yang tidak membutuhkan argumen. Ini memanggil perintah Vimperator :executeyang mengambil string dan mengeksekusi seolah-olah Anda yang mengetiknya. Dalam hal ini dibutuhkan string "!echo " + content.location.href. The content.location.hrefmengevaluasi sebagai ekspresi JavaScript (atau sesuatu seperti itu) dan mengembalikan URL dari halaman di mana perintah dieksekusi.

Menjalankan :<name>pada halaman ini menghasilkan ini (setelah jendela terminal pop-up singkat - pada Windows 7, menggunakan Bash Cygwin sebagai shell saya):

http://superuser.com/questions/363654/vimperator-how-to-use-current-pages-url-as-shell-command-argument
Kohányi Róbert
sumber