2008/07/24

はてな
とは言ってもUser Agent Switcherが必要なのですが...

使い方は
:ua MyUserAgent
でUser Agent Switcherに"MyUserAgent"という名前で登録されたUser Agentに変更します。
:ua Default
でリセット
:ua!
で設定ダイアログ表示となります。
急遽モバイルページに行きたいけどメニューに手を伸ばすの面倒臭いって方には使えるかも。
ちなみに私はデフォルトで登録されていた物の他に、DoCoMo、Vodafone、SoftBank、Hatenaクローラ等のUserAgentを登録してます。
uaSwitch.js
よろしければどーぞ。

2008/06/24

はてな
ようやくblosxomで動く用になりました。
tomblooハックス - share on WordPressにポストするためのMetaWeblog API « ku

アップデート 2008.6.24

mattnさんにいただいたBig Sky :: tomblooハックス90_MetaWeblog.jsのパスワードをパスワードマネージャに保存するパッチを文字化けしないようにしてtombloo - Google Codeにコミットしました。ページのView raw fileのところからダウンロードしてください。

http://ido.nu/kuma/2008/06/07/werwer/
google codeのtomblooから90_MetaWeblog.jsを取得し、"extensions/tombloo@brasil.to/chrome/content/library/"に入れると動きます。詳しい説明はkuさんのページを確認して下さい。
kuさんのスクリプトから、若干手を入れさせて頂いていてXMLRPCのエントリポイントである"extensions.tombloo.posters.MetaWeblog.endpoint"の他に"extensions.tombloo.posters.MetaWeblog.mediapath"という設定が出来る様になっています。
ブログツールの中には画像をアップロードするパスが設定出来る物もあり、環境に合わせて
mediapathの設定
の様に設定します。これで90_MetaWeblog.jsが使えるブログツールが増えたかと思います。恐らくMTでもendpointを
http://www.example.com/cgi-bin/mt/mt-xmlrpc.cgi
の様に設定すれば動きます。確認してませんが。
今回blosxomでは"SourceForge.net: BXR: Blosxom XML-RPC Interface"を使い、特定のカテゴリ(90_MetaWeblog.jsは「reblog」というカテゴリ)のみ
  • インデックスやRSSから隠す
  • dynamic_cacheしない
  • アクセスランキングに載せない
処理を入れ、reblogサイトっぽく動く様になりました。名づけてreblosxomとします!
blosxom-xmlrpc.cgiを色々なブログツールに対応させる為のパッチを当てれば、日本語周りや動的なカテゴリ変更などにも対応出来るblosxom-xmlrpc.cgiが出来上がります。オリジナルのBXRで上手く行かない人は試してみて下さい。
実際に以下の様にして
reblosxomでポスト
ポストした結果が「reblogカテゴリ」となります。
自分の写真しかreblogしてないので、全くreblogじゃないんですが家族や友人の写真からreblogなんて事ならokですかね...
わずか3クリック程でreblog出来てしまうtombloo & 90_MetaWeblog.js すばらしいです。

今回blosxomプラグイン等に行った修正は後日公開したいと思います。

ku++ brazil++ tombloo++ blosxom++

2008/06/20

はてな
これすごいわ。
wildoptions=autoとcomplete=lが凄い件 - Dis Communication - 符号無し

vimperator1.2pre 2008-06-19以降で実装されてるwildoptions=autoとcomplete=lがlifechangingだったので紹介しておきますね。

何が凄いって
:set complete=l
が凄い。「たかがtab押さなくても良くなっただけだよね」と思うでしょうが、使ってみたら無茶苦茶便利。
vimperator使いだと、おそらくURLを開くのに
:open http://...
とか「<c-l>」してアドレスバーにフォーカス合わしたりしてるかと思いますが、firefox3で登場したアドレスバーの便利機能(おせっかい機能とも言われてるらしい)、「AweSomeBar」
firefox-awesomebar
:open
で使えるのです。例えば
:open twitter teramako
とすると
vimperator-awesomebar
と出るんです。URLなんか殆ど打たなくても良くなります。あとは通常と同じくtabで選べばok。すばらしい。
これでおそらくvimperatorがブラウジング最速になったかと思います。

