2008.10.27
Twitter クライアントをホットキーで瞬間起動する
タスクトレイに常駐しているTwitter クライアントを、ホットキーで起動するやりかた。
具体的には今、Tween というソフトを使っていて、 一度起動させるとタスクトレイに常駐するのだけれど、何か思いついたことを書こうと思ったら、 いちいちマウスでアイコンをクリックしないといけなかった。
TrayExpand という ソフトをを使って、Tween に「Ctrl + 1」というホットキーを割り当ててからは、 Ctrl + 1 でクライアントが立ち上がって、Alt + F4 でウィンドウが閉じる。すごく快適になる。
TrayExpand というソフトは、 開発しておられるかたが終了を宣言して久しいのだけれど、ソースコードを引き継いで、 64bit対応 にして下さった方がいた。
リンク からアプリケーションを ダウンロードして設定すれば、タスクトレイに常駐状態になったTwitter クライアントに、 任意のホットキーを指定できる。
google デスクトップは便利
手元のパソコンを「google 化」するソフト、Google デスクトップ を入れてずいぶん経つ。
何を書いても、とりあえず「ハードディスクのどこか」に保存しておけば、このソフトが勝手にインデックスを作って 検索可能にしてくれるから、これを使うと「ファイルの整理」が不必要になる。
この機能はたしかに便利なのだけれど、このソフトには「Ctrlキーを2回叩くと検索ボックスが出る」 という機能がおまけみたいについてきて、これに慣れると生活パターンがずいぶん変わる。
検索は普通、マウスでアイコンをクリックして、ブラウザソフトを立ち上げてから行う。
これにかかる時間だってせいぜい数秒だけれど、「Ctrl キー2回」だと、これがもう1秒ぐらい縮まる。 この「1秒」がすごく大きくて、一度慣れると戻れなくなるし、今まで以上に検索の閾値が下がって、 google 検索が生活の一部になってしまう。
時間の節約というのは、「1日かかっていたのが1時間になる」みたいな進歩のほうが目立つけれど、 その人の生活動作を変えるのは、むしろ「コンマ秒」単位の、ごくわずかな短縮が効いてくるのだと思う。
Twitter で「コンマ秒」縮めたい
普段自分が使っているのは、ブラウザを除けば、あとはせいぜいLaTeX で紹介状書いたり、 パワーポイントでスライド作ったりすることぐらい。こういうソフトを立ち上げるときには、 ある程度まとまった時間を使うのが前提になるから、マウスクリックでもそんなに困らない。
問題なのはTwitter 。
Twitter はもう、日常生活動作の一部になっていて、ちょっと思いついたアイデアがあれば、 とりあえずTwitter に放り込んでおくし、他愛のないおしゃべりだとか、日本のどこかで地震が起きただとか、 リアルタイムでいろんなお話しが流れてくる。
このソフトだけは、「ちょっと使う」機会が多くて、マウスクリックをTwitter へのアクセスから追放できれば、 たぶん生活動作がずいぶん変わる気がする。
普段使い倒すものならば、「コンマ秒」を短縮することは、そのためにツールを全部取り替えたっていいぐらいに大切。 アイデアというものは、それこそ「コンマ秒」単位で腐っていくから。
Twitter は本来、ブラウザ上で動くサービスだけれど、いくつか専用のクライアントが公開されていて、 今は「Tween 」という専用クライアントを常駐させている。パソコンの起動と同時にTwitter のホームページに メッセージを取りに行って、あとはその日に流れるおしゃべりを、ずっと記録してくれる。
このソフトは、普段はタスクトレイに小さくおさまっていて、ここをマウスクリックすると一瞬で立ち上がるのだけれど、 「マウスでタスクトレイのアイコンをクリック」という、このわずかな動作が煩わしくて、何とかしたかった。
窓使いの憂鬱
普段使っているキーバインド変更ソフト窓使いの憂鬱 には、&ShellExecute() という命令がある。
これを使うと、任意のキーボードショートカットで、任意のアプリケーションを立ち上げられる。
キーボードを使うことなら、ほとんどどんなことでもできるソフトだけれど、これを使ってTween を 立ち上げようとすると、「二重起動です」という警告が出て、うまく行かない。
同じく窓使いの憂鬱には、Window の最大化を行わせる命令があるんだけれど、今度はアプリケーションの指定ができない。 アクティブになったウィンドウごとの動作は指定できるみたいだけれど、 バックグラウンドで常に動いているソフトに指示を出すやりかたは、自分には探せなかった。
AutoHotKey
AutoHotkey という、やはりあらゆるキーボード操作を 変更可能なソフトがあって、これもまた、スクリプトを書くことで、 強力な機能を実現している。
「使用例」として紹介されている機能の中に「既に起動している場合は、そのプロセスをアクティブにする」 という一文があって、すごく有望そうではあったのだけれど、使いかたが難しそうな上に、 「窓使いの憂鬱」と機能がぶつかりそう。
某SNS で「不安だ」とかつぶやいてたら、「AutoHotKeyと窓使いの憂鬱は、技術のレイヤが異なるので、共存できます」 なんて教えていただく。
実際に導入してみて、スクリプトを書いて、たしかにホットキー一発できちんと立ち上がったのだけれど、 一度Tween をタスクトレイに格納すると、やっぱり「二重起動」の警告が出て、動かなくなってしまう。
困った。
検索してみた
やりたいのは「タスクトレイに常駐したアプリケーションをホットキーで立ち上げる」ことなんだけれど、 そのまま検索しても、必要な情報は探せなかった。
「タスクトレイ」「操作」なんて単語で検索をすると、今度はTTBaseという、 タスクトレイの操作に特化した常駐ソフトがあった。
このソフトは様々なプラグインのプラットフォームとして動作して、公開されているプラグインの中に、 「タスクトレイのアプリケーションをポップアップさせる」プラグインを公開しておられる人がいた。
これはたしかにうまく動作したんだけれど、ショートカットキーを押して、 さらにカーソルキーで Tween のアイコンを選択して、さらにEnter を押さないとポップアップしてくれない。 たしかにマウスを触らないで済むようにはなったけれど、これだとマウスのほうが速い。
いろいろ探したんだけれど、どうにも見つからなかった。
ひたすらぼやいた
「こんなことをしたい。分からない。困った困った」なんて、Twitter 立ち上げるたびにつぶやいてたら、 「のどか」という、「窓使いの憂鬱」の 後継ソフトを開発しておられる方が、今度のバージョンから機能を実装していただける、なんてコメントをいただいた。
すごくありがたいお話しで、たぶんこれを待つのが正解なんだけれど、 今度はTween の「ウィンドウクラス名、メッセージの番号などを調べる必要があり…」とのことで、 やっぱり初心者には敷居が高そう。
この方のコメントで、「タスクトレイ」のことを「通知領域」と呼ぶことを初めて教えていただいた。
また検索
今度は「通知領域」と「操作」で検索。
【通利領域】タスクトレイ関連ソフト【tasktray】という、 2ちゃんねる掲示板の過去ログが見つかる。2005年頃の記事だけれど、ここに来て初めて、同じような問題を 抱えている人達に行き当たった。
TrayExpand というソフトがそれらしいのだけれど、開発は終わっているだとか、 バイナリを公開しているだとか、記事がいくつか。
最後にもう一度、「TrayExpand 」という単語で検索をかけて、64bit 対応版だとか、 ソースコードを引き継いでいる人のページに行き当たって、とりあえず「ホットキー一発」が達成できた。
分からないものを検索する
技術力が全くない人間であっても、検索エンジンは、正しく問いさえすれば、あらゆる答えを教えてくれる。
問題になってくるのは「問いかた」で、自分が抱えている問題をどう言語化すればいいのか、 分からない人はたいていの場合これが分からないし、分からないものは、検索できない。
「問題」と「検索」との間に、誰か「人」に入ってもらうと、「何が問題なのか分からない」問題は、 しばしば検索可能な、解答可能な問題に置き換わる。
次世代の検索エンジンは、たぶん「ここではないどこか」みたいな言葉を検索して、 満足のいく解答を返してくれるようになる。
「ちょうどいい暇つぶし」だとか「面白そうな本」みたいな、検索不可能ワードの検索需要は必ずあって、 そんな「次世代」は、たぶん人がたくさん集まる場所から発生する。
疑問を持って、SNS でヒントをいただいて、検索して、Twitter に疑問を投げて、 blog のコメント欄でヒントをいただいて、さらに検索して、解答にたどり着いた。
次世代は見えてないだけで、もうここにあるんだと思った。
こんばんは。解決されて何よりです。
私の方は、Tween をインストールして、spy++ でクラス名を見つけて、「のどか」から操作しようと試みましたが、うまく行きません。orz.
実装した &SendMessage の問題なのか、そもそも正しいクラス名が見つけられていないのか、まだ切り分けできておらず、不明です。
とはいえ、ネタを提供していただいて、大変ありがとうございました。
ちなみに、どうして今回の案件 見つけることが出来たかと言えば、「窓使いの憂鬱」の派生版をメンテしている関係で、Google で 「窓使いの憂鬱」で24時間以内にクロールされたものを、一日何回かウォッチして、どのような需要があるかを見つけています。
それでは、また、どこかで お会いしましょう。
Posted at 2008.10.28 12:18 AM by applet_at_h
どうもありがとうございました。
なんというか、何が問題なのか分からないぐらいに漠然とした問題というものは、それを「分かっている人」にぶつけて、反応をいただくだけでも、それが問題解決につながってしまうことが、個人的には新しい経験でした。
Posted at 2008.10.28 8:03 AM by medtoolz
[...] Twitter クライアントをホットキーで瞬間起動する – レジデント初期研修用資料 [...]
Posted at 2008.10.29 11:33 PM by 今日のニュース 10/29/2008
こんばんは。
解決されているので、蛇足でしかありませんが、あれから、さらに、いろいろ検討を進めています。しかしながら現時点での結論は、どうも単純に 通知領域のアイコンに、Window Messageを送っても、マウスクリックした状態を作り出すことに成功していません。
もし実施するならば、シェルスクリプトか実行ファイルなどを呼び出して、TrayExpand が実施しているような、トレイのサブクラス化を実現することなりそうです。
Posted at 2008.11.1 11:23 PM by applet_at_h
ありがとうございます。。
アプリケーションがタスクトレイに格納されているのなら、そこからアプリケーションを立ち上げて、それがすでに立ち上がっているのなら、ウィンドウをアクティブにできれば本当にありがたいのですが。。
今のところは、タスクトレイから立ち上げるときには設定されたホットキーを使って、すでに立ち上がっているのなら、Ctrl + Alt を使わないといけないので、ほんのわずかだけ、まだ快適に遠いのです。。
Posted at 2008.11.2 11:03 AM by medtoolz
こんばんは。
やっと Tweenのアイコンに対して、操作を行うことが出来たので
次は、Tweenが居ないときに、起動する機能を入れる予定です。
まだソースが汚いので、今すぐ公開するに至りませんが、もう山は越えました。
Posted at 2008.11.10 1:26 AM by applet_at_h
すごい。どうもありがとうございます。
こういう機能を真の意味で「ホットキー一発」をやろうとすると、「タスクトレイに格納されているときは立ち上げる」「ウィンドウが隠れているときにはそれをアクティブにする」「ウィンドがアクティブなときには何もしない」という、3つの働きを統合しないといけなくて、大変ですよね。。
Posted at 2008.11.10 8:04 AM by medtoolz
こんばんは。アイコンが居ないときに、起動するよう機能追加できました。ただし下記に書いたように不具合があります。
もし試されるのであれば、お時間あるときにメールください。「のどか」を、お送りします。お忙しいと思うので、決して強制ではありません。下記、不具合は解消できるよう検討を進めていきますので、数日後でもかまいません。もっとも、その時、解消している保証はありませんけれども。
現在分かっている不具合
1. ウィンドウが隠れているときに前面でアクティブにならないときがある。
強制的にアクティブにしても、点滅するのみで、どうにもならない。これはキー入力状態のアプリが前面にいると、発生するWindows側の問題として知られている項目。ALT-ESCなどで、ウィンドウを前面に出すしかなさそう。
プログラム的には、タスクトレイのアイコンを一旦前面に出すと、少し改善するが、通知領域のアイコンがすべて表示される不具合が発生する。
Posted at 2008.11.11 12:27 AM by applet_at_h
どうもありがとうございました。。ダウンロードして試してみます。
Posted at 2008.11.12 8:31 AM by medtoolz
いつか敗北する日のために
図書館の主要な業務の一つに、レファレンスサービスというものがある。ものすごく簡単に言うと、ユーザーの疑問や質問に答えることだ。「○○について知りたい」「××について調べ…
Posted at 2008.12.4 11:16 PM by The best is yet to be.