折り返し設定を "折り返さない⇔ウィンドウの右端で折り返し" でトグルしたい

  1. こんにちは。
    まだ油断しているとカッと暑くなる日もありますが、最近はだいぶ暑さが落ち着いてきて、過ごしやすくなってきましたね。

    最近はフォントの動作確認も兼ねてしばらくMeryでUDEV Gothic(3:5幅版)を設定して使っていたのですが、すっかり慣れてしまったのと、英字と日本語文字の大きさのバランスのちょうど良さにハマッてしまい、思い入れのあるHackGenを使う機会が減ってしまいました…😅

    さて、今日はタイトルの件でご相談をさせていただけると助かります。

    折り返し設定を "折り返さない⇔ウィンドウの右端で折り返し" でトグルしたいです。イメージとしてはVSCodeでの折り返し表示のトグル(Alt+X)のような動きですね。

    マクロでできないだろうか、とリファレンスを覗いてみましたが、どうやら折り返しに関する処理はなさそうに見えました。
    トグルなので、「現在状態を取得する」と「折り返し設定を変更する」の2つの処理ができればと考えていますが、なにか実現する術はないでしょうか?

    PS.
    トピックの内容が混在して恐縮ですが、大した不具合でもないので併せてご報告です。

    「カラーテーマ設定 > 行番号 (選択行)」項目の文字色を「透明」に設定したときのサンプル表示("Aaあぁアァ亜宇" のやつ)の色が想定と異なるようです。
    サンプル欄では「通常」項目の文字色を引き継いでいるように見えますが、実際のエディタ上の表示は「行番号」項目の文字色を引き継いでいるようです。

    ところで今まで気づかなかったのですが、行番号でも選択行とそれ以外の行のような色分けができたのですね。選択行番号は明るい色にして、その他行番号はコメント文字のような暗い色にしておくと、アクティブ行が分かりやすくハイライトされ、機能的でしゃれた印象になりました 🥰

     |  yuko  |  返信
  2. > VSCodeでの折り返し表示のトグル(Alt+X)

    ありゃ、間違えました。Alt+Z でした。

     |  yuko  |  返信
  3. こんばんは。そうですね~、夏も終わりかぁ…。過ごしやすくて嬉しいけれど、なんだか寂しい気持ちもありますね。

    > 思い入れのあるHackGenを使う機会が減ってしまいました…😅

    私は UDEV Gothic と HackGen を行ったり来たり。Mery は UDEV Gothic で Visual Studio は HackGen です。(ちなみに Delphi は MS ゴシックw)

    3:5 幅版は使ったことがなかったので試させていただきました。これは!キュッと洗練された感じが最高!!早速、Mery で使わせていただきます😁

    > トグルなので、「現在状態を取得する」と「折り返し設定を変更する」の2つの処理ができればと考えていますが、なにか実現する術はないでしょうか?

    「現在状態を取得する」は QueryStatusByID、「折り返し設定を変更する」は ExecuteCommandByID でいけると思います。

    var MEID_VIEW_WRAP_NONE = 2146; // 折り返さない
    var MEID_VIEW_WRAP_BY_WINDOW = 2148; // ウィンドウの右端で折り返し
    
    // QueryStatusByID で状態を取得して ExecuteCommandByID でコマンドを実行
    if ((editor.QueryStatusByID(MEID_VIEW_WRAP_NONE) & 2) !== 0)
        editor.ExecuteCommandByID(MEID_VIEW_WRAP_BY_WINDOW);
    else if ((editor.QueryStatusByID(MEID_VIEW_WRAP_BY_WINDOW) & 2) !== 0)
        editor.ExecuteCommandByID(MEID_VIEW_WRAP_NONE);

    QueryStatusByID の戻り値は 1 ビット目が項目の有効・無効 (Enabled)、2 ビット目が項目のオン・オフ (Checked) なので 2 でマスクしてやれば項目のオン・オフを取得できます。

    > サンプル欄では「通常」項目の文字色を引き継いでいるように見えますが、実際のエディタ上の表示は「行番号」項目の文字色を引き継いでいるようです。

    ご報告ありがとうございます。確認しました。次のバージョンでは対応しておきますね。

    > 行番号でも選択行とそれ以外の行のような色分けができたのですね。

    そうなんですよね。実は、アクティブな行の行番号の文字色は従来から設定できていたのですが、[カーソルのある行] の [文字色] がそれに該当していたので分かりづらかったんです。

    Ver 3.3.5 で新たに [行番号 (選択行)] の項目を追加してそちらから設定できるようになりました。

    また、[カーソルのある行] の [文字色] は行番号ではなく、行全体の文字色を設定できるようになりました。

    新機能というわけではないですが、ご活用いただけると嬉しいです😊

     |  Kuro  |  返信
  4. 横から失礼します

    私もフォントを使い分けてよく変更するのですが
    フォントが大量に表示され選択が割と変更が面倒なので
    マクロが無いか探したり
    Meryのマクロリファレンスにフォントオブジェクトが無いかと見たり
    しましたが見つかりませんでした
    (あっても極簡単なものしか作れませんが)

    お二人はどうしておられますか
    フォント変更マクロとかあれば紹介して欲しいです
    (新しいディスカッションにすべきか迷いましたがこの質問がめいんなので)
    マクロで無くても
    メニュー→表示→フォント
    で変更フォント元フォントが表示されますがこれ残す方法とかありますか?

    もともと0(ゼロ)とO(オー)の打ち間違えが多いので白源にたどり着きましたが
    最近はUDEV Gothicがいいですね
    理想は英字部分白源、日本語部分UDEV Gothic
    (白源は濁点,半濁音の文字が
    UDEV Gothicは英字の大きさ?幅?が好みでは無く)
    ゼロはスラッシュいいのでUDEV Gothic
    読む時(横表示)は
    日本語フォントの円記号問題でバックスラッシュより円がいいので
    等幅メイリオやMSゴシックに変えたり
    読む時(縦表示)で小説など見る時は
    源暎ちくご明朝 (電撃文庫ラノベ的フォント)に変えたり
    理想のフォント難しいです

     |  kiyohiro  |  返信
  5. Kuroさん

    おおっ、やや隠しコマンドちっくですが、出来るのですね!助かりました!😁

    > Mery は UDEV Gothic で Visual Studio は HackGen

    おおーっ、私もUDEV GothicがなぜかMery以外ではあまりしっくり来ていなかったので、その組み合わせになっていました(MSゴシックは使ってませんが…w)

    UDEV Gothicに関しては3:5幅版の方が見栄えが良いなとは思うものの、1:2幅じゃないとちゃんと使えるエディタが限られてきてしまうんですよね。

    例えばVSCodeで使うと

    あいうえおあいうえお[ここにカーソル]abcdefghijklmn
    abcdefghijklmnopあいうえお

    のような全角半角入り乱れる文書だと、カーソル位置から下矢印キーを1つ押したときのカーソル移動位置が想定外の位置になることがあるんですよね
    カーソル位置から真下の位置にカーソルが来てほしいんですが、1:2幅じゃないと全角文字の文字幅の計算具合がよくないようで、斜め下に移動するような挙動になります。

    なので、カーソル移動のような細部の動きも満足、日本語文章上の操作感の良さは言うまでもなく…なMeryさんにはいつも助けられております🙇‍♂️

     |  yuko  |  返信
  6. >> kiyohiroさん

    うーん、私はあまり読む媒体に応じてフォントの変更ってしないので、お役に立てそうにありませんが…

    ただ

    > メニュー→表示→フォント で変更フォント元フォントが表示されますがこれ残す方法とかありますか?

    であれば、私の環境ではMeryを終了しても残っていますね。

    おそらく、設定の [履歴] > [終了時に履歴を消去する] のチェックを外しておけば、フォントの選択履歴も残るのではないでしょうか?

     |  yuko  |  返信
  7. yukoさん回答ありがとうございます
    確かに履歴に最近使ったフォントの一覧があり
    チェックを外すと
    フォント履歴が残りました
    一番最初の設定で履歴関係は不要だったので
    全て消去にしてこのタブを見ることも無くなって
    直接Mery.iniを調べたり
    フォーラムの検索で隠し設定が無いかなと探したりしてました
    これでかなりフォントの変更が楽になり助かりました

     |  kiyohiro  |  返信
  8. >> yuko さん

    > おおっ、やや隠しコマンドちっくですが、出来るのですね!助かりました!😁

    ExecuteCommandByID と QueryStatusByID は隠しコマンドというわけではないですが、すべてのコマンドで利用できるとは限らないので、その場合はサポート対象外とさせていただいてます。

    > 全角半角入り乱れる文書だと、カーソル位置から下矢印キーを1つ押したときのカーソル移動位置が想定外の位置になることがあるんですよね

    VS Code で試してみました。ほんとですね、予想の斜め上を行くズレかたでした。なんだこれー😅

    > なので、カーソル移動のような細部の動きも満足、日本語文章上の操作感の良さは言うまでもなく…なMeryさんにはいつも助けられております🙇‍♂️

    ありがとうございます!VS Code 一強な時代ですが、そう言っていただけるとひっそりと続けていけそうな勇気が湧いてきます。

    >> kiyohiro さん、yuko さん

    うまくいったようで良かったです。yuko さん、サポートのご協力ありがとうございます。

    > お二人はどうしておられますか

    私も yuko さんと同様、媒体に応じてフォントは変えないですね。

    媒体に応じたフォントの設定ついては、タブごとにフォントを設定したい、編集モードごとにフォントを設定したい、テーマごとにフォントを設定したいなど、ご意見も様々なので難しいところです。

    小技ですが、ポップアップメニューの設定で [表示] の [フォントの一覧] 項目を追加すると、右クリックメニューからもフォントの一覧にアクセスできるのでフォントの切り替えが少し楽になるかもしれません。

     |  Kuro  |  返信
  9. >> Kuroさん

    VSCode一強時代…まさしくそんな状況になってきましたよね。

    最初は「IDEではないが、エディタより強い存在」くらいだったはずが、拡張機能を駆使することで下手するとIDEよりも便利になるうえ、動作はIDEより遥かに軽いって、なんとも反則なヤツになりました。

    かつて「恋に落ちるエディタ」と謳っていたSublime Textはもはや名前を聞くことがなく(キーマップが人気なので各種エディタでの互換キーマップとして名前が出てきますけど)、AtomとかBracketsとか名だたる企業が作っていたエディタも駆逐し…いま思えば凄まじい実績ですね。

    ただ、VSCodeが高機能化すると今度は逆に、ただのtxtファイルをちょっと触りたいなってときとか、メッセージの下書きを書きたい、ちょいメモを取りたい、みたいな場面ではオーバースペックで胃もたれ気味になるなぁという実感があります。

    サ〇ラエディタや秀〇のように拡張子別にコテコテに設定をいじれるのとあえて逆に進みシンプルさをコンセプトに置いたMeryが、この胃もたれを和らげてくれる存在であることは、私にとっては間違いありませんw

     |  yuko  |  返信
  10. Kuroさん回答ありがとうございます
    > 小技ですが、ポップアップメニューの設定で
    たしかに便利そうですね早速追加します

    あと以前から報告しようとして忘れてた分ですが
    保存せずに閉じようとしたときに出るダイアログが
    ダークモードにならずこれだけ白いので気になってました

     |  kiyohiro  |  返信
  11. >> yuko さん

    そうですねー。個人的には Sublime Text のシンプルさは今でも好きですが、ブームがドン!と来た反動なのか、最近は聞かなくなりましたね。タピオカ屋みたいな…😅

    > ちょいメモを取りたい、みたいな場面ではオーバースペックで胃もたれ気味になるなぁという実感があります。

    確かに、メモ帳代わりに VS Code を使おうとは思いませんね。

    Windows 11 だと標準のメモ帳が新しくなりましたし、マイクロソフト的にはメモ帳使えってことなのでしょう。

    私のポンコツ PC だと新しいメモ帳の起動が昔の Excel ぐらいに遅くてヒーン!ってなってますがw

    > サ〇ラエディタや秀〇のように拡張子別にコテコテに設定をいじれるのとあえて逆に進みシンプルさをコンセプトに置いたMeryが、この胃もたれを和らげてくれる存在であることは、私にとっては間違いありませんw

    ありがとうございます。多機能化の方向で戦っても到底勝ち目はないですから、やっぱりとことんシンプルに、できるだけ現状維持というのが延命のポイントかもしれませんね。

    >> kiyohiro さん

    ご報告ありがとうございます。

    メッセージダイアログの色ですが Windows の仕様上、黒くすることはできません。マイクロソフトの対応待ちです。

    技術的には Windows の動作に割り込んで無理やり色を書き換えることで実現できますが、Windows のシステムを無理やり書き換えることになるため動作の安定性が下がります。

    Mery でも開発は完了しており実装するかどうか検討しましたが、安定性を優先することにしたため、メッセージダイアログのダークモード対応はやめました。ご了承ください。

    【参考リンク】https://twitter.com/haijinboys/status/1475464087631196164

    ちなみに、以前に kiyohiro さんが紹介してくださっていた、TablacusDark はシステムに割り込みをかけてダイアログなどを黒くすることができるので、どうしてもメッセージダイアログを黒くしたい場合はご利用されてみてはいかがでしょうか。

    【参考リンク】https://github.com/tablacus/TablacusDark

     |  Kuro  |  返信
  12. Kuroさん回答ありがとうございます
    そういえば自分で報告しといて完全に忘れてました
    しかも入れてたはずがなくなってますね
    多分以前フォールバックでカンマが入りフォントがおかしくなったときプラグインとか一度削除して原因を探してたので
    戻し忘れたみたいですね
    お手数をかけましたすいません

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