概要
もうすでに沢山記事があるけど、Raycastというランチャーアプリのお話。
今までずっとランチャーアプリにはAlfredを使ってきた。
Alfredで出来る業務効率化
ランチャーアプリとは、マウスなどを使わずにアプリを起動することができるアプリで、MacであればSpotlight検索、WindowsであればフリーソフトのOrchisなどが該当する。
最近Raycastを知って、少し調べてみると個人で使う分には 無料
でAlfredのPowerPackと同じようにやってたことを出来ることがわかった。
そこで、RaycastがAlfredの代わりになるか試してみることにした。
最初に結果から
Alfredから乗り換えるに至り、今はRaycastを使っている。
もし、ランチャーとして Alfred
, クリップボードとスニペットとして Clipy
, ウィンドウ管理としてその他のアプリ使っているMacユーザーがいたら、一度Raycastを検討してみることをオススメする。
Raycastはこれらを全て代替することができる優れもののアプリだと思ってる。
以下は、自分で色々試した履歴とオススメの拡張である。
必要要件
個人的にこれはないと乗り換えできないかな、という要件をリストアップした。
- アプリを検索して起動ができる
- クリップボード管理
- 任意のホットキーで呼べる
- 指定した日数のみ保存
- 画像も呼べる
- スニペット
- 任意のホットキーで呼べる
- 自動でスニペットが展開される仕組みがある
- 自分でほしい機能が拡張で追加できる
- 拡張が自作できる
- システム管理コマンド(スリープとか)が実行できる
とりあえずこのあたりを確認した。
アプリの検索
これはランチャーアプリなのでもちろんできる。日本語も問題無し。
Spotlight検索
と置き換える際は下記より、Spotlight検索のホットキーを無効化しておくと良さそう。
https://manual.raycast.com/hotkey
クリップボード管理
かなり使用頻度が高いであろう、クリップボード管理。
これがあるだけで作業効率は何倍もあがると思ってる。
何日分のクリップボードを保存しておくか、ファイル形式(画像は含める含めないなど)を指定できるので、お好みに調整すると良さそう。
スニペット
こちらもあると便利な機能。
自動展開もできるし、 {cursor}
みたいなカーソル位置を指定できるような関数?も備わっているので必要十分な機能を備えている。
JSONからインポートもできるので、GitHubで管理しておくなどもできると思う。
ただし、フォルダ管理ができない所だけが、ちょっとイマイチ。
自分でほしい機能が拡張で追加できる
store
と検索すると、そこで追加可能な拡張の一覧が確認できる。インストールもそこからできるので、すぐに試すことができるのが体験としてとても良い。
拡張が自作できる
Raycastの拡張は自作が可能である。
https://developers.raycast.com/
ただし、Raycastの API
は、React, Node.js, TypeScriptに対応しているが、他言語は見つからなかった。
できなくはないかもしれないが、ライブラリなどのことを考えると上記言語で書いた方が良さそう。
あと、軽く開発を試したところ、 npm run dev
するだけでRaycastの拡張としてインストールしてくれるので、開発はしやすそうだった。(あとは言語の壁だけ)
なお、RaycastのAPIを使わない形式で、シンプルにスクリプトを呼び出すだけなら、多言語でも作成できるし、Raycastから呼び出せる。
違いは、Raycastの API
を使うかどうか(画面で色々処理したい場合など)。
APIを使わないスクリプトでも、シンプルな標準出力をRaycastにそのまま返すとかはできるので、結果だけわかれば良いスクリプトとかに便利そう。
システム管理コマンド(スリープとか)が実行できる
Alfredと同様、システムコマンドも用意されているので、離席するときの画面ロックやスリープなどがやりやすいし、地味に便利。
Quicklink
後述するブラウザのブックマーク拡張でも近しいことができるが、特定のURLを開く、クエリを指定して開くというのが標準で実行できる。(Alfredでも同じ機能があった)
私は自分のWikiサイトを登録していて、引数に検索文字列を指定している。
同じことを自分の好きなサイト(QiitaやZen.devなど)で行えば、さっと調べたいときに便利。
こんなあたりくらいがわかってきたところで、機能としては充足していると判断して、使うこととした。
ここからは、便利な拡張の紹介をしていく。
Window Management
これは最初から入っている拡張。
画面のサイズを変更できる。
凝った形でなければ、他のアプリを使わなくてもこちらで良さそう。
私は Rectangle
というのを使っていたが、ディスプレイがワイドモニターなので画面を 1:1
, 2:1
, 1:1:1
で使っており、それが十分できることがわかったので乗り換えた。
Raycastから直接下記のように呼び出すことも可能。
ただ、毎回上記だと大変なので、RaycastのPreferencesより、ホットキーを割り当てると良さそう。(Raycastは各殆ど全ての呼び出しにホットキーを割り当てられるので、色々好みで割り当てると便利)
私は Left Half
と Right Half
に Cmd+Shift+←
, Cmd+Shift+→
を割り当てた。
Preferencesより、Cycleの設定があり、自動的に上記ホットキーを入力すれば、サイズを変更してくれるので、そのサイズになるまで連打すれば良い。これも毎日使う。
便利すぎて泣ける😭
Authy
MFAにAuthyを使っていたらRaycastにしましょう!と言えるほど、もう笑っちゃうくらい便利。
Authyってさ、キーボードネイティブじゃないというか、マウスで操作しないといけないところがあって、個人的にモヤっとしていたんだけどRaycastで解決できる。
CLIとかで、2faがあったとして Authy
→XXX
→マウスでコピー
→貼り付け
みたいな作業がキーボードから手を離さずに簡単にできるようになる。
Two-Factor Authentication Code Generator
またMFA関連で恐縮だが、こちらも便利。Authyをメインで使っていない人向け。上記同様キーボードで操作して、クリップボード行きにできるのがとてもDXが良い。
もしもあ〜まだMFAしていないところあったな〜という人はRaycastを使ってみるのをオススメしたい。
Visual Studio Code Recent Projects
VSCodeを使っていて、各リポジトリへサッと移動したい場合、VSCodeを起動しているときは拡張のProjectsを使っている。
同じようなことをRaycastの拡張を使ってもできて、Raycastから直接呼び出せるのでかなーり便利。
これは毎日使ってると思う。
VSCodeユーザーなら必須と言ってもいいかもしれない。それくらいオススメ。
GitHub
GitHubを使っているならこちらを使うとリポジトリへの移動が楽になる。
Alfredと比べると裏で都度APIを実行しているのか、結構遅いのが気になる。
ただ、一回呼び出せばキャッシュが効いているのか、比較的速くなるので及第点といったところ。
それでも毎日使うし、プルリクエストもRaycastから送れるのが中々秀逸。
個人的にはOAuthで認証するのもポイント高い。
Emoji Search
🎉とか👏とか🤔とか、ウェブ会議のチャットとかにパッと使いたいときに地味〜に便利。
個人的に拍手を888888じゃなくしたいときに👏👏👏👏👏を呼び出すのによく使う。
GIF Search
レビューしたり、Slackでコメントするときに使う。
GIFはGiphyのデータなのでよくみるやつが多い。
個人的にお気に入りなのは、マークダウン形式にできること。
いくつかの形式で呼び出せるが、マークダウンも対応しているところがちょっとエンジニアライクだなと思った。
Search Bookmark
自分が使っているブラウザのブックマークから呼び出せるやつ。
とりあえず仕事で使うサイトはブクマしておいて、呼び出すのが良いかと思う。Alfredでも同じことをしていたけど、仕事で特定サイトをいくつか訪れることがあるなら、入れておくと吉。
Bitwarden
最近、パスワード管理ツールとしてBitwardenを個人で利用しはじめている。
無料でも利用が可能で、拡張を入れるとAPI経由でVaultが検索できる。
ブラウザなら専用の拡張を使えばよいが、ブラウザが使えない、拡張が反応しない場合などもあるので、入れておくと便利。
1Passwordも拡張があるので、1Passwordユーザーはそちらを使うと良さそう。
Run Shell
Raycastのインライン上で、シェル(bash)を実行できる拡張。
そんなに使う頻度は高くないけど、軽く実行してそれをそのままコピーしたいとか、 そんな用途に使える(かもしれない)。
Amazon AWS
もしAWSを使っているなら入れておくと便利な拡張。
AWSの各サービスへリンクしているので、Raycastから対象サービスへ飛ぶことができる。
特に個人的によく思うのが、AWSのサービス検索画面は時折デザインが変更になったり、うまく表示されなかったりして、戸惑うことがあるのでRaycastでURLで呼び出せてしまったほうが楽だと思う。
Hatena Bookmark
自分で作った拡張。はてなブックマークを見るため拡張。Storeで公開されているので使ってみてね。
詳細は下記をご参照。
[TypeScript入門] Raycastではてブを見るための拡張を作った
まとめ
こんな感じで使ってみると多機能で、色々できてとっても便利。
使い切れていない機能もあると思うけど、マカーな人はこれだけでも生産性がバク上がりになるのでぜひ使ってみてください。
<p style='padding: 5px;'>