- 1 名前:名無しさん@お腹いっぱい。 [2007/06/13(水) 22:46:55 ID:7B2t/O6j0]
- 軽快・高機能・安定と三拍子そろったテキストエディタ
秀丸エディタについて語ろう 前スレ 秀丸エディタスレ Part18 pc11.2ch.net/test/read.cgi/software/1174741055/l50 公式 hide.maruo.co.jp/ 秀シリーズサポートフォーラム www.maruo.co.jp/hidesoft/ 関連スレは>>2-10くらい
- 331 名前:293 [2007/07/21(土) 17:13:44 ID:+q1s4Kdf0]
- >>300
すみません、書き込んだ後iconに気付きまして、やってみたんですが、たいして 動作変わりません。わずかに早くなった程度で・・・ 大量のファイル(300ぐらい)を開いて置換して閉じるので、grep結果ファイルが 開くのだけが目立って、目がちらついてしょうがない・・・。 grepreplace使うより、全てのファイルを無条件開いて置換して閉じるのを ステルスでやった方が早いのかもしれない・・・。
- 332 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/21(土) 17:56:00 ID:t9hhvYDd0]
- Ver7で追加されたというgrep置換は?
- 333 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/21(土) 20:48:09 ID:r96D72fM0]
- >>314
hm610_signed.exe www.uploda.net/cgi/uploader3/index.php?file_id=0000004893.exe
- 334 名前:314 mailto:sage [2007/07/21(土) 23:53:17 ID:JkxGkVpr0]
- >>333
ありがとうございます! 対応されたバージョンが出るまでこれで乗り切ろうと思います。
- 335 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/22(日) 12:37:56 ID:LVG/Z5ri0]
- >>331
Win版というかコマンドプロンプト版というか、とにかくsedみたいな コマンド使った方が早いと思う。
- 336 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/22(日) 18:00:56 ID:QZ0LyFxx0]
- >>331
速度にこだわるなら他のツールを使った方がいいと思う。 【Grep】複数ファイル文字列検索ソフト【置換】 pc11.2ch.net/test/read.cgi/software/1087433838/
- 337 名前:293 [2007/07/22(日) 19:32:45 ID:107l08410]
- >>336
置換対象のファイルも300だけど、置換する文字列が、 gif→png とかそんな単純じゃなく、規則性がないこんな感じの↓リストが 置換前 置換後 A A' B B' C C' 300ぐらいあるから、そういう複数ファイル置換ソフト使うと、300回実行 しなきゃならない・・・。秀丸じゃないと無理。。 >>355 d とりあえずググってみたら、Cygwin なんかが使えそう。 でもユーザへの配布と実行方法がちょい面倒くさそう。 とりあえず、「のろのろチカチカ置換マクロ」を先行で出しておいて、 空いてる時間に、sedで組んでみっかな。
- 338 名前:355 mailto:sage [2007/07/22(日) 20:02:42 ID:LVG/Z5ri0]
- >>337
いや、cygwinなんてところまでいかなくても、win/コマンドプロンプト で動くsedがありますから。
- 339 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/22(日) 21:24:06 ID:iiPCwIKO0]
- >>337
336ちゃんと見ました? 337に書いている作業がやりたいことの全てなら、 Speeeedというソフトがズバリそのためのソフトのような気がします。(私は 使ってないから速度とか知りませんが..スレ違いすみません)
- 340 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/22(日) 21:40:05 ID:wO3mcBss0]
- そういえばあいつが騒いでたのは春休みだったっけか・・・
- 341 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/23(月) 08:12:44 ID:d+VPAoKI0]
- >>339
正規表現使えるから、できそうだよね。 でも、336は規則性がないって言ってるから・・・。
- 342 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/23(月) 08:56:27 ID:VUZYd0HB0]
- 「規則性」ってのが何を意味するのか分からんが、
どうあれ A や A' は事前に確定しているんだろうから、 Speeeeed をコマンドラインから起動するバッチを書けばいいだけ。 秀丸マクロの出番があるとしたら、 > 置換前 置換後 > A A' > B B' > C C' このリストからバッチファイルを作成するマクロを書くくらいか。
- 343 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/23(月) 09:17:32 ID:uW8GYdX10]
- EmEditor Ver.7 マクロ用の新しいオブジェクト、プロパティ、メソッド
jp.emeditor.com/images/emeditor7_import_hidemaru.png ファイラを要望してる香具師はこんなの↓をイメージしてるのか? EmEditor Ver.7 カスタム ツール バー jp.emeditor.com/images/emeditor7_findbar.png
- 344 名前:一覧男 [2007/07/25(水) 09:32:12 ID:IUs4PBPw0]
- やたらと、ファイル一覧、否定的な香具師が多いと思ったら、
EmEditorの宣伝という落ちって、 やっぱ工作員だったかぁ...。 orz 秀丸さん、ファイル一覧は普通に必要だと思います。 どうか、ご対応お願いします。
- 345 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 09:57:42 ID:i44QVWK20]
- NG Nameに追加した
- 346 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 11:13:41 ID:JH2Y2oI40]
- まぁ有っても良いんじゃない?
MIFES7には有るし、Cなんかで大量のファイル開いてるときは たまに役立つよ。 ま、俺は要らないけど。
- 347 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 11:20:11 ID:FYTCj9FO0]
- >>344
「欲しい人もいればいらないという人もいる」状態を「必要」とはいわない。 「自分には必要」を勝手に一般化するな。
- 348 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 12:22:56 ID:XPyM1+730]
- KDEのKateにもだいぶ昔からあるね。
割とオーソドックスなんじゃないの? 無くてもいいけど。 こういうのがつくと、スクリーンショットが豪華になるので、 売り上げ向上には繋がるような気がするが。
- 349 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 13:33:11 ID:JH2Y2oI40]
- スクリーンショットを豪華にする目的なら、ファイル一覧よりも
アイコンとかツールバーとかをかっこよくする方が先かもねw ま、俺はツールバー表示してないけど。
- 350 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 20:31:21 ID:Frc8srqI0]
- やっぱ厨は被害妄想甚だしいな。
- 351 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 21:21:14 ID:7b1qI3T00]
- >>16-17
- 352 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 21:49:26 ID:02fJkZla0]
- UPPER CASE(大文字に変換)と lower case(小文字に変換)って
便利に使わせてもらってるんだけど ウムラウト付きの文字 (ドイツ語の ä とか) や アクサン付きの文字(フランス語の è é とか)には対応してないんだね。 ちょっと残念。
- 353 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 22:08:56 ID:S7YBrFV/0]
- 要望は公式に言えばいい
- 354 名前:名無しさん@お腹いっぱい。 [2007/07/25(水) 22:50:31 ID:MhHVRvt8O]
- 何度か出没してるオレは一覧否定派だが、Em Editorも
否定します。 一覧表示するにもツールバークリックとかワンクッション いるんだから、マクロでカバーすりゃいいじゃん。
- 355 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/25(水) 23:05:57 ID:iWHSY6Ao0]
- 表示しっぱなしなのかもよ。
Rubyとか使えるといいんだけどなぁ
- 356 名前:名無しさん@お腹いっぱい。 [2007/07/25(水) 23:10:08 ID:MhHVRvt8O]
- 連投。
前にオプションつけてエクスプローラ起動のレスが あったけど、オプションなしでいける。会社のマシン で試したら、ご要望のツリー無しのファイル一覧が表 示されたよ。 run "explorer " + directory; これマクロ登録して、ショートカットキーやツールバー のボタンに割り当てれば、お手軽実現。
- 357 名前:名無しさん@お腹いっぱい。 [2007/07/26(木) 01:28:15 ID:XC0Dp3mj0]
- >>338-342
レス遅れてスマソ。 結局のろのろ秀丸マクロで大変ご好評をいただいて、それでやることになった。 sedはまた次の機会に使ってみますね。置換ならsedにかなうものはないよね。 ところでまた別の問題が浮上してさ、、 みなさんは、1000文字を超える行を半分ぐらいで改行したいとき、どうやって書きますか? 変数の限界が640kbまでだよね。
- 358 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/26(木) 02:19:04 ID:e3oRPpFH0]
- >>357
カーソル移動で \r を挿入かな?
- 359 名前:357 [2007/07/26(木) 10:31:06 ID:LS+kl4XA0]
- >>358
\r って、\n の間違いかな? カーソル移動しようにも、1000文字を超える行をどうやって判別する? 変数に入らないから、strlen で調べることもできないし・・・。
- 360 名前:358 mailto:sage [2007/07/26(木) 10:50:19 ID:kryOuiEL0]
- >>359
スマン、間違えた orz 秀丸マクロはキャリッジリターン指定できない罠 単純に行のバイト数を知りたいなら、行末にカーソル移動して x座標の位置を調べればいけるんじゃないかと思うけど。
- 361 名前:357 [2007/07/26(木) 10:53:39 ID:LS+kl4XA0]
- ぐぐったら、
C言語(他、多くの処理系)では \n はニューライン(文字コード 0x0A)、 \r はキャリッジリターン(文字コード 0x0D) となりますが、 秀丸マクロでは両方ともニューライン(0x0A)と解釈されるようです。 って書いてある。どう違うんだorz
- 362 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/26(木) 11:06:13 ID:UdQ3IOaO0]
- >>357
中途半端な知識の俺が偉そうにレスすると、 windowsの改行はcrlf(\n\r)だけどunixはlfのみ。Mscはcrのみ。 lfとかで改行すると、秀丸ではちゃんとみれるけどメモ帳では改行しなかったりする。 単純に(マルチバイトシングルバイト関係なく)1000文字で置換、だったら 検索:(.{1000}) 置換:\1\n 正規表現:有り で置換したら駄目?
- 363 名前:357 [2007/07/26(木) 11:07:30 ID:LS+kl4XA0]
- あ、違わないんだね。秀丸マクロでは、\r はあるけど、実質 \n と変わらないってことだよね。
なるほど!x座標。使えるね!やってみますわ、サンクスコv
- 364 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/26(木) 11:19:33 ID:kryOuiEL0]
- 懸案はすでに解決したみたいだけど、本来の \r \n については↓あたりが参考になると思う。
ttp://www.japanlink.co.jp/dtpjiten/ki/carriagereturn.html ttp://www.japanlink.co.jp/dtpjiten/ra/linefeed.html
- 365 名前:357 [2007/07/26(木) 11:29:21 ID:LS+kl4XA0]
- >>362
すみません、、何がしたいか、正確に書くとですね、 こんなような↓データがあるんですよ、大量に。 文字列1;文字列2; 12345 文字列1;文字列2;文字列3;文字列4 123456 文字列1 789012 (スペース3つのところは、ホントはタブです)(末尾の数字は5,6桁の不規則な数字の羅列です) で、これをこう↓したいわけです。 文字列1 12345 文字列2 12345 文字列1 123456 文字列2 123456 文字列3 123456 文字列4 123456 文字列1 789012 そのために、こんなマクロを書いたんですが、 #i = 0; while( 1 ){ replaceallfast "^((?!;).)+\\f;+\\f((?!\\t).)+\\f\\t[0-9][0-9][0-9][0-9][0-9][0-9]*$" , "\\0\\3\\n\\2\\3" , regular; if( ! result ) break; #i =#i +1; if( #i > 500 ) break; } 「文字列1」のとこの文字数が1000ぐらいを超えると「置換文字列が長すぎて処理できません」 と、秀丸に怒られてしまう訳です。 で、1000文字を超える行だけ、あらかじめ、末尾の数字を加えつつ500ぐらいにぶったぎっておけないかな、、と。 >>360さんの x座標で、最初に全ての行を半分にぶったぎればイケるかな、と思ったんですが、、どうかな。。やってみます。
- 366 名前:名無しさん@お腹いっぱい。 [2007/07/26(木) 16:33:02 ID:0zxzoFGpO]
- 正規表現の置換でできそうだが。
- 367 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/26(木) 18:01:58 ID:dbgU+un60]
- 文字数が多すぎるから無理じゃね?
- 368 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/26(木) 18:06:42 ID:SedjWwYJ0]
- >>365
1行目の > 文字列1;文字列2; 12345 はTAB文字の前にセミコロンなの? 他のレコードと規則性が違う希ガス
- 369 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/26(木) 18:19:17 ID:Qp+Y7fOu0]
- 元テキストの1行は最大で何バイトくらいあるんだ?
1000文字で2バイト文字なら2kでしょ。その程度なら扱えそうな気がするけど。
- 370 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/26(木) 19:48:44 ID:Aa/Oo2MH0]
- 2007/07/26 Ver7.00β18
●バグ修正 ・β17で検索ダイアログでの単語補完で数字キーだけで選択されてしまう問題修正など。 ・/eオプションで起動するときは自動起動マクロを実行しない。 ・/pオプションでファイルを開いた直前と直後の自動起動マクロを実行しない。 ・折りたたみ用の余白が非表示のときに範囲選択して折りたたみしたときに 折りたたまれない問題修正。 ・常駐秀丸エディタを終了させた後の起動で送金ダイアログで 「共有メモリの確立に失敗しました(04)」場合がある問題修正。 ・ウィンドウ分割と部分編集の操作で見出しバーが再描画されない場合がある問題修正。 ・Vistaで「管理者として実行」したときは全てのユーザに対しての送金登録を行えるように。 ・アウトライン解析のツリー表示のプロパティの「コメントを無視」は、 一部がコメントではなく、全てがコメントだった場合除外するように変更。 ・perlでShift-JISに限って'表\'と書くような場合の対策。 ・perlで$#xxx'yyyという書き方の対策。 ●その他修正 ・[動作環境]→[ファイル]に「WindowsVistaタイプ」を追加。 ・[動作環境]→[常駐機能]に「同じ内容は無視」を追加。 ・[動作環境]→[ファイル]→[保存]の「所定のフォルダにバックアップを作成する」を 「バックアップを作成する場合の保存先を指定する」に設定名変更。 ・新規インストールの標準のファイルタイプ別の設定にperlを増やす。 hide.maruo.co.jp/software/bin/hm700b18_signed.exe
- 371 名前:357 [2007/07/26(木) 20:49:45 ID:LS+kl4XA0]
- >>368
すんまそん。ご指摘通りです。正しくは、 文字列1;文字列2 12345 です。スペース3つをタブに置き換えて、>>365のマクロで実行してみてください。 >>369 エクセルの LENB()関数で調べた結果、最大は約1400ぐらい。 バイト数の数え方はよくわかんないんですが、私の実行してみた範囲では、850文字くらいまでは >>365のマクロで実行できました。 置換の検索文字列の上限と変数の上限はやっぱり別かな?
- 372 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/27(金) 00:37:31 ID:BXbamrby0]
- >>365
文字列変数の上限は約8KB。検索/置換文字列の上限はヘルプに書いてある通り。両者は別物。 こういう時は1行丸ごとヒットさせようと思わなけりゃいいんだよ。 // 文字数に関係なく処理できるマクロ while (##i < 500) { searchdown "\\t[0-9]{5,}\\n", regular; if (!result) break; $$num = gettext(foundtopx, foundtopy, foundendx, foundendy); golinetop2; beginsel; golineend2; endsel; replaceallfast ";", $$num, inselect; movetolineno 1, lineno + 1; ##i = ##i + 1; }
- 373 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/27(金) 00:52:07 ID:hX7HJqzP0]
- seisikiban mada-?
- 374 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/27(金) 06:46:13 ID:sZBrH0E30]
- madadayo-
- 375 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/27(金) 10:58:51 ID:NSnx6JB80]
- そんなに秀丸の再変換機能を使いたいのか、おまいら
- 376 名前:357 [2007/07/27(金) 18:24:40 ID:RXaAM1HH0]
- >>372
すげぇ神!!ありがとう!! で、実行してみたんだけど、今度はメモリ不足って Windows に怒られた・・・。 ので逐一ファイル保存するようにしてやったら行けた。すげーーーーー神ーーーー ↓この辺がプロ。 movetolineno 1, lineno + 1; 私なんて golineend2; right; って書くorz
- 377 名前:189 mailto:sage [2007/07/27(金) 19:17:09 ID:Yk4WBj4z0]
- >>370
アルェー、治ってないのかNA?
- 378 名前:372 mailto:sage [2007/07/27(金) 23:42:10 ID:BXbamrby0]
- >>376
自分で使うだけなら golineend2; right; でもいいけど 動作環境の [「行末<->次の行の行頭」移動の禁止] が ON だと思ったように動かないからなぁ。 movetolineno なら動作環境に関係なく同じ動きをするから安心。 他人に使わせるマクロは設定の違いによって動作が変わらないように注意して書かなきゃいけないから気を遣うよ。
- 379 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 07:12:07 ID:1PmgV9eC0]
- >>377
↓これじゃないの?β18でも再現するなら報告した方がいい >>246 ・Unicode独自文字があり、保存するときのエンコードの警告表示をOFFにしていると、 自動保存で再読み込みされる問題修正。
- 380 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 10:39:16 ID:T1kgkIfD0]
- 先ほど気付いたのだが、hoge.txt を編集中にバックアップをとっておこうと思って
「名前を付けて保存」で hoge_1.txt として保存すると、 編集中のファイルも hoge_1.txt になる。 元のファイルで編集を続けようと思うと、一旦閉じて hoge.txt で開かなければならない。 大した手間ではないが、ちょっとどうかな、と思った。 「名前を付けて保存」でもそのまま元のファイルで編集続行 ON/OFF のオプションを を設けるか、あるいは、 「名前を付けて保存」とは別に「別名で保存 (元ファイルでの編集続行)」メニューを 追加したらどうか、と思いますた。
- 381 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 11:02:20 ID:qUP9LuMv0]
- 先ほど気付いたって、ほとんどのWindowsアプリはそういう動作だろ。
- 382 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 11:11:21 ID:SE5CQA+70]
- >>380
そうそうほとんどのアプリがそうなっているのが問題だよね。 別名で保存(F12) とは別に、別名で補完し元のファイルで作業続行 ってのがあればOK!
- 383 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 11:27:48 ID:JRq9uwrD0]
- Adobeのソフトウェアでは「複製を保存」で統一されてたかな
- 384 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 11:56:22 ID:yE2gjPJP0]
- 別名保存はあってもいいな。
- 385 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 12:11:15 ID:Rj587cn/0]
- >>380
名前を付けて保存のあとに、ファイル名変更 で元の名前に戻すのはどうだ。 「実際のファイルのファイル名も変更する」はoffで。
- 386 名前:名無しさん@お腹いっぱい。 [2007/07/28(土) 12:14:22 ID:h4eQmvjq0]
- そしてVCのプロジェクトをいじっていると *.BAK ファイルがいらない子な件。
Main.c も Main.h も容赦なく上書されて意味ねえ…。
- 387 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 12:19:28 ID:i10v0RW20]
- 俺は普通に上書き保存→エクスプローラーでコピペ→名前変更
ってしてるな
- 388 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 12:20:07 ID:2N3SnYz70]
- バックアップはサクラエディタのように日付や時間をファイル名に含めるようにしたらいいのにとは思う。
重要なものはSubVersionで管理してるけど、わざわざSubVersionに登録するほどでもないものは エディタのバックアップ機能を活用したい。
- 389 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 12:48:42 ID:WIRNNrn80]
- 連番セーブマクロを使うと hoge.001.txt, hoge.002.txt, hoge.003.txt, … というファイル名で
バックアップを保存できて、そのまま元ファイルでの作業続行が出来る。 でもやっぱり Subversion と同様に、そこまでしなくても…というケースは多いだろうし、 連番名だけという制約があるから、「別名保存 (元ファイルでの作業続行)」 も最初から メニューとして用意されていたほうが良いかなとは思う。
- 390 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 13:54:54 ID:h4eQmvjq0]
- とりあえず田楽DLLで低級マクロを書いてみたけど、こんな感じ?
あえて非破壊にこだわるなら saveas basename2; で上書してる部分をコメントアウトすればおk。 // =====編集前のファイルをバックアップしつつ上書保存するサンプル===== if( ( 0 <= strstr( filetype, "." )&&( 1 < strlen(filetype) ) ) ){ // 新規作成等のファイルには "." がない // 田楽DLLのロード loaddll hidemarudir + "\\DengakuDLL.dll"; if(result){ // バックアップファイル名を作成 $FName = leftstr( basename2, strlen(basename2) - strlen(filetype) ); $SaveName = ".\\" + $FName + filetype + "@" + year + month + day + hour + minute; // 日付+時分 // 田楽DLLによるファイルコピー #Res = dllfunc("COPY",basename2,$SaveName); } saveas basename2; // 現在編集中のファイルを上書き保存 } } else{ SAVEAS; // 新規ファイルは「名前をつけて保存」 }
- 391 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 18:03:14 ID:vL3Jh93I0]
- >>380
別にそのままで編集続けりゃいいじゃん。保存する時に 元ファイル名で保存するか、そのまま上書き保存して リネームでもいいし。
- 392 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 19:51:04 ID:pRpaguUe0]
- >>380
www.maruo.co.jp/hidesoft/4/x05039_.html#5043 >>390 何もそこまでしなくても(苦笑)
- 393 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 22:15:17 ID:kNyJl3I60]
- >>390
コピーするだけなら、コマンドプロンプトのコピーコマンド使うとか? というか、Windowsで動くteeを探して、使った方が楽かも。 全選択後、tee <con 出力ファイル名 >nul
- 394 名前:390 mailto:sage [2007/07/28(土) 22:55:01 ID:h4eQmvjq0]
- >>392
>>393 まあ、あえて田楽DLLを使ってるのは dllfunc("MKDIR","/p .\\" + $folder ); とかで バックアップ用のディレクトリを掘ることを想定してのことなんだけどね。 もっと高度にするなら、世代管理も必要だなあ。
- 395 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 04:18:04 ID:+p+DDkqY0]
- 俺もそこまで・・・って一瞬思ったけど何気に便利そうだなwww
- 396 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 06:03:47 ID:FTvYQe120]
- 世代管理を実装してみますた。
田楽DLLいいよ、田楽DLL。 ttp://suzuka.mine.nu/nijiup/upfiles/niji10182.zip_0Lq3HmbX1z6ev7kgCbXm/niji10182.zip 解凍pass:メ欄 改変はご自由にドゾー
- 397 名前:396 mailto:sage [2007/07/29(日) 06:04:57 ID:FTvYQe120]
- すいません、396 = 394 です orz
- 398 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 10:58:18 ID:/4wgCLl+0]
- >>396
> 世代管理を実装してみますた。 > 田楽DLLいいよ、田楽DLL。 > ttp://suzuka.mine.nu/nijiup/upfiles/niji10182.zip_0Lq3HmbX1z6ev7kgCbXm/niji10182.zip > 解凍pass:メ欄 > 改変はご自由にドゾー お疲れ様です。 実際に使ってみました。 世代管理いいですねー。 めちゃめちゃ便利です。 バックアップ用のディレクトリを掘る dllfunc("MKDIR","/p .\\" + $folder ); があれば文句なしだね。
- 399 名前:396 mailto:sage [2007/07/29(日) 13:24:10 ID:FTvYQe120]
- >>398
フォルダ作成機能を追加しましたです。 ひととおり動作を確認したのでうp。 ttp://suzuka.mine.nu/nijiup/upfiles/niji10183.zip_NRxxgJyFqhPyWQo2L9s1/niji10183.zip 解凍pass:メ欄 $Folder に ".\\Bakup" "C:\\Bakup" などを記述するとバックアップファイルを格納するフォルダを作成できます。 フォルダ作成が不要なら $Folder=""; を指定。 バックアップファイル名は「オリジナルファイル名+指定のファイル名区切り(以前は "@" 固定だった)+日付を表す 数値の連続」としたので、"document.txt~200707291308" というようなファイルも作成できます。 document.txt~2007-07-29_13-18 などと指定する場合は、ファイル検索のワイルドカードを自分で直接記述すれば 対応可能。(例: $WildCd = "????-??-??_??-??"; ) ちなみに、年月日時分の単位で指定してバックアップファイルを作成する場合、当然ながら1分以内に何度も実行 すればそのつど上書されますので、更新頻度が高いようであれば秒単位で指定してください。
- 400 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 13:43:37 ID:FTvYQe120]
- >>399
ちょっと紛らわしいので訂正。 × 秒単位で指定 ○ 秒を含めて指定(年月日時分秒)
- 401 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 13:55:26 ID:17WRtqL90]
- >>399-400
GJ!!
- 402 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 14:13:44 ID:xUbBfeXw0]
- >>399
basename部分に空白使う人はいないかもしれないけど、 COPYやREMOVEで、空白を含むパスへの対応をやっと いたほうがいいと思う。 それと $FName + filetype = basename2 だからそのまま使えば?
- 403 名前:399 mailto:sage [2007/07/29(日) 14:24:21 ID:FTvYQe120]
- >>402
> 空白を含むパスへの対応 御意。 > $FName + filetype = basename2 だから ですな、メチャメチャ無駄なコードですた orz ちょっくら直してきます。
- 404 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 14:51:27 ID:+p+DDkqY0]
- なにこのGJな流れw
これは便利でいいな。
- 405 名前:399 mailto:sage [2007/07/29(日) 16:03:57 ID:FTvYQe120]
- なおしましたー。 "hhh hh hh.txt" で動作確認。
ていうか、MKDIR も空白を含む( "C:\\Program Files\\Hdemaru" とか )とヤバかったですね orz なお、「ファイル削除をせずに無限にしたい」というケースも出てくるかもしれないので保持数を マイナス指定することで世代管理をしないように変更。 田楽DLLはマジ偉大ッス…。 検索ファイルを逆順にソートという機能がなかったら世代管理_じゃね? とオモタ。 スレの住人の方々もdです。 -------------------------------------------------------------------------- バックアップマクロ Ver1.3 ttp://suzuka.mine.nu/nijiup/upfiles/niji10191.zip_ZYyxi0962t4hrdvbdE45/niji10191.zip 解凍pass:メ欄 機能まとめ: ・「オリジナルファイル名+区切り文字+日付数値文字列」でバックアップファイルを複数作成。 ・バックアップファイルを格納するフォルダを指定可能。(存在しないフォルダは作成) ・保存する最新のバックアップファイル数を指定(マイナス値で「無限」)し、世代管理が可能。
- 406 名前:399 mailto:sage [2007/07/29(日) 16:17:14 ID:FTvYQe120]
- ああ、また誤解を受けるような表現が。
× 複数作成 ○ 作成 なんか1動作で複数作成しそうなイメージなので訂正。
- 407 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 18:11:37 ID:V180kXy20]
- >>399
削除用のフルパスを作成するところで、 バックアップを作ったときのBkFormatと 今現在のBkFormatが違う場合におかしくならんかね? (WildCdが現在の設定からしか計算しないから)
- 408 名前:399 mailto:sage [2007/07/29(日) 19:38:05 ID:FTvYQe120]
- >>407
おかしくなる前に、運用側で古いフォーマットで作成したバックアップファイルを リネームするとか隔離するとかいった対応をするしかないのでは。
- 409 名前:402 mailto:sage [2007/07/29(日) 19:57:55 ID:IHRmC7bp0]
- >>405
ご苦労様です。 ちょっと試しましたが、さすがにftpモードはエラーになりますね。 まぁ、これは仕方がないですが。 保存部分を消して、イベント認識させれば、Ver.7の自動起動マクロにも 使えそうです。
- 410 名前:382 mailto:sage [2007/07/29(日) 22:21:49 ID:89W9cGr/0]
- まさか神が現れるとは思いませんでした!!
すげ〜使いやすいですね! VxEditor 見たいに、保存時のイベントとして登録することは可能でしょうか?
- 411 名前:357 [2007/07/29(日) 22:25:01 ID:DumBs5fj0]
- >>378
すげぇぇ、勉強になった、ありがとうございましたあぁぁ!!
- 412 名前:410 mailto:sage [2007/07/29(日) 22:41:24 ID:89W9cGr/0]
- Ctrl+S に割り当てました!!
快適です!!
- 413 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/30(月) 00:10:12 ID:4Ddpj4A40]
- >>405
GJでございますです。 有り難く使わせていただきます。
- 414 名前:399 mailto:sage [2007/07/30(月) 00:16:39 ID:oICgOk7c0]
- あくまで田楽DLLが神ですってば。
ところで、またまた補足。 >>407 どうやら「おかしなこと」の部分を誤解してたっぽい? 「削除用のフルパスを作成するところで」とありますので、あくまでソースの 149〜151行のお話だとすれば、 $BkFormat を変更する → $WildCd の内容が変化する この結果、ソース139行の FINDNEXT に失敗(古いフォーマットのバックアップ ファイルは検出されない)して140行の break で whil eを抜けますので、処理が 149〜151行を通ることはありません。 「おかしなこと」とは$BkFormat を変更することで迷子のファイルができてしまう ことを指している…そう考えていた時期が俺にもありました
- 415 名前:399 mailto:sage [2007/07/30(月) 01:47:42 ID:oICgOk7c0]
- >>414
> この結果、ソース139行の FINDNEXT に失敗(古いフォーマットのバックアップ > ファイルは検出されない)して140行の break で whil eを抜けますので、処理が > 149〜151行を通ることはありません。 ウソやん! hoge.txt@???????????????? って、hoge.txt@200707300121 にヒットしますね…。 orz ちょっくら動作確認してきます
- 416 名前:399 mailto:sage [2007/07/30(月) 03:33:21 ID:oICgOk7c0]
- 修正&動作確認完了。
ご指摘dでした >>407 ワイルドカードでヒットしたのに削除できずエラーが上がってくるない不具合を修正。 その他、メッセージにマクロ名を入れたりスマートではないコードを修正したりなどなど。 いずれにしても、フォーマットを変更した場合は意図しないファイルがヒットする可能性もあ りますので、安全のため事前に運用側での対応をおながいシマス これでようやく名無しに戻れるかな…。 -------------------------------------------------------------------------- バックアップマクロ Ver1.4 ttp://suzuka.mine.nu/nijiup/upfiles/niji10210.zip_Qh6DuGwL5r5otq6U6Yfo/niji10210.zip 解凍pass:メ欄 機能まとめ: ・「オリジナルファイル名+区切り文字+日付数値文字列」でバックアップファイルを複数作成。 ・バックアップファイルを格納するフォルダを指定可能。(存在しないフォルダは作成) ・保存する最新のバックアップファイル数を指定(マイナス値で「無限」)し、世代管理が可能。 その他: ・連番機能はありません。同一名ファイルは常に上書されます。 ・ごみ箱移動は出来ないこともないです。(ソースにサンプルコードが記述してあります) ・現状ではLAN経由の動作は確認していません。 最後に: ・田楽DLLすごいよ、田楽DLL。
- 417 名前:380 mailto:sage [2007/07/30(月) 08:03:57 ID:zajbRftn0]
- >>380 ですが、賛同頂き有り難うございます。
おまけにマクロまで作っていただき恐縮です。 >>416 GJ!乙であります。 拡張子をファイル名の末尾に保持したかったので、 ↓のように書き換えてみたら一応なんとか希望通りに動きますた。 (ソースをよく把握できてないのでバグありかも?) 098: #Res = dllfunc( "COPY", "'" + basename2 + "'", "'" + $FName + $BkFormat + filetype + "'" ); 101: call FileNumSub( $FName ); 139: #Res = dllfunc( "ENUMFILE", "/r " + "'" + $InName + $WildCd + filetype + "'" ); 154: #MidPos = strlen( $FName ); 155: #MidLen = strlen( $Seek ) - strlen( $FName ); >>383 > Adobeのソフトウェアでは「複製を保存」で統一されてたかな Adobe Reader だと「コピーを保存」となってますね。 秀丸のメニュー名としては「コピーを保存」が良さそうですね。 他のメニュー名だと (元ファイルでの作業続行) を補足しておかないと 「名前を付けて保存」と混同しそうな気が…。 蛇足ながら、実は「連番セーブ改」マクロは拙者がPenguin氏作のものを改良しますたものです。
- 418 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/31(火) 23:48:11 ID:ip75vNKv0]
- >>416
your are cool!! nice guy!!
- 419 名前:390 mailto:sage [2007/08/01(水) 02:32:29 ID:2O1m8N5l0]
- | \
|Д`) ダレモイナイ・・ |⊂ リンクヲハルナラ | イマノウチ バックアップ復旧マクロ ttp://suzuka.mine.nu/nijiup/upfiles/niji10249.zip_fznKJspxRdx0re7Aqb00/niji10249.zip [pass:メ欄]
- 420 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 03:07:31 ID:D6Zrd1700]
- どうでもいいけど、今さっきまで IMEをオンにする
コマンドラインオプションは絶対ある筈と思い込んでたが、 意外な事に付いてないんだね(そりゃ /x で代用可能だけどさ)
- 421 名前:417 mailto:sage [2007/08/01(水) 03:29:41 ID:kgXKE1yD0]
- >>419
GJ!乙であります。 当方は bak.mac をバックアップファイル名の末尾が拡張子となるように改変しますたので、 bak_restore.mac の 44行目を↓に書き換えますた。 $FName = leftstr( basename2, strlen( basename2 ) - strlen( filetype ) ); #Pos = strstr( $SelFile, $FName + $SepName );
- 422 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 06:54:51 ID:WK+rvZeF0]
- >>420
どんな状況で必要なのかわからないが、IMEの制御ならファイルタイプ別の設定にあるけど? Ver.6以降なら、自動起動マクロもあるし。
- 423 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 08:21:56 ID:HalzclPp0]
- マクロなら if( 0 == imestate ) imeswitch; の一文でおkだね。
- 424 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 17:43:07 ID:JJR6dKfY0]
- >>419
乙です!
- 425 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 21:03:18 ID:7Hnf2tbG0]
- > どんな状況で必要なのかわからないが
/je とかの存在意義と全く同じよ。ショートカットを作成して おけば、ファイル単位で入力モードを設定できるじゃん? 確かに通常は 423氏のご指摘通りなんだけどさ、別ファイルで時間の 掛かるマクロ (大きめなファイルの順次置き換え処理なんか) をやらせてる最中、うっかりいつもの調子で呼び出すと、 あの忌々しい「他の秀丸エディタが(略)」なるダイアログが… (一応自動起動マクロならアラート自体は出ないけど) まあ、俺にとって意外でも、他の人から見て ない方が当然ってんなら、それまでの話だわね(´ー`)
- 426 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 21:04:39 ID:aRgCRS2Y0]
- >>419
乙。 正直、こんな流れでマクロが出来上がるとは思っても見なかった。 このスレ始まって以来の流れだったんじゃないかな。 更新を重ねてどんどん改良されていく過程がとても楽しかった。 これがプログラムの醍醐味なのかな。 このマクロの機能はずっと欲しかったので、感謝してる。 これからも頼むぞ。
- 427 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 22:05:50 ID:UXE6hkKk0]
- どうせなら秀丸まとめWiki
wiki.web-ghost.net/index.cgi/hidemaru か本家ライブラリに登録すればいいのに
- 428 名前:名無しさん@お腹いっぱい。 [2007/08/01(水) 22:06:45 ID:+kqsTfBj0]
- あのぉ、秀丸で
X 90.0 Y- 50.0 R 30.0 こんな風な行の空白の部分をなくしたいんですけど、どうしたら いいんですかね。 空白の長さはバラバラなんですけど。 どなたか教えてもらえませんか? お願いします。
- 429 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 22:12:19 ID:7tNUczYm0]
- >>427
先に書かれた。 Wiki 管理人だけど>>319がいいなら ページ作ってみるけど。
- 430 名前:名無しさん@お腹いっぱい。 [2007/08/01(水) 22:26:23 ID:+kqsTfBj0]
- 428のものですがわかりました。
+ ¥ でした。
- 431 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/01(水) 22:49:27 ID:4KxjHzkm0]
- ¥って?
|

|