2020年08月05日
重複している用語の削除
先日の Trados 質問会ウェビナーからあっという間に 1 か月以上がたってしまいました。まだ在宅勤務が続いている私ですが、なぜか通勤していた頃より忙しく、時間はどんどん流れていきます。
この質問会の中で、用語ベースに関して「重複している用語を削除できないか」という質問がありました。私はいつも Glossary Converter を使って削除しているので、Trados 自体で削除できるならその方法をぜひ知りたいと思ったのですが、残念ながら、Trados には一括で削除する方法はないとのことでした。
最適化やフィルタの機能もチラッと紹介されていましたが、私が試したところでは、どちらを使っても重複している用語を削除することはできなそうでした。今回の記事では、この最適化とフィルタについてと、Glossary Converter を使って重複を削除する方法を紹介したいと思います。
質問会では個々の質問が 1 文程度で紹介されるだけなので、質問者の詳しい状況や背景は想像するしかありませんが、私が削除したいと思う理由は、用語認識ウィンドウが以下のようになってしまうからです。
この画像は以前の記事 用語ベースが巨大すぎる! で紹介したものです。こんな感じに認識されてもまったく役立ちません。表示の設定に「同じ用語は 1 回だけ表示する」というようなオプションでもあればいいのですが、そのようなものはなさそうなので、じゃあ、用語ベースのデータを物理的に削除しちゃおう、ということになります。
翻訳会社さんから提供される用語ベースには、本当の意味での用語が登録されている以外に、UI の文言が登録されていることがあります。ウィンドウ名やボタン名、エラー メッセージなどが「用語」として登録されてきます。重複が多くなるのは、こうした UI の用語ベースです。バージョンが違うとか、コンテキストが違うとか、いろいろ理由はあるでしょうが、重複が多すぎて用語認識できないのでは用語ベースを使う意味がありません。用語認識機能に 100% 頼ることはしませんが、自動で認識してくれる機能はやはり便利なので、使えるものならうまく使いたいと思っています。
SDL MultiTerm には「最適化」という機能があります。用語が認識されてこないなど何かおかしいときに最適化をすると問題が解決されることがあります。パッケージに設定されてきた用語ベースでも、「最適化してください」とメッセージが表示されることがあります。どのような処理が行われるのかはわかりませんが、最適化するように促されたら私は素直に最適化しています。私の経験からすると、この処理が失敗することはまずありません。対象の用語ベースを開いて、左下の [用語ベース管理] をクリックします。リボンに [最適化] ボタンが表示されるので、それをクリックするとウィザードが始まります。
ただ、私が試した限り、最適化をしても重複している用語は削除されませんでした。たぶん、エントリ数は変わらないと思います。巨大な用語ベースだと何か違うかもしれませんが、通常は、この機能で重複を削除することはできなそうです。
SDL MultiTerm には「Source contains synonyms」というフィルタが最初から用意されています。一見役立ちそうな名前のフィルタですが、これを使っても重複している用語を抽出することはできません。
Source contains synonyms を使うと、ソース言語に複数の用語が存在するエントリを抽出できます。上図では、英語から日本語を検索しているのでソース言語は英語です。このため、英語が複数あるエントリが表示されます。検索を反転させて日本語から英語にすると、ソース言語は日本語に変わります。こうなると、上図のエントリの日本語は 1 つなので、今度は表示されないことになります。
このフィルタは一括削除をするときなどにも使用できますが、私が削除したい「重複している用語」とは違います。上図のように、1 対多のエントリとしてまとまっているのであれば、削除する必要はありません。逆に、synonym が削除されては困ります。実は、上図のエントリは、Glossary Converter を使ってマージを行った結果のデータです。このように 1 対多のエントリにまとめながら、重複を削除する方法を次に説明します。
Glossary Converter のマージ機能は、複数の用語を 1 つのエントリにまとめる機能ですが、これを使えば重複している用語をきれいに削除できます。この機能については、以前の記事 【後編】マイクロソフトの用語集を使いたい でも紹介しました。
Glossary Converter のマージ処理では、基準にする言語を選択できます。どちらの言語を選択しても、両方の言語で用語が重複しているエントリは削除されます。上図では、「保存 - Save」と「保存 - save」のエントリがそれぞれ 2 回登場していますが、マージ後はそれらが 1 回にまとめられています。大文字小文字の違いが無視されないこともポイントです。
Glossary Converter の詳しい操作方法については、以前の記事 【後編】マイクロソフトの用語集を使いたい や、SDL のブログ Glossary Converter - Excelから用語ベースおよびTMXへの変換 を参照してください。
以前の記事のほぼ繰り返しですが、簡単に説明するとこんな感じです。
1. 用語ベース ファイル (.sdltb) が出力されるように設定する
[settings] > [General] タブで、「MultiTerm Termbase」を選択します。
2. マージの設定をする
[settings] > [Merging] タブで、[Merge Files] チェックボックスをオンにします。さらに、基準とするフィールドを入力します。(ここで入力しなかった場合は、実行時にプロンプトで尋ねられます。)
3. [settings] が下図のようになっていることを確認してから、用語ベース ファイル (.sdltb) をドロップする
Glossary Converter のマージはとても使いやすいですが、細かい制御はできません。いろいろな制御が必要な場合は、いったん Excel ファイルに変換して、Excel 上でデータを編集する方が便利です。
今回は、以上です。UI の文言を用語ベースに登録するという手法は、実際によく使われていますし、それなりに機能もします。でも、用語ベースは、そもそも UI のために作られているものではないですよね。UI 用に何かもっと良い手段があればいいのにといつも思いますが、ではどんなものが良いかと聞かれると、具体的にはよくわかりません。何か “革新的” な方法ってないものでしょうか。
Tweet
この質問会の中で、用語ベースに関して「重複している用語を削除できないか」という質問がありました。私はいつも Glossary Converter を使って削除しているので、Trados 自体で削除できるならその方法をぜひ知りたいと思ったのですが、残念ながら、Trados には一括で削除する方法はないとのことでした。
最適化やフィルタの機能もチラッと紹介されていましたが、私が試したところでは、どちらを使っても重複している用語を削除することはできなそうでした。今回の記事では、この最適化とフィルタについてと、Glossary Converter を使って重複を削除する方法を紹介したいと思います。
なぜ、重複している用語を削除したいのか
質問会では個々の質問が 1 文程度で紹介されるだけなので、質問者の詳しい状況や背景は想像するしかありませんが、私が削除したいと思う理由は、用語認識ウィンドウが以下のようになってしまうからです。
この画像は以前の記事 用語ベースが巨大すぎる! で紹介したものです。こんな感じに認識されてもまったく役立ちません。表示の設定に「同じ用語は 1 回だけ表示する」というようなオプションでもあればいいのですが、そのようなものはなさそうなので、じゃあ、用語ベースのデータを物理的に削除しちゃおう、ということになります。
翻訳会社さんから提供される用語ベースには、本当の意味での用語が登録されている以外に、UI の文言が登録されていることがあります。ウィンドウ名やボタン名、エラー メッセージなどが「用語」として登録されてきます。重複が多くなるのは、こうした UI の用語ベースです。バージョンが違うとか、コンテキストが違うとか、いろいろ理由はあるでしょうが、重複が多すぎて用語認識できないのでは用語ベースを使う意味がありません。用語認識機能に 100% 頼ることはしませんが、自動で認識してくれる機能はやはり便利なので、使えるものならうまく使いたいと思っています。
最適化
SDL MultiTerm には「最適化」という機能があります。用語が認識されてこないなど何かおかしいときに最適化をすると問題が解決されることがあります。パッケージに設定されてきた用語ベースでも、「最適化してください」とメッセージが表示されることがあります。どのような処理が行われるのかはわかりませんが、最適化するように促されたら私は素直に最適化しています。私の経験からすると、この処理が失敗することはまずありません。対象の用語ベースを開いて、左下の [用語ベース管理] をクリックします。リボンに [最適化] ボタンが表示されるので、それをクリックするとウィザードが始まります。
ただ、私が試した限り、最適化をしても重複している用語は削除されませんでした。たぶん、エントリ数は変わらないと思います。巨大な用語ベースだと何か違うかもしれませんが、通常は、この機能で重複を削除することはできなそうです。
フィルタ: Source contains synonyms
SDL MultiTerm には「Source contains synonyms」というフィルタが最初から用意されています。一見役立ちそうな名前のフィルタですが、これを使っても重複している用語を抽出することはできません。
Source contains synonyms を使うと、ソース言語に複数の用語が存在するエントリを抽出できます。上図では、英語から日本語を検索しているのでソース言語は英語です。このため、英語が複数あるエントリが表示されます。検索を反転させて日本語から英語にすると、ソース言語は日本語に変わります。こうなると、上図のエントリの日本語は 1 つなので、今度は表示されないことになります。
このフィルタは一括削除をするときなどにも使用できますが、私が削除したい「重複している用語」とは違います。上図のように、1 対多のエントリとしてまとまっているのであれば、削除する必要はありません。逆に、synonym が削除されては困ります。実は、上図のエントリは、Glossary Converter を使ってマージを行った結果のデータです。このように 1 対多のエントリにまとめながら、重複を削除する方法を次に説明します。
Glossary Converter でマージする
Glossary Converter のマージ機能は、複数の用語を 1 つのエントリにまとめる機能ですが、これを使えば重複している用語をきれいに削除できます。この機能については、以前の記事 【後編】マイクロソフトの用語集を使いたい でも紹介しました。
Glossary Converter のマージ処理では、基準にする言語を選択できます。どちらの言語を選択しても、両方の言語で用語が重複しているエントリは削除されます。上図では、「保存 - Save」と「保存 - save」のエントリがそれぞれ 2 回登場していますが、マージ後はそれらが 1 回にまとめられています。大文字小文字の違いが無視されないこともポイントです。
Glossary Converter の詳しい操作方法については、以前の記事 【後編】マイクロソフトの用語集を使いたい や、SDL のブログ Glossary Converter - Excelから用語ベースおよびTMXへの変換 を参照してください。
以前の記事のほぼ繰り返しですが、簡単に説明するとこんな感じです。
1. 用語ベース ファイル (.sdltb) が出力されるように設定する
[settings] > [General] タブで、「MultiTerm Termbase」を選択します。
2. マージの設定をする
[settings] > [Merging] タブで、[Merge Files] チェックボックスをオンにします。さらに、基準とするフィールドを入力します。(ここで入力しなかった場合は、実行時にプロンプトで尋ねられます。)
3. [settings] が下図のようになっていることを確認してから、用語ベース ファイル (.sdltb) をドロップする
Glossary Converter のマージはとても使いやすいですが、細かい制御はできません。いろいろな制御が必要な場合は、いったん Excel ファイルに変換して、Excel 上でデータを編集する方が便利です。
今回は、以上です。UI の文言を用語ベースに登録するという手法は、実際によく使われていますし、それなりに機能もします。でも、用語ベースは、そもそも UI のために作られているものではないですよね。UI 用に何かもっと良い手段があればいいのにといつも思いますが、ではどんなものが良いかと聞かれると、具体的にはよくわかりません。何か “革新的” な方法ってないものでしょうか。
Tweet
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/10092660
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック