2021年10月22日作成
2021年10月26日加筆修正
はじめに
ここでは『CD-ROM版 鎌倉遺文』(2008年、東京堂出版)について、UNIX系OS/intel X86系CPU上にWindows用アプリケーションの動作レイヤーを提供するWineを用いてmacOSで利用する方法と、実機のWindows・仮想環境のWindows・Wineを問わず表示領域やフォントのサイズ設定などを変更する方法を説明する。
1 『CD-ROM版 鎌倉遺文』 on Wine
10.15 Catalina以降のmacOSでは32bitアプリケーションの動作が排除されたため、Wine自体は64bit動作を実現したものの、その上で32bitのWindowsアプリケーションを実行することは不可能となっていた。しかしいち早く32bitアプリケーションの動作を実現した商用版のCrossOver Macや、そのコードをフィードバックしたWineskin Winery、Homebrewのwine-crossoverを使うことで、『CD-ROM版 鎌倉遺文』もmacOS上で使えるようになった。しかもこれはRosetta 2によってM1 Macでも動作してくれる。ただし『CD-ROM版 鎌倉遺文』はIEに依存して文書本文を表示するために、そのインストールが必須条件となる。また、それだけでは、下に掲げる動画で示すように注釈機能が正常に動作してくれない。そこでここでは、その正常動作までの手順を説明する。なお、Wineそのものについては基本的事柄を理解していることを前提とした説明となることを了承されたい。
①Wineskin Wineryないし、Homebrewのwine-crossoverとwinetricksをインストールする。
②Wineskin Wineryならラッパー作成時のエンジンで“WS11CX20.x.x”など“64bit”が名称に入っていない、その時点で最新のものを選ぶ。またHomebrewのwine-crossoverなら“WINEARCH=win32”を指定して、32bit版のWine環境を作成する。
*64bit版にしてしまうとwinetricksでのIEのインストールに手こずることになる。
③『CD-ROM版 鎌倉遺文』をWine環境にインストールする(Setup.exeを実行)。
④winetricksで以下のものをインストールする。
msxml3, ie8_kb2936068(ie8も同時に入る):文書本文の表示に不可欠
*ie8_kb2936068はie8だけ、またはie7でもよいが_kb2936068が最新。なおie6では動作しない
fakejapanese_ipamona:MS明朝/ゴシックなどを代替表示。UIと文書本文の適切な表示に必要
gdiplus:なくても動作はするがログではこれがないことによるエラーが出ているので解消しておく
*msimtfでも同様のエラーは出るので、気になるなら、msimtf.dll(32bit版)を入手してsystem32フォルダに入れておく
インターネット上ではWindows実機でのエラー修正用として、ライセンス的に問題ない様々なdllが入手可能
⑤winecfgの「ライブラリ」タグで以下の設定をする。
“jscript”を(内蔵版)に変更:動画で示した「注の表示で白紙ウィンドウが出る」を解消
新たに“ddrawex”のエントリーを作成し(無効化)に設定:動画で示した「注が出ない」を解消
*msimtf.dllも入れた場合、“msimtf”のエントリーも作成し(ネイティブ版)に設定
⑥Wine環境内の“drive_c/Program Files/株式会社東京堂出版/CD-ROM版 鎌倉遺文/style”フォルダ内の6個全てのxslファイルをテキストエディタで開いて以下のように編集する。
30行目の“MS ゴシック”を“IPA モナー ゴシック”に変更:文書名など情報部分と注釈のフォント
38行目の“MS ゴシック”を“IPA モナー ゴシック”に変更:文書本文のフォント
*WineはmacOS側のフォントも認識して使える。ここでフォントを明示的に指定しないと、そのどれかで代替表示される。しかしUIのフォントのサイズなどが不適切なためにUIそのものがウィンドウに収まり切らないようなことが起こる。また文書本文の縦表示では、動画の最後のケースのように、横表示を全体として90度回転させたような表示になってしまう。これらは技術的には、Windows実機からMS ゴシックを拝借すれば回避できる問題だが、自己所有の実機からでも他の環境への流用はライセンス的には望ましくない。またMS ゴシックは設計が旧くメッシュも粗い。個人的な所感だが、IPA モナー ゴシック/IPA モナー UIゴシックを使う方が奇麗に表示されると思う。トレードオフは、起動時に表示されるスプラッシュ画面のサイズがMS ゴシックのサイズに依存して計算されているのか、IPA モナー ゴシックで代替させると右横側に変な余白ができてしまうという、実用には全く差し障らない問題だけだ。なお、文書本文はフォントサイズによっては“IPA モナー 明朝”にする方が違和感がないかもしれない。
122, 124, 125行目を“//”でコメントアウトするか、消去する
*動画で示した「最初に選んだ注が固定される」を解消
【残る不具合】
以上で『CD-ROM版 鎌倉遺文』がWineでもほぼ正常に動作するようになるが、なお解消しない不具合もある。
1.キーワードの検索欄や「メモ登録」のメモ欄に入力した日本語文字列がきっかり半分までしか引き渡せず、途切れたり化けたりする。ところが、入力したい文字列に続けて、それと同数の任意の文字列を入力して確定すると、理由は不明なものの望む結果が得られる。たとえば「頼朝」を検索するには「頼朝○×」、「頼朝 院」と全角スペースを挟んだAND検索・OR検索ならば「頼朝 院○×△□」。また「この文書は後で検討する。」というメモなら「この文書は後で検討する。○×△□○×△□○×△□」のように。
*この問題はASCII文字列では生じないようなので、ホスト/ゲスト間の文字コードの内部処理のズレに関わるものであろうと推定するが、原因は特定できていない。ただし、同じ問題はLinuxでも発生する一方、他のアプリケーションでは発生しない。よってmacOS限定やWineの日本語入力全般ではなく、〈Wine上での『CD-ROM版 鎌倉遺文』〉の問題と言えそうだ。現状では、仮想環境では不可能な〈ホスト環境とのシームレスなIM運用〉とのトレードオフとなる。入力したいものと同数の文字列を得るには同じものを重ねるのが手っ取り早く、それが短めの検索ワードならば「頼朝」を「頼朝頼朝」と2回入力するという程度の手間で済むことだ。だが、やや長めのメモとなると、まずテキストエディタで書いたものを、二度続けてコピーするというような対処となってしまい、少々煩雑だ。できれば解決を図りたいが、今のところ手掛かりがない。
2.文書表示ウィンドウが開いたままだと、アプリ側の「ファイル」メニューから「終了」しても、アプリをロードしていたWine自体のプロセスは終わらず、macOSのメニューバーから“wine32on64-preloader”を「終了」させる必要がある。
2 『CD-ROM版 鎌倉遺文』の表示領域・フォントサイズ変更
『CD-ROM版 鎌倉遺文』は「1024x768pixel以上」のディスプレイを動作条件とし、文書本文の縦方向の表示幅は534pixelに固定されている。また本文表示のフォントサイズは標準の「中」で11pt・「小」で10pt・「大」でも13ptに過ぎない。これは2008年当時の環境では適切だったが、モバイルノートPCでもFull HD(1920x1080pixel)が一般化しつつある現状では、如何にも狭く文字も小さい。これらの設定は“Program Files¥株式会社東京堂出版¥CD-ROM版 鎌倉遺文¥style”フォルダ内の6個のxslファイルによって定義されている(記述言語はJavaScript及びそのMicrosoftによる独自拡張であるJScript。このJScriptの使用がIE依存の原因となる)。そして幸いなことにその実体はテキストファイルであるため、容易に編集・変更が可能なものだ。ここでは、その編集箇所と方法について説明したい。なおこれらのファイルは“kibunbody_aaa_zzz.xsl”のようなファイル名になっており、“aaa”の部分が“columnar”(文書縦表示)/“horizon”(横表示)、“zzz”の部分が“large”(文書フォント・大)/“mid”(中)/“small”(小)で計6種の組み合わせになっている。
①フォントサイズの定義箇所
31行目が文書名など情報部分と注釈のフォントサイズ。32行目が行の高さで、フォントサイズ+1ptが適切。
*私は「大」・「中」でフォントサイズ14pt/行高15pt、「小」は11pt/12ptとした。
42行目が文書本文のフォントサイズ。
*私は「大」20pt・「中」15pt、「小」11ptとした。
38行目が文書本文のフォントの種類。大きさによっては“MS 明朝”の方が特に縦表示では違和感がないかもしれない。
(Wineの場合「1」で示したように“MS ゴシック”は“IPA モナー ゴシック”、“MS 明朝”は“IPA モナー 明朝”とする)
*MS 明朝/ゴシックは設計が旧く粗いので、大きなptならWindows実機でもIPAフォント指定の方が奇麗かもしれない。
②表示幅の定義箇所
《columnarの場合》
ⓩ(全体の幅)とⓐⓑⓒⓓ(この例だと331行目・332行目の2ケ所)は縦の表示幅であり数値は揃ってなければならない。デフォルトでは534px。
“534px”を一括置換すれば6ケ所全てを漏れなく変更できる。
*スクロールせずにウィンドウにぴったりと収まるのは580px。
私は「大」「中」1200px、「小」580pxとした。
ⓔは文書情報欄の幅。私は「大」「中」400px、「小」は270pxのままとした。
《horizonの場合》
ⓩ・ⓐⓑⓒⓓとも“hight”ではなく“width”のデフォルトの580pxを変更する。
*私は「大」1200px、「中」700px、「小」は580pxのままとした。
ⓔに相当するところは“horizon”では自動調整なので定義変更は不要。
★なお以上の行番号はファイルによって微妙にズレている。
③注釈の枠サイズの定義箇所
注釈のフォントサイズを変更したら、その枠のサイズの調整も必要となる。
*私は「大」「中」では16を全て20に変更。「小」は16のままとした。
【調整結果の例】
左がデフォルトの「大・縦」・右が調整後の「大・縦」。調整後のものはウィンドウを初期値から大きくしてやらないと全体を一度に表示できない。『CD-ROM版 鎌倉遺文』はウィンドウ・サイズの変更を記憶できないようで、起動し直すとサイズが初期値に戻ってしまい、その度にウィンドウ・サイズを変更せねばならないのは少し億劫かもしれない。