チケット #14342

マウスホイールの改善(?)
登録: 2008-12-19 21:03 最終更新: 2009-03-22 21:41

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
(未割り当て)
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし
投票
点数: 0
No votes
0.0% (0/0)
0.0% (0/0)

詳細

お世話になります。
また、あったらうれしいなてきな改善要望です。

ctrlキーを押したままの時、マウス操作をTeratermのみに限定できませんでしょうか?
マウストラッキングを一時的にoffするイメージです。

xtermの時だけでもかまいません。

要望した経緯ですが、
普段、Teratermを経由して vim を使用しています。
んで、vim は term=xtermの時、マウス操作が有効にできるので
有効にして使っているのですが、そのままだとマウスホイールしたときにカーソルが移動してしまってスクロールバッファが移動してくれません。

ダブルクリックの操作はctrlキーを押したままだと
ちゃんとTeratermの操作になってくれるので、同じことが
マウスホイールでもできると便利だと思いました。

最後になりましたが
僕がvim でマウスを利用しているときの
設定です。
もしも、vimが利用できる環境があれば実験してみてください。(もちろんCUIです。)

set mouse=nvh

ちなみに、上記に示す設定のように
編集モードの時にマウスは無効になる設定もできるので
この要望もあったらうれしい程度の希望です。

以上
よろしくお願いいたします。

チケットの履歴 (9 件中 3 件表示)

2008-12-20 16:06 更新者: (del#1144)
  • 解決法なし から 動いてるけど? に更新されました
コメント
手もとの環境では、ctrl + スクロールで Tera Term バッファのスクロールに切り替わりますが、なりませんか?
2008-12-21 19:58 更新者: raynstard
コメント
新規インストールして実験してみました。
スクロールってpageup|downのことでしょうか?
キーボード操作ではできましたが、
マウスホイールではやっぱできなかったです。
2008-12-22 01:52 更新者: (del#1144)
コメント
スクロールじゃありませんでしたね。
TranslateWheelToCursor=on
のときに、マウスホイールの回転でvimのバッファを上下しますが、Ctrl+マウスホイールでTera Termのバッファがスクロールします。
前者と後者、どちらが動作しないですか?
# ちなみに、ThinkPadの真ん中にある上下に動くボタンは、マウスホイールではなくスクロールイベントを発生させるようで、前者が動きませんでした。
2008-12-22 21:33 更新者: raynstard
コメント
お世話になります。
えと、TranslateWheelToCursor=on ですが
邪魔なのでoffにしています。
# カーソルが動いてしまう

ということで、マウスホイール(マウス)はvimの機能として有効になっています。

Ctrl+マウスホイールですが、vimのマウスが無効になっている間はスクロールできます。
ですが、vimのマウスが有効になっていると
スクロールしないでvimが処理してしまいます。

2008-12-22 23:26 更新者: doda
  • 解決法動いてるけど? から 受領 に更新されました
  • 担当者(未割り当て) から doda に更新されました
コメント
TranslateWheelToCursorではなく、Mouse Event Trackingの話ですね。

Mouse Event Trackingをサポートした時、xtermと同じようにShiftを押している間はMouse Event Trackingを無効にしようとも考えたのですが、
・仕様上はShift(やControl,Alt)を押した状態でのマウス操作を伝えられるし、
ホスト側のアプリケーションも受け取る事を期待している可能性がある。
・Tera TermではShift(やControl,Alt)と(主に左ボタンでの)マウス操作に通常とは別の動作を割り当てている。
という事から見送っています。

Control+左ダブルクリックの時にMouse Event Trackingが無効になっているように見えるのは
・vimがControl+左ダブルクリックに特に処理を割り当てていない
・Tera TermはMouse Event Trackingモード中でも左ダブルクリックによる単語選択を出来るようにしている
事によって、たまたまそう見えているだけです。
実際、4.58ではMouse Event Trackingモード中は左ダブルクリックによる単語選択を無効にしていた為、
Controlを押していても期待通り動かなかったはずです。
# これに関しては4.59で動作を変えました

ただ、Controlとマウス操作の組み合わせはタイトル/メニューが非表示の時だけ意味を持つので、
Controlを押している間はMouse Event Trackingを無効にしてもいいのかも知れません。
# その場合でもアプリがControl+マウス操作を受け取る事を期待している可能性があるので、
# 設定で変更出来るようにする必要があると思います

あと、vim起動中は通常はアプリケーションカーソルモードですので、TranslateWheelToCursorとの折り合いも考える必要があります。
# TranslateWheelToCursorの方は標準のKeyboard.cnfならばControlを押せば無効になっているように見える動作をするので、
# あまり気にしなくてもいいのかもしれません

どうするかちょっと検討してみます。
2008-12-23 13:57 更新者: raynstard
コメント
>実際、4.58ではMouse Event Trackingモード中は左ダブルクリックによる単語選択を無効にしていた為、
Controlを押していても期待通り動かなかったはずです。
># これに関しては4.59で動作を変えました
おっしゃるとおり、過去のバージョンでは、期待通り動いていませんでした。
最近バージョンアップしたときに、動作するになっていたので
てっきり、CTRLキーを押しているときの動作が変わったのかなと
思ったのですが、単純にvimが処理対象にしていないから
偶然できるようになっていただけなのですね。。。

優先度は下げていただいても問題ありませんので
是非に検討していただければと思います~

以上です。
2008-12-24 18:45 更新者: doda
  • 解決法受領 から 修正済み に更新されました
コメント
対応してみました。
Additional SettingsのGeneralで、"Disable Mouse Event Tracking when Control is pressed."(Controlキーを押している間はマウスイベントを通知しない)にチェックを入れて使ってみてください。
# 現在のところ、デフォルトではoff -- 要検討

http://ttssh2.sourceforge.jp/snapshot/snapshot-20081224.zip
2008-12-26 20:12 更新者: raynstard
コメント
早速の対応ありがとうございました。
使ってみた感じですが個人的には理想的です。
クリスマスプレゼントありがとうございました。
普通に使っているものと差し替えたので、
利用していておかしな動作を見つけたら連絡するようにします。
# なんとなく平気そうですが。。。

TranslateWheelToCursor も少し変わっていたりするのでしょうか。
以前はviの時、おかしなことになっていたのに
今回、気がつかずに使っていたら特に変な入力とかにはなりませんでした。
# でも、現在はTranslateWheelToCursor=offにして利用しています^^;;;
2009-03-22 21:41 更新者: (del#1144)
  • 状況オープン から 完了 に更新されました

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする