« 2010年8月 | トップページ | 2010年10月 »

2010年9月

2010年9月29日 (水)

ローマ字入力azik方式から中根式簡易速記法(speedmemo)を思いだす

中根式簡易速記法(speedmemo)を使ったことがある

Time-stamp: "Thu Jul 08 14:03:16 JST 2010"

あれは中学生の頃だろうか、速記に興味を持ったことがある。雑誌の公告 で通信教育を申し込む。送られてきたテキストを見ただけで結局モノにはなら なかった。速く書くために30度ずつ傾きの違う直線とか円弧そして、それらの 端に小さな釣り針のような鉤形を付けたものを五十音文字とする。その字数が 多すぎて憶えきれない。昨日書いたものが翌日になると判読できない。

今なら本屋さんに速記のおおよそが分かる本がある。当時は自転車で30分以 上かかる本屋さんには滅多に行けなかった。そのため雑誌公告の宣伝文句に 釣られてしまったのである。

速記は書き取るよりその後に普通の文字に翻訳する(清書、反訳)のが難し い。反訳には書き取りに要した時間の5倍は掛かるという。それ以前の問題 として数多い速記文字(なにしろ五十音)が憶えきれないがある。通信教育の テキストは一瞥(いちべつ)しただけの積ん読で終わる。自学自習で身につく ものではないと知る。

それから凡そ10年後に再び速記という文字に出会う。 東京池袋駅西口芳林 堂書店にて昭和49年(1974年)4月9日購入した本に「簡易速記法」がある。本 屋さんのレシートが本に挟んであった。レシートの金額は380円であり本の 奥付(おくづけ)にある値段と一致する。調べてみると夜間大学卒業前年のこ とである。

  • 中根正雄著「簡易速記法入門」昭和47年、時事通信社

現在この本は絶版であろうが、同じような内容の別の本がある。私が入手し てから36年になる今もスピードメモ法と名前を変えて健在である。次のホー ムページからダウンロードできる「スピードメモ法概要」で凡そは分かるが 絡繰り的なことを知るには本を読んだほうがよい。練習ドリルがいっぱいで 買うまでもなさそうに見えるが払った金額だけの価値はある。

「昭和33年8月12日に中根正雄先生が「即席速記法」として考案いたしました。 昭和47年9月10日に「簡易速記法」、昭和53年4月15日に「スピードメモ法」と 名称を変更して改良を加えながら今日に伝えられております。
「スピードメモ法 概要」は、中根正雄著「即席速記法」中根式即席早書法 出版社(昭和42年5月20日初版発行)を抜粋しました。

簡易速記法は速記専用の特殊文字を使わない。使い慣れたひらがなとカタ カナだけを使う。さらに画数の多い漢字を使わない工夫をする。その工夫の一 つに「ツキイチクン法」がある。それは「漢字を音読みして2音になるものは2 音目にツ、キ、イ、チ、ク、ンのうち、どれかがくる」という経験則に基づく ものである。

例えば、発(ハツ)、熱(ネツ)、赤(セキ)、益(エキ)、改(カイ)、正(セイ)、 日(ニチ、ジツ)、質(シチ、シツ)、作(サク)、国(コク)、専(セン)、門(モ ン)などである。

このうち「日、質」が2通りの読み方になるが、これは「ツ」が訛って「 チ」になっている。国(クニ)、人(ヒト)などと訓読みして2音になのではな く、国(コク)、人(ジン)というように必ず音読みして2音になるものである。

これは中根式速記の創始者である中根正親氏が、本格的な中根式速記法を考 案するときに見つけたという。本格的な中根式では「インツキク法」といっ て大切な規則としている。ツキイチクン法とは、この6字を省く方法である。

簡易速記法のツキイチクン法では一字領域(一桝)の上半分に音読み1音目の カタカナを、下半分に音読み2音目になる6字毎に割り当てた符号を付ける。 ツキイチクン符号がなくても当りが付くなら下付きの符号を省略する。

簡易速記法ならではの規則に次の二つがある。

  1. カタカナは今のままで短かく読む。
  2. ひらがなは全部、読み方をかえる。
    1. 「う」列と「お」列のひらがなには「ウ」を付けて読む。
      「う」は「ウウ」、「く」は「クウ」、「す」は「スウ」、「つ」は 「ツウ」、「ぬ」は「ヌウ」.....と読む。
      「お」は「オウ」、「こ」は「コウ」、「そ」は「ソウ」、「と」は 「トウ」のように。
    2. 「い」列と「え」列のひらがなにも「ウ」を付けて読むが、実際の読み は歴史的仮名遣いを真似る。
      「き」は「キウ=キュウ」、「し」は「シウ=シュウ」、「ち」は「チ ウ=チュウ」、「に」は「ニウ=ニュウ」.....と読む。
      「け」は「ケウ=キョウ」、「せ」は「セウ=ショウ」、「て」は 「テウ=チョウ」のように。
    3. 「あ」列は「ャ」を付けて短かく読む。
      「か」は「カャ=キャ」、「さ」は「サャ=シャ」、「た」は「タャ= チャ」、「な」は「ナャ=ニャ」.....と読む。

