名前変更フォーカス移動でスペース削除実No.09896
jo さん 22/03/10 20:40
 
名前変更フォーカス移動でスペース削除実行希望

タイトルのとおりです ファイル名の前後にスペースが有る場合
前回自動で除去機能付加していただきました
さらにすすめて
ファイル名変更(ダイアログではない)で青くフォーカスされてる状態で上下移動し
ていく際にスペース除去だけは有効に働かせていただきたいです

実装検討お願いします

[ ]
RE:09896 名前変更フォーカス移動でスペーNo.09898
秀丸担当 さん 22/03/11 09:05
 
上下キーの名前変更入力欄の移動はオプションではありますが、Tabキー/Shift+Tab
キーはオプションなしでもできます。

スペース自動除去は、任意のオプションです。
任意なので全ての人に影響するわけではないですが、決定をせずに上下に移動するだ
けで決定となるのは、仕様としてあまり良くない気がします。
Enterでは決定になるので、少し手間かもしれないですが、Enterでされることをお勧
めします。

または、複数選択してF2からのモードを置換にして、「名前の変更(置換)」で、まと
めて置換する方法もあります。
検索文字列「^\s+|\s+$」
置換文字列「」
正規表現:ON
拡張子も対象にする:OFF
最初に見つかったもののみ:OFF
とすると、先頭末尾の空白を除去して置換ができます。

[ ]
RE:09898 名前変更フォーカス移動でスペーNo.09901
jo さん 22/03/14 11:00
 
>上下キーの名前変更入力欄の移動はオプションではありますが、Tabキー/Shift+Tab
>キーはオプションなしでもできます。
> ......
>とすると、先頭末尾の空白を除去して置換ができます。

スクリプトで現在開いてるタブのフォルダをサブフォルダふくめて
全選択して中のファイルに置換処理を一気にかけるように
手順を自動化することは可能でしょうか?
手動で全項目選択して 置換ダイアログの 前回処理内容を保存しておいてやる方法が
あるのでしょうが自動化できないでしょうか?

それから今回一括置換テストを手動で試みましたが
バグなのか1.72ベータ1では 高度のファイル名変更で
自動でスペース削除のチェック外してファイル名決定してもすぺーすいれられなくな
ってます OFFれないです ソフト再起動してもだめです
私だけでしょうか?

[ ]
RE:09901 名前変更フォーカス移動でスペーNo.09903
秀丸担当 さん 22/03/14 17:05
 
スクリプトを使って現在開いてるタブのフォルダをサブフォルダ含めて置換するのは、
できないことは無いと思いますが、RenameReplace(仮)が無いということもあります
けども、あったとしても秀丸ファイラーClassicの機能としてやるのは向いていない
です。
やるとしたら、タブのフォルダの場所だけを取得するのは秀丸ファイラーClassicの
直接のスクリプトにあるメソッド/プロパティでやるしかないですが、実際の置換処
理はごりごりと複雑なスクリプトを書いたほうがいいような話になってくると思いま
す。

スペース除去は、幾つか混乱する点がありました。
もともと、エクスプローラと同等の名前の変更は、ファイル名先頭と末尾のスペース
は除去されます。

「(1)FileName(2).Txt(3)」

という感じだったとして、(1)と(3)の部分の半角空白は、エクスプローラでも、秀丸
ファイラーClasicの初期状態(エクスプローラ相当)でも、除去されます。
あと、先頭の空白の具合によって、除去しようとしても、同じとみなされて「送り側
と受け側のファイル名が同じです」というエラーになってしまう場合があります。
(エクスプローラでも)

秀丸ファイラーClassicの[ツール]→[オプション]→[上級者向け]→[名前の変更]の
設定に、関連する設定があります。
「名前変更は常にファイルシステム」をONにすると、エラーでどうにもならないとい
うことは無く、確実に空白を入れたり、空白を除去できるようになります。
「先頭末尾の空白自動除去」をONにすると、上記の(1)と(2)と(3)の部分全部で、半
角空白だけでなく、全角空白も除去されます。
そのあたりの詳細をヘルプにも書いておきます。

全角空白も想定して、(2)も含めて自動除去と同等にするには、先のコメントの正規
表現は適切ではありませんでした。
検索文字列は「^[  ]+|[  ]+$」で、「拡張子も対象にする」はONとOFFの両方で2
回に分けてやらないといけませんでした。
何にしても、RenameReplace(仮)のメソッドはあったほうがいいので、作ろうと思い
ます。


[ ]