「Nerd Fontを使った秀丸エディタ用ツールNo.40125
pacifica さん 22/11/16 11:32
 
お世話になります。

「Nerd Fontを使った秀丸エディタ用ツールバー定義ファイル」を4台のPCで試してみ
たのですが、3台(いずれもWin10)はアイコンが点になってしまいます。
秀丸エディタを一度アンインストールして初期状態に戻してもだめでした。
Win11( Pro 64bit 22H2)の1台は正常に表示され、jsonファイルの編集でアイコン
の追加もできるので設定方法は間違っていないと思います。
何か思い当たることはありますでしょうか?

OS:Windows 10 Pro 64Bit 22H2 Build 19045.2251
秀丸エディタ:9.19 64bit

[ ]
RE:40125 「Nerd Fontを使った秀丸エディNo.40126
秀丸担当 さん 22/11/16 12:56
 
バグ情報ありがとうございます。
Windows10でもフォントが入っていればできるはずですが、・になってしまうケース
がありました。
画面のDPIを変更すると、反映するときにうまくいかないことがありました。
それか、リモートデスクトップで通常のDPIと違うDPIで接続すると同じ原因でだめで
した。
V9.20の次のベータ版で修正します。
とりあえず反映のときにおかしいのは、秀丸エディタを起動しなおすとできるように
なると思います。
常駐していて再利用しているとそのままの可能性があるので、常駐も含めて起動しな
おすか、タブモードでないとしたら、[その他]→[動作環境]→[環境]→[詳細設
定...]で秀丸エディタの瞬間起動をOFFにするといいかもしれません。
常にだめだとしたら、フォントが入っていないこと以外はわからないです。


[ ]
RE:40126 「Nerd Fontを使った秀丸エディNo.40230
ALI さん 23/01/05 21:52
 
私も今日、JSONを使ったツールバー設定を試していたのですが、
Nerd Font のアイコンの部分が ・ になってしまいました。

やったこと
 『agave regular Nerd Font Complete.ttf』をインストール
 ツールバー設定 > デザイン > 定義ファイルによる指定 に、tbcmd2_agave_Nerd_F
ont.json を指定

ファイルタイプ別の指定(JSON) > フォント > 追加のフォント に、agave Nert Font
 を指定することによって、
エディタ内に、ファイルやフォルダやフロッピーのようなアイコン (agave Nert Fon
t) が表示されるのを確認しました。

この状態で、秀丸エディタを再起動などしてみたのですが (常駐はしておりません)
 "1":{"name":"  ", "color":"blue","alt":"新規作成"},
のように指定してある部分のアイコンが ・ になって正しく表示されませんでした。

"design":{"font":"agave Nerd Font"} の部分のフォント名として "agave Nerd Fon
t" と記述してあるのですが
これが正しく認識されていないのでは???と思っています。
Windows のフォント一覧には、agave Nerd Font というフォントが存在しており、
完全名のところには agave regular Nerd Font Complete と表示されています。(こ
ちらを指定してもダメでした)

"font":"agave Nerd Font" のところを "font":"Meiryo" にすると、ツールバー内の
文字列がメイリオの表示に変わるのを確認しました。
Windows のフォント一覧には、メイリオというフォントは存在しているのですが Mei
ryo というものは見当たらないので、
ここで "Meiryo" と指定しても、メイリオが認識されるという挙動も、なぜそうなる
のか不思議に思っています。

こちらの環境の問題、あるいは何かの設定ミスなのかもしれませんが、
そういう挙動で困っています、という報告でした。
もし、何か分かることなどございましたら、教えて頂けますと幸いです。

OS : Windows10 Pro 22H2
秀丸エディタ:9.19 64bit

[ ]
RE:40230 「Nerd Fontを使った秀丸エディNo.40231
でるもんたいいじま さん 23/01/06 09:32
 
こんにちは。秀丸愛用者の「でるもんた・いいじま」です。

本題の部分はちょっと私にはわからないのですが、枝葉の部分だけ。

> "font":"agave Nerd Font" のところを "font":"Meiryo" にすると、
> ツールバー内の文字列がメイリオの表示に変わるのを確認しました。
> Windows のフォント一覧には、メイリオというフォントは存在して
> いるのですが Meiryo というものは見当たらないので、
> ここで "Meiryo" と指定しても、メイリオが認識されるという挙動も、
> なぜそうなるのか不思議に思っています。

これは、Windowsのほうの「仕様」です。
試しに、"Meiryo" の代わりに "MS PMincho" や "Yu Gothic" などを試してみてくだ
さい。
きっと予想通りの結果になると思います。

