ファイルの関連付けの設定

ローカル・ファイルの場合、IBM Z® Open Editor は、デフォルトとカスタマイズされた files.associations プロパティー設定の両方に従って、ファイル拡張子に基づいてエディターで開かれているファイルの言語を識別します。 これは、異なるプロパティー・セット zopeneditor.<language-id>.includeFileExtensions を使用することによって、インクルード・ファイルにも適用されます。

リモート・ファイルの場合、MVS™ データ・セットにはファイル拡張子がないため、IBM Z Open Editor は zopeneditor.datasets.<language-id>Datasets プロパティー設定を使用して、MVS データ・セット用にエディターを構成します。

ローカル・ファイルの関連付け

ファイルの関連付けの追加

IBM Z Open Editor は、複数の言語をサポートする VS Code に自らを登録します。 また、各言語について、以下の表に示すように、デフォルトで登録済み言語にマップされるファイル拡張子のセットも定義します。

言語 VS Code の言語 ID デフォルトのファイル拡張子
Enterprise COBOL cobol .cbl .cpy .cob .copy .copybook .cobol .cobcopy
Enterprise PL/I pl1 .pli .pl1 .pc .pci .plinc .pcx .inc .include
Z High Level Assembler hlasm .s .assemble .asm .hla .hlasm
REXX rexx .rexx .rex
JCL jcl .jcl .cntl .proc

表 1. IBM Z Open Editor の言語とファイル拡張子のデフォルト・マッピング

これらのいずれかのファイル拡張子のファイルを Z Open Editor で開くと、VS Code によって、ステータス・バーの右下にある言語セレクターに、マップされた言語が表示されます。 開いているエディターを、VS Code で使用可能なその他の言語に一時的に切り替える場合は、このバーをクリックして、目的の言語を入力します。

これらのいずれかの言語のデフォルトに加えてファイル拡張子を使用する場合は、以下のいずれかの方法を使用して、ユーザー設定またはワークスペース設定で自分で定義する必要があります。

  • オプション 1: VS Code の「ユーザー設定 (Preferences)」UI の使用

    1. **「ファイル (File)」>「ユーザー設定 (Preference)」>「設定 (Settings)」**をクリックして、ユーザー設定またはワークスペース設定に切り替えます。

      ヒント: 現在のプロジェクトにローカルにマッピングを定義し、それをプログラムとともに SCM に保管する場合は、ワークスペース設定に切り替えます。

    2. 上部の検索バーで、associations と入力します。 これにより、定義されている現行のデフォルト以外のファイルの関連付けのリストが含まれる、VS Code の**「ファイル: 関連付け (Files: Associations)」**設定が表示されます。

      注: 表 1 に表示されているデフォルトの関連付けは変更不可のため、ここにはリストされません。

    3. 「項目の追加 (Add Item)」ボタンをクリックして、別の項目を追加します。 キー (*.cp1 などの記号 *. で始まるファイル拡張子) と、表 1 にリストされた言語 ID であるの項目を求めるプロンプトが表示されます。

  • オプション 2: settings.json ファイルの編集

    VS Code の「ユーザー設定 (Preferences)」UI を使用する代わりに、ユーザー設定またはワークスペース設定の JSON ファイルを編集することもできます。 形式は次のとおりです。

    "files.associations": {
        "*.cp1": "cobol"
     }

    完全なグロブ・パターンをキーとして入力できます。 このような柔軟なグロブ・パターンを使用すると、ファイル拡張子と任意のサブストリングのマッピングを使用して、ファイルを言語にマップすることができます。

ファイルの関連付けの削除

"*.COBOL*": "cobol", など、始動時に IBM Z Open Editor によって追加された一部の項目を削除して保存すると、後で再表示されることがあります。 これを防止するには、この動作の原因となるリモート・ファイルの関連付けの管理について、以下の詳細情報を参照してください。

files.associations からいずれかのマッピングを削除できるようにするには、まずそれらをデータ・セットの設定およびインクルード・ファイル拡張子の設定から削除する必要があります。 これは、IBM Z Open Editor がこれらの 2 つの設定を自動的に files.associations に追加して、その機能をサポートしようとするためです。

インクルード・ファイルの関連付けの定義

インクルード・ファイルは、ローカル・ファイル・システムに配置することも、リモート MVS データ・セットに配置することもできます。 COBOL コピーブックなどのインクルード・ファイルを検索する場所を IBM Z Open Editor に指示するプロパティー・グループを定義した後、ローカルに保管されたインクルード・ファイルの場合は、各言語の有効なインクルード・ファイルを識別するデフォルトのファイル拡張子を定義する必要があります。 有効なファイル拡張子がないと、IBM Z Open Editor はインクルード・ファイルを検出できず、ファイルを正しく編集用に開くことができません。

