テンプレートの編集 - 検索と置換スクリプト

複雑なテキストドキュメントは、memoQプロジェクトにインポートする前に少し変更する必要があるかもしれません。この変更または変換は前処理と呼ばれ、ドキュメントがインポートされる前に実行されます。

ドキュメントをインポート前に前処理する場合は、エクスポート後に元に戻す必要があります。そのため、ドキュメントをインポートする前に前処理を実行する場合は、エクスポート後に後処理を実行する必要があります。

ほとんどの場合、必要な操作は、ドキュメントに対していくつかの検索と置換動作を実行するだけです。そのために正規表現を使う必要がある場合もあります。Notepad++やUltraEditなどの開発者用テキストエディタを使用して、これらの変更を試すことができます。

これらをすべて行うには、memoQ 8.1以降のバージョンに含まれている検索と置換スクリプトを使用します。検索と置換スクリプトを使用すると、ドキュメントに対して一連の検索と置換動作を実行できます。プログラミングをする必要はありません。正規表現を使用して、構成ファイル内の検索と置換動作をリストする必要があります。これにより、C#やPowerShell、Pythonなどを学習する必要はなく、正規表現だけを学べばよいです。

テキスト (プレーンテキスト) ドキュメントのみ:検索と置換スクリプトは、プレーンテキストドキュメント、タブ区切りテキストドキュメント (CSVなど)、タグ付きドキュメント (XMLやHTMLなど)、またはソースコードドキュメント (JSON、.propertiesなど) など、人間が読めるドキュメントで動作します。

このトピックでは、次の内容について説明します:

  • memoQまたはmemoQ TMSで検索と置換スクリプトを設定する方法
  • 検索と置換の操作を記述する方法
  • プロジェクトテンプレートで検索と置換スクリプトを使用する方法:前処理 (インポート前)、後処理 (エクスポート後)、およびプロジェクト中 (インポート後など) の3つの使用例

memoQの準備:コンピュータで検索と置換スクリプトを設定する

コンピュータでは、検索と置換スクリプトがC:\Program Files\memoQ\FindReplace Toolフォルダにインストールされます。

旧バージョンでは、フォルダのパスが異なります:ご自分のmemoQバージョンのドキュメントを参照してください。

フォルダには、MemoQ.Tools.FindAndReplace.exeプログラムと、検索と置換ルールを含む.xmlファイルが含まれています。

find-and-replace-local-folder

memoQ 9.12以降がインストールされている場合は、自分のコンピュータで検索と置換スクリプトを使用できます。フォルダパスは後で使用する必要があるためメモしてください。

管理者アクセスが必要な場合があります:このフォルダを変更するには (検索と置換ルールを編集するなど)、管理者ユーザーのユーザー名とパスワードを入力する必要があります。十分なアクセス権がない場合は、WindowsのUser Account Controlサービスによって警告が表示されます。

memoQ TMSの準備:サーバーコンピュータで検索と置換スクリプトを設定する

管理者アクセスが必要:そのためには、Remote Desktopを使用してmemoQ TMSコンピュータにアクセスし、管理者である必要があります。memoQ TMSコンピュータに対する管理者権限がない場合は、組織のシステムオペレータに連絡して、このトピックを参照してください。

ドキュメント変換の設定:構成ファイルに検索と置換動作を記述します。

検索と置換ツールを使用するには、検索されたテキストの置換方法を知るための構成ファイルが必要です。

構成ファイルは、ツール自体と同じフォルダにある必要があります。したがって、実際の検索と置換の動作を設定するには、構成ファイルをサーバコンピュータにコピーするか、構成ファイルを編集する必要があります。

構成ファイルはハードコードされていません。検索と置換ツールを呼び出すときに、構成ファイルを選択できます。ただし、どの構成ファイルを選択した場合でも、そのファイルはサーバコンピュータのフォルダにある必要があります。

作業に必要なドキュメント形式ごとに個別の構成ファイルを使用できます。または、1つの構成ファイルを使用して、フォーマットと変換ごとに個別のセクションを記述することもできます。

