選択範囲をドラッグ&ドロップしたときの動No.02641
Ramen さん 03/08/05 21:19
 
β13で試しましたが選択状態の範囲をCtrlキーを押しながらドラッグ&ドロップ
したときに新しくコピーされた内容が選択状態になっています。
他のエディタでも同じように選択状態になるものもありますが、
いつも使いにくいと思っていました。

この操作は文字入力中に素早く近くに入力されている文字をコピーして来たい時に
よく行っており、コピー完了後はそのままキー入力を続けることが多いです。
キー入力する時に文字が選択状態になっていると、入力内容で置換されて
しまうので、選択状態を解除する操作が毎回必要になってしまいます。

このような操作性は好みの問題もあると思いますので、オプションで設定できる
機能があれば嬉しいと思います。贅沢を言えばCtrlキーを押しながらの動作と
押していないときの動作が別々に設定できればいいなと思います。

もう1つ以前から気になっていたことですが、
ダブルクリックで単語選択した直後にドラッグしようとすると、
トリプルクリックになってしまいます。
トリプルクリックの判定をMouseUpまで待っていただけると助かるのですが…

あと、トリプルクリックの行選択で改行コードが選択されないオプションも
欲しいのですが……きりがないですね。すみません。

[ ]
RE:02641 選択範囲をドラッグ&ドロップしNo.02649
Iranoan さん 03/08/06 16:51
 
 Ramen さん今日は、Iranoan です。
 こちらに移られてきたんですね(^^)。
> β13で試しましたが選択状態の範囲をCtrlキーを押しながらドラッグ&ドロップ
> したときに新しくコピーされた内容が選択状態になっています。
<中略>
> この操作は文字入力中に素早く近くに入力されている文字をコピーして来たい時に
> よく行っており、コピー完了後はそのままキー入力を続けることが多いです。
> キー入力する時に文字が選択状態になっていると、入力内容で置換されて
> しまうので、選択状態を解除する操作が毎回必要になってしまいます。
 他の多くのソフトウェアでも同様なのに、秀丸だけそういう動作・設定を用
意するというのも混乱の元になりそうで...。敢えて書けば、消極的反対。ま
た、選択解除する手間を省きたい、ほど素早さを追求するなら、キーボード操
作に慣れるというのも解決法の一つかな。

> トリプルクリックの判定をMouseUpまで待っていただけると助かるのですが…
 MouseUp の意味が分からないので読み飛ばして。

> あと、トリプルクリックの行選択で改行コードが選択されないオプションも
> 欲しいのですが……きりがないですね。すみません。
 これはそういう動作をする末尾の様なマクロを「キーの割り当て」しておけ
ばよいでしょう。(やりたい操作が、論理行単位なのかちょっと不安)
 「マクロ」について不明な点があれば、BE_HIDEMAC.HLP の最初「概要の目
