Skip to content
Copied!
published on 2026-04-11

3. Alfred Workflow の構築

スクリプトのインストール

Alfred から呼び出せるよう,スクリプトを /usr/local/bin/translate に配置します。

bash
cp translate /usr/local/bin/translate
chmod +x /usr/local/bin/translate

パスが通っていれば,ターミナルから translate として直接実行することもできます。

Workflow の作成

Alfred の環境設定を開き,Workflows タブで新しい Blank Workflow を作成します。名前は任意ですが,ここでは "Translate" としています。

コンポーネントの構成

本 Workflow は2つのトリガー(Hotkey と Keyword)をひとつの Run Script に接続し,さらに Run Script の出力を Text View に渡す構成になっています。

translate-workflow

Figure 1: Workflow の全体構成。Hotkey と Keyword の両トリガーが Run Script に接続される。

Hotkey

Workflow キャンバスを右クリックし,Triggers → Hotkey を選択して追加します。

translate-hotkey

Figure 2: Hotkey の設定。

  • Hotkey:任意のキー組み合わせを設定します。ここでは ⇧⌘T を使用しています
  • Action:Pass through to workflow
  • Argument:Selection in macOS

Argument を「Selection in macOS」に設定すると,ショートカット実行時にシステムが現在選択中のテキストを取得し,ワークフローに渡します。テキストが選択されていない場合は空文字列が渡されますが,スクリプト側でクリップボードへのフォールバックを実装しているため,この場合はクリップボードの内容が翻訳対象となります。

Keyword

Inputs → Keyword を追加します。

translate-keyword

Figure 3: Keyword の設定。

  • Keyword:translate
  • with space:チェックあり
  • Argument:Argument Required
  • Title:Translate

Alfred の検索バーに translate と入力し,続けて翻訳対象テキストを入力して Enter を押すと翻訳が実行されます。

Run Script

Actions → Run Script を追加し,HotkeyとKeywordの両コンポーネントから接続します。

translate-run-script

Figure 4: Run Script の設定。

  • Language:/bin/bash
  • with input as argv
  • running instances:Sequentially
  • Script/usr/local/bin/translate "$query"

Alfred は前のステップから渡されたテキストを $query という変数で参照できます。Hotkey 経由では選択テキストが,Keyword 経由ではキーワードに続けて入力したテキストが $query に入ります。"$query" とダブルクォートで囲むことで,スペースや特殊文字を含むテキストも正しく1つの引数として渡されます。

Text View

Outputs → Text View を追加し,Run Script から接続します。

translate-text-view

Figure 5: Text View の設定。

  • Source:Object Input
  • Behaviour:Editable

Run Script の標準出力(echo "$RESULT")が Text View に表示されます。Behaviour を Editable にしておくと,翻訳結果をウィンドウ内で選択・コピーできます。翻訳結果はすでにクリップボードにコピーされているため,Text View はすぐに閉じてペーストするか,内容を確認したい場合に使用します。