「hidesoft.2:14541| 複数ファイルにマクNo.00063
ひろ さん 03/04/25 20:04
 
 http://www.maruo.co.jp/hidesoft/2/x14541_.html#14541 から移動してき
ました。

 ゆきさん今日は、ひろです。
 機種依存文字は、念の為同意の文字に置き換えました。
> (1)batchmac0.mac(開いているファイルを対象とするマクロ)
<中略>
>  マクロ実行済みのファイルに対し、再び指定したマクロが実行されます。
>  この原因は何が考えられるでしょうか?
>  (指定したマクロは文字の置換を行うだけです)
 置換ということなので、もし linknext オプションを使っていれば、そう
いった動きになります。そうでなければ、指定したマクロをアップして頂ける
と、何か解るかもしれません。

> (2)batchmac1.mac(特定のフォルダのファイルを対象とするマクロ)
>  上記のマクロを実行し、表示されたメニューより
>  「実行マクロ」「検索フォルダ」「検索ファイル」等の指定を行いましたが、指定
> した実行マクロが動作しません。
 単純に対象となるファイルがないということは有りませんか? なお仮令ファ
イルが存在しても、中身がからのファイルは対象となりません。
 ファイルが存在するということでしたら、「検索フォルダ」以下のサブフォ
ルダを含めた構成と、「検索ファイル」と「実行マクロ」の内容を御教えくだ
さい。

[ ]
RE:00063 「hidesoft.2:14541| 複数ファイNo.00065
ゆき さん 03/04/30 16:32
 
ゆきです。

PCの再起動、マクロの再ダウンロードをしたところ
@batchmac0.mac(開いているファイルを対象とするマクロ)
の問題は解決されました。
お手数をおかけして申しわけございません。

Abatchmac1.mac(特定のフォルダのファイルを対象とするマクロ)
> 単純に対象となるファイルがないということは有りませんか?
> なお仮令ファイルが存在しても、中身がからのファイルは対象となりません。
> ファイルが存在するということでしたら、
> 「検索フォルダ」以下のサブフォルダを含めた構成と、「検索ファイル」と「実
>行マクロ」の内容を御教えください。

ファイルの中身が空ということはありません。
batchmac1.mac実行後に表示されるメニューには下記のように設定しました。
指定の仕方が間違っているのでしょうか?
      実行マクロ・・・replace.mac
     検索フォルダ・・・D:\work\data
     検索ファイル・・・*.txt
サブディレクトリも検索・・・OFF

実行マクロはreplaceallのみの置換のマクロです。
////////////////////////////////////////////
gofiletop;
golinetop;

replaceall "\t" , "" , regular;
replaceall "" , "" , regular;


replaceall "○" , "◎";

message "置換は終了しました。";
endmacro;
/////////////////////////////////////////////

検索フォルダにサブフォルダはありません。
検索ファイルはテキストデータです。
(ファイル名は半角数字8文字.txtです。)

環境は、WindowsXP Professional SP1、秀丸Ver3.19です。
宜しくお願い致します。

[ ]
RE:00065 「hidesoft.2:14541| 複数ファイNo.00066
ひろ さん 03/04/30 21:49
 
 ゆきさん今日は、ひろです。
>      検索フォルダ・・・D:\work\data
>      検索ファイル・・・*.txt
> サブディレクトリも検索・・・OFF
とのことですが、D:\work\data フォルダ以下ではなく、D:\work\data フォル
ダ自身に、*.txt は有りますか? 有る場合は、通常の grep で検索文字列を
「[\.\n]」、正規表現を ON、「ファイル名一覧だけ作成」を ON として、一
覧が作成できるか確認してください。WindowsXP ということなので、「動作環
境」→「ユーザーインターフェース」→「ダイアログを種類」の「grep のダ
イアログ」で「普通タイプ」以外を選択する必要があります。
                          ^^^^


[ ]
RE:00066 「hidesoft.2:14541| 複数ファイNo.00067
ゆき さん 03/05/06 18:11
 
こんにちは。ゆきです。
返答、ありがとうございます。

>D:\work\data フォルダ以下ではなく、D:\work\data フォルダ自身に、*.txt は有
>りますか?

はい。あります。

>有る場合は、通常の grep で検索文字列を
>「[\.\n]」、正規表現を ON、「ファイル名一覧だけ作成」を ON として、
>一覧が作成できるか確認してください。

