web-dev-qa-db-ja.com

現在のDocument.TitleをFirefox Vimperator - > AutoCMDでエコーする方法

私がこれをやろうとするとき

:autocmd LocationChange .* echo document.title
 _

表示される最初のページはエコーをしません。次のタブに進むと、最後のタブのタイトルがエコーされます。

誰もが私がページ上のすべての着陸のためにどのように得ることができるかを知っていますか。タイトルは、タブを「去る」ときの代わりに即座にエコーされましたか?

そしてそれは2回だけ働くだけです。タブ1,2,3,4,5,6,7,8(次のタブ)を通過すると、出力は(現在1にある)

  • _空欄
  • 1のタイトル
  • _
  • 3のタイトル
  • _
  • 5のタイトル
  • _
  • 7のタイトル
  • _

(今タブ8にいる)

でも私はしたい

  • 1のタイトル
  • 2のタイトル
  • ...

何か案は?

4
shox

私のFirefoxの「すべての2ページ目のタイトルが見つからない」部分を経験しませんでした(古いバージョンを使用していますか?)。しかし、「ページのタイトルの終了」部分はあなたと同じです。これが起こる理由は理解できます:このLocationChangeイベントはあなたが場所を変更するとすぐに発砲されるので、現在の文書タイトル(私たちのためにドキュメントを出るようになる)だけです。
[。]タイトルを取得する前にいくらかの遅延を追加することになるでしょう。これが私が試してみるものです:このメソッドを追加するvimperator/pluginディレクトリにJavaScriptファイルを置きます。

   commands.addUserCommand ("showtitle", "add some delay before showing it",
    function (args) {
        setTimeout(function() {
            liberator.echo(document.title);
        }, 1);
    }
);
 _

このプラグインは、(FFを再起動した後)Vimperator用の新しいコマンドを追加します。このコマンドを呼び出すと、1ミリ秒後に現在のドキュメントタイトルが表示されます。これで、この新しいコマンドを使用してください。autocmd LocationChange .* showtitle。この後、あなたは現在の文書のタイトル(現在のドキュメント)がほとんどの場合にエコーされているのを見るでしょう。より正確になるために遅延を増やすことができます。

2
sowrov