Oxygenの自動整形機能においてlbタグの前で改行する方法

概要

本記事では、TEI/XMLを便利に扱うことができるツール「Oxygen XML Editor」において、自動で整形・インデントするルールを変更する方法について紹介します。

特に、行の始まりを示すlbタグの前で改行されるようにすることを目指します。

 

背景

TEI/XMLを便利に扱うことができるツール「Oxygen XML Editor」において、自動で整形・インデントする機能があります。下図の上部に示しているアイコンです。

 

f:id:nakamura196:20210808060920p:plain

 

本機能を使うことにより、一定のルールに基づいて整形されますが、このルールを編集したくなる場合があります。

例えば、上図は『校異源氏物語』のテキストデータです。行の始まりを示すlb(line beginning)タグがありますが、(私の環境の)デフォルトの整形ルールでは、lbタグが行の途中に入る形で整形されます。

本テキストデータを機械的に処理する際には問題ありませんが、特に人手でテキストデータを作成・編集する際に、lbタグの前で改行されてほしい、というニーズがありました。

 

整形ルールの編集

Oxygenの「オプション」というメニューから以下の画面を開き、画面左部のナビゲーションから「エディタ」 > 「整形」 > 「XML」を選びます。

下図は、私のデフォルト設定を示します。画面右下の「デフォルト設定」ボタンから、いつでもデフォルト設定に戻すことができます。

 

f:id:nakamura196:20210808060748p:plain

 

これに対して、下図の設定変更を行います。

まず、画面中央部の「要素 間隔」という項目において、右端の「改行」を選び、右下の「追加」ボタンから、lb要素を追加します。この時、「前」という列にチェックが入っていることにより、自動整形時に、lbタグの前で改行されるようになります。

次に、「整形」という項目において、「テキストをそのまま維持」にチェックを入れます。これにチェックを入れないと、マークアップの方法によっては、自動整形するたびに、lbタグの前に空行が入ってしまうことを確認しました。

その他の設定については、必要に応じて試してみてください。

 

f:id:nakamura196:20210808061212p:plain

 

結果

上記の設定を行なった上で自動整形を行うと、下図のように、lbタグの前で改行されるようになりました。

 

f:id:nakamura196:20210808061054p:plain

 

特に人手でTEI/XMLファイルを作成・編集する際に、本記事がお役に立てば幸いです。