コンピュータ関係の活動実績 [コンピュータ・サイエンス]
今日、たまたま必要があって、これまで僕がやってきたコンピュータ関係の活動記録をまとめたので、それをここに採録しておく。実は、ほとんどがチベット語あるいはチベット研究支援に関する仕事であることに、今更ながら気付いた。もちろん、個人的には、あるいは使い捨てのプログラムは、もっといろいろなものを書いてはいるが、「人の役に立つ」ものはほとんどがチベット語、一部アラビア語処理であった。
後期の講義では、このチベット語処理でこれまで僕がやってきたことを、できるだけ丁寧に、ゆっくり説明していきたいと思っている。
以下の諸活動は、文系の学術研究に資するコンピュータ処理のために福田が行ってきた活動内容である。
1. 財団法人東洋文庫における多言語対応図書目録データベース構築
財団法人東洋文庫研究員在籍中、平成6年度より平成13年度まで、文部省(学術振興会)科学研究費補助金公開促進費(データベース)の交付を受け、東洋文庫所蔵アジア諸言語の図書目録をオリジナルスクリプトのままデータベース化するプロジェクトを担当した。多言語を処理するためにMacOSのWorldScript機能を利用し、データベース管理システム4th Dimentionで、データベースをプログラムした。また、多言語の相互変換やソート、検索を実現するための4th Dimention用のプラグインもC言語で作成した。そのうち、チベット語に関するプラグインは公開している(現在は古くて用をなさないので削除しました。2014/11/26付記)。
2. Tibetan Language Kit for Macintosh
1995年より大谷大学真宗総合研究所で公開しているTibetan Language Kitの作成に参加。チベット語フォントを作成して提供した。最終更新日: 2002年12月5日)。また、このキットの支援ツールとして、ローマ字転写のチベット語テキストとチベット文字テキストとを相互に変換するソフトTibetanConverterをC言語で作成した(最終更新日: 1999年8月18日)。
3. 財団法人東洋文庫のインターネット・サーバー構築
1996年度より東洋文庫は学術情報センターのSINET経由でインターネットに接続し、Web等を通して情報を発信することになった。そのためのインターネット関連サーバーをFreeBSDにより全て文庫内に構築した。また、「中央アジア研究文献目録」「中東イスラム研究文献目録」のオンライン検索システムをプログラムしたの初めとして、文庫内で構築していた図書目録のデータベースを順次、Web上で検索できるようにした。特に、2000年度からは、アラビア文字オリジナルスクリプトによるアラビア語、ペルシャ語図書目録の検索システムをプログラムした。これは、Windows2000とMacOSのアラビア語環境から検索ができ、結果もアラビア文字で表示するシステムである。さらに、東洋文庫方式のアラビア文字データベースを、東京大学東陽文化研究所、東京外国語大学などでも使用し、これら三機関のアラビア語、ペルシャ語図書目録のオンライン検索も実現した。
その他、2000年度より2002年度までに、東洋文庫所蔵のトルコ語文献、全漢籍のオンライン検索、米国議会図書館所蔵チベット語文献マイクロフィシュ版のオンライン検索、辻直四郎文庫のオンライン検索などを実現した。
4. チベット文字用TeXパッケージ
Unix上での組版、印刷ソフトであるTeXで、チベット文字を使用するためのパッケージを作成し、2002年より公開した(http://fukuda.tibetan-studies.net/programs/TibTeXhtml/index.html。最終更新日: 2003年4月18日)。これは、Postscriptチベット文字フォント、フォントのメトリック情報、TeXのチベット文字への変換ソフト、チベット語を扱うためのTeX用スタイルファイルなどからなる。
5. 文系論文のための簡単設定スタイルファイルEasyLayout
文系の論文用のスタイルファイルを設計し、公開している(http://fukuda.tibetan-studies.net/programs/EasyLayout.zip。最終更新日: 2006年12月7日)。文系の論文で使うのに適したデザインができるようにしてあると同時に、TeXの初心者にも使いやすいよう、コマンド名を全部日本語で定義している。
6. 大谷大学人文情報学科版Knoppix3.7
大谷大学でのUnix関連の演習で利用するために、CD-ROMで起動するUnixの一つKnoppixをカスタマイズし、2005年5月30日より、イメージファイルを公開した(最終更新日: 2005年5月30日。現在は古いので削除。2014/11/26付記)。TeX環境、Python、Java言語、XML関連のソフトを追加し、また各種サーバーを起動したり、文字コードを変換したり、プロキシを設定したりするなど、Knoppixを簡単に使用できるようにコマンドを作成しインストールしてある。
7. 日本語スクリプト言語wythonの設計(進行中)
プログラミング初心者に、プログラミングの基本概念を教えるのに適した教育用日本語スクリプト言語wythohを作成しつつある。これはまだ公開するにはいたっていないが、基本的な機能は実装済み。2005年7月12日現在で作成中。
大谷大学人文情報学科版KNOPPIX3.7 [コンピュータ・サイエンス]
やっと完成した。いや、完成というほど、完全なものではない。全てが動くかどうか細かいチェックはしていない。ベータテストの期間を設けずに公開するとすれば、完成したというよりは、動くかどうか分からないが、とりあえず、現時点でのスナップショットを公開する、ということになる。
これもLinuxWorld Expo/Tokyo 2005(6月1日〜3日)での配布という外圧があったからこその作業だった。まだ、出品するまでにはCD-Rのコピー、ラベルの印刷、簡単な説明書のコピー、サポートページの立ち上げなど、やらなければならないことがいくつも残っている。
特にサポートページの作成を機に、人文情報学科のゼミのリンクから入る福田ゼミ全体のページをリニューアルしようと考えている。考えてはいるが、果たしてLinuxWorldまでに間に合うかどうかは微妙だ。デザインの才能のない僕には、気の利いたページを作るのは難しい。既に関連Webサイトの情報そのものは、山のようにあるのだが、それが今は雑然とつぎはぎされた状態なので、その膨大な情報を分かりやすく提供するのが、まず何よりも重要な目標だ。
分かりやすいこと、そのためのデザイン、というテーマだ。これももちろん、全体を完全にリニューアルすることはできない。時間がない。他にやることは、これまた山のようにある。だから、せいぜい、一番上の階層から、2階層、あるいは3階層くらいまでのところのナビげージョンを整理することになる。
本当は最初からきちんと設計しておくべきだ、というのが正論なのだろうが、時間をかけて、その時々に必要なものを付け加えていくと、どうしても、全体の構成がつぎはぎだらけになってしまうことは避けられない。それを、ある時点で整理することになるのだが、整理しやすいような構成を最初から取っていることも必要なのかもしれない。どういう風にしたら、後から構成やデザインを変更しやすいか、そのノウハウについても、今後考えてみたい。
Knoppix 3.8.1のカスタマイズ [コンピュータ・サイエンス]
大谷大学人文情報学科版Knoppix3.8.1は、今日もいくつかのシェルスクリプトを作成・改良してほぼ完成したが、ゼミ生から、やはりキーボードやマウスが動かない、という症状が報告された。僕のノートPCでも、起動時に
knoppix acpi=off apm=off
としないとマウスが動かない。2ちゃんねるのKnoppixスレを見ても、やはりそういう症状が報告されているだけではなく、CDからの起動ができない、重くなっている、などの不具合が報告されている。
産総研の3.8.1のダウンロードページでも、マウスやキーボードが動かない場合には、acpi=offやnoacpiなどの起動時オプションを試すように注意書きされているので、どうも、これは最初から分かっていたことのようだ。
もちろん、何の問題もなく起動する機械もある。大学のPCは今のところ、全て大丈夫。ゼミ生のなかでも、大丈夫なところはある。大体、そんなにみんながおかしかったら、公開は中止されるだろう。
しかし、一方で、大谷大学人文情報学科版は教育利用を目指すわけだから、不安定なバージョンを使用するのは好ましくない。大学はいいとして、学生が自宅で利用するのにも、いろいろな環境で使えるものの方が、最新のバージョンであることよりも大事だ。初心者は、環境が変わったことに対応して、自分でいろいろな処置を行うことができないので、とにかく、問題なく起動するものが必要である。
しかし、3.8.1で既にマスターを作ってしまっているので、それを消すのももったいない。仕方がないので、カスタマイズ自身は同じ方針の3.7バージョンも作ることにした。シェルスクリプトやEmacsの設定ファイル、パッケージなどは同じでよい。また最後にしたカスタマイズも、今なら覚えているので、それを3.7にも適用するのは、それほど難しくはない(と本人に言い聞かせている)。
3.8.1と3.7の二つのバージョンで、カスタマイズ内容の同じものを作ることになる。今回は、LinuxWorldでの配布を機に、大学のサーバーでイメージファイルの公開もする予定なので、その二つの版を置くことになる。
今後、これらマウスやキーボード関係の不具合を解消したマイナーバージョンアップ版がすぐにもでるかもしれず、そうしたら、もう一度カスタマイズのやり直しをしなければならなくなるかもしれない。もっと同じ方針のカスタマイズを組織的に、あるいは半自動でできるようなシステムを考えなければ、時間と労力がかかり、神経がすり切れてしまう。早急に方法を考えてみたい。
教育用Knoppix [コンピュータ・サイエンス]
Knoppixを教育用にカスタマイズして、教育現場で利用しようという人たちの情報交換のメーリングリストがある。もともとは、東北学院大学の志子田先生がKnoppix Eduという、Knoppixのカスタマイズ版を作成し配布したことから始まった。
そのメーリングリストの中で、6月1日から3日にかけて東京ビックサイトで開催されるLinux Worldにおいて、教育用のKnoppixを作成している機関が共同で展示をしよう、という話が持ち上がっている。そこで、それぞれが作成したKnoppixを配布したら、インパクトがあるのではないか、という話になっている。
僕のところは、その教育用にKnoppixをカスタマイズし、演習で使用しているので、公開用に少し整理したものを作成し、50枚くらいをCD-Rで焼いて配布しようかと考えている。
教育用と言っても、用途はいろいろである。それぞれの大学は、それぞれの用途に合わせてKnoppixのカスタマイズをしている。僕のところの特徴、つまり、オリジナルのものから修正している主な箇所は次のようなものである。
- pLaTeXをインストールした。また、奥村先生の新JISクラスやjumolineなど、いくつかのパッケージを追加した。
- EmacsでTeXとPythonとPHP用のモードを追加し、行間や一行の幅を調整するなど、通常の僕の使用形態に合わせたカスタマイズをした。
- コンソールの行数を増やし、背景をブラックにしたLinux色の設定にした。
- ApacheとMySQLとを起動するスクリプトを作成し、簡単に利用できるようにした。
- Pythonのバージョンを上げ、デフォルトで日本語関連のコーデックを使えるようにした。
- Firefoxをインストールし、プロクシを設定するスクリプトを用意した。
- テキストファイルのシフトJISとEUC-JPを変換するスクリプトを作成した。qkcを利用しているので、ファイル名を指定するだけで、コーディングを変えることが出来る。
- まだ実装していないが、計画中なのは、フロッピーとのファイルのコピーを簡単にするスクリプトである。
- その他に学内での使用に限定してJDKとAcrobat Readerを組み込んでいるが、これは公開時には、インストールしないものを作成する。
ブログ関連技術もまだまだ [コンピュータ・サイエンス]
いくつかのブログサイトを回っていると、各サイトで提供している機能がまちまちだ。
ブログ開設人口は非常な勢いで増えているため、サーバーが音をあげてしまう場合も少なくない。
ブログを支える技術の一つ、RSSフィードやRSS受信にしても、バージョンに揺れがある。日本では1.0と2.0が混在しているが、これらは元々素性が違って、1.0のバージョンアップ版が2.0であるわけではない。さらに、ATOMのような別のフォーマットも使われている。
このファイルの名称も、index.rssだったり、index.rdfだったり、index.xmlだったりする。ただし、このこと自体はファイルの中身には関係ないので、単に不統一感は気分の問題に過ぎない。
問題は、どうみても正しいファイル内容で、名前も問題ないのに、たとえばIEで見ることができないサイトがある。もちろん、隠しているわけではない。それをダウンロードして名前を代えてローカルに保存すれば、正常に中身をみることができる。
さらに別のサイトでは(結構大きいサイト)、RSSが最新の状態に更新されない。というか、最初に登録したままの状態になっていて、いつまでも、最初の記事しかRSSに取り込まれていない。したがって、RSSの更新をチェックしても、常に未更新ということで、一番下に回されるか、表示件数が制限されている場合は、そもそも表示されることもない。
この更新情報の表示も、ブログ内でできるサイトとできないサイトがある。このso-netのブログは更新されたものに赤字で「new」のマークがつくので便利であるが、単にリンクとしてしか表示できない(従って更新情報は表示されない)サイトもある。
いずれにせよ、RSSが正しく作成されていなかったり、受信に問題があるブログがある場合には、更新情報と言ったって、信頼できるものではないことになり、これらをチェックするには別の手段、たとえばRSSリーダーを導入したりしなければならなくなる。
そうしても、サイト自体が正しいRSSを発信していなければ、RSSの更新情報だけに頼ることもできない。つまり、直接ブックマークからそのサイトに飛ばなければならないことになるのである。
RSSそのものはXMLの一種で、きちんとしたルールに従った文書なのだから、問題はそれを処理する側にあるのだ。こんな状況を見ていると、そもそも他人任せではなく、自分で何かのツールを作ってしまう、あるいは少なくとも自分でプログラムを作って、自分の納得のいくようにRSSを処理した方がいいのではないか、という気になってくる。
ということで、実は僕のこのブログに表示されるRSSの更新情報もあまり信用できないことに注意して欲しい。