プロジェクトテンプレートで自動操作を設定する場合は、検索と置換ツールを呼び出す必要があります。その後、構成ファイルそして構成ファイル内のセクションを選択する必要があります。

検索と置換構成ファイルはXMLファイルであり、1つのドキュメントフォーマットに対する検索と置換動作をリストします。複数のセクション、またはユースケース (usecase要素) があります。各セクションまたはユースケースは、次のいずれかの動作に関するものです:

  1. ドキュメントをインポートする前の変換 (例:PreImport)、
  2. ドキュメントのエクスポート後の変換 (例:PostExport)、または
  3. memoQ取り込み後のドキュメントの変換:ドキュメントのインポート後、前翻訳後、またはドキュメント完了後 (例:PostImport)。

これらのユースケースには任意の名前を付けることができます。たとえば、.xmlファイルにJSONのインポート/エクスポート変換と.poファイルのインポート/エクスポート変換を含めることができます。この場合、各ユースケースのセクションは、JSON-PreImportJSON-PostExportPO-PreImportPO-PostExportと呼ばれます。

インポート時に変換する場合は、エクスポート時に再び変換する必要があります:PreImport変換を実行する場合は、エクスポート後に反対の変換を実行する必要があります (PostExport)。

既にプロジェクト内にあるドキュメントに対して検索と置換を実行するにはどうすればよいですか?ドキュメントのインポート後にカスタム動作を設定すると、memoQ TMSはドキュメントをプレーン (非圧縮) memoQ XLIFFファイルにエクスポートし、指定したスクリプトを実行して、変更したXLIFFファイルをプロジェクトにインポートします。これらはすべてバックグラウンドで実行されます。

構成ファイルを一から作成する必要はありません。FindAndReplaceまたはFindReplace Toolフォルダには、サンプル構成ファイルが含まれています。独自の変換を設定するには、example_config.xmlファイルのコピーを作成するだけです。ファイル内の変換を自分の変換に置き換えます。

find-and-replace-script-one-use-case

この検索と置換ツールは、2種類の検索置換動作をサポートしています。プレーンテキストを置換することも、正規表現とプレースホルダを使用してテキストを置換することもできます。

それぞれのユースケースについて、いくつかの検索と置換のルールを作成することができます。各ルールはsearchItem要素に記述されます。searchItem要素のタイプ ("text"または"regex") は、プレーンテキストを置換するか、正規表現を使用するかを定義します。

searchItem要素には、searchExpressionreplaceExpression要素があります。searchExpression要素には、プレーンテキスト検索語または正規表現を1つだけ含める必要があります。replaceExpression要素には、searchExpressionの正規表現のプレースホルダを使用して、プレーンテキストの一節または置換ルールを1つだけ含める必要があります。

検索と置換ツールを使用するようにプロジェクトテンプレートを設定する

完了したら

検索と置換スクリプトをテストするには:設定したテンプレートからオンラインプロジェクトを作成し、処理するドキュメントをインポートします。ドキュメントが正常にインポートされた場合は、プロジェクトをチェックアウトし、編集するドキュメントを開いて変換が正しいかどうかを確認します。

または、ローカルプロジェクトテンプレートを使用している場合は:設定したテンプレートからローカルプロジェクトを作成し、処理するドキュメントをインポートします。ドキュメントが正常にインポートされた場合は、編集するドキュメントを開いて変換が正しいかどうかを確認します。

検索と置換動作を変更するには:プロジェクトテンプレートで使用する.xmlファイルを編集します。(オンラインテンプレートを使用している場合は、Remote Desktopを介してmemoQ TMSコンピュータにログインします。)必要に応じて検索と置換動作を追加または変更します。プロジェクトテンプレートを変更する必要はありません。さらに、このテンプレートを使用する既存のプロジェクトを開き、新しいファイルをインポートすることができます。その場合でも、memoQまたはmemoQ TMSは更新された検索と置換動作を使用します。

検索と置換動作の詳細を表示するには:上記の変換の設定セクションを参照してください。