そもそも、Windoowsのフォントは「フォントファミリー名」として
  ・原語表記("メイリオ"、"MS P明朝"、"游ゴシック" など)
  ・ASCII表記("Meiryo"、"MS PMincho"、"Yu Gothic" など)
の両方のデータを持っており、大抵のアプリはどちらで指定しても受け付けます。

たとえば、Microsoft Wordで次のような実験をしてみてください。
  1. 日本語の適当な文章を範囲指定する。
  2. 画面上部のツールバーにフォント指定欄があるので、
   ここをクリックして "Meiryo" の6文字をタイプ。
  3. オートコンプリートで「Meiryo UI」が出てくるので、
   Deleteキーで " UI" の3文字を削除して、Enter。

あるいは、該当の言語以外の環境でフォントを使う場合(上記の例だと、これらの日
本語フォントを英語版やフランス語版のWindowsに追加インストールして使う場合)
にはASCII表記のみが使われます。

日本語以外でわかりやすい例だと、Windowsには韓国語用の追加フォントとして「Bat
ang」「BatangChe」「Dotum」「DotumChe」「Gulim」「GulimChe」「Gungsuh」「Gun
gsuhChe」が用意されています。これも韓国語版のWindowsや、日本語環境でも一部の
アプリ(たとえばAdobe Illustraor)では原語表記で表示されます。

ただし例外もあって、たとえばWebブラウザ「Opera」は、「日本語版Windows」+
「日本語フォントのASCII表記」という組み合わせを受け付けません。つまり、日本
語版Windowsでは "メイリオ" は認識しますが "Meiryo" を認識せず、英語版Windows
ではその正反対になります。もしかしたら最新バージョンでは違う挙動になっている
かもしれませんが…。

なので、Webサイトのスタイルシートでは、次のようなフォント指定をするケースが
よく見られます。
   font-family: メイリオ, Meiryo, sans-serif;

☆ ☆ ☆

というわけで、少なくも "Meiryo" がらみの挙動については何も難しいことはないの
でご安心ください。

なお、フォント名については「原語でのファミリー名」「ASCII表記のファミリー
名」のほかに「PostScript言語でのフォント名」というものも存在するのですが、こ
れについては今回の話とは完全に無関係ですし、私も詳しいことを正確には理解して
いないので、割愛します。ご興味があれば調べてみてください。

[ ]
RE:40230 「Nerd Fontを使った秀丸エディNo.40232
秀丸担当 さん 23/01/06 09:45
 
ツールバーのフォントの文字が・になってしまうということで、お手数をお掛けして
申し訳ありません。
フォント名の指定は、"agave regular Nerd Font Complete"ではなく"agave Nerd Fo
nt"で大丈夫なはずですが、うまくいかない環境があるのだと思います。
DPI変更時に関係することでは再現できていて、V9.20βで修正してみています。
以下のページの下のほうの、先行開発バージョンはこちら、から試していただくこと
ができます。
https://hide.maruo.co.jp/software/hidemaru.html
これを試していただくと、DPI変更時に関係する問題によるものかどうかがわかると
思います。

フォント名は、フォントによっては日本語名と英語名があるようで、メイリオは、Me
iryoと書いてもいいようです。
Windowsのフォント選択はあいまいな部分があるようで、完全一致でなくても最適な
ものを選択する場合があるようで、そういうことも関係しているかもしれないです。
ちなみにこちらの環境がたまたまうまくいっているだけかもしれないと思い、Window
sサンドボックスというWindowsを初期状態にして隔離できる環境で試してみたところ
では、問題は無さそうでした。
エディタ本体の選択はできているとのことで、そのフォント選択と違いがあるのだと
思います。違いが無くなるようにできないか検討します。

[ ]
RE:40232 「Nerd Fontを使った秀丸エディNo.40233
ALI さん 23/01/06 12:10
 
でるもんた・いいじまさん
フォント名は日本語名と英語名があるんですね。
ありがとうございます。大変勉強になりました!

秀丸担当さん
開発環境では問題ないと言うことで、何でなんでしょうね…。
試しに 9.20 Beta9 64bit も入れてみたのですが、変化なしでした。

1つ気づいたことがありまして、
ファイルのアイコン () などは ・ になるのですが、
歯車のアイコン() だけは ← のような左向きの矢印の外字になりました。

それでは失礼致します。

[ ]
RE:40233 「Nerd Fontを使った秀丸エディNo.40234
秀丸担当 さん 23/01/06 15:23
 
V9.20β9でも変化なしということで、失礼しました。
試していただいてありがとうございます。
歯車のアイコンが左矢印になって見えるのは、おそらくツールバーの既定のフォント
のYu Gothic UIになっているためだと思います。
できないという情報があるだけでも助かります。
いまのところ不明ですが、何らかの対策を考えます。