例えば、簡易速記法の「ヒこキ」は飛行機、「キて」は貴重、「せさ」は商 社になる。

簡易速記法に慣れるには少し時間がかかる、旧仮名遣い風の読み方は読めて も書く段になると直ぐには思い浮かばない。新仮名世代には旧仮名がピンと 来ない。少しの練習が要る。もう昔のことで記憶が確かでないが二、三ヶ月 は使っただろうか。結局モノにはならなかった。その記法で書いたものが 残っているのを何処かで見つけて懐しく感じたことがある。本格的速記は ニ、三日で投げ出したがこちらは暫くの間使っている。

独特の速記文字を憶える必要のない簡易速記法でさえ使い続けることができ なかったのはどうしてだろうか。それは速記という技能は一時凌ぎ(しのぎ) のものであるという一点に尽きると思う。聞き取りから反訳して清書するま での間をもたすための自分だけが読める言わば暗号メモである。

本格的速記ではその場で頻出する言葉を一時的に通常は使わない記号を割り 当てて省力化を図ったりするものらしい。その場限りの記号を使っしまう と、書いてから二、三日後なら復元できても一ヶ月も経つと判読不可能にな るのではなかろうか。

簡易速記法のツキイチクン君の符号点(付加記号)を省略した場合を考える。 書いてから暫く後なら勘で読めても時間が経つうちに首を傾げるようにな る。何ヶ月も経った記録文字(記号)はスラスラと読めるものではない。本職 の人は速記の文字を普通の文字と同じように読めるのだろうか。私の短かい 簡易速記法体験からは到底むりである。

日本語文における漢字使用には視覚的な強調効果がある。英文なら太字とか 斜体とかで目立たせる単語(用語)を、日本語では漢字表記にすることで強調 できる。二、三画しかない仮名文字列の中にある画数の多い黒々とした漢字 は浮き上がって見える。無意識のうちに漢字だけを目で追い、仮名は流し読 みする。仮名文字列の中でもひらがなとカタカナを使い分けることで目立た せることができる。

速記文字は速く書けることに最重点を置いているため画数が少なく似たよう な文字(というか記号っぽい)の羅列になる。記号線の傾き角度や曲り具合の 僅かな違いで判読しなければならない。分かち書きしないひらがな文字ばか りの長文を読むような困難がある。結局のところ、迅速に書ける文字は緩慢 にしか読めないという皮肉な結果になっている。

思案しながら長文を書くときに簡易速記法は使えない。時間の余裕があると きは速記文字ではなく普通の文字で書いたほうがよい。後で読み返すこと を考えたら速記文字なんて使えない。速記文字を使うのは耳で聞いた内容を 漏れなく書き取らなければならないような緊急の場合に限る。しゃべるス ピードにメモが追い付かないときに仕方なく使うものである。もっとも普段 から使ってないものはイザというときアテ(頼り)にならない。あちら立てれ ばこちら立たず、うまくはいかないものである。

結局ほとんど使わない使えなかった簡易速記法だったが、その解説本だけは 大切に保存している。倉庫を大捜索するまでもなく身近で見つかった。後生 大事に取って置いた理由は簡易速記法のツキイチクン法などのアイデアが面 白かったせいである。いま一つは今後類書は入手できない(少本)のではと 考えた。幸いなことに今も売られている。需要はあるらしい。

ローマ字入力azik方式から中根式簡易速記法(speedmemo)を思いだす

今頃になって中根式簡易速記法を思い出した理由は、パソコンのローマ字入 力にazikという方式があることを知ったからである。何となくそれらのアイ デアが似ているように思ったことが切っ掛けである。

パソコンの日本語入力、仮名漢字変換ではローマ字入力か仮名入力を使う。 私は機械式英文タイプライターを使ったことがあるためローマ字入力に違和 感がなく、当然のようにそれを使うことになった。

1995年(平成7年)9月にパソコンを買ってから2010年(平成22年)7月に至るま で普通の訓令式のローマ字入力を使ってきた。キーボードのアルファベット キーを押してから仮名や漢字が入力画面に表示されるまでの絡繰り(からく り)を知りたいとおもったことは一度もない。仮名漢字変換周りは禁断の聖 域としており、触ったことがない。こんかい図らずも一歩前へ踏み出してし まった。

普段の物書きにはmeadowかvimというテキストエディタを使っている。どち らかというとパソコンおたくッポクてマニアックな感じを持たれるエディタ である。そして仮名漢字変換にはskkというこれまた一般には知られてない ものを使っている。数学の数式を綺麗にプリントできるLaTeXにのめり込む うちに、これらにハマることになったのである。

