[HOME]

漢文エディタ

    kanbun_editor_20200626.zip     更新履歴 ・ 紹介記事(pdf)

  実用例は「古典漢文」のページ等を参照。
 MS-Wordで整形した文章の例はこのサイトのTOPページの「文則」を参照。


漢文エディタ入力画面

漢文エディタ入力画面

 白文への変換例
白文への変換例

 書き下し文への変換例


 HTMLへの変換例
HTMLへの変換例

 Manaエディタに自作マクロを登録し、整形した例
Manaエディタに自作マクロを登録し、整形した例

☆変換例——縦書きHTMLを前提にしているので、現在縦書きに対応しているInternetExplorer, MicrosoftEdgeで表示を確認してほしい。
なお、≪IPA明朝≫等をインストールしておくと、表示がとてもきれいである。また、表示面ではやや劣るが、文字種では≪IPAmj明朝≫が抜群のものである。



【『漢文エディタ』の主な使い方】  同一の入力データから各種形式に変換。データの蓄積と随時利用ができる。

  《関連画像は、このページ下部を参照。》

シート上の「漢文入力フォーム」ボタンをクリックして入力ウィンドウを表示。
上記ヘルプの入力方法を参照して、まずは入力し、ある程度の分量がまとまったら「登録」ボタンを押す。(くれぐれもESCボタンを2回押さないこと。フォームに入力した内容が消えてしまう。
難字(環境依存文字)があるとメッセージが出るので、「?」の部分にその文字をもう一度入力して「訂正保存」ボタンを押す。そうすると再び「プロシージャの呼び出し、または引数が不正です」というエラーメッセージが出るので「終了」ではなく「デバッグ」ボタンを押す。(「終了」を押すとEXCELが見えなくなってしまう。)その時、VBエディタ画面になるので、上のツールバーから「■」アイコンの「リセット」ボタンを押す。それから「」(ユーザーフォームの実行)ボタンを押すと復帰する。面倒な手続きだが、難解字はきちんと入力されている。(または、漢文エディタ上で「文字実体参照」に変換して登録してもよいが、私は上記の方法で登録している。最後は、エディタMana2に書き出して自作スクリプト(ent_ref_NewGulim.vbs)で文字実体参照に再変換してShift-JISで保存している。)
〈起動〉〈入力〉〈保存〉の作業に合わせて、個別または全体のデータをバックアップするように工夫している。

各種変換は、「データ操作」のタブから行う。

 @白文(原文)は、「白文」ボタンを押す。
 A訓読漢文は、「訓読漢文」ボタンを押す。→これはそのまま「MS-Word」ボタンでワードに書き出すとよい。
 B書き下し文は、「書き下し文」ボタンを押す。
 C縦書きHTMLへの書き出しは、「HTML」ラベルをクリックして「TAG(IE)」を押す。

→それぞれ変換したら、下の「Clip」ボタンでクリップボードに送り、エディタ等に貼り付けることができる。縦書きHTMLは、上記のような縦書き用の枠に貼り付けるとよい。(現在のところ、対応ブラウザはtrident layout engineを利用したIEかLunaScapeになってしまう。)
 その他、データの検索・結合・印刷・新旧字体や平仮名カタカナの相互変換・ワードとの連携はもとよりテキストファイルやTEXへの書き出し等、いろいろなことが可能である。
 データは(MyDocument等に)日付フォルダを作り、バックアップするほか、フリーズ時にも本体〔I列〕に入力記録が残るようにしてあるので、本体を再起動すれば、たいていデータは残っている。ただし、「本文」欄はMS-Excelのテキストボックス・ツールなので「Esc」キーを押すのは禁物。保存前にキーを2度押すと、入力途中の全文が消えてしまう。











HTMLへの変換例〕



TeXへの変換例〕



MS-Wordでの表示−これはUnicodeの訓点で表示した例。色は指定可。〕



〔書き下し文の変換例〕                  ※どの変換でも新旧両様の漢字で表記することができる。
                             (「データ操作」−「変換2」より、変換後のテキストを選択してから操作。)


MS-Wordへの書き出し指定〕



【更新履歴】 〔TOP〕
◇2012〜2015の更新履歴を別ファイルにした(物置2、圧縮ファイル)。(2015.12.27)◇白文変換について難解字(〓=jの表記を少し変えた。(2016.3.21) ◇Word書き出しの表示と外観を少し変えた。(2017.1.4)◇カード送りボタンを他の操作ボタンと離した。誤操作で入力中のデータが消えないためである。(1.9)◇再読文字関係の調整など。(2019.4.3)◇再読文字から上に返る場合の変換、一二点の組み合わせ構文の変換の調整、助字のかな表記等の変更など。(2020.1.13)◇「白文」の変換において、漢文の繰り返し記号(〻)の置換に成功した。これにより、JISやシフトJISに符号化されていない文字についても、16進タグ(文字実体参照)から検索・置換等の操作が可能になった。これについてのVBAコードは、PROGRESSに記した。(1.16)◇データ登録の仕様を変更した。「訂正保存」の必要はなくなったので、一回で入力できる。また、文字のエンコードとデコードを選択範囲の文字すべてに対して行うようにし、「編集」タブに集約した。(1.17)◇エンコード、デコードのタグを修復した。一二点の変換を微調整した。(1.23)◇データのバックアップがうまくできずにいたのを修正した。書き下し文の変換は、今はほぼ順調に行える。(1.31)◇〳〵や〴〵など、どういうわけか??と表記されてしまう問題を解決した。少し手間はかかるが、データをいったんユニコード16進文字参照に改め、再度デコードするというやり方である。また、訂正を「登録」ボタンで行えるように改善した。(2.2)◇ルビや注記の中で二の字点や踊り字が??に化けてしまうのを改めた。vbHiraganaやvbKatakanaを使って置換するのではうまく行かない。StrConvを使って統一した。(2.11)◇上下点の変換で不の処理が欠けていたのを修正した。(2.12)◇甲乙点の修正等。(2.13)◇書き下し文変換の細部の修正。(2.15)◇バックアップファイルをデスクトップに保存する動作を含め、データ保存の動作を改善した。(2.16)◇中黒などでつながった長い目的語の変換で無限ループに入ってしまう箇所があったが、回数制限を掛けて、アプリケーション自体がハングアップしないように改めた。また、入力画面で文字を探す際に使える検索画面の表示を改善した。再読文字の変換は現在なお不十分なところがあるが、少しずつ改良している。(2.19)◇バックアップの保存がなお不十分だったのを改めた。簡潔で確実になった。また、訂正保存の際、ルビがカタカナに戻ってしまうのを修正した。(2.22)◇書き下し変換の細部の微調整を行った。(2.28、3.2)◇再読文字・接続詞・終尾詞の変換を微調整、変換データのコピー等。(3.3)◇竪点(ハイフン)の変換を調整した。(3.4)◇踊り字(ゝゞヽヾ)のHTML変換を調整した。(3.6)◇踊り字(〳〵)・二の字点(〻)の白文・HTML変換を調整した。どれも「仮名」扱いにしなければならないため、この処理のために、全文を文字実体参照に改めてからコード変換するという、これまでに書き下しで何度か試みた方法をここにもとらなければならなかった。最近のコンピュータの処理速度は速いので、こういう処理による重さはほとんど感じないで済むと思う。(3.7)◇一二点の交叉文も毎度変換に手こずる箇所である。繰り返しは回数指定よりも+の方が上手く行くようだ。甲乙点の変換を調整した。(3.8)◇再読文字の変換を調整。レ点のHTML変換を修正。(3.9)◇単純なはずの○^○のレ点変換の動作が不揃いだった。直前の文字列に送り仮名がある場合とない場合とで閉じ括弧[)]の扱いが相違する。理由が分からないまま、試行錯誤でとりあえず直った。こんなこと一つでも、対処にはずいぶん手間がかかるものだ。また、デバッグの際にF9で設定したブレークポイントをスルーしてしまう現象が度重なったので調べると、ソースプログラムの行数を(空行補充などで)変更すると再びブレークポイントで停止するようになることが分かった。VBEの仕様の(あるいはバグの)可能性があるが、自分に分かるはずもないので心覚えだけ記録しておく。(3.11)◇レ点の繰り返しと一点との交叉等の微調整。(3.13)◇三点の書き下し文変換の微調整。(3.15)◇上・中・下点と一二点の下方交叉を書き下し文変換できるようにした。(3.16)◇レ点の下方交叉から一二点変換で半角スペースが取れるために連続しないところがあったのを改めた他、語句の繰り返し処理において暴走しないように修正した。和製漢文を入力していると、日本語読みに近くなるため、それだけ構文の複雑になる場合がある。実際例から誤変換の理由を学ぶことは多い。(3.17)◇再読文字も何度も引っ掛かる要素だが、「未だ」の変換が案外に難渋した。VLCメディアプレイヤーのように「工事中」アイコンを採用した方がよいかもしれない。ずいぶん使い勝手は良くなっているとは思うが、まだ数作品を全巻入力してみて検証を続けるしかないのだろう。(3.18)◇一二点の交叉文の書き下し文変換等の調整し、HTML変換の前に連番処理を実施した。(3.19)◇一二点の交叉構文でレ点を繰り返す場合に対応した。(3.20)◇三点の「與」の書き下し変換を加えた。理屈では四点・五点等も考えられるが、実例に即して変換していくに留める。(3.21)◇三点変換の微調整を行った。倭習漢文で変換できるようになれば、ずいぶん使い勝手が良くなるだろうと思うが、道のりは容易ではない。(3.22)◇甲乙丙丁点の変換調整等を行った。(3.23)◇難解字の説明を書き下し文の末尾に付け加えるようにした。もっとも、ユニコード文字実体参照から外れる文字は多くないと思うが、『尚書古文考』などのように、漢文によっては頻出することがあるかもしれない。(3.25)◇送り仮名の「ヾ」を見落としていた箇所を修正した。(3.26)◇未必の構文に対応した。未嘗と同じ型はまだあるかもしれない。(3.27)◇上下点とレ点を2つ介在させて一二点と結ぶという、複雑な形の変換調整を行った。和製漢文で書き下しがある程度できれば、中国文はたいてい大丈夫なのではではなかろうかと思うが、どうか。(3.28)◇中点の書き下し文変換を改善したかと思う。(3.30)◇HTML変換のデータ項目読み取りが間違っていたのを修正した。(3.31)◇AtokがExcelやMana2はおろか、Windowsまでフリーズさせたのにてこずり、当面Google日本語入力に切り替えて時間を食ったが、一二点と三点構文の交叉形式に一部対応できたのが嬉しい。それにしても日本人の複雑な倭習漢文の書き下し文変換にはいろいろ工夫させられる。それと、誰も表立っては言わないが、毎度思うことは、AtokがMicrosoft OfficeやWindowsに根本から馴染まないのではあるまいかということだ。Google日本語入力に30万語程度の既存辞書を覚えさせたが、変換候補の列挙は珍妙なものながら少しも変換に難渋しない。Atokはメモリ管理がおかしいのではあるまいか。フリーズがcriticalなレベルだと思う。DOS時代の快適さが今では信じられない。(4.5)◇入力本文を登録するとルビはすべてひらがなに変換されてしまうが、カタカナのままにしておきたい語を指定できる「Rカナ」ボタンを入力画面に付加した。(4.6)◇己点のある文例に出くわしたので、書き下し文変換の対応をしてみた。再読文字も実際の用例から帰納して補充する形なので、わりあい実践的な形になっているのではないかと思う。(4.8)◇否定詞「不」、再読文字「将」の送り仮名等を場合分けした。(4.10)◇上下点変換の微調整。(4.12)◇書き下し文変換の微調整。「未」や中点の処理など。(4.14)◇検索画面で検索語を【 】で明示するようにした。再読文字と一二点、上下点との組み合わせについて、書き下し文変換を調整した。(4.15)◇一二点の書き下し変換の正規表現を単純化したため、思わぬ誤変換が相次いだのを、多少修正した。その他、細部の手直しをした。(4.16)◇「與」のかな書き等、細部の調整。(4.17)◇入力Box内で改行すると登録時にエラーが出るのを修正した。改行のある文章も登録が可能になった。(4.18)◇上下点と再読文字の組み合わせについて書き下し文変換を修正。(4.19)◇細部の修正。(4.21)◇上下点との組み合わせ構文の修正等。(4.23)◇一二点の交叉構文の処理を増やした。文末の「與」に対応した。(4.24)◇三点の書き下し変換を改善した。(4.25)◇レ点変換で踊り字(反復記号・二の字点)の処理は難しい。またエンコードとデコードとを繰り返すと処理が遅くなるので、これは手修正に回してもらうしかない。Excelで扱える文字コードの問題が解消すれば、いずれ改善できるだろう。(5.1)◇細部の修正。(5.2)◇カウンタを増やす仕組みを改善し、文字と数字の混在した場合も使えるようにした。ささやかなことだが、使い勝手は良くなったと思う。再読文字の変換について、やや見直した箇所がある。また順次修正していく。(5.5)◇「君子不[乙][下]其所-[二]以養[一レ]人者[上][甲レ]人。」のようにレ点の下方交叉が重なる例について書き下し文変換ができるように修正した。倭習漢文でなくとも、実際に現れる言語の変化は複雑である。その他、若干の修正を行った。『孟子』の短い章なら、一度に入力・変換することは可能である。ただし、現在使っているMS Excel2010はリソース(メモリ)管理が得意でないようで、旧漢字の読み仮名確認のマクロを並行して動かすと、いきなりダウンする現象が生じている。2つのExcelを同時に動かすのは、現在使用している機械のメモリでは少々苦しい感じではある。(5.6)◇再読文字変換の調整。カウンタの番号づけを便利にした。(5.8)◇レ点×一二点、上下点×一二点の交叉構文の修正等。(5.11)◇三四点の修正と再読文字から更に上に返る場合の補充。與(与)のかな変換を調整。(5.14)◇竪点を三つまで書き下し対応にした。(5.15)◇三四五点、再読文字の書き下し文変換改善。再読文字の入力ウィンドウを重ねて表示するほうが安心して入力できると考え、表示を改めた。(5.23)◇一二点と三四点の交叉文が更にレ点で反る場合の書き下し文変換に対応した。(5.24)◇未の誤変換の修正。一二点×三四五点の交叉構文の書き下し文変換調整。(5.27)◇上下点と一二点の交叉構文の書き下し変換の調整。難字のHTML表示の改善。(5.31)◇再読文字「将」の書き下し調整。HTML変換において改行コードの引っ掛かる場合があるので、改行を無くすボタンの仕様を変更した。(6.1)◇「将」の書き下し変換の再調整。(6.3)◇データ入力途中でカード移動ボタンを押してしまい、データが消えて悔しかったので、表にバックアップを取るようにした。(6.7)◇一二点の交叉構文での再読文字の書き下し変換を調整。(6.11)◇カウンタの修正。(6.26)