以下の方法のいずれかを使用して、独自のファイル拡張子をカスタマイズできます。

  • オプション 1: VS Code の「ユーザー設定 (Preferences)」UI の使用

    1. **「ファイル (File)」>「ユーザー設定 (Preference)」>「設定 (Settings)」**をクリックして、ユーザー設定またはワークスペース設定に切り替えます。

      ヒント: 現在のプロジェクトにローカルにマッピングを定義し、それをプログラムとともに SCM に保管する場合は、ワークスペース設定に切り替えます。

    2. 設定エディターの左側で、**「拡張機能 (Extensions)」グループを展開して、「IBM Z Open Editor」**のエントリーを選択します。

    3. 右側にスクロールして、使用可能な Z Open Editor の各種設定をすべて表示します。 インクルード・ファイル拡張子の構成に使用できる設定は 3 つあります。

      • Cobol: インクルード・ファイル拡張子 (Cobol: Include File Extensions)

      • Hlasm: インクルード・ファイル拡張子 (Hlasm: Include File Extensions)

      • Pl1: インクルード・ファイル拡張子 (Pl1: Include File Extensions)

      それぞれで、デフォルトのセットで取り込まれた、現在登録されているファイル拡張子のリストが表示されます。

    4. **「項目の追加 (Add Item)」**ボタンをクリックし、.cp1 などのドット文字で開始する拡張子を入力します。

    5. **「OK」**ボタンをクリックして保存します。 新しい拡張子も自動的に files.associations 設定に追加されていることがわかります。この設定については、ファイルの関連付けで説明しています。

    6. 拡張子をリストから削除しても、現在のところ、IBM Z Open Editor によってこの拡張子が files.associations から削除されることはありません。 その場所で、自分で削除する必要があります。

  • オプション 2: settings.json ファイルの編集

    VS Code の「ユーザー設定 (Preferences)」UI を使用する代わりに、ユーザー設定またはワークスペース設定の JSON ファイルの以下のプロパティーを編集することもできます。

    • zopeneditor.cobol.includeFileExtensions

    • zopeneditor.hlasm.includeFileExtensions

    • zopeneditor.pl1.includeFileExtensions

    以下の例では、.mac および .cpysrc をデフォルトの HLASM インクルード・ファイル拡張子のセットに追加することができます。

    "zopeneditor.hlasm.includeFileExtensions": [
      ".s",
       ".assemble",
       ".asm",
       ".hlasm",
       ".hla",
       ".mac",
       ".cpysrc"
     ]

構成が完了すると、IBM Z Open Editor は、プロパティー・グループで指定された場所で、これらの新しい拡張子を持つインクルード・ファイルを検出できます。 これらのファイルを開くと、割り当てられた言語のインクルード・ファイルとしてエディターで正しく開くことができます。 これは、COBOL および PL/I の場合に、ファイルが完全なプログラム・ファイルではなくインクルード・ファイルとして正しく構文解析されることも意味します。 特定の相違点について詳しくは、ここを参照してください。

リモート・ファイルの関連付け

IBM Z Open Editor は、リモートの z/OS® の場所からプログラム・ファイルを編集するために、Zowe™ Explorer と統合し、拡張機能を提供します。 例えば、Zowe Explorer の MVS エクスプローラーで COBOL プログラムを見つけ、IBM Z Open Editor で編集するためにそこから直接 COBOL プログラムを開くことができます。 しかし、MVS データ・セットにはファイル拡張子がありません。ファイル拡張子は、VS Code がエディターで開かれたファイルの言語を識別するために不可欠です。 したがって、IBM Z Open Editor は、zopeneditor.datasets 設定を使用して、MVS 用にエディターを構成します。

IBM Z Open Editor で定義された zopeneditor.datasets の VS Code 設定のファミリー内で、COBOL、PL/I、または HLASM プログラム、コピーブック、インクルード・ファイル、および JCL を含めることが予想される MVS データ・セットの名前パターンを指定できます。 構成後、エディターで Zowe Explorer を使用してこれらのデータ・セットのメンバーを開くと、それらは、指定されたタイプのファイルと見なされます。 IBM Z Open Editor は、カスタマイズされた zopeneditor.datasets 設定を VS Code の files.associations 設定にマップすることによって、ファイル・タイプを認識しました。

