zenモードで要望

  1. 現在、ZENモード中に、マウスカーソルを動かしたときの動きは以下のように見受けられました。
    -----
    1.マウスカーソルを動かすと、行番号やルーラーを表示。
     (副作用として少しでもマウスやトラックパッドに触ると行番号が表示される)
    2.マウスカーソルが画面端に行くと、表示を一時的に戻す。
     (副作用として、マウスカーソルが画面端にあるときに、キーボードでZenに遷移できない)
    ----- 
     
    これを以下のようにしていただくことは可能ですか?
    -----
    1.マウスカーソルを「編集領域の外まで」動かすと、行番号やルーラーを表示。
      (行番号やルーラーの領域まで動いたら表示する)
      
    2.マウスカーソルが画面端に行くと、表示を一時的に戻す。
      ただし、その状態でも(例えばALT+V,Zなどのショーカットなどで)、
      Zenモードに移行できるように。
      (処理が面倒でしたら、マウスを画面中心に移動して非表示してから
       Zenモードに移行)
    -----

    お時間があるときにご検討頂けると嬉しいです。

     |  tak  |  返信
  2. ご投稿ありがとうございます。

    > 1.マウスカーソルを動かすと、行番号やルーラーを表示。
    > 2.マウスカーソルが画面端に行くと、表示を一時的に戻す。
    はい、その通りの仕様です。

    > これを以下のようにしていただくことは可能ですか?
    > 1.マウスカーソルを「編集領域の外まで」動かすと、行番号やルーラーを表示。

    Mery では、Zen モード中でもマウスで行番号やルーラの部分をドラッグする操作が可能となっています。

    マウスが編集領域の外にあるときしか行番号やルーラが表示されないとなると、そういった操作が行えなくなってしまいますのでちょっと不便ではないでしょうか。

    > 2.マウスカーソルが画面端に行くと、表示を一時的に戻す。
    >   ただし、その状態でも(例えばALT+V,Zなどのショーカットなどで)、
    >   Zenモードに移行できるように。

    これは仕様上、対応が難しいです。Zen モードへのショートカットキーに Alt + V などを割り当てておけば、マウスカーソルを画面端にもっていかずとも、Alt + V で Zen モードと通常モードを切り替えることができますので、これでご容赦いただけませんでしょうか。

     |  Kuro  |  返信
  3. > はい、その通りの仕様です。

    ご返信ありがとうございます。

    > > これを以下のようにしていただくことは可能ですか?
    > > 1.マウスカーソルを「編集領域の外まで」動かすと、行番号やルーラーを表示。
    >
    > Mery では、Zen モード中でもマウスで行番号やルーラの部分をドラッグする操作が可能となっています。
    >
    > マウスが編集領域の外にあるときしか行番号やルーラが表示されないとなると、そういった操作が行えなくなってしまいますのでちょっと不便ではないでしょうか。

    編集エリアの中というのは、行番号やルーラーの内側という意味で使いました。
    http://bbs8-imgs.fc2.com//bbs/img/_760500/760479/full/760479_1557042844.png

    そのため、その内側や、(行番号やルーラーの)対面側での移動に対しては、
    ルーラーや行番号を非表示にしても、ドラッグ機能とバッティングしないかと思いますが、どうでしょうか。

    特に縦書きの場合は、せっかくZenモードにしているときに、行番号やルーラーが出てくると、
    縦横が異なる文字が出てきてしまって、すごく気になるんですよね。

    同じクラスの中でのマウスカーソルイベントで座標計算とかが必要になって面倒な気もしますが…

    > > 2.マウスカーソルが画面端に行くと、表示を一時的に戻す。
    > >   ただし、その状態でも(例えばALT+V,Zなどのショーカットなどで)、
    > >   Zenモードに移行できるように。
    >
    > これは仕様上、対応が難しいです。Zen モードへのショートカットキーに Alt + V などを割り当てておけば、マウスカーソルを画面端にもっていかずとも、Alt + V で Zen モードと通常モードを切り替えることができますので、これでご容赦いただけませんでしょうか。

    切り替えのために、マウスカーソルを画面端に持っていっているのではないんですよ。
    むしろキーボードのショートカットで操作することが多くて、マウスの場所は気にしていません。

    そういうときに、「たまたま」マウスカーソルが上にあると、Zenモードに切り替えできないのが
    もどかしいんですよね。

    あと、これはメリーのせいではないのですが、最近のWindowsのアップデートでか、私の
    環境特有の問題なのか、「編集中にマウスカーソルを非表示にする」という機能が
    設定しても効果が出なくなり、絶えずマウスカーソルが表示された状態になりました。
    そのせいで無意識のうちにカーソルを画面端に追いやっているところもあるのかと思います。

    とはいえ、ご検討いただきありがとうございました。気を付けるようにします。

     |  tak  |  返信
  4. ご返信ありがとうございます。

    > 編集エリアの中というのは、行番号やルーラーの内側という意味で使いました。
    > http://bbs8-imgs.fc2.com//bbs/img/_760500/760479/full/760479_1557042844.png
    なるほど、そういうことでしたか。

    > 同じクラスの中でのマウスカーソルイベントで座標計算とかが必要になって面倒な気もしますが…
    おっしゃる通り、行番号やルーラの領域はエディタの内側なので高さや幅を取得するすべがないんですよね…。

    > 特に縦書きの場合は、せっかくZenモードにしているときに、行番号やルーラーが出てくると、縦横が異なる文字が出てきてしまって、すごく気になるんですよね。
    [表示] メニューの [行番号] と [ルーラ] をオフにして、そもそもどちらも非表示にしてしまうというのはいかがでしょうか?

    > そういうときに、「たまたま」マウスカーソルが上にあると、Zenモードに切り替えできないのがもどかしいんですよね。
    確かに、マウスカーソルが上端にあると Zen モードにしてもすぐに戻っちゃいますね。

    Visual Studio Code の Zen モードみたいに切り替えはキーボードオンリーで、マウスでは切り替えできないようにすることならできますが、初めて使った人が Zen モードから戻れなくなってしまう恐れもありますし難しいところですね。

    > そのせいで無意識のうちにカーソルを画面端に追いやっているところもあるのかと思います。
    そうでしたか。
    Zen モードの機能としても、マウスカーソルまで消しちゃうのを計画はしていたのですが、何かの拍子に二度とマウスカーソルが戻ってこなくなったりして安定性に欠けたので、中止したんです。

    でも、その機能が実装できればこの問題は解決するかもしれませんね。

     |  Kuro  |  返信
  5. > ご返信ありがとうございます。
    >

    > > 同じクラスの中でのマウスカーソルイベントで座標計算とかが必要になって面倒な気もしますが…
    > おっしゃる通り、行番号やルーラの領域はエディタの内側なので高さや幅を取得するすべがないんですよね…。
    >

    ちょっと思いましたが、マウスカーソルの形状が、ルーラーにカーソルを合わせたとき(調整)
    になったり、行番号にカーソルを合わせたとき(左右の反転)に変化させていますよね。
    Zenモードのときは、領域外か、カーソル形状を変えたときの処理で、表示をオンにするというのは無しですか?
    実装できれば、いい感じに「書くことに集中できる」と思うのですが。もしくは
    できれば、0.3秒くらいカーソルが動いていたら表示されたりすると格好いいかも

    > > 特に縦書きの場合は、せっかくZenモードにしているときに、行番号やルーラーが出てくると、縦横が異なる文字が出てきてしまって、すごく気になるんですよね。
    > [表示] メニューの [行番号] と [ルーラ] をオフにして、そもそもどちらも非表示にしてしまうというのはいかがでしょうか?

    ご提案ありがとうございます。まず、それでやってみます。

    > > そのせいで無意識のうちにカーソルを画面端に追いやっているところもあるのかと思います。
    > そうでしたか。
    > Zen モードの機能としても、マウスカーソルまで消しちゃうのを計画はしていたのですが、何かの拍子に二度とマウスカーソルが戻ってこなくなったりして安定性に欠けたので、中止したんです。
    >
    > でも、その機能が実装できればこの問題は解決するかもしれませんね。

    なるほど。動画プレーヤーなどで再生中にマウスカーソルが消えるのと同様の機能ですね。

    個人的には実装されるとうれしいです。本来は、やはり」Windowsのマウスの設定でカーソルが隠れるのが「べき論」だと思います。(自分の環境では使えなくても)
    ゆえに反論がありそうで、実装してくださいと言いづらい機能ですね。

     |  tak  |  返信
  6. > ちょっと思いましたが、マウスカーソルの形状が、ルーラーにカーソルを合わせたとき(調整)
    > になったり、行番号にカーソルを合わせたとき(左右の反転)に変化させていますよね。
    エディタ部分は私が開発したものではないので詳細はわかりませんが、ソースを確認してみましたところ、そんな処理をしているっぽい部分はありました。

    エディタ内部で完結している処理なので、これをエディタの外から使えるようにするにはエディタエンジンに穴をあけないといけないので、できれば別の対処方法でご容赦いただきたいところです。

    例えば、マウスの移動で検知するのではなく、画面をクリックしたら行番号を表示とか。そもそもマウスを移動させようがクリックしようが何も表示させないオプションを用意するとか。マウスを手の当たらない高いところにおいておくとか…

    > 実装できれば、いい感じに「書くことに集中できる」と思うのですが。もしくは
    > できれば、0.3秒くらいカーソルが動いていたら表示されたりすると格好いいかも
    現状ですと、1 ピクセルでもマウスが移動したら表示になるのですが、この範囲にある程度余裕を設けることであれば可能かと思います。

    > ゆえに反論がありそうで、実装してくださいと言いづらい機能ですね。
    Windows 側にそういった機能があったのですね。それだとわざわざ Mery 側で同じ機能を作る必要もなさそうですね。Windows のバグが直ってくれるのを祈るのみです。

     |  Kuro  |  返信
  7. ご返信ありがとうございます。

    > エディタ内部で完結している処理なので、これをエディタの外から使えるようにするにはエディタエンジンに穴をあけないといけないので、できれば別の対処方法でご容赦いただきたいところです。

    そういうことでしたら納得です。いただいた別の方法(最初から表示させない)とか、
    ルーラーや行番号などの表示状態をまるっと切り替えるマクロを用意するとかで対応しようと思います。

    > 例えば、マウスの移動で検知するのではなく、画面をクリックしたら行番号を表示とか。そもそもマウスを移動させようがクリックしようが何も表示させないオプションを用意するとか。マウスを手の当たらない高いところにおいておくとか…

    「そもそもマウスを移動させようがクリックしようが何も表示させない」の
    オプションがあると助かります。というか書くのに集中しやすいです。

    > > 実装できれば、いい感じに「書くことに集中できる」と思うのですが。もしくは
    > > できれば、0.3秒くらいカーソルが動いていたら表示されたりすると格好いいかも
    > 現状ですと、1 ピクセルでもマウスが移動したら表示になるのですが、この範囲にある程度余裕を設けることであれば可能かと思います。

    文を推敲するときに、前後の文節や単語を切り貼りする人は多いと思うので、
    可能ならクリックや移動範囲を条件よりは、移動時間にできるオプションが便利な気がしますが
    マウスではルーラーの表示が切り替わらないオプションがあれば助かります。

     |  tak  |  返信
  8. > ルーラーや行番号などの表示状態をまるっと切り替えるマクロを用意するとかで対応しようと思います。
    ご要望に応えられず申し訳ございません、ご対応、ありがとうございます。

    > 「そもそもマウスを移動させようがクリックしようが何も表示させない」の
    > オプションがあると助かります。というか書くのに集中しやすいです。
    > マウスではルーラーの表示が切り替わらないオプションがあれば助かります。
    確かに、本来の Zen モードのあるべき姿な気もしますね。
    Zen モードはまだあまり知られていない機能なので、ご要望がどれほどあるのかわかりませんが、今後の開発の参考にさせていただきたいと思います。

     |  Kuro  |  返信
スポンサーリンク