[ ]
RE:40234 「Nerd Fontを使った秀丸エディNo.40235
秀丸担当 さん 23/01/06 16:39
 
ちなみにagave Nerd Fontにしていたのは、サイズが小さそうだったためでした。
Nerd Fontのサイトにあるフォントなら、ほぼ外字の文字コードは一致しているはず
なので、別のNerd Fontでもいいです。
最近フォント名を文字列で入力することが増えてきたので、V9.20βでは、ファイル
タイプ別の設定からフォント名をコピーできるようにしてあります。
ファイルタイプ別の設定のところで、フォント(F)の一覧のどれかをクリックしてCtr
l+Cを押すとフォント名がコピーされるので、タイプミスが無いフォント名を得られ
ます。
絞り込み検索もできるようにしていて、ner...とか入力すると一覧が絞り込みになり
ます。

あと、Nerd Fontとは全く別の外字を使ったアイコンで、Windows 10には、"Segoe MD
L2 Assets"というフォントがあります。
これを使ってもそれなりにモダンにできます。追加のインストール無しでできます。
でもちょっと角ばっています。
Windows 11だと、"Segoe Fluent Icons"というフォント名で、共通の外字のアイコン
で、丸っぽくてモダンです。
Windows 11ではツールバーのデザインの設定で、定義ファイルの参照のところのサン
プル3から選べるようになっています。
Windows 10の場合はサンプルが無いので、サンプルを書いておきます。