以下のいずれかの方法を使用して、MVS データ・セットの名前パターンを編集することができます。

  • オプション 1: VS Code の「ユーザー設定 (Preferences)」UI の使用

    1. **「ファイル (File)」>「ユーザー設定 (Preference)」>「設定 (Settings)」**をクリックして、ユーザー設定またはワークスペース設定に切り替えます。

      ヒント: 現在のプロジェクトにローカルにマッピングを定義し、それをプログラムとともに SCM に保管する場合は、ワークスペース設定に切り替えます。

    2. 設定エディターの左側で、**「拡張機能 (Extensions)」グループを展開して、「IBM Z Open Editor」**のエントリーを選択します。

    3. 右側にスクロールして、使用可能な IBM Z Open Editor の設定をすべて表示します。 データ・セット名の構成に使用できる設定は 4 つあります。

      • データ・セット: Cobol データ・セット (Datasets: Cobol Datasets)

      • データ・セット: Hlasm データ・セット (Datasets: Hlasm Datasets)

      • データ・セット: Jcl データ・セット (Datasets: Jcl Datasets)

      • データ・セット: Pl1 データ・セット (Datasets: Pl1 Datasets)

      それぞれで、デフォルトのセットで取り込まれた、現在登録されている名前のリストが表示されます。

    4. **「項目の追加 (Add Item)」**ボタンをクリックして、新しい名前パターンをリストに追加します。

      ヒント: デフォルトのリストに示されているように、MVS データ・セット名へのマッピングがあいまいにならないようにドットを含めることをお勧めします。

    5. **「OK」**ボタンをクリックして保存します。 新しい名前も、* のワイルドカードが末尾に追加されて、files.associations 設定に自動的に追加されていることがわかります。この設定については、ファイルの関連付けで説明しています。

    6. エントリーをリストから削除しても、現在のところ、IBM Z Open Editor によってこのエントリーが files.associations から削除されることはありません。 その場所で、後で自分で削除する必要があります。

  • オプション 2: settings.json ファイルの編集

    VS Code の「ユーザー設定 (Preferences)」UI を使用する代わりに、ユーザー設定またはワークスペース設定の JSON ファイルの zopeneditor.dataset プロパティーのファミリーを編集することもできます。

これらの設定の結果は、例えば、MVS で IBMUSER.SAMPLE.COBOL のメンバーを開くと、そのメンバーの内容が COBOL エディターで開かれ、PL/I、HLASM、および JCL の場合も同様に開かれるようになりました。 以下は、設定でカスタマイズできるデフォルト値です。

"zopeneditor.datasets.cobolDatasets": [
    ".COBOL",
    ".COB",
    ".COBCOPY",
    ".COPYBOOK",
    ".COPY"
],
"zopeneditor.datasets.jclDatasets": [
    ".JCL"
],
"zopeneditor.datasets.pl1Datasets": [
    ".PL1",
    ".PLI",
    ".INC",
    ".INCLUDE"
],
"zopeneditor.datasets.hlasmDatasets": [".ASM"]

上記の "zopeneditor.dataset" プロパティーを使用する代わりに、関連付けの配列を直接指定することもできます。 例えば、以下が必要です。

"files.associations": {
  "*.COBOL*": "cobol",
  "*.COB*": "cobol",
  "*.COBCOPY*": "cobol",
  "*.COPYBOOK*": "cobol",
  "*.COPY*": "cobol",
  "*.PL1*": "pl1",
  "*.PLI*": "pl1",
  "*.INC*": "pl1",
  "*.INCLUDE*": "pl1",
  "*.JCL*": "jcl",
  "*.ASM*": "hlasm"
}

ここでも、COPYBOOK データ・セットを hlasm データ・セットとして開く場合は、この設定でそれを指定することができます。

その結果、Zowe Explorer では、これらの設定を使用して、これらのパターンに一致する MVS データ・セットにナビゲートし、メンバーを選択することができます。選択したメンバーは、マップされた言語で IBM Z Open Editor に開かれます。 files.associations マッピング・パターンのため、これを実現するために、Zowe Explorer は、マップされたデータ・セット名のパターンも含まれる一時ディレクトリーにファイルをダウンロードし、正しい言語で開きます。 これらの変更されたローカル・ファイルを保存すると、Zowe Explorer は自動的にそれらのファイルを MVS に書き込みます。 エディターを終了すると、Zowe Explorer は、ソース・コードのセキュリティーのため、すべての一時ファイルを削除します。