:!を介して実行するコマンドの引数として、現在のページのURLを使用する必要があります。マウスでコピーしたり、入力したりしたくありません。
これを行う方法はありますか?
ここでの私の意図は、Vimperatorのコマンドラインに自動的に挿入されるこのURLをEmactsに送信することです。その後、ページ/タグの説明を含むテキストを入力したいと思います。
これはおそらくこれを達成するための最良の方法ではありませんが、私が使用した回避策です。自動コマンドはいくつかのキーワードにアクセスできます( http://vimperator.org/help/vimperator/autocommands.xhtml を参照)。その中にはキーワード「url」があります。そう
:au PageLoad * :!echo "<url>" >/tmp/mycurrenturl
スクリプトがアクセスできるtmpfileにURLを保持する自動コマンドをインストールします。
誰かがもっとエレガントな解決策を投稿できれば幸いです。
Vimperator 3.4の使用-ユーザー定義コマンドで-現在のバッファーのURLを次のように使用します:
command -nargs=0 <name> :execute "!echo " + content.location.href
これは、引数をとらないユーザーコマンド:<name>
を定義します。 Vimperatorコマンド:execute
を呼び出します。このコマンドは文字列を受け取り、入力した人であるかのように実行します。この場合、文字列"!echo " + content.location.href
を取ります。 content.location.href
はJavaScript式(またはそのようなもの)として評価され、コマンドが実行されたページのURLを返します。
thisページで:<name>
を実行すると、これが出力されます(Windows 7では、CygwinのBashをシェルとして使用して短いポップアップターミナルウィンドウの後):
http://superuser.com/questions/363654/vimperator-how-to-use-current-pages-url-as-Shell-command-argument