{
    "design":{"font":"Segoe MDL2 Assets","fontsize":14,"showname":"nameonly"},
    "tbcmd": {
        "1":{"name":" \uE8A5 ", "color":"blue","alt":"新規作成"},
        "4":{"name":"\uED25 ","color":"#D7AC6A","alt":"開く"},
        "5":{"name":"\uE78C ","color":"blue","alt":"上書き保存"},
        "35":{"name":" \uE7A7 ","color":"blue","alt":"やり直し"},
        "40":{"name":"\uE8C8 ","color":"ccc","alt":"コピー"},
        "42":{"name":"\uE8C6 ","color":"ccc","alt":"切り抜き"},
        "41":{"name":"\uE77F ","color":"ccc","alt":"貼り付け"},
        "62":{"name":"\uE721 ","color":"ccc","alt":"検索"},
        "64":{"name":"\uE74A ","color":"green","alt":"上候補"},
        "63":{"name":"\uE74B ","color":"green","alt":"下候補"},
        "536": {"name": "[ab]", "color": "", "alt": "単語の検索ON/OFF"},
        "535": {"name": "Ab", "color": "", "alt": "大文字/小文字の区別ON/OFF"},
        "534": {"name": " .* ", "color": "", "alt": "正規表現ON/OFF"},
        "56":{"name":" \uE8EC ","color":"#D7AC6A","alt":"現在行をマーク/マー
ク解除"},
        "57":{"name":"\uE8EC…","color":"#D7AC6A","alt":"マーク一覧"},
        "140":{"name":"\uE745 ","color":"ccc","alt":"ウィンドウ分割上下"},
        "179":{"name":"\uE897 ","color":"ccc","alt":"秀丸エディタヘルプ"},
        "58":{"name":"\uEDB0 ","color":"#F44","alt":"記録開始/記録終了"},
        "60":{"name":"\uE768 ","color":"#8ED28A","alt":"再生"},
        "380":{"name":" \u21A9|","color":"","alt":"ウィンドウ幅で折り返し"},
        "382":{"name":" \u21C9 ","color":"","alt":"最大幅で折り返し"},
        "54": {"name": "\uF8B0 ", "color": "ccc", "alt": "ファイルタイプ別の
設定..."},
    },
    "colors":{
        "blue":{"light":"#46c","dark":"#7AC0FF"},
        "green":{"light":"#09B28B","dark":"#09B28B"},
        "red":"#f00",
        "ccc":{"light":"#000","dark":"#ccc"},
        "orange":"#fc4",
    }
}

[ ]
RE:40235 「Nerd Fontを使った秀丸エディNo.40236
bouz さん 23/01/06 17:03
 
横からですが以下でずっと使っています。

{
 "design":{"font":"agave Nerd Font","fontsize":11,"showname":"nameonly"},
 "tbcmd": {
    "5":{"name":"  ","color":"red","alt":"上書き保存"},
   "23":{"name": " ﮥ ", "color": "orange", "alt": "ファイルの先頭"},
   "24":{"name": "  ", "color": "orange", "alt": "ファイルの最後"},
   "59":{"name":"  ","color":"green","alt":"grep"},
   "64":{"name":"  ","color":"green","alt":"上候補"},
   "63":{"name":"  ","color":"green","alt":"下候補"},
  "136":{"name": "  ", "color": "orange", "alt": "行番号表示/非表示"},
  "172":{"name":" ▶", "color":"orange", "alt": "前の操作のくり返し"},
  "280":{"name":"  ","color":"green","alt":"下候補"},
  "281":{"name":"  ","color":"green","alt":"上候補"},
  "338":{"name": " 📑", "color": "orange", "alt": "アウトライン解析...
"},
  "380":{"name":" ↩ ","color":"blue","alt":"ウィンドウ幅で折り返し"},
  "382":{"name":" ⇉ ","color":"blue","alt":"最大幅で折り返し"},
  "534":{"name": "  ", "color": "green", "alt": "正規表現ON/OFF"},
  "535":{"name": " ", "color": "green", "alt": "大文字/小文字の区別O
N/OFF"},
  "536":{"name": " ", "color": "green", "alt": "単語の検索ON/OFF"},
 },
 "colors":{
  "blue":{"light":"#46c","dark":"#7AC0FF"},
  "green":{"light":"#09B28B","dark":"#09B28B"},
  "red":"#f00",
  "orange":"#fc4",
 }
}

[ ]
RE:40236 「Nerd Fontを使った秀丸エディNo.40237
ALI さん 23/01/06 21:33
 
レスありがとうございます。

フォント Segoe MDL2 Assets を指定して、Segoe MDL2 Assets のアイコンを"name"
のところにコピペして
試してみたのですが ・ の表示になりました。

色々と試していたのですが、
"design":{"font":"・・・"}
のところに指定するフォントによって、ツールバーの表示が、そのフォントのものに
なる場合と、
反映されない場合があることに気づきました。

正しくそのフォントの表示が反映されるフォント名
 Yu Gothic UI, MS Mincho, Meiryo, Segoe UI, BIZ UDGothic

反映されないフォント名
 agave Nerd Font, Segoe MDL2 Assets, Segoe UI Symbol

反映されないというのは、"design":{"font":""} のように フォント名として "" を
指定した場合と
すべて同じ表示になるという意味です。

なお "design":{"font":""} の場合と "design":{"font":"Yu Gothic UI"} の場合で、
異なったフォントで表示されます。

これらの情報がなにかの参考になりましたら幸いです。
それでは失礼致します。

[ ]
RE:40237 「Nerd Fontを使った秀丸エディNo.40239
秀丸担当 さん 23/01/10 08:57
 
大変詳しい情報ありがとうございます。
条件が絞れて、おおよそ見通しがつきました。

原因は、おそらくですが、メニューのフォントが通常とは少し異なるようになってい
るためかもしれないです。
ツールバーのフォントは、通常ではメニューのフォント同じです。
Windowsの設定としはメニューのフォント変更は無いのですが、レジストリで変更す
ると、そうなることが再現できました。
メニューのフォントを変更するツール的な何かだと起きやすいと思います。
メニューのフォント情報が何だったとしても大丈夫なように、V9.20β10で修正します。

以下はちょっと難しいかもしれないので参考までの情報です。
具体的な場所は、レジストリエディタを開いたときの内容で、
HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics

IconFont
が関係していました。
ここのバイナリ値で、23バイト目は通常は01なのですが、これが80とかになっている
と起きます。
日本語環境ではバイナリでもYu Gochic UI、英語だとSegoe UI(たぶん)がバイナリ
上でもなんとなく見て取れると思います。
メニューを変更するツール的な何かだと、変えたままだったりYu Gochic UIに戻した
としても、01に戻らず、80になったままになる場合があると思います。
同じ問題だとすれば、V9.19の現状ではここを01に戻してサインインしなおすと、起
きていたことが元に戻りました。

[ ]
RE:40239 「Nerd Fontを使った秀丸エディNo.40241
秀丸担当 さん 23/01/10 15:04
 
V9.20β10で修正してみています。
以下のページの下のほうの、先行開発バージョンはこちら、から試していただくこと
ができます。
https://hide.maruo.co.jp/software/hidemaru.html

[ ]
RE:40241 「Nerd Fontを使った秀丸エディNo.40242
ALI さん 23/01/10 17:56
 
>メニューのフォントを変更するツール的な何かだと起きやすいと思います。
>メニューのフォント情報が何だったとしても大丈夫なように、V9.20β10で修正し
>ます。

確かに私は Windows10 のエクスプローラのフォントを、
メイリオに変更するツールを常駐させていました。
それが原因だったんですね。

V9.20β10にて、agave Nerd Font を指定して、ツールバーにアイコンを表示させる
ことができるようになりました。
対応ありがとうございました。

[ ]