検索ボックスNo.27683
oshimas さん 10/02/20 10:00
 
お世話になります。

次のようなことができると、とても助かるのですが、方法を教えてください。
また、検索ボックスの長さがもう少し長いと便利なのですが、それは難しいでしょう
か。

検索ボックスの中に文字を入力して、検索ボタンや置換ボタンを押す。
 ↓
その文字が検索ウインドウの検索文字列に自動的に入力されている。

よろしくお願いします。

[ ]
RE:27683 検索ボックスNo.27687
Iranoan さん 10/02/21 16:05
 
 oshimas さん今日は、一ユーザの Iranoan です。
> 検索ボックスの長さがもう少し長いと便利なのですが、それは難しいでしょう
> か。
 ヴァージョンが古いと無理だと思いますが、通常のウィンド同様にダイアロ
グ・ボックス右下をドラッグして下さい。正式最新版の Ver.7.11 でできるは
ずです。

> 検索ボックスの中に文字を入力して、検索ボタンや置換ボタンを押す。
>  ↓
> その文字が検索ウインドウの検索文字列に自動的に入力されている。
 これは無理だと思います。
 一度検索すると、履歴に残るので、それを使うしかないでしょうね。

  私は検索ボックスを使っていませんが、個人的には今まで同種の要望が出
ていなかったのが不思議なぐらいですね。(私が知らないだけかも(^^;) 検索
文字列はそのままに、オプションを変更したい場合はあるでしょうから。

[ ]
RE:27687 検索ボックスNo.27692
秀丸担当 さん 10/02/22 10:00
 

> 検索ボックスの長さがもう少し長いと便利なのですが、それは難しいでしょう
> か。

V7.11ではできないですが、現在開発中のV8.00βにおいては、ツールバーを右ク
リックして「ツールバーデザイン」より「検索ボックスの幅」で指定できるよう
になる予定です。
検索ボックスというのがツールバーのことではなくて、検索ダイアログボックス
(ウィンドウ)の中の検索文字列を入力する部分のことでしたら、Iranoanさん
が言われるとおり、ダイアログボックスをサイズ変更できます。

> 検索ボックスの中に文字を入力して、検索ボタンや置換ボタンを押す。
>  ↓
> その文字が検索ウインドウの検索文字列に自動的に入力されている。

これは確かにできませんでした。

現状で対策するとしたら、[その他]→[動作環境]→[検索]の、「ツールバーの検
索ボックス」のほうの「リアルタイム検索」をONにすると、少し近い感じにはな
るかもしれないです。
これがONになっていると、入力中にすぐ検索して、そのまま検索ダイアログを出
すと、カーソル位置には検索された文字列があるため、結果的に検索ダイアログ
にもあらかじめ入力されている状態になると思います。
ただ、入力中の文字列がヒットしていない場合は意味が無いので、中途半端かも
しれません。

リアルタイム検索をONにしてうえで、さらに以下のマクロで検索ダイアログを出
すようにすると、検索バッファをダイアログにあらかじめ入力しておくこともで
きます。

  searchdialog searchbuffer, searchoption;

これをマクロ登録やキー割り当てなどをするとできると思いますが、ツールバー
の「検索...」ボタンを押したらそうなるようにはやっぱりできないです。

そういうことができたらいいということで、今後のネタとして参考にさせていた
だきます。

[ ]
RE:27692 検索ボックスNo.27696
oshimas さん 10/02/22 13:09
 
お世話になります。

検索ボックスの幅は、ツールバーの検索ボックスの幅のことでした。
おっしゃる方法で変更できました。ありがとうございます。

> 検索ボックスの中に文字を入力して、検索ボタンや置換ボタンを押す。
>  ↓
> その文字が検索ウインドウの検索文字列に自動的に入力されている。

正規表現を使った検索と置換の時に特に感じるのですが、およそ次の通りです。

「リアルタイム検索」はON、「検索文字列を強調」もON、「正規表現」もONに
して使っています。

1.検索ボックスに文字を入力する

2.ヒットするところが黄色く強調されるので、正しくヒットしているか確認する
(適切な正規表現がすぐには思いつかないのです)。

3.置換ボタンを押す

ここで、検索ボックスに入力した文字が、検索文字列の欄に自動的に入力されている
と便利なのですが、
そうではないのでもう一度入力することになります。

このような次第です。
もし実現すればとても便利だと思いますので、よろしくお願いします。

[ ]
RE:27696 検索ボックスNo.27697
秀丸担当 さん 10/02/22 14:49
 

>正規表現を使った検索と置換の時に特に感じるのですが、およそ次の通りです。

そうでしたか。正規表現ONだと、リアルタイム検索ONでもカーソル位置の文字列
と検索文字列は違うので最初に書いた方法では意味がありませんでした。

やはり現状ではマクロでやっていただくしかないようです。
置換ダイアログの場合だと以下のようになると思います。
 replacedialog searchbuffer, replacebuffer, searchoption;

もしやるとした場合、手元のバージョンで試しにやってみたところ簡単にできま
したが、検索バッファを上書きして書き換えてしまいます。
検索バッファが書き換わると都合が悪い場合もあるかもしれないので、V8.00に
反映するのは慎重に考えたいと思います。

[ ]
RE:27697 検索ボックスNo.27699
oshimas さん 10/02/24 08:30
 
お世話になります。

検索、置換ともに、教えていただいたマクロで便利になりました。

ありがとうございます。

[ ]
RE:27699 検索ボックスNo.27728
oshimas さん 10/03/01 23:07
 
お世話になります。

今頃気がついたのですが、教えていただいたマクロを使用して
一度置換のダイヤログを表示させた後、マクロを使用して検索のダイヤログを
表示させようとしても、置換のダイヤログになってしまいます。

また対応策を教えてください。
よろしくお願いします。

[ ]
RE:27728 検索ボックスNo.27729
秀丸担当 さん 10/03/02 09:22
 

>今頃気がついたのですが、教えていただいたマクロを使用して
>一度置換のダイヤログを表示させた後、マクロを使用して検索のダイヤログを
>表示させようとしても、置換のダイヤログになってしまいます。

その通りでした。
失礼しました。
検索のマクロのほうは以下のようにする必要がありました。

  searchdialog searchbuffer, searchoption & 0xfffffffb;

このようにしておくと大丈夫だと思います。
searchoptionの0x04のビットは置換フラグということになっていて、これが立っ
ていると置換の挙動になってしまいました。
 & 0xfffffffb として置換フラグをOFFにする必要がありました。
searchdialogは検索と明示しているので置換ダイアログが出るのはおかしかった
です。
  setsearch "文字列",0x04;
  find2;
で置換になるという挙動があって、こちらの挙動は維持しなくてはいけないので
すが、searchdialogのほうは修正できないか現在開発中のV8.00β版のほうで検
討させていただきます。

[ ]
RE:27729 検索ボックスNo.27749
oshimas さん 10/03/03 19:41
 
ご説明の方法で検索ダイヤログが表示されるようになりました。
ありがとうございました。

[ ]