次」からも飛べる「マクロとは?」と「マクロの登録と実行」や「秀丸 Q&A
集」の「第III部〜秀丸マクロのいろはにほへと〜マクロを実行してみよ
う〜」(http://homepage2.nifty.com/jr-kun/hidemaru_qa/3_macro.html)
を参考にしてください。
//--------------------------------------------------------------------
golineend2;
beginsel;
golinetop2;
endsel;

[ ]
RE:02641 選択範囲をドラッグ&ドロップしNo.02655
秀丸担当 さん 03/08/06 19:02
 

>β13で試しましたが選択状態の範囲をCtrlキーを押しながらドラッグ&ドロップ
>したときに新しくコピーされた内容が選択状態になっています。
>他のエディタでも同じように選択状態になるものもありますが、
>いつも使いにくいと思っていました。

これは、β4あたりで要望があって、そのようにしました。
オプションで切り分けたほうがいいでしょうか。

>もう1つ以前から気になっていたことですが、
>ダブルクリックで単語選択した直後にドラッグしようとすると、
>トリプルクリックになってしまいます。
>トリプルクリックの判定をMouseUpまで待っていただけると助かるのですが…

これだとトリプルクリックで3回目のボタンを押したままドラッグして行選択が
できなくなってしまいます。
キー割り当てでトリプルクリックの行選択をやめるようにすれば解決すると思い
ます。

>あと、トリプルクリックの行選択で改行コードが選択されないオプションも
>欲しいのですが……きりがないですね。すみません。

どんどんオプションが増えるのもなんなので、これはIranoanさんの言われる通
り、マクロで対応することもできると思います。

[ ]
RE:02641 選択範囲をドラッグ&ドロップしNo.02659
Ramen さん 03/08/06 21:37
 
Iranoanさん、秀丸担当さん、早速のご意見ありがとうございます。
せっかくですのでもう少し詳しく書かせていただきます。

(1) Ctrl+ドラッグ&ドロップ後に選択状態の解除

 確かに選択状態のままになる仕様が主流になりつつあり、ある意味秀丸が
 最後の頼みの綱であります(^^;)
 ただ、その仕様に関して考えてみたのですが、Ctrlキーを押さずにドラッグ&
 ドロップつまり選択範囲を移動する場合には、むしろ選択状態のままであった方が
 都合がいいと思います。移動途中の文字の位置が一気にずれて一瞬状況が
 分かりにくいし、そのままさらに別の場所へ移動させることもありそうだからです。
 しかしCtrlキーを押した場合つまりコピーの場合はそれほど選択状態になっている
 必要性が感じられません。単に移動時の動作に合わせただけなのではないかと
 疑ってしまいます。

 ちなみに私はプログラム入力時には、ほとんど常時右手にはマウスを握った
 状態で作業しております。キー入力が必要なときは左手だけで入力し、
 変数名など識別子はほとんどコピーか自動入力(対応しているエディタの場合)
 で済ませています。つまりかなりマウスの操作性に依存しているのです。
 例えば「value=objectA.value」などと入力したい場合は、「=」まで入力したら
 どこからか「objectA」をコピーしてきて、次に「.」を叩くという具合です。
 「objectA」がコピーされた段階で選択解除されているとストレスがたまらない
 というわけです。


(2) ダブルクリック直後にドラッグ可能に
(3) トリプルクリックで改行コードを含まない行選択

 申し訳ありません。キー割り当てでトリプルクリックの動作が設定できること、
 トリプルクリック中にドラッグで複数行選択できることを理解しておりませんでした。
 行選択はいつも画面左側のドラッグで行っていたので、マウス操作による行選択を
 使い分けたかったというわけです。
 
 以上のことを踏まえた上で要望を整理しますと、
 (2)マウスボタン操作がトリプルクリックだと判断されるポイントが
  3回目のボタンを押したときなのか離したときなのか設定できるようにして欲しい
 (3)キー割り当てに改行コードを含まない行選択または行コピーを追加して欲しい
 ということになります。(2)はひょっとしたら無茶を言っているのかもしれないとも
 思っております(^^;)


全く個人的な要望ではありますが、オプションとしてご検討いただければ幸いです。
よろしくお願いします。

[ ]
RE:02659 選択範囲をドラッグ&ドロップしNo.02660
Ramen さん 03/08/06 21:53
 
> (3)キー割り当てに改行コードを含まない行選択または行コピーを追加して欲しい
についてはマクロを作って割り当てればいいですね。
すみません、取り下げます。

[ ]
RE:02659 選択範囲をドラッグ&ドロップしNo.02673
アルビレオ さん 03/08/07 02:34
 
秀丸ユーザーのアルビレオです。

> 例えば「value=objectA.value」などと入力したい場合は、「=」まで入力したら
> どこからか「objectA」をコピーしてきて、次に「.」を叩くという具合です。
> 「objectA」がコピーされた段階で選択解除されているとストレスがたまらない
> というわけです。

このとき、カーソル位置は選択位置の先頭と最後とどちらがいいでしょうか?
コピー直後に選択状態だと、←キーを押せば選択範囲の先頭に、→キーを押せば
最後に来るので何かとうれしいです。

Ramen さんのようにマウス操作主体なら、ドラッグ後にマウスクリックでカーソ
ル位置を指示するほうが便利だと思います。
行末にコピーすることが多いなら、行末より右で適当にクリックすれば正確な位
置をクリックする必要もないです。(フリーカーソルモードだとダメですが)

> (2)マウスボタン操作がトリプルクリックだと判断されるポイントが
>  3回目のボタンを押したときなのか離したときなのか設定できるようにして欲しい

恐らくダブルクリックで単語を選択した後、ドラッグするためにもう一回クリッ
クするとトリプルクリック扱いになってしまうので困っているのだと思いますが、
ここは Down→Up→Down まででストップしましょう。
そのままドラッグすれば単語を選択した状態で移動/コピーができます。
慣れてしまえばこちらの方がクリックが少なくてすむ分楽になると思います。

「慣れろ」で済ませてしまうのも不親切な話だとは思いますけど。(^^;

[ ]
RE:02673 選択範囲をドラッグ&ドロップしNo.02681
Ramen さん 03/08/07 20:40
 
アルビレオさん、コメントありがとうございます。

>このとき、カーソル位置は選択位置の先頭と最後とどちらがいいでしょうか?
>コピー直後に選択状態だと、←キーを押せば選択範囲の先頭に、→キーを押せば
>最後に来るので何かとうれしいです。
以前のバージョンと同じく、新しくコピーされた文字列の後ろに来て欲しいです。

>ここは Down→Up→Down まででストップしましょう。
>そのままドラッグすれば単語を選択した状態で移動/コピーができます。
>慣れてしまえばこちらの方がクリックが少なくてすむ分楽になると思います。
意味がよく分からなかったのですが、ダブルクリック中にドラッグするという
ことなのでしょうか(選択範囲拡張の動作になってしまいますが)?
それともダブルクリック後、しばらく待ってからドラッグするということ
なのでしょうか(クリックが少なくてすむという部分がよくわからないですが)?

同じことをする手段はいくらでもあるのにダブルクリック→Ctrl+ドラッグ&
ドロップにこだわっているのも、それが一番速くて楽だからです。
少数派の意見だということは重々承知しておりますので、
トリプルクリックの判定ポイントを設定する件はあきらめようと思います
(もちろん設定できれば大変うれしいですが)。
現状ではトリプルクリックの割り当てを「なし」に設定しても、期待通りの
動作にはならないようなので(ダブルクリック直後はドラッグが開始できない)、
ダブルクリック後、マウスカーソルを少しずらしてからドラッグすることで
対処しようと思います。

ただ、ドロップ後に選択状態のままになっている件については要望によって
変更されたということですので、以前のままの方がよかったという意見も
要望として挙げさせていただきたいと思います。

[ ]
RE:02681 選択範囲をドラッグ&ドロップしNo.02693
アルビレオ さん 03/08/08 00:48
 
アルビレオです。

>>ここは Down→Up→Down まででストップしましょう。
>>そのままドラッグすれば単語を選択した状態で移動/コピーができます。
>>慣れてしまえばこちらの方がクリックが少なくてすむ分楽になると思います。
>意味がよく分からなかったのですが、ダブルクリック中にドラッグするという
>ことなのでしょうか(選択範囲拡張の動作になってしまいますが)?

うーん、完全にこちらの勘違いです。
なんだかマウスでいろいろいじってたら、上記のような操作でコピーができたの
で書いてみたのですが、どこかで操作を間違えていたようで…

>同じことをする手段はいくらでもあるのにダブルクリック→Ctrl+ドラッグ&
>ドロップにこだわっているのも、それが一番速くて楽だからです。
>少数派の意見だということは重々承知しておりますので、

今思いついたんですが、範囲選択後のドラッグでShiftキーを押しながらの場合
の動作は今のところ特に意味を持っていません。そこで、ダブルクリック/トリ
プルクリックで範囲選択後のドラッグ動作を

・キーを押さずにドラッグ:選択文字列の移動
・Ctrlキーを押しながらドラッグ:選択文字列のコピー(今までどおり)
・Shiftキーを押しながらドラッグ:選択範囲の拡張

とすれば、キーボードでの「Shiftを押しながらカーソル移動で範囲選択」との
対比で理解しやすいのではないかと思います。
今までの操作に慣れていた人が戸惑うかもしれないし、今はバグを直す方に忙し
いとは思いますが、どうでしょうか?>秀まるお & 秀丸担当 さん


>ただ、ドロップ後に選択状態のままになっている件については要望によって
>変更されたということですので、以前のままの方がよかったという意見も
>要望として挙げさせていただきたいと思います。

要望自体を否定するつもりはないのですが、ドラッグ後にワンクリックという操
作はダブルクリックと認識されることもないし、マウスの移動距離も少なくて済
みます。
特に行末にドラッグする場合は行末より十分に右側でマウスボタンを離して直後
にその場でもう1回チョンとボタンを押すだけで事足りるので
>「=」まで入力したらどこからか「objectA」をコピーしてきて、次に「.」を叩く
というような操作では個人的にはほとんどストレスにはなりません。
(わりとよく使います)

トータルな操作コストとしては現行の仕様の方が有利でしょうね。

[ ]
RE:02659 選択範囲をドラッグ&ドロップしNo.02694
アルビレオ さん 03/08/08 01:05
 
アルビレオです。

> 例えば「value=objectA.value」などと入力したい場合は、「=」まで入力したら
> どこからか「objectA」をコピーしてきて、次に「.」を叩くという具合です。
> 「objectA」がコピーされた段階で選択解除されているとストレスがたまらない
> というわけです。

いまの秀丸で上記のような操作を最小限の操作で済ませる方法を考えてみました。

1. [その他]-[ユーザーメニュー編集]で、[メニュー]を[選択中右ボタン]に。
2. [追加]ボタンを押して、[カーソル移動系]-[カーソル右]を選択、
 [キー]に適当なキーを割り当てる。('Z'あたりがいいでしょう)
 [追加]ボタンを押して[ユーザーメニューの設定]ダイアログに戻る。
3.[キーを表示]にチェックを入れて、[閉じる]ボタンで終了。

これで、ドラッグした後に右クリックでメニューを出してすぐに'Z'キーを押す
とカーソルが選択範囲の最後に移動します。
右クリックする時のマウスの位置は秀丸のウィンドウ内ならどこでもいいので
「ドラッグ」→「右クリック」→「'Z'キー」の操作は慣れればほとんど無意識
にできるはずです。
試してみるとなかなか快適でした。

ついでに'A'に[カーソル左]を割り当てておくと便利でしょう。
ただしユーザーメニューの登録数に上限があるので、メニューからセパレータか
なにか削る必要があるかもしれませんが。

[ ]
RE:02694 選択範囲をドラッグ&ドロップしNo.02704
秀丸担当 さん 03/08/08 17:18
 

>これで、ドラッグした後に右クリックでメニューを出してすぐに'Z'キーを押す
>とカーソルが選択範囲の最後に移動します。
>右クリックする時のマウスの位置は秀丸のウィンドウ内ならどこでもいいので
>「ドラッグ」→「右クリック」→「'Z'キー」の操作は慣れればほとんど無意識
>にできるはずです。
>試してみるとなかなか快適でした。

キーボード操作で解決する場合、Escキーで範囲選択を解除できます。

右手にマウス、左手にCtrlキーまたはEscキーで、ドラッグ&ドロップ後、Esc
キーを押せば、希望通りになると思うのですが、これではだめでしょうか。

[ ]
RE:02704 選択範囲をドラッグ&ドロップしNo.02725
Ramen さん 03/08/09 00:10
 
ドロップ後に右側をクリックすることや既存のキー操作で選択解除することについて
も、
自動的に選択解除されることに比べて作業効率の落ちる理由がそれぞれあるのですが、
ここで延々とこだわりを述べても、どうも賛同される雰囲気ではなさそうなので、
「ドラッグによるコピーの後に範囲選択を解除する」オプションについては
ここらであきらめることにします。

また、選択解除する他の手段として Ctrl+Space あたりに割り当てられれば
良かったのですが、今回のバージョンアップではやらないそうなので、
>http://www.maruo.co.jp/hidesoft/2/x15073_.html#15073
「次回やってほしい」に1票入れたいと思います。

[ ]