一覧が作成されます。

>WindowsXP ということなので、
>「動作環境」→「ユーザーインターフェース」→「ダイアログを種類」の
>「grep のダイアログ」で「普通タイプ」以外を選択する必要があります。

新タイプ(フォルダ選択がエクスプローラ風)が選択されています。

以上の事を確認した後、「batchmac1.mac」を実行してみましたが、
動きません。
(設定は、00065で記述したのと同じです)

マクロの中身が原因なのでしょうか?
00065で記述した以外のマクロは
replaceall "\x86\xA2" , "─" , regular;
replaceall "\xEB\x9F橋" , "高橋" , regular;
です。
このパターン以外のマクロはありません。

よろしくお願いします。

[ ]
RE:00067 「hidesoft.2:14541| 複数ファイNo.00068
ひろ さん 03/05/06 19:39
 
 ゆきさん今日は、ひろです。
> はい。あります。
 これ以外も含め、確認有り難うございます。

> >「[\.\n]」、正規表現を ON、「ファイル名一覧だけ作成」を ON として、
> >一覧が作成できるか確認してください。
>
> 一覧が作成されます。
 これは確認していただく方法を間違えて書いていましたm(__)m。検索文字列
は「[.\n]」でした。

 ちゃんと調べたところ、ファイルの内容によっては、
grep "[.\\n]", $file, $directory, regular;
が、期待通りの動きをしないようです。これはこれで別途秀丸担当さんにお伺
いします。

 取り敢えず、batchmac1.mac の 18, 19 行目をの
> if( #subdir )grep "[.\\n]", $file, $directory, regular,filelist,subdir;
> else grep "[.\\n]", $file, $directory, regular,filelist;

if( #subdir )grep ".|\\n", $file, $directory, regular,filelist,subdir;
else grep ".|\\n", $file, $directory, regular,filelist;
とすれば、問題なく動作するようになると思います。長い間がお付き合いいた
だき有り難うございました。

 P.S
> replaceall "\x86\xA2" , "─" , regular;
> replaceall "\xEB\x9F橋" , "高橋" , regular;
 あやふやな記憶ですが、マクロの中で正規表現を使って文字を 16 進表記す
るなら、\\ というように「\」を重ねて書いた方がベターだった気がしますが、
このマクロ単体では動くようですね。


[ ]
RE:00068 「hidesoft.2:14541| 複数ファイNo.00069
ゆき さん 03/05/08 17:28
 
ゆきです。
こちらこそ、長い間ありがとうございます。

> 取り敢えず、batchmac1.mac の 18, 19 行目の
(・・・省略)
>if( #subdir )grep ".|\\n", $file, $directory, regular,filelist,subdir;
>else grep ".|\\n", $file, $directory, regular,filelist;
>とすれば、問題なく動作するようになると思います。

上記のように修正し、マクロを実行しましたが、動きませんでした。
話を最初に戻すことになりますが、
正常にbatchmac1.macが実行される場合、
設定のどの段階で、マクロが始まるのでしょうか?
////////////////////////////////////////////
(S)実行マクロ・・・・・replace.mac
(D)検索フォルダ・・・D:\work\data
(F)検索ファイル・・・*.txt
(U)サブディレクトリも検索・・・OFF
(Q)終了
////////////////////////////////////////////
私の場合は、1行目から4行目を設定した時点で手詰まりです。

何度も申しわけありませんが、よろしくお願いします。

[ ]
RE:00069 「hidesoft.2:14541| 複数ファイNo.00070
ひろ さん 03/05/08 18:12
 
 ゆきさん今日は、ひろです。
> 設定のどの段階で、マクロが始まるのでしょうか?
> ////////////////////////////////////////////
> (S)実行マクロ・・・・・replace.mac
> (D)検索フォルダ・・・D:\work\data
> (F)検索ファイル・・・*.txt
> (U)サブディレクトリも検索・・・OFF
> (Q)終了
 要するに、ここから先どうしようもないということですよね。m(__)m

 完全にメニューに項目が抜けていました。Ver.1.03 を先ほど登録しました
ので、(若干のタイム・ラグが有ると思いますが) 公開後そちらを御試しくだ
さい。重ね重ね m(__)m。

 ##良くこれまで苦情が来なかったなあ〜。


[ ]