mcpField
M
make-site-multilingual

make-site-multilingual

github.com/cloudcannon開発9102 回インストール6 日前に更新
リポジトリ

make-site-multilingual について

単一言語サイトを Rosey で翻訳可能にする手順を示すスキルで、必要に応じて Rosey CloudCannon Connector(RCC)の追加も案内します。初期設定、既存 i18n からの移行、RCC のアップグレードを扱い、ビルド後の HTML を処理する Rosey と CloudCannon の編集レイヤーを区別します。

主な機能

  1. 01サイトを Rosey 対応に設定
  2. 02翻訳対象の HTML 要素にタグ付け
  3. 03ロケールファイルと翻訳ページを生成
  4. 04既存 i18n システムから移行
  5. 05任意の RCC 編集レイヤーを追加
  6. 06SSG 別の実装ガイドを参照

活用シーン

  1. 01単一言語サイトを翻訳可能にする
  2. 02既存サイトの i18n 設定を置き換える
  3. 03CloudCannon のインライン翻訳編集を追加
  4. 04RCC v1 のサイトを v2 にアップグレード

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/cloudcannon/agent-skills --skill make-site-multilingual

インストール後、Claude Code で/make-site-multilingualを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

gotchas.md
migrating-from-i18n.md
rcc-v1-to-v2-upgrade.md
setup.md
tagging.md
troubleshooting.md
astro/
overview.md
eleventy/
overview.md
hugo/
hybrid.md
native-multilingual.md
overview.md
scripts/
fix-rosey-pages.mjs

詳細

Rosey(および RCC)に対応したサイトを準備する

Rosey を使って単一言語のサイトを翻訳可能にする手順と、必要に応じて Rosey CloudCannon Connector(RCC) を設定し、エディターが CloudCannon の Visual Editor 上でインライン翻訳できるようにする手順を説明します。

使用する場合

  • 単一言語のサイトを翻訳可能にする場合 — メインのワークフローは setup.md を参照してください。
  • サイトに既存の i18n システム(astro-i18n、next-intl、辞書 + t())があり、Rosey に置き換える場合 — migrating-from-i18n.md
  • サイトで RCC v1 が稼働しており、v2 に移行する場合 — rcc-v1-to-v2-upgrade.md
  • Rosey 対応済みのサイトに CloudCannon のインライン翻訳レイヤーを追加する場合 — setup.md § Phase 5

使用しない場合

  • Rosey 対応済みのサイトで翻訳を入力する場合 — その場合は translate-site を使用してください。
  • ロケールに関係しない一般的な CloudCannon の設定の場合 — その場合は cloudcannon-configuration を使用してください。
  • 編集可能な領域そのものを設定する場合 — その場合は cloudcannon-visual-editing を使用してください。このスキルでは、data-rosey と領域の連携についてのみ説明します。

内容

ファイル内容
SKILL.md(このファイル)このスキルを適用する場面、2 つのレイヤー、開始点、SSG の検出
setup.mdメインのワークフロー — 9 つのフェーズ。監査からロケールピッカー、チェックリストまで
tagging.mdフェーズ 3 の全内容 — data-rosey / -ns / -root のすべての記述ルール
gotchas.md事前に防ぐための 1 行ルール。フレームワーク非依存および SSG 固有の注意点
troubleshooting.mdクリーンにビルドされるのに誤って翻訳される問題の、症状 → 原因 → 解決策
migrating-from-i18n.mdメインのワークフローの前に行う、既存の i18n システムの置き換え
rcc-v1-to-v2-upgrade.mdRCC v1 から v2 へのサイトの移行 — メインのワークフローに代わる方法
astro/overview.mdAstro の実装、および Astro の i18n 移行に関する補足
hugo/overview.mdHugo:3 つのセットアップからの選択、ルートの導出、セットアップ C(Rosey のみ)
hugo/native-multilingual.mdHugo セットアップ A:Hugo の言語と i18n テーブルを使用し、Rosey は使用しない
hugo/hybrid.mdHugo セットアップ B:コンテンツには Hugo の言語、UI 文字列には Rosey を使用
eleventy/overview.mdEleventy の実装。タクソノミーのスコープ設定とリンクのローカライズを含む
scripts/fix-rosey-pages.mjsビルド後に、Rosey が生成したページの canonical と og:url を修正

2 つのレイヤー

この 2 つは別々のものとして捉えてください。一緒にインストールされますが、役割は異なり、必要なのは最初のレイヤーだけです。

  1. Rosey 対応(必須)。 Rosey は、ビルド済みの HTML を対象に動作する、オープンソースのフレームワークに依存しないツールです。翻訳する要素に data-rosey を付けると、ビルド後のパイプラインによってロケールごとのキーと値のファイル(rosey/locales/{code}.json)が生成され、サイトの翻訳版が /{locale}/ の URL でビルドされます。CMS を使わずに、どの SSG でも動作します。サイトが Rosey 対応になれば、翻訳は AI(translate-site スキルを参照)、手作業、または外部サービスで入力できます。

  2. RCC のビジュアル編集レイヤー(任意)。 RCC は、ロケールファイルと CloudCannon の Visual Editor を連携するクライアントサイドスクリプトです。これにより、エディターはすべての data-rosey 要素で、ロケール切り替えメニューと ProseMirror のインラインエディターを利用でき、翻訳が古くなった場合も検出できます。CMS として CloudCannon が必要です。サイトが CloudCannon を使っていない場合は、RCC/CloudCannon に関する手順をすべて省略し、別の方法でロケールファイルを翻訳してください。

このスキルの大部分(タグ付け、パイプライン、ロケールファイル)は、必須の Rosey レイヤーに関するものです。任意の RCC レイヤーだけに関する手順には (RCC レイヤー) と記されています。

現在の状況に合う開始点は?

状況進む先
単一言語のサイトで、翻訳システムをまだ導入していないsetup.md から開始してください — メインのワークフロー
サイトですでに i18n システム(astro-i18n、next-intl、パスベースのルーティング、辞書と t())を使用している先に migrating-from-i18n.md を実行し、その後 setup.md に進んでください
サイトですでに RCC v1(フォームベースの YAML 編集、generateRoseyId、data-rosey-tagger)を使用している代わりに rcc-v1-to-v2-upgrade.md に従ってください — 独立した完結型の手順です

SSG の検出とフレームワーク固有のガイダンス

サイトの監査(フェーズ 1)の後、SSG を特定し、フレームワーク固有の実装の詳細について該当する <ssg>/overview.md を読んでください。

SSG読むファイル
Astroastro/overview.md
Hugohugo/overview.md
Eleventy (11ty)eleventy/overview.md

Hugo:フェーズ 2 の前に hugo/overview.md を読んでください。 サイトに必要な 3 つの設定のうちどれを使うか確認します。そのうち 1 つ(Hugo 独自の多言語システム)では、Rosey のワークフロー全体が置き換わります。

これらのファイルには、ルートの導出パターン、コンテンツブロックの名前空間の例、配列アイテムのコンポーネント規則、ディレクトリ分割の詳細、ロケールピッカーの例、フレームワーク固有の注意点が記載されています。各フェーズのドキュメントでは、必要に応じてこれらを参照します。

コメント