🚀

Zennの記事作成コマンド、もう覚えなくていい【Raycast活用】

に公開

はじめに

Zennで記事を書くとき、こんな手順を踏んでいませんか?

  1. エディタでZennのフォルダを開く
  2. ターミナルを起動する
  3. 「記事作成コマンドなんだっけ…」と調べる
  4. npx zenn new:article を実行する
  5. エディタで作成されたファイルを開く

「たった5ステップじゃん」と思うかもしれませんが、これが意外と億劫なんですよね。特に 毎回コマンドを調べ直す のが地味にストレスです(覚えればいいのですが、私は忘れてしまいます…)。

「さあ、記事を書こう」と思った瞬間から、すぐに執筆を始められる環境があれば、アウトプットのハードルはぐっと下がります

この記事では、RaycastのScript Commandsを使って、上記の作業を1アクションに短縮する方法を紹介します。

対象読者

  • MacでZennの記事を書いている
  • Raycastを使っている(またはこれから使いたい)
  • エディタ(Cursor/VSCode)で記事を執筆している

完成イメージ

設定後の流れはこうなります:

  1. Raycastを起動(ショートカットキー1発)
  2. 「zenn」と入力してスクリプトを選択

これだけで、新しい記事ファイルが作成され、Cursorでそのファイルが開いた状態になります。

前提知識

Raycastとは

Raycastは、macOS向けの高機能ランチャーアプリです。macOS標準のSpotlightの代替として使えます。

アプリの起動やファイル検索といった基本機能に加え、Script Commandsという機能で自作のシェルスクリプトをRaycastから直接実行できます。今回はこの機能を活用して、Zenn記事作成を自動化します。

Script Commandsとは

Script Commandsは、Raycastから任意のスクリプト(Bash、Python、Ruby、AppleScriptなど)を実行できる機能です。スクリプトファイルの先頭に特定のコメント(メタデータ)を書くことで、Raycastが自動的に認識します。

# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title スクリプトのタイトル
# @raycast.mode compact

このメタデータにより、Raycastの検索欄に「スクリプトのタイトル」として表示されるようになります。

設定手順

1. Raycastをインストールする

まだRaycastを使っていない場合は、公式サイトからインストールしてください。

2. スクリプト用のフォルダを作成する

Raycastに読み込ませるスクリプトを配置するフォルダを作成します。

mkdir -p ~/raycast-scripts

3. スクリプトファイルを作成する

スクリプトファイルを作成し、実行権限を付与します。

touch ~/raycast-scripts/zenn-create-article-open-cursor.sh
chmod +x ~/raycast-scripts/zenn-create-article-open-cursor.sh

次に、エディタでスクリプトの内容を書き込みます。Node.jsの管理方法によって内容が異なりますので、該当するタブを選んでください。

Homebrewでnodeをインストールしている場合
#!/bin/bash

# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title Zenn: Create Article & Open Workspace in Cursor
# @raycast.mode compact
# @raycast.description Create a new Zenn article and open the Zenn workspace in Cursor
# @raycast.author Your Name

set -e

# Homebrew の PATH を通す(Raycast は通常のシェル設定を読み込まないため)
export PATH="/opt/homebrew/bin:$PATH"

# Zennのフォルダに移動(ここを自分の環境に合わせて変更)
ZENN_DIR="$HOME/zenn_docs"
cd "$ZENN_DIR"

# 新しい記事を作成し、ファイルパスを取得
created_path=$(npx zenn new:article | sed -n 's/^created: //p' | head -n 1)

if [ -z "$created_path" ]; then
  echo "Failed to detect created article path."
  exit 1
fi

# Cursorでワークスペースと作成した記事ファイルを開く
cursor "$ZENN_DIR" "$ZENN_DIR/$created_path"
nvmを使用している場合
#!/bin/bash

# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title Zenn: Create Article & Open Workspace in Cursor
# @raycast.mode compact
# @raycast.description Create a new Zenn article and open the Zenn workspace in Cursor
# @raycast.author Your Name

set -e

# nvm をロード(Raycast はシェルの設定ファイルを読まないため必須)
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

# Zennのフォルダに移動(ここを自分の環境に合わせて変更)
ZENN_DIR="$HOME/zenn_docs"
cd "$ZENN_DIR"

# Nodeバージョン(.nvmrc があればそれを使用、なければデフォルト)
if [ -f ".nvmrc" ]; then
  nvm use >/dev/null
else
  nvm use default >/dev/null
fi

# 新しい記事を作成し、ファイルパスを取得
created_path=$(npx zenn new:article | sed -n 's/^created: //p' | head -n 1)

if [ -z "$created_path" ]; then
  echo "Failed to detect created article path."
  exit 1
fi

# Cursorでワークスペースと作成した記事ファイルを開く
cursor "$ZENN_DIR" "$ZENN_DIR/$created_path"

4. Raycastにスクリプトを登録する

作成したスクリプトをRaycastに認識させます。

  1. Raycastを起動する
  2. 検索欄に「Extensions」と入力して選択する
  3. 左側メニューから「Script Commands」を選択する
  4. 「Add Directories」をクリックする
  5. 先ほど作成した ~/raycast-scripts フォルダを選択する

これで設定は完了です。

使ってみる

実際に使ってみましょう。

  1. Raycastを起動する(デフォルトは ⌥ + Space
  2. 「zenn」と入力する

  1. 「Zenn: Create Article & Open Workspace in Cursor」を選択する

新しい記事ファイルが作成され、Cursorでそのファイルが開きます。あとは書くだけです。

まとめ

RaycastのScript Commandsを使うことで、Zenn記事の作成を1アクションに短縮できました。

  • コマンドを忘れても大丈夫
  • ターミナルを開く必要がない
  • エディタで記事ファイルが即座に開く

「記事を書こう」と思った瞬間から、すぐに執筆を始められる環境は、アウトプットのハードルを下げるのに効果的です。ぜひ試してみてください。


この記事が参考になったら、いいね👍をお願いします!

Discussion