閲覧環境
firefox3.5, greasemonkey, autopagerize, minibuffer, LDRize + reblogcommand/deletecommand は前提。
詳細は http://d.hatena.ne.jp/myhoney0079/20081224/p4 を参照
vimperator
http://d.hatena.ne.jp/myhoney0079/20090502/p2 を参照。
が、このままだといくつかの conflict が発生するので、回避しなければなりません。@otsune, @retlet に教えてもらいました。
LDRize との conflict の解消
j,k のキーアサインが vimp に乗っ取られたりで、LDRize がうまく働きません。ldrize_cooperation.js で解決できます
これを ~/vimperator/plugin にぶちこむ。
ReblogCommand との conflictの解消
同じように、tが vimp に乗っ取られるので、t押しても :tabopen になってしまいます。feedSomeKeys_2.js でキーアサインをスルーさせます。
http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/trunk/feedSomeKeys_2.js
を同じく~/vimperator/plugin にぶちこむ。で、ちょっと設定追加:
http://d.hatena.ne.jp/teramako/20081018/p1
.vimperatorrc に以下を追加:
"feedSomeKeys2
autocmd LocationChange \\.tumblr\\.com/ :fmap! t n
hint-tombloo.js
キーボードだけで tombloo 経由でポストできるとうれしいですね。
http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/trunk/hint-tombloo.js
同じくつっこむ。
http://subtech.g.hatena.ne.jp/motemen/20090617/1245168701
にあるとおり、;R でヒントモードに入るので数字で画像を選択、"Extractor:" と聞かれるので、"Photo"と入力するとダイアログがでるのでリターンでポスト。
ポストするのは100%画像なんで、"Photo"の入力とダイアログ表示は省略したいところ。
以下パッチ。つってもやってることは extractor を "Photo" に決めうちして share() の第三引数を false に変えて(thx to @otsune)るだけ。これで画像をヒントモードで選択すればそのままポストされるようになります。
--- hint-tombloo.js-orig 2009-07-20 00:04:45.203125000 +0900 +++ hint-tombloo.js 2009-07-20 11:09:15.531250000 +0900 @@ -44,30 +44,41 @@ } var extractors = tomblooService.check(context); - - liberator.modules.commandline.input( - 'Extractor: ', - function (string) { - var extractor; - for (let i = 0; i < extractors.length; i++) { - if (extractors[i].name == string) { - extractor = extractors[i]; - break; - } - } - if (!extractor) return; - - tomblooService.share(context, extractor, true); - }, - { - completer: function (context) { - context.title = ['Tombloo Extractors']; - context.completions = extractors.map( - function (_) [ _.name, _.name ] - ); - } - } - ); + var extractor; + var string; + string = "Photo"; + for (let i = 0; i < extractors.length; i++) { + if (extractors[i].name == string) { + extractor = extractors[i]; + break; + } + } + tomblooService.share(context, extractor, false); + // liberator.modules.commandline.input( + // 'Extractor: ', + // function (string) { + // var extractor; + // for (let i = 0; i < extractors.length; i++) { + // if (extractors[i].name == string) { + // extractor = extractors[i]; + // break; + // } + // } + // if (!extractor) return; + // + // tomblooService.share(context, extractor, true); + // tomblooService.share(context, extractor, false); + // }, + // { + // completer: function (context) { + // context.title = ['Tombloo Extractors']; + // context.completions = extractors.map( + // function (_) [ _.name, _.name ] + // ); + // } + // } + //); + }, function () hintXPath );
これでふつーに快適に reblog 生活が送れます。