文字間隔を調整

  1. ver3.7.9を使用してます
    文字間隔を調整したいのですがどこでするのでしょうか

     |  nishimoto  |  返信
  2. Mery をご愛用いただきありがとうございます。

    文字間隔は、[ツール] → [オプション] → [表示] カテゴリを開き、画面中央から右付近にある [文字間] で指定できます。

    単位は文字幅の 10 分の 1 です。たとえば「1」を指定すると、文字幅の 1/10 の間隔が空きます。

     |  Kuro  |  返信
  3. > 文字間隔は、[ツール] → [オプション] → [表示] カテゴリを開き、画面中央から右付近にある [文字間] で指定できます。

    [表示] カテゴリの情報の多さと [基本] カテゴリにある[行間]と別れているのが、分かりにくさの一因でしょうか。
    どちらかを移動するかカテゴリを新設して一か所に寄せるとよいかもしれません。

    便乗して、スクリプトやソースコードでは表示量を増やしたいが、密度の詰まった文章では文字間・行間を開けて読みやすくしたい、といったことがたまにあります。
    メニューバーの[表示]やキーボードショートカットで、フォントのように文字間・行間を一時的に変更出来たらうれしいです。

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

    私も「[行間] と [文字間] は同じカテゴリにあったほうが良いのでは?」と思い、実際に配置を変更したことがあります。

    ただ、そもそも [基本] カテゴリは、その名のとおり、誰もが最初に変更したいと思うような基本的な項目を集めたカテゴリなので、[行間] がそこにあることには利便性もあるんですよね。

    一方で、[文字間] を変更したいというケースはそれほど多くなく、多くのユーザーさんにとっては、フォント本来の文字間で十分なのではないかと思います。

    > 便乗して、スクリプトやソースコードでは表示量を増やしたいが、密度の詰まった文章では文字間・行間を開けて読みやすくしたい、といったことがたまにあります。
    > メニューバーの[表示]やキーボードショートカットで、フォントのように文字間・行間を一時的に変更出来たらうれしいです。

    文字間・行間ともにマクロから変更できるので、ショートカットキーにマクロを割り当てて、一時的に変更することもできます。

    たとえば、以下のようなマクロです。

    行間を増やすマクロ

    editor.WriteSettings();
    var lineSpace = editor.ReadSettingInteger("General", "LineSpace", 0);
    lineSpace++;
    editor.WriteSettingInteger("General", "LineSpace", lineSpace);
    editor.ReadSettings();
    

    文字間を増やすマクロ

    editor.WriteSettings();
    var charSpace = editor.ReadSettingInteger("Display", "CharacterSpace", 0);
    charSpace++;
    editor.WriteSettingInteger("Display", "CharacterSpace", charSpace);
    editor.ReadSettings();
    

    これらをショートカットキーに割り当てておけば、必要なときだけ文字間・行間を広げる、といった使い方ができます。

    また、指定した数値に切り替えるようにマクロをカスタマイズすることも簡単なので、用途に合わせて調整してください。

     |  Kuro  |  返信
  5. > ただ、そもそも [基本] カテゴリは、その名のとおり、誰もが最初に変更したいと思うような基本的な項目を集めたカテゴリなので、[行間] がそこにあることには利便性もあるんですよね。

    なるほど。であれば、よく変更する項目を[基本]カテゴリに残しつつ、個別のカテゴリにも同じ項目があれば、利便性を維持しつつ迷わずに済むかもしれません。
    でも同じ項目が2か所にあると、[基本] カテゴリを [HOME] や [DASHBOARD] など、らしい名前に変更しないと、やっぱり混乱するかもしれない。

    > 文字間・行間ともにマクロから変更できるので、ショートカットキーにマクロを割り当てて、一時的に変更することもできます。

    これは便利。lineSpace や charSpace を変更すればいいんですね。
    Write と Read の役割が、自分の直感と反対で混乱しました(笑)

     |  enaka  |  返信
  6. > なるほど。であれば、よく変更する項目を[基本]カテゴリに残しつつ、個別のカテゴリにも同じ項目があれば、利便性を維持しつつ迷わずに済むかもしれません。
    > でも同じ項目が2か所にあると、[基本] カテゴリを [HOME] や [DASHBOARD] など、らしい名前に変更しないと、やっぱり混乱するかもしれない。

    そうなんですよね、悩ましいところです。さすがに同じ項目が 2 か所にあると、かえって混乱を招きそうですし…。

    かといって、[文字間] を [基本] カテゴリに持ってきてしまうと、今度は文字サンプルを見ながら文字間隔を調整する、という使い方ができなくなってしまうんですよね。

    > これは便利。lineSpace や charSpace を変更すればいいんですね。
    > Write と Read の役割が、自分の直感と反対で混乱しました(笑)

    ちょっと分かりづらかったですね。コメントを付けると、こんな感じです。

    // 1. 現在の Mery の状態を設定ファイルに書き出します (一部の設定はメモリ上に保持しているため)
    editor.WriteSettings();
    
    // 2. 設定ファイルから現在の値を読み込みます
    var lineSpace = editor.ReadSettingInteger("General", "LineSpace", 0);
    
    // 3. インクリメント
    lineSpace++;
    
    // 4. 設定ファイルに増やした行間の数値を書き込みます
    editor.WriteSettingInteger("General", "LineSpace", lineSpace);
    
    // 5. 設定ファイルを読み直して Mery に設定を反映します
    editor.ReadSettings();
    

    なので、行間・文字間の値を現在の数値から増減する必要がなければ、もっとシンプルに、

    // メモリ上の設定を書き出し
    editor.WriteSettings();
    
    // 任意の数値を書き出し
    editor.WriteSettingInteger("General", "LineSpace", 5);
    
    // 設定を読み込んで Mery に反映
    editor.ReadSettings();
    

    これだけで済みますね。

     |  Kuro  |  返信
  7. 解説ありがとうございます。紛らわしい言い方で申し訳ありません。
    設定ファイルを書き換えてメモリ上の設定を読み直していると気が付くまで、メモリ上の設定を直接読み書きしているという思い込みがあり、「最初のWriteはなんのため? 最後にReadしたら今変更した内容が消えるのでは?」と混乱していたのでした(笑)

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