ある時skkのマニュアルを眺めていたらローマ字入力のところにazikという 文字があった。何だろうと調べてみると拡張ローマ字入力方式だという。

「AZIK (エイズィック) は QWERTY 配列をベースとした拡張ローマ字入力で す。一般のローマ字入力がそのまま使える上での拡張であることが特徴で す。」

訓令式ローマ字ではアルファベット26文字のうちに殆ど出番のないキーがあ る。例えば、L, Q, Xなどは使われない。また、ローマ字かな変換テーブル における普通の文字は子音+母音のアルファベット2文字に仮名を対応させ ている。ここには現われない子音+子音に仮名を割り当てたり、使用頻度の 少ないキーを混ぜ込んで通常の変換テーブルを拡張することを考える。

これまでの訓令式ローマ字のローマ字対かなの対応はそのままにして、今迄 は使ってなかったアルファベットの組み合せと仮名の対応を追加する。従来 のローマ字仮名変換テーブルのスーパーセットを作るわけである。これまで 使ってきたローマ字入力はそのまま受け付けて、しかも今回新たに割り当て たものも使えるようにする。新しい変換テーブル通りでなければ受け付けな いという頑固さはない。これまで通りでよろしい、でもこちらも受け付けま すよという寛容なものである。

skkのオンラインマニュアルからazik開発者のページを知る。

「SKK用設定ファイル
テキストエディタ Emacs 上で動作する日本語入力ソフトウェアであるSKK において、AZIK 方式のローマ字入力を可能にする設定ファイルを小野田さ んが作成されました(2002.1)。最新の Daredevil SKK には AZIK 用の設定 ファイルおよびチュートリアルが含まれるということです。(02/01/12)」

そしてグーグル検索によりmeadowのskkでローマ字入力azik方式を使うため のファイルskk-azik.elが次にあることを知る。

肝腎な設定方法は次を参考にする。

