Hatena::Groupvimperator

Vimperatorライフ(仮)

2009-03-06

TwitterのWebページのaccesskeyがVimperatorのキーバインドと衝突する件の対策

21:53 | TwitterのWebページのaccesskeyがVimperatorのキーバインドと衝突する件の対策 - Vimperatorライフ(仮) を含むブックマーク はてなブックマーク - TwitterのWebページのaccesskeyがVimperatorのキーバインドと衝突する件の対策 - Vimperatorライフ(仮)

いつのまにかtwitter.com/homeでアクセスキーが使えるようになってた.Ctrl-fでFavoritesを開いたり,Ctrl-eでPublic Timelineのページに移動するとかそんなの.

<ul id="tabMenu">
  <li><a href="/home" accesskey="h" id="home_tab">Home</a></li>
  <li><a href="/replies" accesskey="r" id="replies_tab">@Replies</a></li>
  <li><a href="/direct_messages" accesskey="d" id="direct_messages_tab"><span id="message_count" class="stat_count">29</span> Direct Messages</a></li>
  <li><a href="/favorites" accesskey="f" id="favorites_tab">Favorites</a></li>
  <li><a href="/public_timeline" accesskey="e" id="public_timeline_tab">Everyone</a></li>
</ul>

これがVimperatorキーバインドと衝突して非常にうざったかったのでaccesskeyを無効化する方法を調べたところ,id:retletさんの以下の記事を見つけた.

retlet.net - VimperatorキーバインドバッティングするのでFirefoxのaccesskeyを無効化

http://retlet.net/log/2008/04/vimperator-accesskey-off.html

about:configでui.key.generalAccessKey = 0とすればいいらしい.


折角なのでVimperatorset!コマンドを使ってabout:configの値を書き換えてみた.

set! ui.key.generalAccessKey = 0

.vimperatorrcに上の設定を追加して解決.ついでにWikipediaのようなMediaWikiのページのアクセスキーも無効化された.

2009-01-04

フレームのフォーカスの切り替えについて

01:16 | フレームのフォーカスの切り替えについて - Vimperatorライフ(仮) を含むブックマーク はてなブックマーク - フレームのフォーカスの切り替えについて - Vimperatorライフ(仮)

複数フレームがあるサイトでは,]f[fを使えばフォーカスするフレームを切り替えることができる.けど,

[count]]f

Focus next frame. Transfer keyboard focus to the [count]th next frame in order. The newly focused frame is briefly colored red. Does not wrap.

ヘルプにある通り,最後のフレームまで移動したときにもう一度移動しようとしてもwrapしてくれない.wrapしてくれると便利なんだけどなぁ.

2008-12-29

Yahoo!路線情報用設定がmulti_requester.jsを使って書けるようになった

12:44 | Yahoo!路線情報用設定がmulti_requester.jsを使って書けるようになった - Vimperatorライフ(仮) を含むブックマーク はてなブックマーク - Yahoo!路線情報用設定がmulti_requester.jsを使って書けるようになった - Vimperatorライフ(仮)

前回の記事の後,id:suVeneさんがmulti_requester.jsアップデートして私の記事にコメントで知らせてくれました.

今更ですが、multi_requester.js Ver.0.4.10 で、複数 %s に対応してみました。

http://coderepos.org/share/changeset/27521

http://vimperator.g.hatena.ne.jp/mickey24/20081225#c1230474859

まさに私のやりたかったことが可能になりました.しかも,siteinfoやmappingsの例まで丁寧にコメントいただきました.どうもありがとうございます.id:suVene++


というわけで,前回のYahoo!路線検索用設定は以下のようにmulti_requester.jsを使う形に書き換えられました.やったね!

javascript <<EOM
liberator.globalVariables.multi_requester_siteinfo = [ 
    {   
        name:           'yahoo-transit',
        description:    'Yahoo transit',
        url:            'http://transit.yahoo.co.jp/search/result?from=%s&to=%s&type=1&ost=0&ei=utf-8&x=0&y=0',
        xpath:          'id("main")',
    },  
];
liberator.globalVariables.multi_requester_mappings = [ 
    [',st', 'yahoo-transit', '!','渋谷 東京'],
    [',ts', 'yahoo-transit', '!','東京 渋谷'],
];
EOM

ただ,'!'を''にしてcommand lineで開こうとすると表示が崩れるのは何でだろう….

suVenesuVene2008/12/29 16:30
ただ,'!'を''にしてcommand lineで開こうとすると表示が崩れるのは何でだろう….

Yahoo!のサイトが、<dl><dt>, <ul><li> などで路線情報を定義し、CSS で頑張って見た目を表示させている為、HTML の部分だけでは崩れちゃうわけです。

mickey24mickey242008/12/29 16:43むむむ,なるほど….これに対応するのはちょっと厳しいですね.

2008-12-25

Yahoo!路線情報用設定

16:49 | Yahoo!路線情報用設定 - Vimperatorライフ(仮) を含むブックマーク はてなブックマーク - Yahoo!路線情報用設定 - Vimperatorライフ(仮)

よく使う路線の情報をキータイプ×3くらいで検索できると便利かなーと思ったので書いてみた.

マップしたキーをタイプすると現在時刻での検索結果がtabopenされる.

javascript <<EOM
[
    [',st','渋谷','東京'],
    [',ts','東京','渋谷'],
].forEach(function([key,from,to]){
    liberator.modules.mappings.addUserMap([liberator.modules.modes.NORMAL], [key],
        'Yahoo transit',
        function() {
            var url = 'http://transit.yahoo.co.jp/search/result?from=' + from + '&to=' + to + '&type=1&ost=0&ei=utf-8&x=0&y=0';
            liberator.echo(':tabopen ' + url);
            liberator.execute(':tabopen ' + url);
        }, { rhs: ':tabopen http://transit.yahoo.co.jp/search/result...', noremap: true }); 
});
EOM

ちょっと適当すぎたかも.JavaScriptよく分かりません.

本当はmulti_requester.jsやpeekpage.jsを活用したかったけどうまくいかなかった.


(追記 2008/12/26 12:45)

現在時刻で検索する場合は引数に時刻を与えなくてもいいことが判明….

というわけでかなり簡単になりました.

(追記 2008/12/29 12:58)

multi_requester.jsアップデートされたおかげで,上記の設定はmulti_requester.jsを使って楽に書けるようになりました.

詳しくはこちら

はじめまして

16:49 | はじめまして - Vimperatorライフ(仮) を含むブックマーク はてなブックマーク - はじめまして - Vimperatorライフ(仮)

mickey24です.

Vimperatorグループに参戦しました.

よろしくお願いします.


これで表のはてな日記がぬいぐるみの記事だらけになりそうな悪寒.

suVenesuVene2008/12/28 23:34今更ですが、multi_requester.js Ver.0.4.10 で、複数 %s に対応してみました。
http://coderepos.org/share/changeset/27521

{
name: 'yahoo-transit',
description: 'Yahoo transit',
url: 'http://transit.yahoo.co.jp/search/result?from=%s&to=%s&type=1&ost=0&ei=utf-8&x=0&y=0',
xpath: 'id("main")'
}
こんな感じの SITE_INFO 用意して、

liberator.globalVariables.multi_requester_mappings = [
[',st', 'yahoo-transit','!', '渋谷 東京'],
[',ts', 'yahoo-transit','!', '東京 渋谷'],
];
こんな感じでマップしておけば、同じようなことができると思います。

mickey24mickey242008/12/29 12:23おお,まさにやりたかったのはコレです!
ありがとうございます!