[戻る]

漢文エディタ

漢文エディタ2020に更新したので、ダウンロードファイルは、この注意書きのリンク先を参照してください。
    
使い方の説明(HTML Help) kanbun_editor_help.htm  

〔漢文エディタからMS-Wordに書き出して作成した文章の例〕
長恨歌(白居易) chogonka.lzh
【漢文エディタでできること】 ◇各種変換結果の画像を一枚にまとめて眺めたもの。
さまざまな変換例
   ○LaTeX漢文スタイル変換ボタン。
   

   EasyTeXに書き出したもの。エディタは指定できる。
   

   EasyTeXからDVIファイルに変換して表示したもの。
   

   ○書き下し文の例。「於」は後で手作業で消す。長い文章でも一瞬で処理できる。
   


  入力画面
入力画面(一部)
▼ 縦書きブラウザで表示(.htm) … 《左》 Internet Explorer 7 で div に縦書き表示を指定。  《右》 影鷹で表示。 縦書き表示 縦書き表示

 


《上》 T-Timeで表示。     《下》 ワードで表示(.doc) ▼   縦書き表示   ワードへの書き出し   ワードへの書き出し


訓読漢文を1度入力するだけで、白文・読み仮名つき原文・注釈だけを抽出したり、返り点・送り仮名をそれらしい書式に直してワード形式に変換したりと、さまざまに利用することが可能な入力フォームである。データの蓄積のほか、検索等のテキストデータ処理も可能にした。FreqCount、Mini KWIC (共に拙作)等と組み合わせれば、より多様なデータ利用もできる。データの再利用に際して原文データとの混同を避けるため、返り点・送り仮名などは独自仕様にしている。独自仕様のタグや注釈は、後で取り除いて原文(白文)・注釈のみ表示したり、HTMLの一部(段落)に変換したりすることができる。テキストファイルとして書き出すほか、ある程度の分量をカード形式で印刷することができる。第6版以降では、(4)のカードと同じくデータのバックアップ・フォルダとCSVファイルを起動ディレクトリに作成する他、MS-EXCELからMS-WORDにデータを書き出し、ふりがな・返り点のフォント・注記の大きさ・色を変えて縦書きで転記できるようにした。返り点は左寄せで、送り仮名は右寄せで処理する。再読文字の送り仮名は左寄せで表記する。HTMLファイルとしても同様の表記ができるような形式での書き出しができるようになった。ユニコードの漢字の受け渡しも基本的には可能である。(漢字の転記については安定はしていないようだ。理由は分からない。入力の結果、「?」と表記されていたら、手作業で文字鏡CharacterMapから貼り付ける。検索画面からのテキストの書き出しにはWordpadを利用しているので文字の表示は問題ない。)MS-WORDでの訓読漢文表示としては実用水準にある。全体に、ゆっくり操作するとうまく動く。ワードへの転記も安定してきたが、続けて書き出す場合は文書ファイルをいったん保存するなり破棄するなりしてワードを終了してから、再度書き出し操作をする。《WindowsXP》 (万一不調な場合、CTRL+ALT+DELでタスクマネージャを起動し、EXCEL.EXEのプロセスを停止し、再度エクセルを起動する。) (2006.1初版。以降、説明を随時追加し、改版ごとの主な変更点を以下にまとめた。)
《入力のしかた》 「登る^山に。」のように、@漢字「ひらがな」交じり文で、A語順は訓読漢文と同様に、B返り点・注記等は専用のボタンを使って入力する。使い勝手が独特なので、慣れるまで5分ほど面倒を感じるかもしれない。(下段の各種ボタンは入力補助用。入力の簡素化や仕様の統一に使うことができる。下段のボタンは必ずしも使わなくとも、入力は可能である。返り点・注記は入力欄上段の専用のボタンを使わないと、後で変換作業ができなくなる。その他、注記の中でもルビや丸カッコを使うことができる。)
  【改版履歴】
