9.VZでテキストDBを管理する

 私は、200LXで文章を作成するのに、主として ME VZ Editor を使っています。

 これまでも「PIM」をはじめ、VZのマクロをいくつか紹介してきましたが、今回は主として「Lincard」グループを紹介したいと思います。

 

 正直、これを知った時は、一種のカルチャーショックを感じました。(少し大げさですか?(^^;)

 文章管理のためのソフトとしては「知子の情報」が知られています。私もこれを200LXの中に入れて、ある種のデータを管理しています。これももちろん利点は沢山あるのですが、残念な点として、

 1.特殊なデータ構造であることから、他のソフトではそのままでは使えない等、柔軟性に欠けるこ 

 2.操作の軽快性に欠けること 等   が掲げられます。

 そう規定してしまうのは「知子の情報」の意図を正しく見ていないかもしてません。むしろ、「知子の情報」は、文書をとにかくストックしておき、その中から必要なものを抽出し活用することを意図したソフトというべきでしょう。

 Lincard も同様に文書管理マクロといえましょうが、「知子の情報」の「検索」→「タイトル一覧表示」に対して、Lincard は、「_キーワード_」のような形式のキーワードによるカード間にわたる「ジャンプ表示」を特徴としています。しかも、その途中でジャンプするキーワードも切り替えながらジャンプするという連関的な操作が可能なのです。どちらかと言えば、Lincardは、連想的に情報を捉えていこうとするソフトかと思います。

 どちらも扱えるデータ量が殆ど無限に近いところは同じですが、「知子の情報」が、膨大な容量のファイルを作成するのに対して、Lincard は、複数のファイルを連携し統合的に管理するところに特徴があります。

 もう少し詳しくご説明しましょう。

 Lincardグループは、次のようなマクロ群で構成されています。

Lincard:カード型マクロの本体

Codex:データの抽出・分類(これも多機能で簡単には説明困難です)

1tchmemo:個別文章のカード挿入追加マクロ 

 これらグループの特徴を改めて簡潔に整理すると、次のようなものです。

・Lincardファイルは一定の形式に則ったカード型テキストであること。しかもその中に、目次的機能とジャンプ機能を持っていること。

・キーワードによるカードの連携が、連鎖連携とでも呼べるような極めて柔軟性が高いものであること

・1tachmemoは、作成文書あるいはその一部をLincardファイルである MEMO.000に追加するマクロです。但し、ファイルが一定の容量をオーバーした場合には、既存ファイルは自動的にMEMO.001にリネームされ、新たなMEMO.000に追加されるという機能も持っています。こうしてMEMO.***ファイルが一連の管理対象ファイル群となり、実質的に扱いうるデータ量が無限になるというわけです。

・しかも、扱いうるファイル群はデフォルトではMEMO.***ですが、*.RSPファイルで定義しておけば、どのような組み合わせも可能になります。

柔軟性の意味がおわかりいただけましょうか?

・また、*.MAPファイルは、キーワードをストックしておくファイルであり、ここから検索キーワードを選択したり、これから選択してカードにキーワードを挿入したりすることができます。

・さらにCodexは、これらカード群の中から、キーワードまたは特定の文字を検索・抽出するものですが、その抽出の仕方も柔軟です。実は私はまだあまり使っていないのでうまく説明できませんが‥。

 このようにLincard(グループ)は、極めて奥深い内容を持ったマクロなのです。これだけのものを発想し、それを具体化するのは大変な能力と敬服します。恐らくこれは、作者Emmett氏が哲学研究者であることも無縁ではないでしょう。ご自身の研究のために開発されたこれだけのマクロを公開していただいていることに、改めて感謝したいと思います。

 一方、個人的には唯一残念だったのが、それまで私が使っていた「PIM」(セベッタ氏)のように、タイトル表示ができないことでした。目的が違うのですから仕方ないかもしれませんが…。

 そこで私は、PIM と Lincardグループを併用することにしました。
 そのために、私なりに改造したカードの構造は次のようなものです。(注1)

 

 これで、同じファイルを「Lincard」連携しながら、必要に応じてリスト表示も可能になったのです。こうして200LXは、完全に私の文書管理の中枢の役割を担うようになりました。

 こんなわけで、私は、実はデスクトップのDOS窓にも同じ環境を作っているのです。(^_^;)

2002年4月

 


 その後、VZマクロをあさっていたら、STKCARD.DEFというマクロを見つけました。これがまた凄いソフトでした。えむし氏

 つまり、カードの区切り文字(デリミタ)が何であろうと、タイトルが各カードのどこの行であろうと(形式が決まっていさえすれば)、さらにはファイルの拡張子がどういうものであろうと、「Tab」の2度打ちだけで、タイトル表示と本文(つまりカード)の間の相互移動と編集すらも、自由にできてしまうというものなのです。
 ということは、「特定の文字」をキーワードとして、それらをタイトル表示して使うことも可能だということです。どのように使うかは、まさにその人の使い方しだいです。(私は、こういう自由度の高いソフトは大好きです。)

 しかし、残念なことに、私の愛用の「一太郎風マクロ」ではリスト表示してくれるものの、本文に戻ってくれないのです。何日か悩んだ末、とうとうえむしさんに相談してみました。
 そしたら何と!(何通かのメールのやりとりの後でしたが)たった1日で悩んでいた問題が解決されたのです。私の喜びがわかってもらえるでしょうか?

 えむしさん本当にありがとうございました。長年の問題が解消されたようで、本当に嬉しく思います。

 但し、これが「一太郎風マクロ」のバグなのか、あるいは、作者(たつ氏)の意図によるものなのかどうか、私にはわかりません。でも、このために、一太郎風マクロの価値が少しも損なわれるものではないことは、作者の名誉のために断言しておきたいと思います。
 これまで特に、この一太郎風マクロについてはコメントしてきませんでしたが、これも、何も考えなくとも多機能なVZをさらに使いやすいモノにしていてくれる凄いマクロであることは確かなのです。新しくVZを使う方には、是非、これをお薦めしたいくらいです。何しろ「Esc」キーを押すだけで、VZの殆どの機能を使いこなすことが可能なんですから…。
 
だからこそ、私は、この一太郎風マクロとともにVZを使っているのです。

−−−「一太郎風マクロの本体」 JXW.DEFの修正点 138行目あたり−−−−−−−−−
* S システムメニュー

1 "",40,0,26
2 "【エイリアス一覧】",60,0,10,-1
3 "【編集中文書】",37,0
4 "",14,3
""              ●ここを次のように修正→ "A"
"F"
"B"
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

2002年5月19日(日)

 


 

注1:カード形式について

  •  PIMでは「@」がカードの区切り。その下の行がタイトル行。
     これらの一覧表画面と各カードを連携し相互に行き来することができるようになっている。
  •  Lincardでは・・・・・・・・・・・・・・行のうち、終わりから6文字目あたりから始まる「・・」がカードの区切り。_キーワード_はどこにあっても良いが、カード単位で考えればここにあるのが美しいと思いました。
  •  PIMでは、@の行の文字で、カードグループを抽出することもできるし、全文検索も可能であり、一方、Lincardでは、キーワードやその他特定文字での検索・抽出等が、自由自在と考えて下さい。

注2:連携の状況について

【補完関係にあるマクロについて】

 Lincardグループと併用しているマクロには次のようなものがあります。もちろんそのためには、ファイルを共有できるよう少しづつ改造が必要です。
  • PIM.DEF:これ自体、カード形式のマクロであり多様な機能を持っています。Lincardとは補完的な関係にあると思っています。

     というのは、PIMは、
      ・リスト表示
      ・リスト表示のまま、カードの移動、削除、他のファイルへの移動 等
     Lincardが持たない機能を持っているからです。
     ですから、カード間のデータの移動は、私は主にPIMで行っています。

     なお、NAVI.DEFも有名ですが、私には、PIMの方がカード形式が自由であるように思え、使用していません。もしかしたら、私の使用している「一太郎風マクロ」との相性が悪かったからかもしれません。詳細は忘れました。(^_^;)

    • この問題は、上記の「JXW.DEF」の修正で解消されているかもしれません。
  • STKCARD.DEF:これは、LincardやPIM等カード型マクロと保完関係にあるソフトと言えましょう。つまり、これらをリスト表示し、相互に移動しつつ編集すらも可能にするソフトです。

【入力環境での補完関係について】

 データ入力に関しては、以下のような各マクロの特徴を活かして行っています。
  • CLIP.DEF:文章作成中に、どこでも良いのですが「@」を行頭に入れてそのまま必要な文章を入力し起動するか、あるいは範囲を指定して起動すれば、自動的に「CLIP.000」に該当文章を入力してくれ、何事も無かったかのように、文章入力を続けられるというマクロです。私は、いくつかの文章を連続入力しておき、他の「*.000」に追加する場合に良く使います。
  • PIM.DEF:範囲を指定し起動すれば、tempファイルに1カードの形式を出力し、その場で編集の上、別のファイルに追加する形をとっています。そのために、私は「MEMO.000」以外のファイルへのデータ追加に使います。
  • 1tchmemo.DEF:PIMと同様に、範囲を指定し起動すると、MEMO.000を開き、その末尾に文章を追加する形をとっています。したがって、最初からMEMO.000に追加する予定のデータは、これを使用するというわけです。

     しかし、文書の入力は何もHP200LXだけではありません。インターネットを見ながらの、これら「*.000」への文書の追加作業は、もちろんデスクトップ上です。


Go Top
前のページへもどる