• twitter
  • facebook
文学・歴史資料のデジタル加工入門

大量置換のためのツール sed を用いて その2【文学・歴史資料のデジタル加工入門11】 (木越 治)

●宿題にお答えします

前回、文献目録の掲出方法について述べたとき、この連載の担当編集者から、次のような質問があった。
======================================================

最後の文献目録を検索し加工するときに、論文、レジュメなどに掲載する形式で出力する事例をしめしていただけないでしょうか。

具体的には以下のような内容です。

・執筆者の50音順で配列する。
・同一執筆者の場合は、発行年の早い順とする。
・論文は「 」、書籍は『 』でくくる。掲載誌等は『 』でくくる。
・発行年は西暦とし、月、和暦は入れない
・発行年、巻号数などは漢数字とする(一〇式。十は使わない)
第1巻6号の場合、一-六 とする。
・執筆者の名前よみは入れない

======================================================

 

ちょっと裏技も使うが、早速、やってみることにしよう。

ここでは、今回の最初に検索した結果、つまり、「上田秋成研究文献目録」データのうち第3フィールドに「菊花の約」を含むデータ計53件を利用して、要求された形式に整えることを研究してみることにしよう。念のため、データの最初の方と最後の方を掲げておく。

 

======================================================

しげともき,重友毅,「菊花の約」の原話,歴史と国文学,5の5,昭和6年11月,10,1931.11,→『近世国文学考説』(昭和8年8月、積文館刊)・『重友毅著作集〈第4巻〉秋成の研究』(昭和46年5月、文理書院刊),
(略)
しげともき,重友毅,「菊花の約」と人麿の羇旅歌,国語と国文学,20の2,昭和18年2月,13,1943.02,→『雨月物語の研究』(昭和21年11月、大八洲出版株式会社刊)・『重友毅著作集〈第4巻〉秋成の研究』(昭和46年5月、文理書院刊),
(中略)
いのうえたいし,井上泰至,軽薄の人は読者なり―「菊花の約」を読む,文学研究,86,平成10年4月,12,1998.03,,

======================================================

 

確認のために再掲しておくが、このデータは、次のようなフィールドから成っていた。

 

======================================================

$1:著者のよみ
$2:著者
$3:論文名・著書名
$4:掲載誌・掲載書名(出版社)
$5:巻号
$6:頁数
$7:発表年月(元号表記)
$8:発表年月(西暦表記)
$9:備考(単行本収録データなど)

======================================================

 

今回、必要なのは、$2 $3 $4 $5 $8である。
この作業に使うツールは3つである。

まず、

・執筆者の50音順で配列する。
・同一執筆者の場合は、発行年の早い順とする。

この作業については、今回は、フィールドを指定してソートできる「sortf」を使ってみることにしよう。この作業は、ふつうはExcelでやるところだが、ようやく「sortf」を使う場面が出てきたので、ぜひ紹介しておきたいのである。

このツールで注意すべき点は、
-t オプションでフィールド区切り文字を指定する、つまり csv データでは -t, とする。
これが第1、また、特定のフィールドをソート対象にするときは、次のようにする。
第1フィールド(著者の読み)をソート対象にするときは、 +0 -1
第8フィールド(西暦年表示による発表年月)をソート対象にするときは、 +7 -8
くわしくは、マニュアルを参照していただきたいが、「+0 -1」で、第1フィールドがソート対象になるというのがわかりにくいかもしれない(私も、今回マニュアルを読み直して、かつてそのようにしてつかっていたことを思い出した。)が、そういうものだと理解して使うしかない。(注)

注)この「sortf」は、MS-DOS全盛時代(1995年頃)に、豊島正之氏(現上智大教授、もと同僚)が作成したツールである。システムに依存しないコードで書かれているから、Windows 10 でも問題なく動くスグレモノである。作成者ご本人は、そんなことは全く知らないらしく、同梱されていたマニュアル類が見当たらなかったので送って下さいとお願いしたところ、「どこにあるかわからない」という返事だったので、別の仲間に依頼して入手できたが、このへんのオプションのことがわかっていないとうまく使えないツールである。 それにしても、ハードウェアやOSに依存しないプログラムがいかに貴重かということを、今回、この連載をやってみて痛感している。

私は、プログラムを書けないので、他の人が作ったものをだまって使うしかないのかもしれないが、長年のユーザーとして、OSがちょっとかわっただけで動かないようなプログラムを書いたり、高い値段で提供したりしないでいただきたい、ということを、要求する権利はあるだろう。

たとえば、角川書店(あえて名前を出す)が、CD-ROMで販売した「角川古語大辞典」は、Windows Vista 以後のOSでは動かない。本体はとてもいい辞典なので、私は、これを使い続けたいがために、サポートの終わった Vista マシンを使い続けなければならないのである。

なお、今回用いた「sortf」も「sed」も、web上で見つけて手元に保存しておいたものだが、今回探しても、なかなか同じものが見つからなかった。やむをえないので、この連載のどこかにまとめておいておくことにする。