◆Ver.14では、HTMLのDIVタグへの変換書き出しを整えた。正規表現によりカタカナを拾って<sup></sup>タグで囲むようにするのに四苦八苦した。(最初はカタカナを一つずつ置換していたが、いかにも時間がかかり、変換結果も不確実なものだった。[ァ-ヶ]を( )で囲むことと、"$1"のようにダブルコーテーションで囲んだ上で&で結合したら、偶然うまくいったというところである。もっとも注釈内のカタカナまで拾ってしまうのだが。)返り点は<sub></sub>タグで囲み、全体を<div></div>タグで囲むので、そのままテキストファイルに書き出せば、HTMLの一部として使用できる。「影鷹」(http://www.kagetaka.org/index.html)のような縦書きブラウザで表示すれば、ワードへの書き出しに似た表示をテキスト形式のまま得ることができるだろう。(12.23)◇14aでは、HTMLファイルをボタンで作成するようにした。縦書きブラウザですぐに表示することができる。(12.24)◇14bでは、Unicode文字で登録の際表示のおかしくなったものがある場合、メッセージを出すようにした。メッセージが出た際は、上下矢印ボタンで該当データを呼び出し、「?」部分に再度文字を入力して「訂正保存」ボタンを押すと今度はまちがいなく登録される。「?」文字がすべての文字を拾ってしまうため、これも正規表現によって処理を行った。(12.25)◇14cでは、再変換用のボタンを加えた。注記の中に訓読漢文がある場合、divタグへの変換において返り点がうまく変換できない場合があるからである。このReplaceボタンによっても、タグなどはうまく置換できない場合もある。文が長くなるほど置換に誤動作が出るので、入力時はとにかく一文ごとに入力していき、後で必要な個所をセル結合するほうがよい。HTML書き出しなども、こまめにファイルとして書き出し、後で本文を手動で結合するしかのないかもしれない。VBAである程度の長さの文を処理するのは難しいような気がする。(12.26)◆◆◆Ver.14の原版を再度ダウンロードできるようにした。a〜cの各版で手許の漢文を入力する際、カード画面が出ずにエラー報告画面が頻繁に出てくるようになったためである。c版でエラーが再現されるようなら、14版原版をご利用ください。不調の理由はよく分からない。初期化の際の処理項目が多すぎるのか、EXCELがお粗末なのか。→初期設定での表示指定をいくつか外したところ、カードの表示がうまく行くようになった。一応、14cでも動くようになった。しかし、置換操作でもそうだったが、プログラムは間違っているようでもないのに、処理の安定しない場合があった。以前にも、ボタンの数がある程度を超えたところでマクロプログラムを切り離してしまうということがあり、VBAでの処理の範囲はわりあい狭いのではないかと何となく考えている。(12.27)◇14dでは、Internet Explorer 7 で表示できるように、変換ボタンを加えた。処理するタグの分量が増えるにつれて、1回に処理できる文の長さはますます短くなっている。なお、縦書き指定は<div>タグごとに行う。こちらはVBAでなく、IE7の仕様なのか。影鷹の表示はきれいだが、現在はまだ印刷ができないようである。他に縦書きブラウザやビューアを調べてみた。Smoopyという縦書きビューアでも、漢文の返り点と送り仮名の表示は可能なようだが、とくに送り仮名は青空文庫(?)の[#()]指定を1文字ごとに指定したうえ、半角スペースを間に入れなければならない。他に、Voyager の T-Time (free version) も表示可能である。(ともに注釈を除く。)他に大日本印刷で以前フリーのスクリプトを配付していたらしいが、今は行っていないようで、現在時点では IE7 の表示能力に頼らざるを得ないのは残念なことである。有能で寛大で、目立たないところに注力してくれるだけの余裕のある奇特なプログラマーがどこかにいないだろうか。(12.31)◇14eでは、変換メニューを切り替える体裁にし、HTML変換を一度の操作で行えるようにした。結果表示も多少改善されたと思う。特に、重ねて転記し、一気にファイル化できるようにした。(2007.1.5) ◇14fでは、WordPadを介することにより、Unicode文字の書き出しがテキストベースでできるようになった。 (→[戻る]) 「転記→.html」ボタンその他HTMLへの書き出しボタンを押すと、ワードパッドに転記・結合した内容を書き出す。ワードパッドのメニューから「名前を付けて保存」→「ファイルの種類」で「Unicode テキストファイル」を選び、拡張子を「.txt」から「.htm」に直して保存する。これをIE7で開けば、縦書き表示になる。ただし、残念ながら、影鷹もT-Timeも、ユニコード形式でのテキスト表示はサポートしていないようで、完全に文字化けしてしまう。現在時点では、InternetExplorer(とIEベースのGrani等)が期待の表示に最も近い成果を挙げるようだ。横書きならMozillaでもFireFox、Operaでも、もちろん表示できる。その他は、私は無知だが、TeX(pLaTeX)からPDF形式にする(dvipdfm)のが一般の出版物並みの出力を得られるらしい。(1.6)〔追記〕 漢文用のLaTeXスタイルファイル(『続LaTeX2ε階梯・縦組編』)もあることは知っているが、デザインは他にもあるようだ。自分でもスタイルファイルが作れれば作ってみたいと思う。TeXの敷居も"いくぶん"低くなったことだし、その前にEasyTeX(他にTexEditなど。WordPad用の入力マクロもあるらしい。http://www.juen.ac.jp/math/nakagawa/texguide.htmlからダウンロードできる。)などで練習しておかなければならないが。 ◇14gではルビの仕様を「 ̄`´」の形にした。「 ̄猪`いのしし´」「 ̄磐溪`ばんけい´」のように入力する。このようにすることで、HTMLへの変換の際にルビのタグに変換できる。また、テキストファイルとして保存するときに、内容がより分かるようにファイル名の表示を工夫した。この作業と同時に、大槻磐溪『近古史談』をMS-Word形式・縦書きHTML形式(IE)のほか、IEの表示をハードコピーし、BMP・JPEG・PDF等に変換して、それぞれで表示の仕方を見比べることができるように入力作業を行い、かたがた漢文エディタの動作を検証している。画像処理にはPSPを、PDFへの変換にはPDFi(PDF Designer −Image Edition)やBtoPDF等を使用している。いずれはLaTeX形式にも変換してみたい。なお、余談ながら、ユニコードテキストの保存で意外な文字化けが生じた。UTF-16でBOMを付けるのでなく、UTF-8でBOMを付けない形で保存しなければならない。EmEditorFreeでそのような設定を行っている。WordPadではそのような調節ができないようだ。(1.22) ◇14hでは、エディタを選べるようにした。お勧めは、最近見つけたGreenPadhttp://www.kmonos.net/lib/gp.ja.html)のほか、WordPad(C:\Program Files\Windows NT\Accessories\wordpad.exe)、Notepad等である。GreenPadはユニコードで処理できる。(ただし、表示フォントを変更するメニューがない。純粋にエディタなのだから仕方がないのだが、フォントによる表示の違いなどを確認したい場合にはフォントの種類を変更できるメニューがあると便利だ。WordPadの場合は、リッチテキストなので[→下記画像]のようにフォントを選択でき、色や大きさを変更できる点が便利だ。その代わり、保存する場合にはしかるべきコードを選ばなければならない。「実用的」な視点から勝手なことを言ってしまうが、帯に短し、襷に長しの感がアプリケーションにはいつもつきまとう。)このソフトで保存する場合は、UTN-8(8Nでなく)で保存すると具合がいいようだ。ユニコードの細かい違いがよく分からない。Windows Vistaでは拡張新JISコード(JIS X 0213:2004)によってJIS第三・第四水準も組み込まれているということだから、Notepadですべて事足りるのかもしれないが、当面いろいろあの手この手で旧システムでの運用を工夫してみよう。使い勝手は人によって違うと思うので、ダウンロード欄には14g版も併記しておく。なお、ユニコードに返り点等の訓読記号は見当たらないと思っていたが、調べていく中で3190-319Fの列にハイフン、レ点、一〜四点、上中下点、甲〜丙点、天地人点などがあることに気づいた(http://www.unicode.org/charts/PDF/U3190.pdf)。これをどのように活用するかを考えていきたい。また、Excelフォームで入力作業をする際、ユニコードにもない漢字は「Mojikyo Character Map」を使って該当の文字を右クリックし、「形式を選択してコピー」→「GIF画像URL(24ドット)」として該当文字画像へのHTMLリンクを張るようにすれば、文字形式を保ったまま入力作業を進めていかれる。よほど細かい字画の文字では96ドットの画像のURLを選択すればよいが、HTMLに書き出した時に行間隔がだいぶ広がってしまう。(1.27)

[戻る]

[付記1]ユニコード対応のエディタでも、訓点文字を直接表示することは難しい。フォントのせいだけではないのか、難しい点が分からないが、例えば「レ点」の該当コードを単語登録して、これを入力するのだがGreenPadでもWordPadでもEmEditorFreeでも「・」としか表示されない。ただし、ユニコード16進タグで「㆑」のように単語登録しておけば、対応ブラウザ(IEでもMozilla, FireFoxでも)表示が行える。私はATOKの文字パレットからUnicode表を参照し、いったん日本語で単語登録をした後、ワードを経由してHTMLファイルに変換・保存し、置き換えられたユニコード16進タグを参照した。そして今度はタグを単語登録してみたわけである。ハイフン(&#12688;→㆐)、レ点(&#12689;→㆑)、一点(&#12690;→㆒)、二点(&#12691;→㆓)、三点(&#12692;→㆔)、四点(&#12693;→㆕)、上点(&#12694;→㆖)、中点(&#12695;→㆗)、下点(&#12696;→㆘)、甲点(&#12697;→㆙)、乙点(&#12698;→㆚)、丙点(&#12699;→㆛)、丁点(&#12700;→㆜)、天点(&#12701;→㆝)、地点(&#12702;→㆞)、人点(&#12703;→㆟)まではこの方法によって、現行Shift-JISのテキスト中でとりあえず使うことができる。Excelフォームでの変換もHTMLへの書き出しにはこの方法を使うことができるだろう。
[付記2]KandataもXANO明朝U32も、フリーでここまで表示できるフォントがあるというのは大変便利である。Habianはビットマップフォントだがデザインは見やすいと感じた。ただし、文字の大きさは区々である。従来のMS 明朝・ゴシックのグループが「互換性」のためであれ現行システムでうまく使えるようになれば、いろいろ便利なものであろう。(1.28)





◇Ver.14iでは、テキストの変換タブの中で変換結果を利用しやすいようにクリップボードに送る「Cut」ボタンを付け加えた。また、現在「書き下し文」にチャレンジしているが、まだ見通しが立たない。また、JIS16進タグによって訓点を処理するボタンも付け加えていきたいと考えている。文字コードについて、WindowsのVersion-upに伴って、工夫しなければならないことが出てきている。本HPの「Progress」にも書いたように、Windows VistaになってJIS X 0213の文字が標準で使えるプラットフォームができたという。私自身は、値の張るWindowsは現在のノートパソコンが酷使の結果、ほぼ代替わりせざるを得なくなってから買い換えるという部類である。文字コードに多大の興味があってもおいそれと新しいOSに手出しはできない。また、meiryoなる日本人のデザインしたゴシックフォントの他、MS 明朝、ゴシック、P明朝、Pゴシック等が新JISに対応したフォントとなるらしいが、現在入手できるフォント類で対応できないわけでもない。しかも、Unicodeのどの形式で保存するかにより、現在のブラウザでは実に表示が区々になってしまう。「古いパソコン」をベースとした方が、互換性についてのいろいろな問題に気付くチャンスが多いともいえる。ブラウザが「縦書き」の問題を含めて、もっと飛躍的に進歩してくれるとありがたいと思う。テキストファイルは、時代の変化を比較的受けにくいというが、これも文字コードが次々に変わっていくのでは、いつかロゼッタストンのようになってしまうことがないとも限らない。絶えず書き改めていかれるような、いろいろな意味とレベルでの対応が必要である。(2.4)

▼ 下は一二点とレ点(1つ)とが上で交叉する場合をとりあえず処理したもの。

 

▼ 下は最初に作ったもので、レ点だけ変換できるようにしたもの。

 


◇「書き下し」操作を工夫している。(→[戻る])まだ「レ点」の段階までだが、上の図のような感じになる。長い漢文では一気に変換することができないが、短文でも変換できれば、後はまとめて転記すればよい。手直しの余地をなるべく少なくするように工夫しているところである。「レ点」の操作で面倒なのは送り仮名の処理である。ひらがな・カタカナを文字コード番号で識別して(Asc関数)漢字を探し、入れ替えるという方法で変換した。〔→後では正規表現を使った処理に変更した。〕また、後ろからレ点を順次拾うという方向で処理している。ただし、ソフトウェアはレ点とレ点の中間を人間のようにきちんと区分けすることができない。切り分けだけのために特別な記号を作るのでは、入力が煩雑になってしまう。そこでレ点が連続する場合、上の図のように、間に読点(句点でもよいが)を入れて教えてやることにしたが、それでもやや煩わしい。(2.12)〔附記〕同時に、漢文エディタによる作例として『近古史談』を順次入力しているが、ユニコードの文字は、同じユニコード対応エディタでも表示の具合が異なるようだ。上述の表の文字だけでなく、たとえばある文字をGreenPadに書き出すと「?」に変わってしまう場合、これをEmEditor Freeに書き込み、ファイル化した後、GreenPadで読むとちゃんと表示できるものなどがあった。またコード番号が2種類割り当てられているものを辞書に登録しようとすると、ATOKで「すでに登録されています。」という表示が出てしまうなど、処理のテーブルがソフトによって異なるのか。ユニコードの理解が難しい。ブラウザを経由してきちんと変換できないものか。エディタやワープロよりもブラウザに期待しているのだが。(2.12)◇一二点とレ点とが上で交叉する場合の表示までなんとか工夫できた。上中下点・甲乙丙点・天地人点も単独でなら同様に表示する。ハイフンの処理も、文によってはできる。その他、一・上・甲とレ点とが交叉する場合や中間点とハイフンの組み合わせ、再読文字の処理、複雑な入れ子の処理など、書き下し作業も複雑である。基本的にはデータを切り分けられれば、配列し直すことは可能だと考えている。その他、否定や使役・受身・断定・比況等の助字や副詞等の一部をかな書きにするようにした。書き下し文は付属語以外は漢字で残すのが原則だが、私には読みづらいところが感じられるので、一部かな書きにしたところがある。使いづらい時は、コードの該当部分を追加・削除すれば使用者にふさわしくカスタマイズできるのではないかと思う。(2.18)◆〔補足〕 書き下し文の自動変換ということは、誰かが既にやっていそうだと思い、前にGoogleで検索したときには特に見当たらなかった。今回、「平闕式」(『拙堂文話』から得た語だが、それがどうやら「平出〔平頭抄出〕」と「闕字」〔闕如〕とを合わせた呼称であるらしいことを下記HPで知った。)を調べていたときに、漢文訓読の「アルゴリズム」を分析したHP(島野達雄氏「和算序林」 http://www5.ocn.ne.jp/~jyorin/index.htm)を見出だした。参考までに書き留めておく。同氏の文章中には、「訓読アルゴリズムの基本定義」として「『正しく訓点がついている、有限個の漢字の列(原文漢字列とよぶ)は、すべて、カッコつき表示であらわせ、P(m)=mPを繰り返して適用すると、訓点のない、最終的な訓読時の漢字列(最終訓読漢字列とよぶ)に並べ替えることができる。』」という訓読の「定理」を挙げてある。(2.18) ◇一二点以下の返り点の処理とレ点の組み合わせが案外難しく、いったん作った処理経路を正規表現を使った処理(検索・置換)に変え(仮名は[ぁ-ヶ]、漢字は[亜-煕]という具合。ただし、[亜-K]〔シフトJIS拡張漢字=機種依存文字〕も可能だろう。正規表現そのものは、初歩的な知識をもとにああでもないこうでもないと手直しを繰り返している)、また処理の順序を変更している。そのため、『近古史談』の入力も暫く棚上げ状態になってしまった。今のところ、レ点が下で交差する場合の表示はうまくできるが、その他の位置での処理や三つ以上重なった場合の処理ができなくなっている。竪点の処理や上で交差するレ点の処理も初めはうまくできたが、再び考え直さなければならなくなってしまった。taiju氏がどういう馬鹿げた工夫を凝らしつつあるかに万一興味のある方は、次のファイルを覗いてみてください。(2.25)◇レ点の繰り返しと一二点の倒置をやや改善したが、まだ例文によっては無限ループに入ってしまう場合もありうるので〔手直しがうまくないせいか、前には変換できたものが次にはだめになってしまう〕、その場合にはCtrl+Alt+Delキーでタスクマネージャを起動してExcelを終了するしかない。他のシート操作をしているときは、絶対にテストしないでほしい。)(3.1)◇一二点の接合形式に対応した。(3.3)◇レ点の倒置を5つまで可能にした。また、レ点と一二点類とが上で交叉する場合の変換も一応可能になった。検索範囲の指定に「名前」を使用したり、レ点処理を「配列変数」によって一気に変換するやり方に変えたりと、処理方法の基本操作を並行して改善している。(処理が戻るのを防ぐために、「書き下し文」フォームを表示するようにした。)また、同じレ点でも処理の順番を変えるに当たってはギリシャ文字で一時置き換えるなどのエスケープの方法も組み合わせて対処している。書き下し文の作成については、他にも再読文字などの処理があり、なかなか一筋縄にいくものではない。(再び変換できなくなった形式もある。)ただし、漢文のデータ蓄積には特に問題はなく、現に私自身が古典や入試問題の漢文テキスト類をこれでぽつぽつ入力して、時々プリント類に利用している。漢文書き下し機能は不十分なところがまだ多いが、十分に実用ツールである。(ちなみに、下の例文は変換の確認用の文章であり、まともな「漢文」でないことは付け加えておく。)(3.4)◇再読文字の変換が八割方進んだが、無限ループに入る例文もあり、まだ安定していない。(3.7)◇無限ループは多少回避できたが、もぐら叩きのように又変換できなくなった例文ができた。移動ボタンの仕様をほんの少し改めた。(3.8)◇レ点の繰り返し処理を多少変更した。また、書き下し文のウィンドウを閉じた後、ユーザーフォーム全体が終了しないようにした。(3.9)◇ユーザーフォームが終了しなくなった代りに、再度の変換操作ができなくなっていたが、終了の制御の流れを改めることで再変換操作が可能になった。サブルーチンは必ず制御が戻ってくるという基本も知らないで作っているのだから、素人というものは冒険家である。もぐらたたきも、原則や定理をきちんと立てないせいか相変わらずの状態だ。(3.11)◇例文を少しずつ入れ替え、点検している。「如[レ]○ヲ何セン」を「○をいかんせん」とする変換を一例だけ工夫してみた。後は延々とバグ・フィックスである。他に、カード移動のバグや印刷フォームに複数例を転記する機能を付け加えた。抄記したい変換データについて、「データ操作」タブの「印刷フォーム」ボタンを押す都度、フォームに重ねて転記(さらにそこから印刷・テキストファイル書き出し)できる。(3.15)◇使い方が分からないという質問があり、ヘルプを付けた。プログラムの修正は、現在時間がとれず小休止の状態である。(3.30)◇レ点とレ点の間は一文節とは限らない。場合分けの処理が必要だ。熟語の処理とどう区分けするのかという問題も残る。これらの問題はレ点が一二点等と頭で交叉する場合にも当てはまる。まだ分岐処理が十分でないが、書き下し文の処理は公式的には行かず、やや細かく場合分けをする必要がありそうだ。その他、再読文字「合ニ」を付け加えた。もっとも、私自身はたいていの語句を単語登録しているので、機能ボタンはともかく語句に関して入力補助ボタンを使うことはほとんどない。(4.2-4)◇検索タブの修正、ルビ表示の修正を行った。(4.23)◇上下点の変換、読み仮名の丸カッコ(パーレン)の処理等、バグ修正を若干進めた。再読文字が変換できなくなっている。(5.4)◇再読文字の変換を多少修正できた。レ点の連続処理を若干改良した。レ点については、○●レ●○レ○●の場合の処理を明確に区別しなければならないが、まだ手直しは十分でない。(5.5)◇各ユーザーフォームに最小化ボタンを付けた。各フォームの宣言部分にWindows APIをコールする宣言を書き、合わせてユーザーフォームがアクティブ化する時の動作をそれぞれ記述するのだという。肝心の書き下し文変換ロジックは、少なくとも2時間以上の暇がないと手直しできず、一月も放っておくと本人にも何が何だか分からなくなる。増改築の間に合せコードをすっきりさせるのは、よほど暇でないと難しいかもしれない。具体的な例文の変換によって起こる不具合に対して個別に対処している形だが、一般論で考えていただけの時には予想もしなかった細かい問題に気づかされる。読みがなの括弧書きの処理や、レ点の振る舞いの相違、かな変換の場合分けなど、人間がなにげなく行う動作の意外な複雑さを(おそまつロジックの不具合も手伝って)このいかにも融通の利かないプログラムの振る舞いによって改めて気づかされるのである。(5.6)◇「データ結合」の不具合を修正し、テキスト書き出しの際にエディタ指定をチェックするようにした。(5.25)◇レ点に一二点が続く場合の処理を、レ点が一二点と交叉する場合の処理と一応区別した。また、「與(与)」に「レ点」が続く場合に「と」と変換するようにした。「レ点」以外の場合も同様の処理を行いたいが、他の場合との区別が難しい。他に「上レ点」のWordへの書き換えに不具合があったのを直し、「て而→て」の変換、「而已矣。」「焉。」等のかな書きを行った。また、「訓点のみ」「訓点ルビ」ボタンについて、「一レ点」等の変換にミスがあったので修正した。(6.24)◇「一二点」の変換方法を書き改めた。これは、「一二点」が繰り返して出てくる場合に、それぞれを区別することが必要だからである。たとえば「三点」がいずれの「一二点」と組み合わさるものかをあらかじめ識別しようと考えた。修正はまだ十分でないので、以前よりもかえって変換につまづく個所が増えているかと思うが、この方式のほうが拡張性に富むはずである。また、「Replace」ボタンの修正や書き下し文への変換を若干改善した。半自動的に書き下し文をつくるのはかなり大変だが、手書きの補助として実用的なレベルに持っていくことは必ずしも不可能ではないと思っている。(6.30)◇注を入力する際に改行コードがあるとカーソル位置がずれてしまっていたのを改めた。「書き下し文」に変換する機能はまだ不十分なものだが、簡単な文であればまずまず使える。これを付加したファイルのみをダウンロードする形にした。二三ページ分の漢文をセンテンスごとに分けて入力し、一段落(数行)程度のまとまりでデータを結合して全文をWord形式や縦書きhtmlに変換するのに、慣れれば1時間程度で操作完了である。もちろん、いったん入力してしまえば原文や訓点のみの文に自動変換し、テキストファイルに書き出すこともほとんどワンタッチでできる。(7.8)◇注記タグの入力を改善した。改行しても位置がずれることはない。(7.16)◇Word VBAの練習を始めたのを機会に、傍点や( )による注記の表示処理をWordの正規表現によって処理してみた。割注やルビの処理は、Wordそれ自身からはできるはずだが、Office連携処理の中では「不正な処理」や「メンバ不明」等のエラーが出てしまい、うまくいかない。とりあえず《‥ あいうえお ‥》を[あいうえお]とし、( )で囲んだ注記をルビの表記と区別した。(7.28)◇単語帳を付けた。WSH(VBScript)を使っている。リファレンスを見ていて、正規表現もVBScriptだったことに改めて気づいた。(8.4)◇割註の体裁、返り点をMS-Wordに出力する際のカッコの有無など、オプションメニューを「注指定」ボタンで行うようにした。これにより、「割註」(TjSoft-45、Word VBA)マクロと連動させる。もっとも、注記に[ ]を付けても付けなくとも「割註マクロ」は動くようだ。割注の中仕切り記号は、実際には余計な場合も多いのでオプションで選べるようにした。(10.13)◇返り点変換後、改行コードを削除するボタンとメニューを付け加えた。「三」点以下の書き下し文処理を何とかしたいが、今日日の教員にはその時間的余裕はほとんどなさそうだ。(12.2)◇Wordに書き出した時に、返り点に[ ]が付いてしまうのが煩わしいので、やはり外すことにした。(12.24)◇シート上の「データ結合」ダイアログボックスで不要な改行を削除できるようにした。作例データを増やした。(2008.1.8)◇書き下し文作成スクリプト kakikudashi_1.vbs(追記−このスクリプトを「漢文エディタ」に組み込んだ後、3.16時点でもすでに相当修正を加えている。あくまでも発想の原形であり、より精度の高い変換は「漢文エディタ」において可能である。)をアップロードした。VBAに書き直して(あるいはVBScriptのまま?)「漢文エディタ」に組み込みたいと思う。(3.8)◇《kanbun_20080313.lzh(.xls)》scriptを少し手直しして「漢文エディタ」にとりあえず組み込んでみた。書き下し文専用ウィンドウは使わず、直接変換結果をフォームに書き込む。「Text」ボタンは後で組み込むつもりである。(3.13)◇各種変換の速度と精度が俄然向上した。HTML変換の際のルビの仕様を新しいものに変更した。また、白文等の変換の際にユニコード・タグを残すようにした。また、《○ 2( ○○ )1^○ 2( ○○ )1 》の繰り返し形式や《○^○^○ 2( ○○ )1 》などの形にも正規表現により対応した。主語や副詞句など、文構造上の役割の異なる漢字が連続する場合には間に読点(、)を打つなどの工夫が入力時にできると誤変換は少くなるが、通常の入力でも後で手作業で修正しなくてはならないところを極力少くするという方針で作成している。完璧な自動変換などはもともと無理だと思うので、数個所の修正で済む程度に省力化できれば十分だろう。(3.15-16)◇《kanbun_20080317.lzh(.xls)》LaTeXによる漢文整形のためのスタイルファイル(sfkanbun.sty)対応フォーマットへの書き出しボタンを付けた。以前に作成したスクリプト(ConvToTeX_Kanbun_1.vbs)を組み込んだもので(なお多少の改善はしている)、これもまだ改良の余地があるが、ほぼ変換することができる。とにかく、VBScriptは入出力部分のコード変更と変数の宣言を加える手間を除いてはほとんどそのままの形でWord, Excelにおいて使用できるのがありがたい。処理速度も文句なしである。なお、LaTeXでのdviファイルへの変換にはEasyTeX(http://www.juen.ac.jp/math/nakagawa/texguide.html)というフリーソフトを使う前提で(インストール先も標準の設定で)書き出しボタンを作成してある。Wordへの変換とは違い、一瞬で書き出しできる。EasyTeXがユニコード文字非対応なのは残念だが、仕上がりもきれいなものである。(下図参照。)LaTeX のインストールについては、TeXインストーラ〔http://www.ms.u-tokyo.ac.jp/~abenori/mycreate/〕を実行。なお、漢文表示のためには専用のスタイルファイル〔sfkanbun.sty — http://homepage3.nifty.com/xymtex/fujitas2/texlatex/index.html〕をたとえばC:\tex\share\texmf-local\ptex\platex\jsclasses等のフォルダに入れておかなくてはならない。ほかにfurikana.styなども加えておく。必要なスタイルファイルを追加した後、C:\tex\bin\mktexlsr.exeを実行し、TeXに認識させる。)(3.17)◇《kanbun_20080318.lzh(.xls)》EasyTeXを使う以外に直接コンパイルして表示する方法がないかと思い、VBAのshellスクリプトでplatexとdvioutを起動して何とか作ってみた。そのため、LaTeX用のフォームを作成するはめになった。どういうものかデータによってWSHでのテキスト書き込みにエラーが出てしまう。ユニコード文字などに原因があるのかもしれない。TeX_Editで変換してみたり、mana2からユニコードで保存して直接platexで変換したりしてもだめだったから、Windows XPのプラットフォームではだめなのか、またはlatexではユニコード文字の処理ができないか、なのだろう。(3.18)◇《kanbun_20080319.lzh(.xls)》LaTeXへのコンパイルの際、まずテキストファイルへの書き出しの段階で、データにユニコード文字があるとデータの書き込みにエラーが出るところまでは分かった。それ以外で「ファイルが見つからない」というエラーはExcelのカレントディレクトリを動かすことで解決した。platex.exeとdviout.exeのファイル読み書きのパスを教えてくれるヘルプが見つからず、動作がよく読めなかったのでExcelの方で対応させた形である。ユニコード文字については、とりあえず「?」でも「〓」でも「■」でもとりあえず変換しておいて書き出すしかないように見える。そうしてみると、文字の表示において最も選択肢が豊かなのはIEで「縦書きHTML」を表示させるということになりそうだ。TeXの出力は確かに活版印刷なみなのだが、ステップも制約も多いように見受けられる。ユニコードがOS標準で取り扱えるようになるまでは、いろいろな制限の中で工夫していかなくてはならないのだろう。漢文の文字種は膨大だから、その時でさえいろいろな困難はありうるだろう。(3.19)◇時間があれば少しずつ改良するようにしている。(3.25-30)◆変換結果を手作業で修正できるフォームを付け加えた。タブ2にメニューとして出してある。なお、DataObjectとしてテキストボックスの内容を取り出す方法を覚えたので心覚えに記しておく。(2009.9.12)◆他のWordVBAやエディタで作った漢文テキストを「漢文エディタ」のデータ形式に変換するボタンを加えた。「データ操作」のタブにある「変換2」がそれである。変換結果を書き込むボタンがその操作についてのみ下に現われるようにした。これにより、漢文入力に際して必ずこの「漢文エディタ」を起動しなくてはならないわずらわしさから解放されることと思う。たとえば、「登る[レ]山に。」を「登ル^山ニ。」とするような具合で、一連のテキストをボタン一つで変換できる。レ点は[レ]、または<span class="kaeriten">[レ]</span>に対応する。一二点・上中下点とも同様の両形式に対応。ルビは、全角の( )書きか<ruby><rp>(</rp><rt></rt><rp>)</rp></ruby>(このパーレンも全角。)に対応する。再読文字の送り仮名は「未だ〈るに〉[レ]至ら、」のようにする。甲乙丙丁点以降はまだ作っていない。なお、正規表現による各種変換は、まれに暴走する。大体は変換加能な便利ツールと割り切って、小まめに保存しておいてほしい。また、しばらく触らないうちに「真魚」エディタがVer.2.2.3.5となっていた。漢文入力では、このエディタか、WordPad、NanaTreeなど重宝する。(2009.10.12)◇他形式の導入について、前述の方式であれば一通りの返り点に対応するようにした。誤変換があったので気がついた部分は修正した。ルビについては青空文庫風の|(全角縦棒)で語句を区切る形式についてまず変換することで変換精度を上げるようにした(ただし、「|《》」ではなく「|( )」=すべて全角である。青空文庫の文章を「漢文エディタ」形式にするケースはまず無いことだろう。なお、縦棒を半角にすると、正規表現のor条件となり、すべての文字がルビ形式に変わってしまうので注意)。これにより、「登る[二]|大山(だいせん)に[一]。」は「登ル 2(  ̄大山`だいせん´ニ )1 。」というように変換する。※ついでにWordVBAによる「簡易漢文エディタ」をアップロードした。(10.13)◇転居のため、ずっとUpLoadできなかった。いつの間にか、使い方をまとめたchmファイルが読めなくなっていたので、画像によるhtmlファイルに改めた。制作者はなかなか使い勝手に優れた漢文「エディタ」だと思っているが、いっかな普及しないのはこのためもあるか。(笑)(2010.3.30)◇漢字の読みがなの中の「/\ゝゞ」等を処理できるようにした。(9.19)◇返り点の[五]まで書き下し文に対応する。(9.23)◇書き下し文に原文の漢字のニュアンスを残したほうがよいものを改めたほか、誤変換の修正を進めている。また、「ひらがな」「カタカナ」の一括修正ボタン〔変換前後どちらの欄にも適用(10.3)〕をつけ、「書き下し」の際に注記の頭番号を指定できるようにした。(10.1)◇誤変換を修正した。(竪点〔ハイフン〕の扱い、「盍ぞ」「と+終尾詞+。』」等の書き下し、他。)(10.2)◇「Replace」ボタンを復活し、「且に〜す」「與す」等の誤変換の修正、不要なボタンの整理を進めた。主語と述語が漢字同士で連接している場合、誤変換の可能性があるので入力時にスペースを空けておくとよい。(10.3)◇書き下しに際しての注記番号の順序、「不んば」の読み、「不」の扱い、一レ点の誤変換等を修正した。『史記』列伝第一を変換したが、ほぼ手直しせずに書き下し文に変換できる。また、HTMLへの書き出しに使うエディタをWordPadからNotePadに改めた。HTMLの表示ができるはずだ。ボタンの配置・出現順序、調整した。また、起動時のエラーを回避するため、ボタン類を整理して軽量版を作った。以後は、軽量版を中心にUpDateする。(10.10)◇上中下の中点の処理を行い、上中下点・甲乙丙点と一二点の構文との下方交叉について書き下し文に変換できるようにした。入力時、大体の場合、主語と述語は全角スペース等で間を区切る方が書き下しのエラーは回避できる。それは、文成分の認識まではできず、漢字かそれ以外かを識別するだけだからだ。ただし、主語と述語との区別以外は、大抵の場合、誤変換で困ることはないはずだ。全部をどうにかしようというのでなく、最後に目を通して、最小限の手修正で済めば、十分実用的ではないだろうか。最後にスペース類を削除して体裁を整えるようにした。(10.13)◇「為り」=「たり」の変換を調整した。(10.14)◇一二三点、上中下の変換を修正した。『史記』伯夷叔斉列伝・管晏列伝まで例文を入力した。精査していないが、これまでの範囲での書き下し文への変換はほぼ問題なくできる。また、kanbun_el(ementary version)の方には新字体・旧字体の相互変換ボタンをつけた。昔作成したスクリプトをVBAの形式に変換してボタンに割り当てて作ったのだ。(10.16)◇kanbun, kanbun_elともに新旧漢字の変換ボタンをつけた。また、中点、一二三点の変換ミスを改善した。(10.17)◇二点の上でレ点が交叉する場合の変換、一レ点の変換等を修正した。(10.18)◇[kanbun_el]ハイフン、與+二点、注記番号の指定エラー対応等を行なった。(10.20)◇HTML書き出しをUTF-8にし、書き出すエディタをnotepadではなくwordpadとした。これにより、「ユニコード」によるHTMLファイル書き出しができるようになり、難字を表示することも可能になった。注記の表示タグの変換エラー等を訂正した。『漢文エディタ』普及?のため、わかりやすいインターフェイスをこれから工夫したいと考えている。(2011.1.4)◇「登録」の変換について、シートとフォームの間を行き来する形ではなく、簡素化したらスピードが上がった。現在インターフェイスを分かりやすく改めている「EasyKanbunEditor」の変換を取り入れたものだ。TmpTxtを次々に変換するだけのすこぶる単純なやり方が分からず、まだるこしいことをやっていたらしい。他にも、奇妙な手順はいろいろ散見していることだろう。ゼロからの出発でも、五、六年も続けていると多少は慣れてきたようだ。忘れたものの方が多いけれども。(ところでこのEasyKanbunEditorなるものはまだUpしていない。基本的なほとんどの変換を一画面で行う。「漢文エディタ」がほとんどまったく普及していないらしいので、《簡単操作》をウリにして少しは注目を集めようという代物である。IDEAは本当にオリジナルなんだがなあ。だって、一度の入力で「漢文」の各種変換がまかなえるソフトが他にあっただろうか。なにがさて、Wordへの変換をこれから工夫する(ちょっと見たい人には作業場を教えようか。ただし、Excelファイルをブラウザからいきなり実行せず、いったん保存してから開いてほしい)。ところで、わが「漢文エディタ」の連携操作はセキュリティ面でエラーになることもあるようで、Excelが強制終了してしまう場合もある。これは職場での変換時に起きた。闇雲なチェックに引っ掛からない環境で使用するしかないかもしれない。EasyKanbunEditorのネーミングはEasyTeXにあやかりたいのだが、これを略すとEasyKEとなる。いじけた感じがいけないような気もしてくる。)(2011.1.29)◇HTMLへの変換で「ヽヾ」を送りがなとして処理するようにした。ルビの変換も古い記号のままだったのを修正した。(2011.3.21)

       ○LaTeX漢文スタイル変換ボタン。
   

   EasyTeXに書き出したもの。エディタは指定できる。
   

   EasyTeXからDVIファイルに変換して表示したもの。
   

   ○書き下し文の例。「於」は後で手作業で消す。長い文章でも一瞬で処理できる。
   

   
   下の書き下し文表示ウィンドウは、過去のフォームであり、現在は使っていない。
   

   

   


◆Ver.13では、一覧表に「本文結合」ボタンを加え、指定した範囲の本文を結合して一覧表の最下行に表示できるようにした。これにより、少しずつ入力していき、後で必要な個所をまとめての表示や各種変換ができる。テキストの結合が可能になった(コレクションを使用)。(11.4)◇13aでは、コードを大幅に簡素化した。そのわりにはファイル容量が小さくなっていない。(11.5)◇13bでは、テキストの書き出しを多少工夫した。Notepadをいちいち起動せずに、カレントディレクトリに変換や結合後のテキストを出力する。ダブルクォーテーションも出力しない。(11.6)◇13cでは、登録の仕方をいくぶんスマートにした。ただし、かなり以前のバージョンではできたユニコード文字の転記がひらがな・カタカナの変換作業をしているうちにうまく行かなくなっていることに気付いている。変換結果を時々確認してみて、せっかく文字鏡CharacterMapを使って補った難解字が「?」に化けしまっているようであれば、入力の苦労が報いられない感じがすることだろう。今のところ、そういう場合は手作業で埋めていくほかないようである。うまく転記できる場合、できない場合があるようだ。あるいは、使用文字コードを最初に指定するなどの方法がありうるか。ウィンドウズが内部的にユニコード「のみ」になれば自然解消する問題か。そういう困った点はあるが、全体的には変換精度も上がり、ずいぶんと実用度が増してきたように思う。(11.8)◇13dでは、「ひらがな」「カタカナ」変換がきちんとできるようになった。そのまま終了しても保存できる。(11.9)◇13eでは、さらにコードの縮小を図った。また、「私注」の記号を変更し、変換を安定させた。(11.12)◇13fではボタンの不具合を一、二手直しした。(11.14)◇13gでは、文字入力補助ボタンを押した時にフォーカスがテキストボックスに移るようにした。また、「上レ」「甲レ」点の変換の不具合を直し、多少のボタンを付け加え、テキストボックス内のフォントを整えるボタン、検索結果を印刷できるボタンを付加した。(11.21)◇13hでは、テキスト書き出しボタンを修正した。(12.6)◇13iでは、書き出しテキスト名を使用ファイル名に合わせた。(12.19)
◆Ver.12cでは、「登録」時に注釈を2つまでしかひらがな変換できなかったのを、30まで変換できるようにした。また、ルビを(これも30まで)ひらがなで登録できるようにした。(11.4)
◆Ver.12aでは、「登録」「前項」の不具合を修正した。ボタンは順次整備している。(9.3)
◆Ver.11では、ボタンを5つのフレームに分けて表示するようにした。VBAではあまりボタンの数を増やすことはできないかもしれない。返り点だけを残し、送り仮名を消去する変換ボタンを付加した。(9.2)
◆Ver.10では、入力の便を考え、入力をひらがなで統一することにした。これにより入力が早く行えるだけでなく、助字等のボタンも簡素化できた。「登録」ボタンを押すと、注記を除いてカタカナに変換してワークシートに登録する。ルビの変換などはフォーム左上の「△▽」ボタンを押して《訂正》モードに入り、「訂正保存」ボタンを押さなければならないのが不便だが、ルビのない漢文ならそのまま次々に登録していけばよい。後でテキストボックスの任意の文字をひらがな・カタカナに変換できるボタンをつけた。この時も、「登録」ではなく「訂正保存」ボタンを押す。(文字ボタンの配列は今後の課題である。漢文特有の語句・助字類で入力の補助となるものに絞り込みたい。) (2006.7.27) ◇登録時に前のデータの書誌事項を消去してしまう不具合を修正した。(2006.8.25)◇変換にも不具合があり、注記の書式を一部変更した。文字入力ボタンを類別表示するようにフレームに分けた。(8.26)
◆Ver.9では、検索フォームを追加した。続けて検索できる。(2006.5.22)
◆Ver.8はカナ入力ボタンを取り、助字や定型表現等を入れ、入力の簡便化を図った。試行中のもの。データの並べ替え(ワークシート上のボタン)や、MojikyoCharacterMapの起動ボタン等を加えた(標準パスにインストールされているものとして)。体裁はなお大幅に変更の可能性あり。訂正保存ボタンが思うように機能していない。これを重ねて押すとフリーズする場合がある。(2006.5.19)
◆Ver.5の使い勝手を向上した。とくにテキスト変換について手直しした。 (2006.5.2)
◆注記に関するWordへの変換の不具合を多少修正し、再読文字の送り仮名に対応したほか、ボタンの配置と種類を一部変更した。 (2006.2.11)

カード入力・表示画面(Ver.12c)
カード入力・表示画面

カード操作画面 (Ver.12c)
カード操作画面
カード操作画面 (Ver.14e)
カード操作画面
カード操作画面 (Ver.14h, 14i)
カード操作画面
カード操作画面

カード操作画面
カード印刷画面
カード印刷画面

カード検索画面(Ver.9)
カード検索画面

本文結合フォーム(Ver.14)
カード検索画面

カード操作画面からNotepadに書き出した結果
Notepadへの転記画面

  
  【左図】 送り仮名・注記・ルビの処理もできる。(ルビは青色で表示。)
  【右図】 ユニコードの漢字が貼り付けられている。振り仮名を(  )に入れて示す。本文と書誌の体裁を変えている。(初期の図)
  変換後の画面1   変換後の画面2

  
  【応用事例】 菅茶山『大和行日記』学習テキスト