ところで、vimperator使ってると稀にパススルーモードが外れてしまい、「Google Readerでキーバインドが効かなくなった」とか「LivedoorReaderで上手く動かなくなった」って事になったりします。
私の場合、以下の様にキーマップして回避しています。
noremap <c-i> :js modes.passAllKeys = true<cr>
ただ、これを使ってて気づいたのですがどうやらvimperatorの補完はmapで実行する「:ex」コマンドにも反応してる臭い。これはいずれ直るかと思うけど気になる様だったらパッチを送ってみよう。 とりあえずは、mapで実行するんじゃなくてaddUserMap使ってやる事にした。
javascript <<EOM
liberator.mappings.addUserMap([liberator.modes.NORMAL], ['<C-i>'],
    'Pass through mode',
    function () { liberator.modes.passAllKeys = true }
);
EOM

2008/06/13

はてな
あんまり確認してないですが...
tomblooハックス - share on WordPressのためのMetaWeblog API poster « ku

MetaWeblog APIはWordPressだけでなくMovableTypeでもサポートされているのでMovableTypeでも使うことができる。ただユーザ名とAPI用パスワードの設定を簡単にはできないので、ファイルに直接書くことになる。

--- 90_MetaWeblog.js.orig   Fri Jun 13 10:45:53 2008
+++ 90_MetaWeblog.js    Fri Jun 13 10:48:48 2008
@@ -427,11 +427,23 @@
        var endpointUri = createURI(this.endpoint);
        var hostname = endpointUri.prePath;
        var formSubmitURL = endpointUri.prePath;
-       var httprealm = null;
-       var logins = lm.findLogins({}, hostname, formSubmitURL, httprealm);
+       var logins = lm.findLogins({}, hostname, formSubmitURL, null);
        var loginInfo = logins.shift();
        if ( ! loginInfo ) {
-           throw "No login infomation found. Please make Firefox remeber your login information at " + this.endpointUri.replace(/\bxmlrpc\b/, 'wp-login');
+           var ps = Cc["@mozilla.org/embedcomp/prompt-service;1"].getService(Ci.nsIPromptService);
+           var [user, pass] = [{ value : null }, { value : null }];
+           var ret = ps.promptUsernameAndPassword(
+               window, formSubmitURL, "tombloo metaWeblog poster", user, pass, null, {});
+           if(ret){
+               var nsLoginInfo = new Components.Constructor(
+                   "@mozilla.org/login-manager/loginInfo;1", Ci.nsILoginInfo, "init");
+               loginInfo = new nsLoginInfo(
+                   formSubmitURL, formSubmitURL, null, user.value, pass.value, '', '');
+               passwordManager.addLogin(loginInfo);
+           }
+           if ( ! loginInfo ) {
+               throw "No login infomation found. Please make Firefox remeber your login information at " + this.endpointUri.replace(/\bxmlrpc\b/, 'wp-login');
+           }
        }
 
        var mw = new MetaWeblogAPI(loginInfo.username, loginInfo.password, this.endpoint);
これで外部ファイルにパスワード保存しなくても良くなったりするかなぁ...

時間があまり無いので今度検証する。

2008/05/28

はてな
「はてなスター」の置かれている位置によっては思いっきり誤爆してしまうhatenaStar.jsですが、皆さんのご不満を軽減すべく誤爆確認機能をつけました。これまで
:hatenastar 1
としていた場面で
:hatenastar 1?
とすると、つけようとしている「はてなスター」がブリンクします。
点灯している「はてなスター」を見て、「あぁ、あそこに付けるんだな」と思って頂ければと思います。
あとは安心して":↑<bs>"でコマンドヒストリを出してバックスペースで"?"を消し
:hatenastar 1
と実行して下さい。
hatenaStar.js

2008/05/23

はてな
I wrote a plugin which moved the focus along the input fields.
When the web page has multiple <input> or <textarea> fields,
the focus walks the input fields by pressing A-i (or M-i).

http://www.pqrs.org/tekezo/tmp/vimperator/walk-input.js

It seems there was no similar function in the core code, would you merge this?

Regards,
Takayama Fumihiko.
http://www.mozdev.org/pipermail/vimperator/2008-May/001497.html
便利。<M-i>で順に入力フィールドへフォーカスが飛ぶ。
Dotan Cohenから「TABとどう違うの?」って返信への返信通り、"gi"だと届かないフィールドへフォーカスを飛ばすのはTABの押しすぎで指がつる。
使わせて頂く事にしよう。

tekezo++

2008/05/13

はてな
そろそろNabeAtzzにも飽きてきたので、エドはるみグリモン作ってみた。
Firefoxで閲覧中に現れる「ing」とか「グ」に反応してエドはるみが登場します。 Googleでsomethingとか検索してしまったら鬱陶しい事間違いありません。
edo-good
動作画面はこのような画面になります。
good-goo-goo-goo-good.user.js
ぜひご活用下さい。

新規投稿