フリーソフトで快適TEI/XML(Oxygenを使わない道)

TEI/XMLは、基本的には裏側で勝手にタグがついたりそれに対応した表示が勝手に行われてくれるものであり、個別には色々なソリューションがあります。 しかし一方で、「どういうタグをつけるか」「どういう風に構造化するか(=それにあわせてどういうタグをどう使うか)」といったことを 考える際には、今のところ、XMLを直に書いた方がやりやすいです。それを支援してくれる強力なツールとしてOxygen XML Editorというものがあり、 その簡単さと便利さゆえに、世界中どこに行っても、TEI/XMLの入門者向けにはOxygen XML Editorを使う、という風になっています。

しかしながら、特に発展途上国の研究者には、地元にTEIを広めるにはOxygenは高すぎる、そもそも個人で有料ソフトウェアを購入する という習慣がない、というようなことを言われたりしますし、我々としても、やはり節約できるところはなるべく節約したいところです。 そこで、高機能テキストエディタでなんとかならないのか…と思っていたところ、異体字セレクタセレクタを作っている大学院生の王一凡さんが VScode(マイクロソフト製のフリーの高機能テキストエディタ。プログラミングで最近非常によく使われている)でのやり方を調べてくださいました。こちらにその概要があ りますので、これをみただけでできる人はそのまま取り組んでみてください。ただ、こちらは概要であり、私がやってみても結構とまどったので、 もう少しわかりやすくなるように、その導入手順をもう少し詳しく、以下に説明してみたいと思います。

作業の流れは以下のようになります。

  1. VSCodeのインストール
  2. Javaのインストール  2-1. Javaホームの設定
  3. XMLプラグインのインストール
  4. 設定ファイルの編集
  5. 日本語TEIスキーマの組み込み

では、さっそくやってみましょう。

1. VSCodeのインストール

VSCodeの本家サイトからインストールしてください。 これは、なんてことないですね。ここでつまづくようだと、色んな意味でかなり厳しいですが、大丈夫だと思います。

2. Javaのインストール

Javaは、Mac やWindows上に仮想マシンを作って、その上で共通言語のプログラムを動かせるもので、一度プログラムを書けば 色んなOS上にそのまま対応でき、大規模共同開発にも向いているため、広く使われています。Oxygen XML EditorもJavaですし、 最近は、銀行のシステムでも使われているそうです。ここでは、VSCodeのプラグインがJavaの仮想マシン上で動くものに なっているため、以下のリンクからJavaの仮想マシンをインストールします。

Javaのインストール頁

さて、インストールができたら、次に、少し設定をする必要があります。 「Javaがどこにあるか」をコンピュータがぱっと簡単に探せるようにしておくのです。それが 次項です。

2-1. Javaホームの設定

Javaホームの設定は、微妙にややこしいです。まず、Javaがどこにインストールされているかを確認する必要があります。

Windowsの場合は、以下のサイトを見ながら「JAVA_HOME」を設定してください。

www.javadrive.jp

(なお、ここでは「どこのフォルダにJavaがインストールされたか」を確認する必要があります。 たとえば筆者のパソコンでは、C:\Program Files\Java\jdk-13.0.1 となっています。)

Macの場合は、「どこのフォルダにJavaがインストールされたか」を簡単に確認できるようになっているそうです。 全体の作業としては「インストール場所を確認」⇒「確認したパス(Path)をJAVA_HOMEとして設定」という風になります。 たとえば以下のサイトをみて設定してみてください。

qiita.com

3. XMLプラグインのインストール

さて、いよいよ、VSCodeのXMLプラグインのインストールです。 VSCodeを開いた状態で、以下の図のように、画面左側のメニューの「Extension」をクリックしてから、検索窓に「xml」と入力してみてください。

f:id:digitalnagasaki:20200214024406p:plain

そうすると、「Red Hat」という制作者(提供者?)が付された「XML」というプラグインが、おそらく最上位に表示されるはずです。(上の図でも出てますね。)そうしましたら その横にある「Install」というボタンをクリックしてインストールしてください。

これでインストールは完了するはずです。

  1. 設定ファイルの編集

次に、JAVA_HOMEの設定の次に難しい作業に入ります。 設定ファイルの編集です。

settings.jsonというファイルを編集すればいいのですが、このファイルの場所を確認するのが微妙にややこしいです。

以下の図のように、ExtensionでXMLを表示しておいて(これは上でやりましたね)、設定ボタンをクリックします。そうするとサブメニューが開きますので、 そこで「拡張機能の設定を構成します」を選んでください。

f:id:digitalnagasaki:20200214025003p:plain

そうすると、「設定」というタブが以下の図のように開きますので「拡張機能」をクリックしてからさらに、「XML Configuration」をクリックして選択してください。

f:id:digitalnagasaki:20200214025256p:plain

ここで、このタブの内容を下の方へと見ていくと「settings.jsonで編集」というリンクが時々出てきます。そのいずれかをクリックするとsettings.jsonが開きます。ここに JAVA_HOMEで設定した値を入力するのです。

入力する内容は、以下のURLに書いてある通りですのでそちらをご覧ください。

scrapbox.io

たとえば私のPC環境ですと、settings.jsonの内容は以下のようになります。

{
    "terminal.integrated.shell.windows": "C:\\Windows\\System32\\wsl.exe",
    "window.zoomLevel": 2,
    "xml.java.home": "C:\\Program Files\\Java\\jdk-13.0.1",
    "workbench.colorTheme": "Default Light+"

}

これで、VSCodeを再起動すれば、XMLプラグインが使えるようになっているはずです。

次に、(日本語)TEIスキーマの割り当てについても確認してみましょう。

5. 日本語TEIスキーマの組み込み

日本語TEIスキーマを組み込むと、タグやタグの属性の説明を日本語で確認できるようになります。これには、 日本語TEIスキーマを準備するという作業と、それを、TEI/XMLの文書に適用させるという作業が必要になります。 前者はTEIの基本であるRomaからダウンロードできます。が、これも手順がちょっと ややこしいので、少しやり方を書いておきます。

5-1. 以下のサイトにアクセスする

Roma: generating customizations for the TEI

5-2. 「Reduce」にチェックボックスを入れてから「Start」ボタンをクリック

5-3. 「Language」タブをクリックして選択してから「日本語」のチェックボタン(radio)にクリックして選択

5-4. 「Schema」タブをクリックしてから、表示されるセレクトメニューのうち、「W3C schema (in ZIP Archive)」を選んでから「Generate」ボタンをクリックしてください。

そうすると、zipアーカイブされたファイルが手に入ります。これをしかるべきところに保存して、zipを元に戻します。

zipを元に戻すと、フォルダができて、その中にいくつかのファイルが入っているという形になると思います。これはそのままにしておいてください。

次に、ダウンロードしたスキーマファイルをどうすればいいか、については、上述の王一凡さんの頁にてご確認ください。(後ほど、元気が残っていたらこの先ももう少し解説します…)