NIFTY SERVE ライブラリファイルリストNO. 取得マクロ
Written at 1997.12.28
Last Update at 1999.03.23
えー、このマクロはあまりにも自己中心的すぎたので、「改行文字指定マクロ」ページからのリンクを消滅させたのですが、一応ある程度の期間、公開していたのでサーバーには残してました。マクロ内にもページアドレスを記載していたし。
でも、まさかアクセスがあるとは思ってなかったので、ほったらかしもいいところでした。
しかし、先日久々に、見えていないカウンター表示ページを確認してみたら、なんと、アクセスが!
ここに来るには、直接アドレスをブラウザに入力しないといけないんで、考えるにマクロを使うか、あるいは残していた人がいたんですね……。
マクロ自体は僕も、たまーーに使う程度なんで、更新はしてません。
ただ、おまけの10分マクロは改訂して結構使えるようにしてたんで、アップしときました。おまけのつもりが、こっちの方をよく使います……。
ま、そーいうことで。
AKT (1998.09.23) マクロをしょーもなく、修正しました。(1998.10.08)
インターネットを始めてから、とんとNIFTYに行かなくなってたんです(NIFTY行く時間があったらインターネットすると言うことで)が、料金改正をきっかけにまた、だらだらとDOMするようになりました。
しかし、インターネットを経験すると、あのダウンロード時の面倒臭さがたまらない。
(レジストしないで)使っている秀Termにも秀丸のマクロに対するスプリクトというものがあることを知り、何か簡単にダウンロードできるようなやつがないかと探しました。
するとやっぱりありました。「ATDL
Ver.4.0 Preview8 NIFTY SERVE用 ダウンロードスクリプト copyright(c)
1996,97 吉田 有伸 (有吉 "U-kichi"
PXH02006@niftyserve.or.jp)」です。
これは、フォーラム名とライブラリ番号とリスト番号だけで自動的にファイルをダウンロードしてくれる優れモノです。
「うひょー、ラッキー」
とか思いながら、ずばずばDOMってたんですが、いかんせんファイルリスト自体の検索が面倒くさくなってきました。
相当行ってなかったので、DOMりたいファイルが多すぎるんです。
「これでは、やってられんな……」
いろいろ簡単に検索できる方法を考えましたが、確実なのは登録者IDによる抽出だけの様に思いました。
「でも、今までの膨大なDOMファイルのIDチェックも大変なんやけど……」
やりました。やってしまいましたよ。一旦、ファイルを登録者別にディレクトリに振ってから、一つ一つIDチェック。EXCELに放り込みました。
ここまで来たら秀丸での検索しか思いつきませんでした。
いろいろ構想を練って、出来るだけ簡単に。それだけをポイントに置いてマクロを組みました。動作的には簡単なマクロです。EXCELのIDデータを、INIファイルとして使えるように加工してから(これは計算式でばっちり)、TXTファイルに。
そのTXTを元に、秀丸でライブラリリストを検索。チェックマークを付けて、対象NO.をクリップボードに転送。これだけです。要はIDリストだけ。
だいたい出来上がってから、インターネットとのダブリを防ぐために[another]分を作ったり、すでにダウンしてあるファイルのチェックマークを外す動作(これには「エクスプローラ拡張メニュー Copyright (c) Mt.Wide」の[ツリー情報をクリップボードへコピー]機能が便利です。)を付けたりしました。
本当はこのマクロ、公開するつもりはなかったんですが(ほとんどのアプリをノーレジストで使ってるもので……)、いつものように、
「ま、いいか。誰か使ってくれる人もいるかもしれんし」
で公開することにしてしまいました。ページ開設3ヶ月経過の記念でもあるし。
でも、このページの載ってるリンク先や他マクロの作者さんには無許可なので、つげ口はナッシングですよ。
では、マクロ使用方法の解説に入ります。
とりあえずは、ダウンロードしたい登録者のIDを入力することです。[windows]ディレクトリに、"nifid.txt"の名称で保存して下さい。
"nifid.txt"の内容は下記のようにお願いします。
[Data]
Id1="YHE01162"
Id2="END"
Name1="AKT"
Name2=""
"Id" が登録者ID(別にIDでなくてもいいんですが)で、
"Name" がハンドル名などの付加情報となります。
数字を増やしていくことで、いくらでも増やせますが、"Id"の最後は必ず、"END"として下さい。"Name"の同番号はブランクでかまいません。
数字を順番に並べる必要もないです。
試したわけではありませんが(試す気もない)、"Name"は無くても動作するはずです。
自分はEXCELで打ち込んでから、コピー&ペーストで作りました。EXCELでなくても、何らかのデータベースなり表計算ソフトなりで打ち込んだ方が、ダブリが無くていいと思います。(番号がダブるとどうなるのか?……わかりません)
ちなみにその様子などを……
こんな感じです。
[DATA]列と[P.S.]列のみに入力していき、[NIFID.TXT用データ]列は計算式を入れてあります。
参考までに、D2セルには、
=CONCATENATE("Id",A2,"=",CHAR(34),B2,CHAR(34))
E2セルには、
=CONCATENATE("Name",A2,"=",CHAR(34),C2,CHAR(34))
が入っています。
[NO.]列は、セルの角をクリック&ドローして範囲指定し、[CTRL]キーを押しながらのボタン離しで自動入力しています。
[NIFID.TXT用データ]を秀丸にコピーするときは、[SHIFT]+[CTRL]+方向キーで範囲選択してから、[CTRL]+[C]キーでやると簡単です(EXCELね)。
"nifid.txt"が出来上がったら、次はライブラリファイルリストを用意します。
これは、NIFTYに行ってフォーラムのデータライブラリのデータ一覧を表示させてから、秀丸に張り付けるだけでいいです。
この時に大事なのは、後からフォーラム名や、ライブラリNO.がわかる範囲で張り付けておくということです(後述しますが、他にも大事な点があります)。
秀丸にライブラリリストを張り付けた状態で、「NIFTY SERVE ライブラリファイルリストNO. 取得マクロ」(長いっ、これ以降はゲットナムマクロと表記します)を実行すると、次のメニューがポップアップされます。
・ライブラリリスト検索−チェックマーク付加 (ファイル全体)
ライブラリリストにチェックマークを付加します。ファイル全体にIDで検索をかけ、ヒットした行の先頭にチェックマークと付加情報を挿入するというものです。単純に検索を行っているので、IDと同じ文字列があれば、ばんばんヒットしてしまいます。余分なIDがあるテキストをリストに付加しないように注意して下さい。
チェックマークはデフォルトでは、"◎"ですが、前述の"nifid.txt"の"Name"を入力するときに、"ANO:"を先頭に付けておくと、"○"になります。
[Data]
Id1="YHE01162"
Id2="END"
Name1="ANO:AKT" ←これで、"○"になります
Name2=""こうしておくと、下のメニューの[NIFTY]と[another]の使い分けが出来るようになります。
"◎" :[NIFTY]用
"○" :[another]用
・チェックマーク削除
上で付加したチェックマークを削除します。
上ではファイル全体を作業範囲としていましたが、メニュー項目名に"(ファイル全体)"がついていない全ての項目(これも含めて)については、">"(全角)から">"間での動作となります。
「ゲットナムマクロ」起動時のカーソル位置から上に、行の先頭にある">"を検索して、ヒットしたその位置から下にチェックマークを削除していきます。削除する前に、">"があれば、そこで削除を終了して、上の">"まで戻るような動作としています。
・[NIFTY] NO. 取得
チェックマークの付いた行の、リストNO.を取得します。
取得したNO.はクリップボードに転送していきます。その際、NO.毎に「,」を加えます。
動作終了後、ペーストすると、次のようなテキストが張り付けられます。
348,341,337,336,333,318,312,307,305,303,297,296,292,287,285,279,268,266,265,258,248,244,232,224,223,222,221,216,215,212,210,201,200,188,173,167,166,154,150,149,147,141,140,138,135,133,127,107,105,100,91,89,86,78,77,76,75,71,63,61,
前述のように、この動作は ">"−">" 間となります。(以下も同様ですよ)
・[NIFTY] マーク行削除
チェックマークの付加されている行を、ずばっと削除してしまいます。但し、改行文字は残ります。
・[NIFTY] マーク行以外削除
チェックマークが付加されていない行を、きれいに削除します。但し、改行文字は残ります。
・[another] NO. 取得
[NIFTY]と同様。
・[another]マーク行削除
[NIFTY]と同様。
・[another]マーク行以外削除
[NIFTY]と同様。
・[NIFTY][another] NO. 取得
[NIFTY]用と[another]用のチェックマークでリストNO.を取得します。
・File Check - Find - チェックマーク削除[確認有り] (ファイル全体)
なにげに加えたら、結構便利だった機能。全てのチェックマークが付いた行からファイル名を取得し、別の秀丸で開いたファイルリストに検索をかけ、ヒットすればチェックマークを削除できます。
ファイル名は付いたチェックマークのケツから39文字目を先頭として、12文字分と見ています。つまり、元のライブラリリストが、下記のようであればそのまま使用できる、と言うことです。
番号__ID_______登録日付_バイト__参照___データ名
_999__AAA00000_99/99/99___99999__999_B_TEMPNAME.LZH 何か使えそうなマクロ
_998__BBB00000_99/99/99___11111__111_B_NAMETEMP.EXE よさそうなソフト※ 便宜的に半角スペースをアンダーバーにしています。
プロポーショナルフォント表示では、ずれていると思いますが、[データ名]が39文字目から始まって、先頭にファイル名が来ています。
だいたいのフォーラムで使用されているフォーマットですが、ファイル名が[データ名]に無い場合もあります。そのような場合はこの機能は使用出来ません。
ファイル名が39文字目からずれているだけあれば、マクロ本体を修正することで使用できるようになります(Ver1.5時 243行目の変数#lに代入している数値がファイル名の位置文字数です)。ここで使うファイルリストとは、すでにダウンロードしているファイル名を羅列してあるリストのことです。実際の検索には、秀丸の検索機能を使う為、半角であろうが、連続入力であろうがかまいません。ただ、連続であると、誤検索してしまう場合があるので、最低スペースぐらいは入れておいたほうがいいでしょう。
チェックマークを削除する場合には確認を求めてきます。
・File Check - Find - チェックマーク削除[確認無し] (ファイル全体)
上と同様の動作をしますが、チェックマーク削除時の確認を求めてこないので、一気に削除したい場合に向いています。
・[中止]
マクロの実行を中止します。
上手な、「ゲットナムマクロ」の使い方
"nifid.txt"をEXCEL等の表計算ソフトで作るのはもちろんとして、ライブラリリストを、「NIF+(にふぷらす) NIF.HSC機能追加版 for 秀Term Evolution copyright (c) 西口康宏(NIFTY-Serve QZX04553)」の[データライブラリからの自動ダウンロード]機能、ファイルリストを、「エクスプローラ拡張メニュー Copyright (c) Mt.Wide」の[ツリー情報をクリップボードへコピー]機能、ファイルのダウンロードを、「ATDL NIFTY SERVE用 ダウンロードスクリプト copyright(c) 吉田 有伸 (PXH02006@niftyserve.or.jp)」などを使うと……こりゃ便利!
ちなみに、「NIF+」でライブラリリストを取得する場合は、ログじゃなくて秀Termからのコピーの方がよろしい感じ([NO. 取得]が、">"−">"間動作の為)。
実際の使用の手順は、(ちょっと修正。(1997.12.29))
- 秀Termで"Nif+.hsc"を使って、NIFTY SERVEに接続。
- F9([データライブラリからの自動ダウンロード])をぽちっとな(詳しくは"Nif+.hsc添付のReadme.txtを参照して下さい)。
- NIFTY SERVEの接続を切る。
- 秀Termでライブラリリストをまとめてコピー。
- 秀丸を新規起動して、[CTRL]+「V」キー(張り付けですね)、ぽち。
- 「ゲットナムマクロ」を実行。
- [ライブラリリスト検索−チェックマーク付加 (ファイル全体)]、ずばっと。
- 秀丸の検索で「>(全角)」、下候補、ぽちぽちぽち。(ファイルリストまで)
- [ [NIFTY] NO. 取得]、ずば。
- "Dl-list.txt"を開いて、フォーラム名とライブラリ番号を入力(詳しくは、"Atdl.hsc"添付のヘルプを参照して下さい)。
- {CTRL]+「V」キー、ぽち。
- 行末に移って、最後の「,」を削除。
- 元の秀丸に移って、F3(下候補「>」)、ぽち。(次のファイルリストまで)
- 9に戻る。
9から13を繰り返して、"Dl-list.txt"を完成・保存してから、再度"Nif+.hsc"でNIFTYに接続、F6([DOWN LOAD])ぽち、で、目的のファイルをダウンロードできます。
その他のメニューは、適宜お使い下さい。
「ゲットナムマクロ」の使用上の注意
自分の環境では、何故か、[ライブラリリスト検索−チェックマーク付加]動作を行うときに、別のウィンドウをアクティブにすると、チェックマーク付加じゃなくて、チェックマーク上書きになってしまうようです。理由は定かではありません。
動作が終了するまで、動作中の秀丸をアクティブにしているとうまくいきます。
ようは、[ライブラリリスト検索−チェックマーク付加]動作をしているときは、終了するまで放って置いて下さい、ということです。
ここまで読んでいただけると(読んでもわからない……そんな時もメールを)、安心してこのマクロをお渡しできます。
では、どうぞ←配布中止(1999.03.23)
「ゲットナムマクロ Ver1.6」(1997.12.31)
進化形でこっちもあります(←お薦め)。(1998.10.07)
さらに、ファイルリストの縮小化マクロを作りましたので、おまけで載っけておきます。
10分マクロです
と、思ったら確認と調整とちょろっとの改造に2時間近くかかった俺って…
(1998.01.24)
大幅な速度向上を実現。って、元がしょぼ過ぎただけ。
(1998.08.03)
「ツリー情報縮小化マクロ Ver1.1」(1998.08.03)
不動作・誤動作があれば、遠慮なくメールして下さい。
ゲットナムマクロ 改訂履歴
Ver1.0 - 自分用に完成。(1997.12.16)
Ver1.1 - 「NO.取得」の動作を変更した。(1997.12.19)
Ver1.2 - [NIFTY]用と[another]用に分けた。(1997.12.22)
Ver1.3 - 「NO.取得」に[NIFTY][another]用を追加した。(1997.12.25)
Ver1.4 - ファイルのチェック動作を追加した。ついでに全体的な動作を見直した。(1997.12.27)
Ver1.5 - 「チェックマーク削除」の動作を追加した。公開バージョンにする為、いろいろ修正した。(1997.12.28)
Ver1.51 - "Nifid.txt"の"Id"がブランクな場合の、検索時誤動作に対応した。(1997.12.30)
Ver1.6 - 「ライブラリリスト検索−チェックマーク付加 (ファイル全体)」を"ID検索"と"Name検索"に分けた。
"[NIFTY][another] マーク行以外削除"の動作を追加した。
マークの重複付加時に、確認動作を追加した。ただし、"NAME検索"では強制キャンセルされる。(1997.12.31)
Copyright (C) AKT
秀丸エディタ、秀Term Copyright (C) 斉藤秀夫