clipsed Ver. 3.3.8 (2002/08/13版) readme.txt ○謝辞 clipsedをダウンロードいただきありがとうございます。 なにかのお役に立てば幸いです。 ソースもつけておりますので、ご自由に改良なさってください。 ○配布ファイル readme.txt この簡易説明ファイル clipsed.exe 実行ファイル clipsed.hlp ヘルプファイル clipsed0.ini おきまりの表現ファイル clipsed1.ini 履歴保存ファイル bregexp.dll 正規表現エンジン(Tatsuo Babaさん作成) source.lzh ソース(VB6) gpl2_jpn.txt GNU 一般公有使用許諾書 nkf32.dll ネットワーク漢字フィルタ(市川さん、海人さん作成) DELCTL.EXE 空白以外の制御文字除去フィルター REV.AWK 文字列反転jgawk用スクリプト RSCNV.SED 国会図書館雑誌記事目録csv化用sedスクリプト NL2CSV.AWK 国会図書館雑誌記事目録csv化用awkスクリプト *.sed *.awk *.pl 各種、sed,awk,perlスクリプト ※フルパッケージ版にはこのほか、VB6用DLL(SP5)などが付属します。 ○動作環境 Windows95/98/Me/2000/XP WindowsNTでは未確認 ○インストール方法 ダウンロードしたファイルを実行して下さい。もしくは、 任意のフォルダを作成しそこに全てのファイルを解凍してください。 このほかに下記のファイルが必要です。ただし、 どちらもWINDOWS98以 降には標準添付されているはずです。お持ちでない場合は、vectorその 他のサイトからダウンロードしてください。フルパッケージもあります。 ・VisualBasic V6.0ランタイム ・リッチエディット・コントロール ・コモンダイアログ・コントロール プログラムランチャ等から起動する際は、 直接clipsed.exeを指定す るのではなく、必ず、ショートカットを作成の上、それを指定して下 さい。特に、Filterモードを使う際に必要となります。具体的には、 「インストールフォルダ\clipsed.exe.lnk」を指定します。 また、uniqコマンドによる重複行操作ならびに、Filterモードをより 高度にお使いいただくためには、後述のFilterモードで紹介いたしま す「Dos Filterコマンドとして代表的なソフト」を併せてインストー ルされることをお勧めします。 sortは、 通常はOSに付属している sort.exeを使います。もし、付属していない場合、sortの性能に不満 がある場合は、 Siさんのssortやmtoyoさんのsortf等をお試しくださ い。その場合は、 clipsedのインストールフォルダーに実行ファイル を入れ、ファイル名をsort.exeに変更して下さい。 ○アンインストール方法 任意のフォルダに作成した全ファイルを削除して下さい。 なお、レジストリに書き込みは行っておりません。 フルパッケージでインストールした場合は、コントロールパネルの 「アプリケーションの追加と削除」を使って削除できます。 ○注意 ・Filterモードではclipsed.exeがあるディレクトリにcps0.tmp cps1.tmp という一時ファイルを作成します。 同名のファイルがあ ると上書きされます。また、これらのファイル作成後も自動で削除 はしません。もし、必要なら手動で削除してください。 ・Filterモードではdos窓と同様に任意のコマンドを実行できます。 Filterコマンドに関わらず、ほとんどのプログラムが実行可能です。 それゆえ、プログラムの実行にあたっては、各自のリスクでお願い します。 ・Filterモードでは、下記のコードを実行しています。 Shell(Environ("ComSpec") & " /c type cps0.tmp| " & inputRegstr & " > cps1.tmp", vbHide) ○特徴 ◆正規表現を使ったsed/grepライクな置換&任意のdosフィルタの実行 Tatsuo Baba(babaq@hi-ho.ne.jp)さん作成の、 Perl5互換の正規表現 エンジン(BREGEXP.DLL)を使用した、 クリップボード文字列を対象と した置換ツールです。(通常モード) 各種文字列操作、mime解読(nkf32.dll使用)もできます。 これに加え、任意のdosフィルタを実行できます。(Filterモード) これを使えば、整形、ソート、文字列変換等、あらゆるテキスト処理 がきめ細かく実行できます。本物のsedやgrepがそのまま動きますし、 パイプラインで複数のコマンドをつなぐこともできます。 Filterモードがあるから「sed/grepライク」な通常モードが不要なわ けではありません。perl5互換の拡張された正規表現が使え、 かつ、 複数行をまとめて扱える点で、通常モードも十二分に使えます。 ◆通常モード ・"s"(置換)と"tr"(検索文字クラス置換)が利用できます。 ・複数行を処理するとき改行は「\r\n」で表現してください。  例:s/befor/after/gk    tr/[A-Z]/[a-z]/gk ・行頭「^」、または、行末「$」表現を使うと行単位で処理します。 ・メタ文字を含む場合は、複数行補助を使うと便利です。 ・"m"でgrep(マッチ行抽出)が利用できます。  その際、-vチェックボックスをonにすれば反転もできます。  例:m/パターン/gk なお、末尾のgkはつぎのような意味をもちます。まず、 gはグローバ ルを意味し一致した全ての検索対処全てを置換します。 gをつけない と最初に一致したものだけを対象に置換します。また、 kは漢字など 英文字以外の文字を処理するときに指定します。 また、iオプション をつけると、英字の大文字小文字を同一視します。 詳細については、正規表現の項を参照してください。また、使いかた については、perlやsedのマニュアル等をご参照ください。 正規表現 を説明したWebサイトも多くあります。 このようにエディタに比べて柔軟性が高い置換が出来ます。また、置 換をセットで履歴に残すので、再利用が少し楽になります。 ◆Filterモード ・DOSのフィルタコマンドが使えます。  sed/awk/grep/perl/nkf/xtr等々が実行できます。  フルパスで指定すればパスが通っていなくてもO.Kです。 ・標準出力に出力できるソフトならDosの内部コマンドでもO.K.です。 ・パイプラインで連結もできます。  例:dir |grep "^[0-9]"|gawk "{print $4 \"\t\"$1}"|sort ・sed等では、複数のコマンドを書くこともできます。  記憶できるのは横につなげる書式のみです。  コマンドを記述したファイルを指定することもできます。 複雑なことをやろうとすると結構テクニックがいります。たとえば、 オプションで二重引用符を用いる際は、 \でエスケープが必要です (上述のgawkの例を参照)。一番簡単なのは、テキストファイルにコ マンドを書いて、それを指定することです。 記述にあたっては、 dosのコマンドラインの仕様を確認して下さい。 (windows2000の場合はmicrosoftのページを参照のこと)。ちなみに、 windows2000はDos窓の性能がレスポンスやシェル機能が95や98時代か らするとずいぶん非常に良くなっています。95/98等ではdosに降りて いるので、いくぶんもたついた感じがしますが、2000ではあたかも内 部コマンドを実行しているようにしか感じません。 注:dosfilterが途中に「^Z」 等の表示不可能なコントロールコード を出力すると、Filterモードは異常終了することがあります。そのよ うな場合は、 同梱の「DELCTL.EXE 」をFilterの最後に使用して下さ い。例:「xtrnt -w65 -aj|DELCTL」。 スペース以外のコントロール 文字を消去します。詳細は、Filterモード参照。 ★通常モードとFilterモードは冒頭の「s/,m/,tr/」で自動判断します。 ◆置換対象 クリップボード文字列を対象としています。しかし、直接クリップボ ード文字列を書き換えません。いったん、テキストウィンドウに文字 を書き出して、それに対して置換を行います。置換前に、テキストウ ィンドウの内容を書き換えることも可能です。また、置換後に書き換 えて、その結果をクリップボードに転送できます。  正規表現とマニュアルによる置換を組み合わせて、手っ取り早く修 正したいというのが本ソフトの基本思想だからです。 ○このほかの特徴 ◆後方参照などを含むperl5互換の正規表現を使ったsedライクな置換 ◆置換対象サイズは64Kの制限無し(マシンスペックに依存) ◆複数行を対象にした置換が可能。もちろん行単位の置換も可能 ◆文字クラスを使った置換も可能 ◆置換履歴がsed風の書式で保存可能 ◆置換文字列保存機能でやり直し可能 ◆文字種変換はワンクリック ◆重複行削除、および、重複行抽出機能もあり ◆ソース付(VB6)で改変自由 など ※clipsedの簡易説明は、ヘルプファイルをご覧ください。 ○著作権などの宣言 本プログラムはフリー・ソフトウェアです。 あなたは、 Free Software Foundationが公表したGNU 一般公有使用許諾の「バージョ ン2」或いはそれ以降の各バージョンの中からいずれかを選択し、そ のバージョンが定める条項に従って本プログラムを再頒布または変更 することができます。 本プログラムは有用とは思いますが、頒布にあたっては、市場性及び 特定目的適合性についての暗黙の保証を含めて、いかなる保証も行な いません。詳細についてはGNU 一般公有使用許諾書をお読みください。 あなたは、本プログラムと一緒にGNU 一般公有使用許諾の写しを受け 取っているはずです。 そうでない場合は、 Free Software Foundation,Inc.,675Mass Ave,Cambridge,MA 02139,USA へ手紙を書 いてください。 なお、BREGEXP.DLLは、Tatsuo Baba(babaq@hi-ho.ne.jp)さん作成の プログラムです。配布条件は、 http://www.hi-ho.ne.jp/babaq/index.htmlの記述に従ってください。 また、 mime変換機能では、 海人氏がNKF をWin32 用に移植された NKF32.DLL を使用しています。 NKF32.DLLの呼び出しには、 けるべ氏が作成された以下のモジュール ならびに関数を使用しています。 この部分の配布規定は、下記の記述に従ってください。 '=====NKF32.DLL Declaration Module for Visual Basic(32bit)Ver 1.03 ===== '(C)2000-2001 けるべ 'MAIL :kelbe@geocities.co.jp 'HOME :http://www.geocities.co.jp/SilkRoad/4511/ ' 'このモジュールは、海人氏がNKF をWin32 用に移植されたNKF32.DLL を、 'Microsoft Visual Basic(32bit)から使用するための宣言モジュールです。 'NKF32.DLL およびNKF についての詳細は、NKF32.DLL に添付されている 'nkf32.doc をお読み下さい。 ' 'NKF32.dllのウェブサイト :http://www.vector.co.jp/soft/win95/util/se020949.html ' 'なおこのモジュールには、NKF32.DLL の使用を簡単にする関数群も '含めてあります。あくまでも「サンプル」として含めましたので、 '実際に使用するには少々難がありますのでご注意下さい(^^; ' 'このモジュールの使用・転載条件は NKF32.DLL および NKF に準じます。 ' '************************************************************************ '** Copyright (C) 1987, Fujitsu LTD. (Itaru ICHIKAWA) '** 連絡先: (株)富士通研究所 ソフト3研 市川 至 '** (E-Mail Address: ichikawa@flab.fujitsu.co.jp) '** 営利を目的としない限り、このソースのいかなる '** 複写,改変,修正も許諾します。その際には、この部分を残すこと。 '** このプログラムについては特に何の保証もしない、悪しからず。 '** Everyone is permitted to do anything on this program '** including copying, modifying, improving '** as long as you don't try to make money off it, '** or pretend that you wrote it. '** i.e., the above copyright notice has to appear in all copies. '** THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE. '***********************************************************************/ また、バージョン番号表示ダイアログボックスは、 VB5標準添付のも のをカスタマイズしました。 オリジナルの著作権は、Microsoft社に あります。 clipsed本体の著作権者塘 誠(とも まこと) Copyright 2000-2002,tomoreal@mc.neweb.ne.jp URI http://hp.vector.co.jp/authors/VA021567/ ○履歴 2002/08/13 3.38 Filterモードで、>> 処理をするようにした。 2002/02/08 3.30 dosFilterにもコメントを付けられるようにしました。 2002/01/10 3.20 任意のdosフィルタ実行機能を付けました。 2001/12/14 3.10 MIMEデコード機能を付けました。 2001/09/09 2.20 grep機能に反転オプションをつけました。 2001/07/08 2.14 grep機能をつけました。 2001/05/30 2.12 文字列反転機能をつけました。 2001/05/05 2.10 画面構成見直し(変換ボタンのメニュー化など) 2001/01/08 2.01 履歴、おきまりの表現をエディタで開けるようにした。 2000/10/04 2.00 Windows2000でも動作するように改善。コンパイラをVB6 に変更。 2000/10/01 1.20 重複行抽出機能、自動行単位処理機能、複数行補助機 能のメタ文字サポート、半角カナ→全角カナ処理スピー ドアップなど。 2000/09/11 1.10 行単位処理モードを追加。 2000/09/09 1.07 連続する重複行を削除する機能の追加。 2000/09/08 1.06 半角カナを全角にする機能の追加。 2000/09/01 1.05 ヘルプファイルの作成。HelpDesignerを使いました。 2000/06/08 1.04 初期検索式をブランクに変更。本マニュアルの整備。 2000/05/07 1.03 置換履歴の簡易2重登録防止機能が効かなくなって  いたのを修正。 2000/05/01 1.02 ゴールデンウィークを機に初公開。 ★あとがきが、readme2.txtにあります。お時間のあるかたはどうぞ。 ○2002/08/13 3.38 3.3.0からの修正事項 同梱のdelctl.exeをBorland C++ Compiler 5.5でコンパイルし直しま した。(以前はLSI C-86 Ver 3.30c 試食版)。32ビットアプリケーシ ョンになりましたので、フィルタモードの実行スピード向上が期待で きます。(2002/07/16) sortf(http://www.vector.co.jp/soft/win95/util/se000882.html)を 使った数字ソート、日本語順ソートをメニューから選べるようにしま した。あわせて、win2000/XP標準のsortコマンドを使ったソートスピ ードの改善を行いました。 その結果、 95/98/Meで動くかは未確認。 (2002/07/12) Filterモードでのリダイレクト処理を「>(上書き)」から「>>(追加)」 に変更しました。これで、例えば、 windows2000/XPのdosシェルコマ ンドである for in do が実行できます。あわせて、フルバージョン に同梱しているdelctl.exe(コントロール文字削除dosフィルタ) を 必携としました。 これに伴い、filterモードで末尾の1バイトを削除 しないよう改良しました。(2002/07/11) リッチテキストコントロール内のフォントをMS ゴシック(9ポイント) に変更しました。これで、固定ピッチで表示できます。(2002/03/17) ○clipsed 3.3.0 (2002/02/08)修正事項 ◆お気に入りのコメントを先頭にも付けられるようにした。 dosfilterコマンドにもコメントを付けることができる。 コメントの付け方:先頭か末尾の【】内にコメントを書く。 動作:先頭か末尾にある【】内のコメントおよびその直前の空白を お気に入りの表現での選択時に削除しています。 そのため、通常モードでも同様にコメントが削除されます。 なお、従来のコメントファイルから変換する際は、下記のスクリプト を利用下さい。 s/(.+)【(.+)】/【$2】$1/gk その後、行末の空白は適宜削除願います。 ◆clipsedのあるフォルダをoptionメニューから開くことができるようにした。 ◆テキストボックス内でタブを入力できるようにした。 ただし、この副作用として、タブでのボタン移動機能を削除した。 ◆カタカナをカタカナに変換できるようにした。 ただし、大量のテキストを処理をするときには、 jgawk -f tohanka7.awk 全角カナ→半角カナ jgawk -f tozenka7.awk 半角カナ→全角カナ としたほうが環境にもよりますが高速だと思います。 ◆その他細かなバグ修正 【補足事項】 ◆スクリプト置き場 上記で紹介したスクリプト等は下記に置いてあります。 適宜ダウンロードしてclipsedと同じディレクトリに入れてください。 http://hp.vector.co.jp/authors/VA021567/script/ ◆スクリプト作成について なお、S氏が作成した「Sscalc」には有用なスクリプトが多々含まれます。 スクリプト作成のお手本になさるといいとおもいます。 http://www9.wind.ne.jp/fujin/diy/SsIndex/SsIndex.htm また、正規表現に関しては、下記のページ等が参考になります。 http://www.kt.rim.or.jp/~kbk/regex/regex.html (以上)