「skk-azik.el --- (拡張ローマ字入力 "AZIK" を SKK で使うための設定) をmeadow/site-lisp/ に置いた。上記ファイルに書かれている説明に従っ て、.emacs に以下を追加。
  (setq skk-azik-keyboard-type 'en)
  (load "/meadow/site-lisp/skk-azik.el")」

これだけのことでskkを起動して「KN」と打つと「かん」と表示される。動 いた。チョっと嬉しかった。実際にazikが動く環境になるとazikについてさ らに知りたくなる。開発者のページを読んでいるうちにローマ字仮名変換 テーブルの拡張のアイデアと中根式簡易速記法の記法のそれが似ているよう におもう。そうだッ、あの本を探そう。押し入れの中から直ぐに見つかる。

両者のアイデアは同一ではないが重なる部分はある。速く文字を書く、速く キーボードを打つという目的ではよく似たアイデアを使うことになるのだな と思う。似ているとおもえば似ている。そうでないと言えば違うのかもしれ ない。ともかくも色々と考えをめぐらす切っ掛けにはなった。

(ところで速記という技能の先行きは暗いようである。速記者養成所は、衆 参両議院ともに既に平成18年(2006年)に最後の卒業生を送り出し後、廃止さ れている。地方議会や裁判所でも、手書き速記廃止の流れは定着していると いう。)

ひらがな文字列を速記文字で書けてもそれを元のひらがなとして読み返すこ とは容易でない。それは無線電信のモールス符号を送信するよりは受信のほ うが難しいことに似ている。同じようにazikで打つアルファベットのキー並 びを平仮名列にする(逆変換)のは難しい。

例えば「しんねん」をazik方式では「SKND」と打つ。従来方式のローマ字入 力なら「SINNENN」あたりになる。後者のアルファベット列は直ちに「しん ねん」と結び付けられるが「SKND」から反射的に「しんねん」が出るまでに は相当な訓練が必要だろう。速記と違い逆変換の必要はないが相互変換でき るまでにならないとazikの達人にはなれない気がする。

| | コメント (0) | トラックバック (0)

2010年9月20日 (月)

skk.vimでazikを使う

skk.vimでazikを使う

Time-stamp: "Sun Jul 18 07:45:56 JST 2010"

meadowのskkでazikが動くようになったので次はskk.vimで動かないだろうか とネット検索したら有り難いことにちゃんと先人が居た。次の記事を参考に して動くようになった。

「skk.vim上でAZIK を利用するための設定を作成したので公開します。たぶん どこかに必要としてる人も少~しはいるのかな?
内容はほぼAZIKと同じですが、個人的な変更もちょっとだけあります。そこ ら辺は適宜修正してください。下記に簡単な説明を。
  1. skk.vim を導入後、下記の設定を vimrc ファイルに記述します。
  2. デフォルトの skk.vim の設定では、変換開始のキーに "X" が除かれ ているので、新たに設定しておく必要があります。
  3. 個人的に、「っ」は "tm" で変換してます。(AZIK では ";" で入力 するようになってます。)
  4. その他は適当に。。。(vimスクリプト部分省略)」

さらに検索したらこの記事に対する補足説明が見つかる。

http://loveconsole.blogspot.com/2008/02/skkvim-azik.html
単純にコピペするとエントリ間がタブになっていないので失敗する。また、 l による英字へのトグルが機能しなくなるので、skk.vimのSkkInsertの終わ りのほうに、
    elseif b:skk_henkan_mode == 2
      return SkkSetHenkanPoint(a:char)
    "force AsciiMode                                " 追加
    elseif b:skk_henkan_mode == 0 && a:char == 'l'  " 追加
      return SkkAsciiMode("")                       " 追加
    else
      return s:SkkInsertKana(a:char)
    endif
のように追加する。」

拗音「ぁ」は「la」でなくてskk-azik.elにならって「xxa」を割り当てた。 そのため上記(.mjt氏投稿)のskk.vimに対する改造はしない。

上記ページ(hiro.cui氏投稿)にあるローマ字仮名変換テーブルを叩き台にす る。エントリの候補間をタブで区切らなければならない。ホームページの ソースは単なるスペース区切りである。これをタブ区切りに置き換える作業 が難題であった。vimの検索置換でなんとかこなした。手動でやるのは無理 だろう。500行を超える。(平成22年7月3日)

ホームページの画面上のローマ字仮名変換テーブルをコピーアンドペースト で一個のテキストファイルazik_hiro.defにする。いきなり_vimrcに貼り付 けたのでは修整しにくい。対象部分だけを一ファイルにしたほうが作業しや すい。vimエディタの/や?検索でタブに置き換えるべき空白部分を探す。「: set hlsearch」(ハイライトサーチ、大抵はデフォルトでセットされている) にして希望部分をちゃんと検索できることを確認する。

日本語文字は指定できないので「¥S」(バックスラッシュとラージエス、非 空白(スペースとタブ以外)文字)を使う。完全に指定できないときは検索置 換にグローバル(g)とチェック(c)を指定した逐次確認で実行する。

こういう修整作業をvimは得意とする。確認しながらの置換なので対象部分を 完全に指定できなくてもよい。修整漏れは後で手作業の落穂拾いとする。 それでも全部を手作業でやるよりは速い。完璧を目指してはいけない。8割 がたが検索置換で片付くなら御の字とする。

123   \. "hgw  ひぇい ヒェイ\<NL>"           " オリジナル
      \. "hgw  ひぇい ヒェイ\<NL>"           " 修整後

ホームページの画面から直接にコピーアンドペーストしたazik_hiro.defで は、行頭から3桁の行番号、3個のスペースの後にバックスラッシュとコン マ、スペース1個、そして今回改造しようとするダブルクォートで囲まれた エントリ部分がある。

ダブルクォート囲みのエントリ部分は2~3文字のアルファベット、1~2個の スペース、ひらかな候補、1~2個のスペース、カタカナ候補の順番となって いる。この部分をスペース区切りからタブ区切りに変更する。

改造はskk.vimにおけるskk_rom_kana_rulesのスタイルに合わせることにす る。行頭のタブの後はバックスラッシュとコンマにする。そこでコピーした オリジナルazik_hiro.defの3桁の行番号と3個のスペースを1個のタブ文字に 置き換える。

「/^[ 0-9][ 0-9][0-9] ¥{3}¥¥¥.」でこの部分が抽出できる。すぐにこのよ うな複雑な正規表現を思いつくわけがない。試行錯誤の末にようやく辿りつ いた。この部分をタブとバックスラッシュとコンマ並びに置き換えるには次 を実行する。

:%s/^[ 0-9][ 0-9][0-9] \{3}\\\./    \\\./gc

次は1個のアルファベット、1個以上のスペース、1個以上の非空白文字 の並びで検索をかける。「/[a-z] ¥+¥S¥+」を使う。完璧には拾えない。対 象外も含まれてしまう。cオプションを付けて実行し、積み残しは手作業と する。

:%s/\([a-z]\) \+\(\S\+\)/\1        \2/gc

次は1個以上のひらがなと1個以上のカタカナの間にあるスペースをタブに置 き換える。場所を特定するための識別子として最後にスラッシュを付ける。

「/¥S¥+ ¥+¥S¥+¥¥」で検索する。そして次の置換を実行する。

:%s/\(\S\+\) \+\(\S\+\\\)/\1        \2/gc

もっと鮮かに片付ける方法はないだろうか。一回走るだけで希望通りのこと が出来るプログラムを作ればよいのだろうが、それには開発時間がかかる。 自動実行するにしろ手作業にしろその仕事は何段階かに分かれる。一回しか 使わないものに凝ってはいられない。泥縄式で虱潰し(しらみつぶし)的にや るしかない。

ここでテキスト処理言語のperlのスローガンを言い訳にする。「やり方は何 通りもある」、``There is more than one way to do it.''である。 perl の書き方はとても柔軟で、くどくど細かく丁寧に書いても、ザックリ省略し た暗号のような書き方でも動く。通じるなら極限まで削っても構わない。他 に解釈の余地がないなら出来るだけサボる書き方をする。

プログラムスタイルにも繰り返しの多い冗長な書き方をするか一文字でも少 なくするように凝りに凝って出来るだけ縮めた難解なものにするかがある。 一般に、冗長な書き方のプログラムほど改造しやすい。ガチガチに縮めたも のは使い回しにくい。メモリーが少ないとか処理スピードが遅いとかの時代 は短かいプログラムになるように凝っていたと聞く。

尾鰭を付けた長々しい報告よりは起承転結の整った簡潔な説明が喜ばれる。 何段階もある複雑なマニュアルやプログラムは実行に時間がかかる。「風 呂、飯、寝る!」式の無駄のないプログラムが人間にとっても機械にとって も望ましい。そうは言ってもそこまでにプログラムを精製するには時間がか かる。

ところで我々としては、とりあえず目の前の仕事が片付けばよいのであって 方法は問わない。方法は何であれ、問題を解けばよい。perlの「やり方は何 通りもある」という御題目をそのように解釈してもよいと思う。稚拙な方法 でも時間内に片付くならそれでよい。スマートさにはこだわらない愚鈍な方 法であっても結果さえ出ればよいのである。

500行ちかくを手作業で手直しするのでは気が遠くなる。しかし先ずは手作 業で挑戦する。あまりにも修整個所が多すぎて断念する。もし注意深く手作 業でやったとしても結果に自信が持てない。バグが残りそうな気がする。そ こで本と首っ引きで検索置換の方法を考える。慣れない作業に手間取った。

ここでいちばん便利だったのはvimのハイライトサーチである。捻り出した 正規表現で希望の部分が抽出できるかを一覧確認することができる。sed, awk, perlといったテキスト処理言語はコマンドプロンプトからなので面倒 なのである。vimがテキスト処理を得意とするunix由来のテキストエディタ だからこそ出来たと思う。

普段使っているvimではスペースやタブ文字を画面上で確認することができ ない。そこで秀丸エディタで確認する。秀丸は設定により半角スペース、全 角スペースとタブ文字が確認できる。他にサクラエディタでも確認できる。

なお、vimでタブ文字を表示するには「:set list」コマンドを使う。表示で きない文字は '^'を付けて表示し、行末に $ が置かれる。listを解除する には「:set nolist」を使う。

ここではhiro.cui氏投稿ページからコピーで作ったazik_hiro.defを改造し た。azik開発者のページにあるazikローマ字仮名変換テーブルを改造しても よい。ただし、このデータはローマ字と片仮名の対応だけなので面倒にな る。

こうしてできたファイルをskk-azik.vimと名付けてskk.vimのディレクトリ に置いたらちゃんと動作した。_vimrcの末尾に500行近いローマ字かな変換 表を追加する必要はなくなった。(平成22年7月4日)

skk-azik.vim.txt (現用中の試作版です)

ブラウザで内容が見れるように拡張子を「.txt」にしています。なお、ブラ ウザでの閲覧では文字化けします。ブラウザのencodingをShift_JISに変更 してください。これをダウンロードしてリネームで「.txt」を取り除いたも のをskk.vimのあるpluginディレクトリに入れるとazikが動きます。

(注)skk-azik.vimでは「っ」を「;」に割り付けています。「っ」で送り仮 名が始まる場合は「+」(shift+;)を使います。「ん」はノーマルな「nn」に なります。

skk-azik.vimのazik変換テーブルを作り直す

平成22年7月12日(月)hiro.cui氏投稿投稿のazikローマ字仮名変換テーブル には漏れのあることに気付く。skk-vars.elとskk-azik.el(azik拡張部分)の データをマージして作り直すことにする。

meadowのディレクトリにあるskk-vars.el及びskk-azik.elの文字コードはと もにjisで改行コードはlfである。 skk-vars.elのskk-rom-kana-base-rule-list及びskk-azik.elの skk-azik-additional-rom-kana-rule-listで定義されるローマ字仮名変換 テーブルを利用してhiro.cui氏投稿投稿のazikローマ字仮名変換テーブルに 補充することにする。本家skkのローマ字仮名テーブルとskk.vimでのそれで はローマ字に対応するひらがなとカタカナの並び順が反対になっている。ま た、vimスクリプト形式のデータはタブ区切りであるのに対してelisp形式は スペース区切りである。この点にも注意が必要である。

    \.  "hgw   ひぇい    ヒェイ\<NL>"     " vimスクリプト形式
    ("hgw" nil ("ヒェイ" . "ひぇい"))     ; elisp形式

本家skkのskk-rom-kana-base-rule-listのデータが約470行あり、もう一方 のskk-azik-additional-rom-kana-rule-listのデータが約240行ある。変数 名から後者がazikによる拡張部分だろう。合せて700行くらいになる。それ に対してhiro.cui氏のデータは約520行である。skk-vars.elとskk-azik.el のデータをくっつけて一ファイルにしてしまい対応表の引き数であるローマ 字部分でソートする。それをhiro.cui氏のデータにマージする。微調整して 現在のデータは650行くらいになっている。

なお、meadow用の本家skkやvim用のskk.vimはそれぞれのテキストエディタ 専用の仮名漢字変換である。これらはブラウザのieやfirefoxとかテキスト エディタの秀丸とかでは使えない。これに対してms-imeとかatokなどは windowsにインストールしているアプリケーションのどれでも使える。

meadowで本家skkを使っている場合はwindowsのms-imeやatokを自分で起動し ないかぎりmeadowが呼び出すことはない。それに対してvimでは自分が呼び 出したわけでもないのにms-imeやatokのうちwindowsがデフォルトとしてい る仮名漢字変換が勝手に起動することがある。ややこしいので次の設定で skk.vimが邪魔されないようにしている。

" 標準のimeを無効化する
let &imdisable = 1

| | コメント (0) | トラックバック (0)

2010年9月11日 (土)

namazu使用履歴(career)

namazu使用履歴(career)

Time-stamp: "Thu Jul 01 10:39:34 JST 2010"

ふと思い付いたことは書き留めることである。頭に浮かんだアイデアはすぐ に文字にしておかないと忘れてしまう。前の晩の寝入り端(ばな)に思いつい たことが翌朝になって思いだせないことは多い。忘れないために書き付けて おく。思いだせる手掛りを残しておくということは忘れるためともいえる。

時間がなければキーワードだけ書いておく。手帳とかメモ用紙に手書きす る。パソコンは使えるようになるまでに時間がかかる。すぐ使える待機状態 でもソフトを起動して記録スペースを開く手間がある。手帳をめくるとかメ モ帳を引っ張り出すほうが速い。手書きなら作業後はそのまま放置できる。 パソコンは保存を忘れると内容を消失するおそれがある。

まとまった時間が出来たらメモ書きのキーワード羅列を箇条書きに膨らま す。さらに補足説明を加えたり項目の順番を並び換えたりしてアイデアをま とめてゆく。

紙のノートであれパソコンであれ書き付けた紙片やファイルが多くなると何 を何処に書いたのかが分からなくなる。紙に書いたものはペラペラめくって 探す。紙ベースが何より便利なのはビューワ(viewer、表示器)という道具が 要らないことである。パソコンのファイルはパソコンが動いてなければ見る ことができない。そして何処に書いたかの手掛かりはファイル名しかない。

ところでパソコンのファイルに付ける名前に関しては何時も一苦労する。現 在では長たらしい日本語のファイル名を付けることができる。その昔はファ イル名として使える文字は英数字に限りしかも8.3形式という窮屈な制限が あった。8.3形式とは、ファイル名として8文字の英数字、そしてファイル種 別を表す拡張子として3文字の英数字しか使えないという規則である。

今は日本語で自由にファイル名を付けることができる。とは言ってもそれは 一台のパソコン内で扱うときに問題ないだけである。他のパソコンにファイ ルを送るとかインターネット上にあるホストコンピュータにアップロードす るとなると問題になる。

ファイルの中に書かれた情報が日本語であるということは問題ない。その ファイルをインターネットを介して遠方に送る場合のファイル名は英数字で なければならない。インターネットという技術はアメリカで生まれたもので ある。それは英語により情報を伝達するものとして設計されている。日本語 のファイル名を間違いなく伝える仕組みを完備してないのである。

いわゆるホームページのファイルには英数字のファイル名を付けなければな らない。これは日本人にとって少なからずストレスになる。ローマ字にした だけでは格好が悪い気がする。適当な英単語への置き換えにも迷う。何気な く使った英単語に思わぬ別の意味があるかもしれない。馴染のない英単語だ と分かりにくい。使った当人でさえ忘れるかもしれない。

現在のホームページはウェブログ(weblog)、略してブログ(blog)形式が主流 になっている。ブログ人気には作者が記事に付けるファイル名を考えなくて よいことがあるのかもしれない。大多数のブログ作者はプロバイダなどのホ ストコンピュータが用意したブログ作成システムを使う。そこではブログ記 事のファイル名を決めることをしない。

ブログはタイトルと本文だけを書けばよい。記事の分野分けがある場合は ジャンル指定する。記事のファイル名はリモート(遠方の、自分のパソコン ではなくて)のホストコンピュータにあるブログ作成システムが自動的に付 けてくれる。たいていは整理番号式か作成日付・時刻由来のファイル名にな る。ファイル名とは符丁であるから暗号のような文字列でも一向に構わな い。もっともそうすると作者であってもファイル内容とファイル名の関係が 分からない不便を抱えることになる。

ココログではタイトルに英単語を混ぜておくとそれを適当につなげたファイ ル名にしてくれるようである。整理番号や日付由来のファイル名よりは、お ぼろげながらもファイル内容が分かって便利になる。

最近に書いた記事ならその内容とファイル名を記憶しているが、書いてから 一ヶ月も経つと記憶は薄れる。ありふれたファイル名なら適当に当たりを付 けてローマ字か英単語を打ってみれば見つかる。ファイル名に凝りすぎた場 合は思いだせなくなる。それまでは知らかった英単語を使ったりすると先ず アウトであろう。

こういうときはファイル名で探すのを諦める。キーワードで探す。その記事 で多く使ったであろうキーワードを検索する。windowsのファイラである explorerに検索がある。「含まれる文字列」にキーワードを指定して、その ファイルのありそうなディレクトリ(フォルダ)を指定する。検索対象はテキ ストファイルに限られるがファイルを個別に開いて目で追うよりは速い。

私はテキストファイルに対するキーワード検索に、もっぱらテキストエディ タの秀丸を使う。秀丸のgrep(グレップ、global regular expression print)検索である。windowsのexplorerによる検索では「含まれる文字列」 が存在するファイル名しか表示してくれない。秀丸のgrep検索ならファイル 名とそのキーワードが含まれる行番号、そして行内容が表示される。しかも その行にカーソルを置いてタグジャンプするとその行付近を秀丸で開いてく れる。秀丸でなくても殆どのテキストエディタからgrepを使うことができ る。

explorerによる「含まれる文字列」検索にしろ秀丸のgrep検索にしろ結果が 出るまでには相当な時間がかかる。探そうとするディレクトリに多数のテキ ストファイルがあればそれだけ時間がかかる。ファイル数が少なければ速い だろうがファイル数が多すぎて見つからないからこその検索である。最初に 検査したファイルでキーワードが見つかればその時点で秀丸のgrep検索を終 了することはできる。運が悪ければ検査最後のファイルで見つかる。

grep検索にどれくらい時間が掛かるかは検索ディレクトリ内にあるファイル 数やパソコンの性能により大きく異なるだろうが大抵は分単位になる。初回 のキーワードで見つからなかった場合に他のキーワードで再検索する元気は 出ないくらいに遅いのである。

ここでgoogle検索を思い浮かべる。キーワード検索ということでは「含まれ る文字列」検索やgrep検索と変わらない。それなのに個人のパソコン内より はるかに遥かに多いファイルの中から一瞬で見つけてくれる。インターネッ トを通して遠くにあるgoogleサイトにアクセスしているのに一瞬で検索結果 が表示される。キーワードにより何百万件ものヒットがある。

この検索スピードの違いは何故であろうか。リクエストがあってから大急ぎ で関係ファイルを泥縄式、虱潰し(しらみつぶし)的に検索するのがgrep検索 である。それに対して、あらかじめ全ての関係ファイルを検査しインデック ス(索引)付けを済ませて検索リクエストを待ち構えているのがgoogle検索で ある。

調理の殆どを済ませ仕上げを残して来客に対応するファーストフードなgoogle に対して、お客さんの注文を受けてから食材を取り出して料理に取り掛かる スローフードなgrepとの違いと言ったらよいだろうか。

インターネット上にある記事にインデックス付けして高速で検索するgoogle のスタイルを真似て自分のパソコン内にあるファイル群を高速に検索する google desktop searchがフリーウェアとして提供されている。グーグルデ スクトップ検索の日本語版がリリースされたのは2005年らしい。その頃はど うだったか分からないが現在(2010年)のものは私の時代遅れパソコンの windows meでは動かない。

「Windows 7、Vista、XP、2000 SP3 以降が必要です」

インターネットの検索エンジンとして最初に使っていたのはntt系のgooで あった。その頃の我が家はダイアルアップ接続なのでインターネットで検索 することは少ない。その昔も今も何故かyahooは使ってない。ディレクトリ (カテゴリー)型よりキーワード検索型を使っている。

googleの名前を初めて聞いたのは長女の高校入学後の平成14年(2002年)頃と 思う。部活動関係のインターネット検索でgoogleがよいと友達から聞いてき た。早速使ってみると結果の出るのが速くてヒット数も多い。たまたまであ ろうがgooでなかなか見つからなかったものがgoogleでは一発で出た。これ が切っ掛けとなり以後の検索はgoogleオンリーになる。

なお、googleの日本語版がスタートしたのは2000年9月のことらしい。

韓国語、中国語、日本語で Google 検索
2000年9月12日
``MOUNTAIN VIEW, Calif. - September 12, 2000 - Google Inc., developer of one of the fastest growing search engines on the web, today announced the immediate availability of four new language versions of the award-winning Google search engine. The expanded service enables users to conduct searches in Japanese, Traditional Chinese, Simplified Chinese and Korean.''

全文検索システムのnamazuを使うようになった理由は解説書を見つけたこと にある。また当時、既にテキスト処理言語であるperlを使い始めておりperl が未知のものではなかった。namazuのインデックス付け部分はperlスクリプ トで動いている。namazuのために初めてperl処理系をインストールするとい うのは敷居が高い。

  • 馬場肇著「改訂Namazuシステムの構築と活用」2003年, ソフトバンクパブ リッシング株式会社(2003年7月10日第1刷)
  • 全文検索システムnamazu
    http://www.namazu.org/index.html.ja

おそらく2004年頃には自分のパソコンでnamzuが動くようになったであろ う。それから現在に至るまで使い続けている。最近になってpdfファイルの インデックス付けでエラーが出るようになる。久し振りに点検したら外部 ツールの関係ファイルをうっかり削除していた。namazuはperl以外にkakasi とか各種ファイルからテキスト部分を抽出するためのフィルターとして外部 ツールを使う。

namazuしか使わないような外部ツールは、時間が経つとnamazuが必要として いるものということを忘れてしまう。

namazuはgoogle desktop searchと違い、インデックス付けをパソコンのア イドルなときに勝手にやってくれるものではない。手動でインデックス付け プログラムを起動しなければならない。不便なようだが重い処理と重なって パソコンが凍りつくことがない。

もともとnamazuはホームページのサイト内検索用として開発されている。そ のためテキストファイルとhtmlファイルへのインデックス付けは簡単にでき る。以前は多くのサイトで使われていたが最近はgoogleフリー検索に移行し ているようである。namazuは少なくなった気がする。

namazuで自分のパソコン内を検索するときもgoogleのように結果は一瞬で表 示される。grep検索の遅さを嘆いていた者にはびっくりする速さである。感 動ものといえる。検索語を代えての次々の再検索も苦にならない。

次はネット上で見つけたnamazuの原作者である高林哲氏の解説からの引用で す。

「UNIX を利用しながら生活を送っていると、メーリングリストの記事やWWW から拾ってきた文書、フリーソフトウェアのマニュアルなど、知らず知らず のうちにたくさんの文書が溜まっていきます。
ほとんどの文書は後から参照することはありませんが、「この問題の解決策 は以前に何かの文書で読んだはずだ」と思い出したときに、突然、参照した くなります。
そんなとき、UNIXを使っているなら find や grep コマンドを駆使して目的 の文書を探し出すのが一般的な手法です。しかし、ファイルの数が 1,000、10,000と増えていくと、この方法では時間がかかりすぎてしまいま す。一方、高速な全文検索システムを使えば、文書の数が増えても一瞬で検 索できます。」
「我々は文書の山に囲まれて暮している。なかでも電子メールは身近な存在 である。
とあるシンポジウムでこんな出来事があった。討論の話題が IT (情報技術) 革命におよんだときに、年輩の先生が次のような質問 を投げかけた。「現 時点でさえ、私は電子メールの処理に困っているのに、これ以上IT革命が進 んだらどうなるのか」
この質問に対し、司会者はすかさず「すでにIT革命に乗り遅れてしまってい る先生からの、たいへんいい質問です」と応え、場内は大いに沸いた。おそ らく自分たちも困っているからこそ、多くの人が笑ってしまったのではない かと思う。
かくいう筆者も電子メールの処理に苦労している人間の1人である。筆者の メールボックスには約5万通、計200MBのメールが溜まっている。ほとんどの メールは後から参照することはないが、まれに参照したくなるときがある。 たとえば、この問題の解決策は以前に誰かがメールで報告していたはずだ、 と思い出したときなどである。
そこで、メールの山を検索する必要に迫られるのだが、単純な文字列検索の プログラムでは歯が立たない。試しに、手元の計算機で UNIXの grep コマ ンドを使って筆者のメールボックスを検索したところ、実に12分もかかっ た。これでは短気な筆者などはとても我慢できない。
一方、高速な全文検索システムを使えば、同様のことが一瞬でできる。メー ルの数が倍々に増えていっても、検索に要する時間はほとんど変わらない。 実際、筆者は大量のメールを一瞬で検索できる環境を構築している。
メールの他にも、インターネットから集めてきたニュース記事やソフトウェ アのマニュアルなど、知らず知らずのうちに文書は溜まっていく。気をつけ ていないと、文書の山に生き埋めになってしまいかねない。」

| | コメント (0) | トラックバック (0)

« 2010年8月 | トップページ | 2010年10月 »