スキャン

プロジェクト内の翻訳可能なコンテンツをスキャンします

使い方

npx gtx-cli scan

概要

gtx-cli scanコマンドは、プロジェクト内の翻訳可能なコンテンツをスキャンします。 これは、プロジェクトのファイルツリーを解析し、babelを使用して静的コンテンツを<T>コンポーネントでラップすることで行われます。 動的コンテンツは自動的に<Var>コンポーネントでラップされます。

このコマンドはsetupコマンドに似ていますが、より簡潔で、コンテンツを<T>コンポーネントでラップするだけです。

<GTProvider>などの他のコンポーネントは追加しません。そのため、プロジェクト内のすべてのコンテンツが翻訳可能であることを確認するために、このコマンドを時々実行することをお勧めします。

General Translationをプロジェクトに初めて統合する際は、setupを実行する必要があります。

src/app/Home.js
import { T, Var } from 'gt-next'; 

export default function Home({ user }) {
  return (
    <div>
      <T id="app.home.0">
        Hello, world! My name is <Var>{ user.name }</Var>
      </T>
    </div>
  );
}

パラメータ

パラメータ説明オプションデフォルト
--src <paths>ソースファイルにマッチするglobパターンのスペース区切りリスト。ルートディレクトリからの相対パスで指定する必要があります。stringtrue[ 'src/**/*.{js,jsx,ts,tsx}', 'app/**/*.{js,jsx,ts,tsx}', 'pages/**/*.{js,jsx,ts,tsx}', 'components/**/*.{js,jsx,ts,tsx}', ]
--config <path>GT設定ファイルへのパスstringtrue"gt.config.json"
--disable-ids<T>コンポーネントのID自動生成を無効にするflagtruefalse
--disable-formatting自動フォーマットを無効にするflagtruefalse

動作

id プロパティ

scanコマンドは、<T>コンポーネントに対して自動的に一意のIDを生成します。 これは、多くの<T>コンポーネントを使用するプロジェクトで、手動で各コンポーネントに一意のIDを割り当てる必要を避けたい場合に便利です。

このidは、翻訳エディターやコンソールで特定の翻訳を参照する際に役立ちます。

この動作を無効にするには、--disable-idsフラグを使用できます。

<T>注入動作

基本的なケース

CLIは、可能な限り最高レベルでJSX要素をラップします。 これは、まだラップされていない場合、コンポーネント全体を<T>コンポーネントでラップすることを意味します。

<div>Hello, world!</div> -> <T id="SOME_ID"><div>Hello, world!</div></T>

<T>コンポーネントがどのようにラップされるかの詳細については、リファレンスを参照してください。

自動フォーマット

scanコマンドは、プロジェクトの設定に応じて、Prettier、Biome、またはESLintを使用して、コードベースに加えた変更を自動的にフォーマットします。

この動作を無効にするには、--disable-formattingフラグを使用できます。

このガイドはいかがですか?