Hatena::Groupkeysnail

hogelogの日記

 | 

2010-02-26

keysnailグループの日記RSS

07:02

たぶんこれでいけるのでは。現在2人しか書いてないからあんまし必要無いかもしれませんが一応。

http://pipes.yahoo.com/pipes/pipe.run?_id=yvr0QEHa3RGA4YVKbbsjiw&_render=rss&group=keysnail

LoginManager for KeySnail (マジメ版)

06:40

http://github.com/hogelog/keysnail-plugins/blob/master/login-manager.ks.js

LoginManager for KeySnailを作りました。Firefoxにユーザ名とパスワードが登録してあってLoginManagerが対応しているサイトならコマンド叩くだけで(ウェブページ開かずに)ログインやログアウトができるようになります。

prompt.selectorを使うようにしたので自分でサービス名とかユーザ名を入力する必要は無し。ユーザ名とパスワードが登録されているサービスが全て候補に出てきます。

スクリーンショット貼ろうかと思ったけど秘密にしてるアカウント名ばっかでてきて貼りたくない!

そんなわけでちょっと誰か試しに動かしてくれる方いたらありがたい感じです。なんか使い方あってるのかちょっとわかりませんが、.keysnail.jsに以下のように設定することで候補として表示するものを絞れます。

key.setViewKey([',', 'l', 'u'], function (ev, arg) {
    ext.exec("login-manager-login", "tumblr", ev);
}, 'Log In Tumblr', true);

id:moozさんにちょっと要望をあげたいところとして。prompt.selectorもprompt.readerのaInitialInputのようなものを取るようにしてもいいのではないでしょうか。現在login-manager.ks.jsでは以下のようなことをして絞り込みをさせてたりしてますけども。

ext.add("login-manager-login", function (ev, arg) {
    prompt.selector({
        message: "Log In (LoginManager)",
        callback: function (index) {
            let [servicename, username] = loginList[index];
            let service = services[servicename];
            if (!service) {
                display.echoStatusBar(servicename + "service not found");
                return false;
            }
            service.login(username);
        },
        header: ["Service", "Username"],
        collection: loginList,
    });
    document.getElementById("keysnail-prompt-textbox").value = arg;
    }, "Log In (LoginManager)");

LoginManager for KeySnail

02:46

ちゃんと動くのかわからないし、まだ補完効いてないのであんま使えない適当版。今はとりあえず出てくるプロンプトに

tumblr <アカウント名>

などと入力するとログインできる。はず。入力するアカウント名はパスワードマネージャで表示される奴。

http://github.com/hogelog/keysnail-plugins/blob/master/login-manager.ks.js

あとでやる

01:39

プラグインの補完とか

今日のKeySnail関連活動

01:07

.keysnail.jsとか適当に書き捨てた感じのプラグインとかをgithubに投げるようにした。

http://github.com/hogelog/keysnail-plugins

hogeloghogelog2010/02/26 06:57pluginとかこういう形で公開するとforkとかしにくいのではなかろか。むしろgistとかのが良かったか。

moozmooz2010/02/26 11:13prompt.selector では基本的に initialIndex でまかなうようにしていたのですが、
あっても害はないだろうということで次バージョンから initialInput と cursorEnd 利用可能なようにしたいと思います。
それぞれ「初期入力文字列」、「初期カーソル位置 (省略された場合は initialInput.length)」を意味します。
現在開発環境の調子が良くないので、アップデートは少し後になるかと思いますが......。

プラグイン内部についてですが,

ext.add("login-manager-logout", function (arg) {

の部分が function (ev, arg) でなく function (arg) となっているため, arg にイベントが渡されてしまっています。

CodeRepos は使ったことないので vimp の場合はどうしていたか勝手が分からないのですが GitHub だと fork => pull request が主になってきますかね。 request せずにこっそり fork したままとか。

hogeloghogelog2010/02/26 19:50initialIndexは認識してたんですけど、やっぱ絞り込みたかったので。
とりあえずはプラグイン側からなんとかできてるんで、はい。アップデートされたらinitialInput使います。vimpプラグイン書いてても思いましたけど、chrome権限スクリプトは割と外部っからどうとでもできてしまうのが面白くもあり邪悪極まりないであるところですね。

logoutコマンドのミス指摘ありがとうございます修正しときました。

CodeReposはもう皆様自分の書いたのも他人が書いたものも好き勝手編集してコミットしてた感じです。ちょうど↑の指摘なんかでも横から黙って修正コミット送る的な。
githubのはなんか、例えばlogin-manager.ks.jsだけforkしていじりたくなったりしてもリポジトリ全体forkさせる必要あんのかなーみたいな疑問です。collaboratorとかそういうので対応できるんですかね。
せっかくなんでkeysnail-pluginリポジトリにmoozさんcollaboratorに追加してみました。もし「ああそこはそうじゃねえんだよこう書くんだよもう我慢できねえ俺に書かせろ!」みたいな所ありましたら自由にしてください。

taketstakets2011/03/01 15:50はじめまして。
login-managerをgithubからインストールすると、
M-xからコマンドを実行しようとすると、コマンドが候補に表示されないのですが、
なにか.keysnail.jsに特別な設定が必要なのでしょうか。

RahulRahul2012/12/05 23:00That's a sensible answer to a chalenlging question

lefzkdsnlefzkdsn2012/12/08 05:03JEJxsY <a href="http://pdyipvyxhytd.com/">pdyipvyxhytd</a>

hztjhmhztjhm2012/12/08 21:383842oM , [url=http://pdqyltnpwxkg.com/]pdqyltnpwxkg[/url], [link=http://rlupyvhcfkyx.com/]rlupyvhcfkyx[/link], http://iddlhhbosqqx.com/

wjenqftcbwjenqftcb2012/12/09 12:27fEC1qk <a href="http://lsowasolshfo.com/">lsowasolshfo</a>

 |