ランチャーとの出会い
コマンドライン型のランチャーアプリと呼ばれるものと出会ったのは今から 20 年ほど前、Windows 95 全盛の時代だ。
当時の僕はありとあらゆるフリーソフトをダウンロードして使い心地を試してはアンインストールを繰り返すフリーソフトジャンキーだった。その中でもずっと使い続けていた Moonlight というソフトがあった。
\tgEFAX|bgCg - ߁I `W
@ĂяoAsȂǂׂĂ̑L[{[hsR}hC^̃`BI[gRv[gACRirƂ@\ɂđ쐫̌}ĂقA}EXƂ̕pA}EX삾ł̊pł悤ɍlĂB v\ԂMoonLightB~JP͖{ɂ̎v @ACe̓o^iR}ho^jMoonLightEBhEւ̃hbOhbv삾ōs悤ɂȂĂAxo^ςł܂R}h̓{EnterłقƂǂ̃R}h͋NłBo^ɂNewR}hgă_CAO\AɃhbOhbvȂǂŊȒPɍsB ...
www.vector.co.jp
Windows を使っている時は常にこのソフトとともにあったが、10 年ほど前からは常用する OS を Mac OS に乗り換えてしまい、Moonlight には別れを告げなくてはならなかった。
そこで、Mac OS でもこれに類する使い心地を再現できるコマンドライン型ランチャーは何かというものを追い求めて出会ったのが Alfred だった。
それからというもの Alfred にはかれこれ 10 年近くお世話になっているが、あくまでコマンドラインランチャーとしてしか利用しておらず、それ Spotlight でもいいのでは?とよぎることも。
ちなみに Moonlight の作者の方と、その後同じ会社で働くことになるという個人的ミラクルが発生。Moonlight に出会った当時の中学生の自分、人生は面白いよ。
Alfred Powerpack
Alfred Powerpack を買うと何ができるんだろう?といろんなまとめページをザッピングし、Powerpack の購入ページを過去に何度か訪問したことがあったが、価格と睨めっこしてあげく購入することをやめていた。
今回も同様にその機会が訪れたのだが、逆にいうと何度もコンバージョン直前までいくサービスなら買ってしまった方が良いのでは?と考え、購入を決意。49 ユーロ。
とりあえず導入した Workflows
今後色々試していきたいが、取り急ぎ下記ふたつは導入。
div
GitHub - pawelgrzybek/div: Div - a simple Alfred window manager
This is simple Alfred workflow to help you manage opened windows. It is simple (50 lines of applescript) but powerful tool. It allows you to create your own layouts, custom sizes and custom proportion. Some of the mac OS apps are non-scriptable which means they are not working very well with applescript.
github.com
HatebuList.alfredworkflow
GitHub - geckotang/alfred-hatebulist: はてブのマイブックマーク内から検索するAflredのワークフロー
このワークフローでは はてなブックマークのマイブックマーク全文検索APIを使っています。 また はてなのWSSE認証 を使うため、APIキーを取得する必要があります。 https://www.hatena.ne.jp/ /config/mail/upload 上記URLのページで表示された、投稿メールアドレスの**"@"以前の文字列**がAPIキーとなります。 また、ユーザー名とAPIキーは~/.hatebulist のファイルを作り、そこに保存しています。 APIキーを取得したら、 hl_setting を実行してください。
github.com
API キーの取得の仕方が微妙に分からなかったのでメモがてら。下記画像を参考にしてください。
はてなサービスにおけるWSSE認証
はてなサービスにおけるWSSE認証 本ドキュメントは、はてなサービスの各種 Web API における WSSE 認証について説明するものです。 はてなブログ、はてなフォトライフ、はてなブックマークなどのAPIではWSSE認証が利用できます。WSSE認証の詳細に関しては http://www.xml.com/pub/a/2003/12/17/dive (英語) を参照してください。ここではWSSE認証についての必要事項を簡単に解説します。 WSSE認証はHTTPのX-WSSEヘッダを用いて認証用文字列を送信する認証手段です。WSSE認証用文字列にはユーザー名とAPIキーが含まれます。このとき、APIキーはSHA1アルゴリズムによって暗号化されたダイジェストとして送信されるため、HTTP基本認証などに比べてセキュアな認証が可能です。 送信するX-WSSEヘッダのサンプルは以下のようになります。 X-WSSE: UsernameToken Username="hatena", PasswordDigest="ZCNaK2jrXr4+zsCaYK/YLUxImZU=", Nonce="Uh95NQlviNpJQR1MmML+zq6pFxE=", Created="2005-01-18T03:20:15Z" Username はてなID Nonce HTTPリクエスト毎に生成したセキュリティ・トークン Created Nonceが作成された日時をISO-8601表記で記述したもの PasswordDigest Nonce, Created, APIキーを文字列連結しSHA1アルゴリズムでダイジェスト化して生成されたオクテット列を、Base64エンコードした文字列。APIキーは投稿メールアドレスの"@"や"+"以前の文字列になります。はてなブログの管理画面でも確認できます。 はてなアカウントのパスワードによるWSSE認証は 2014年3月5日をもって廃止されました 。今後はAPIキーによるWSSE認証をご利用ください。 WSSE認証をPerlで実装する場合は、例えば以下のようになります。 X-WSSE ヘッダを作成し、はてなフォトライフAtomAPIエンドポイントの認証を通過して、ルートエンドポイントにGETすることで PostURI、EditURI を取得しています。 また、CPANモジュールのLWP::Authen::Wsse を利用すると、X-WSSEヘッダを生成するロジックを書かなくても、 と LWP::UserAgent に命令するだけで、認証ヘッダを追加したリクエストを送信することができます。 はてなサービスにおける OAuth はてなダイアリーとはてなブックマークは OAuth にも対応しています。新規アプリケーションでは OAuth をご利用ください。 2014年1月27日 認証にAPIキーを使うことを明確化。 2013年10月3日 パスワードをAPIキーとするようにし、はてなアカウントのパスワードの利用を非推奨に。 2010年12月13日 Hatena Developer Center で改めて公開。
developer.hatena.ne.jp
はてなの WSSE 認証の説明ページはところどころリンクが切れていたので直した方が良さそうでした。