PyCharm 2024.3 ヘルプ

言語インジェクション

言語インジェクションを使用すると、コードに埋め込まれた他の言語のコード部分を操作できます。文字列リテラルに言語 (HTML、CSS、XML、RegExp など) を挿入すると、プロジェクトのメイン言語でなくても、挿入されたコードに対して包括的なコーディング支援を受けることができます。

一時的に言語をインジェクションする

デフォルトでは、IDE は一時的に言語を挿入します。これは、埋め込まれた要素を削除すると、インジェクションも失われることを意味します。

  1. 言語を挿入する文字列リテラル、タグ、属性内にキャレットを配置し、Alt+Enter を押します(またはインテンションアクションアイコン Intention action icon を使用します)。

  2. 言語または参照の挿入を選択し、インジェクションする言語を選択します。

    Inject HTML code in a Python script
  3. コードを入力します。言語構成に使用できる場合は、コード補完に注意してください。

    Code completion in the injected language fragment

言語インジェクションコメントを使用する

  • ターゲット文字列リテラルの前に空白行を追加し、次のコメントを入力します。

    # language=<language_ID>
    HTML injection comment

コメントについては、インジェクションしたい言語の構文を使用してください。言語 ID は一般的に直感的です。たとえば、SQL、RegExp、XML、HTML などです。

設定で言語 ID を確認することもできます。Ctrl+Alt+S を押して設定を開き、エディター | 言語インジェクションを選択します。言語のインジェクションルールをダブルクリックすると、言語 ID が ID フィールドに指定されます。

言語フラグメントは、フラグメントを構文的に完全な言語単位に変換するラッパーとして一緒に作用する接頭辞および接尾辞と組み合わせることができます。コードを編集するときは、接頭辞と接尾辞はフラグメントエディターでのみ表示されます。メインエディターには表示されません。

接頭辞と接尾辞は、次のようにインジェクションコメントに含めることができます。

# language=<language_ID> prefix=<prefix> suffix=<suffix>
Using prefixes and suffixes in language injection

インジェクションエディターを開く

  1. 挿入されたコード部分内にキャレットを置き、Alt+Enter を押します (またはインテンションアクションアイコン Intention action icon を使用します)。

  2. <言語 ID> フラグメントの編集を選択します。

    PyCharm は、挿入された言語でコードを編集するための専用のエディターセクションを開きます。このエディターは、コード補完、インスペクション、インテンション、コードスタイルアクションを含む完全なコーディング支援を提供します。

    Edit the HTML fragment in the dedicated editor

インジェクションをキャンセルする

  1. キャレットをコードの一部に配置して Alt+Enter を押す(またはインテンションアクションアイコン the Intention action button を使用する)。

  2. 言語または参照の挿入解除を選択します。

言語インジェクションをキャンセルするには、インジェクションコメントまたはアノテーションを削除することもできます。

インテンションアクションバルブアイコンを無効にする

エディターでインテンションアクションアイコン Intention action icon を非表示にするには、次の手順を実行します。

  1. Ctrl+Alt+S を押して設定を開き、エディター | 一般 | 外観を選択します。

  2. インテンションバルブを表示するチェックボックスをクリアします。

  3. 変更を適用し、ダイアログを閉じます。

自動インジェクションのルールを構成する

PyCharm には、IDE がコード内の特定の場所に言語を自動的に挿入するための事前定義されたルールのセットがあります。

エディター | 言語インジェクション設定ページ Ctrl+Alt+S で言語インジェクションルールを設定できます。

Language injection settings

定義済みのすべてのインジェクションルールはビルトインスコープ用に設定されています。言い換えれば、それらはグローバルです(したがってすべての PyCharm プロジェクトで利用可能です)。カスタムルールは IDE または 1 つのプロジェクトに対してのみ設定できます。カスタムインジェクションの範囲を変更するには、the Move to Project/IDE scope button を使用してください。

VCS を介してカスタムルールを共有するには、ツールバーの対応するオプションを使用して、カスタムルールをプロジェクトスコープに移動します。そうすることで、バージョン管理下に置くことができるカスタムルールを使用して IntelliLang.xml という名前の新しいファイルを .idea ディレクトリに作成します。

VCS を使用しない場合は、ルールを XML ファイルにエクスポートして(ツールバーの Export をクリック)、別のプロジェクトにインポートすることで、ルールを共有できます。

カスタムインジェクションルールを設定するには、the Add button をクリックして新しいルールを追加するか、あらかじめ定義されたルールをコピーして設定を変更します。

関連ページ:

TODO コメント

時々、将来の参照のためにコードの一部をマークする必要があります: 最適化と改善の領域、起こり得る変更、議論される質問など。PyCharm を使用すると、エディターでハイライトされ、インデックスが付けられ、TODO ツールウィンドウにリストされる特別なタイプのコメントを追加できます。この方法で、あなたのチームメイトは注意が必要な問題を追跡できます。デフォルトでは、PyCharm によって認識される 2 つのパターン、とが小文字と大文字の両方で存在します。これらのパターンは行内で使用でき、サポートされ...

スクラッチファイル

一時的なメモを作成したり、プロジェクトのコンテキスト外でコードを作成したりする必要がある場合があります。別のアプリケーションに切り替える代わりに、スクラッチファイルとスクラッチバッファを使用できます。スクラッチファイルは、構文のハイライト、コード補完、対応するファイルタイプのその他すべての機能をサポートする、完全に機能し、実行可能で、デバッグ可能なファイルです。例: あるプロジェクトに取り組んでいるときに、後で別のプロジェクトで使用できるメソッドのアイデアを思いつくことがあります。メソッドのドラ...