円記号問題は百害あって一利なし
本来、Windowsのディレクトリ セパレーターは 円記号 (¥) ではなく backslash (\) なのだが。Windowsの日本語環境では 円記号 (¥) で表示されているのが死ぬほど気持ち悪い。
S-JIS には バックスラッシュ が収録されていないと思い、グリフが無さそうであきらめていたが。そもそも Yu Gothic UI は 游ゴシック と Segoe UI との合成フォントらしい。であれば、 Segoe UI から バックスラッシュ のグリフが補完出来るのではと思い、 Yu Gothic UI を真っ当なフォントに修正しようと、合成に挑戦してみた。
※ なお本記事では U+005C を backslash (\) から 円記号 (¥) に置き換えているフォントは 真っ当なフォントではない と言う扱いで進めます。
http://www.jiyu-kobo.co.jp/wp@test/wp-content/uploads/2020/11/compatibility201102.pdf

(Windowsだけ置き換えているのが滑稽すぎる。)

(結論) あまりうまく行かなかった。。。
普段は 。Meiryo UIも大っきらい!! (No!! Meiryo UI) で Migu 1P 置き換えて使っていたが、置き換えられるのには限界があり、フォントの合成にチャレンジしてみたのだけど。
ダイアログのフォントとか、色々とおかしくなってしまった。。。取り敢えず使い物にならないので、戻しました(苦笑)
(´;ω;`)・・・
しかし、Segoe UI はとっても見栄えが良くて好きになる。
合成とインストール
※ 自己責任でお願いします。
※ 自己責任でお願いします。
※ 自己責任でお願いします。
※ 自己責任でお願いします。
※ 自己責任でお願いします。
環境
手順
手順① 必要なフォントを作業用にコピー
Segoe UI と 游ゴシック をコピーしてくる。
@REM 游ゴシックのTTC
copy C:\Windows\Fonts\YuGothB.ttc .\
copy C:\Windows\Fonts\YuGothL.ttc .\
copy C:\Windows\Fonts\YuGothM.ttc .\
copy C:\Windows\Fonts\YuGothR.ttc .\
@REM Segoe UIのTTF
copy C:\Windows\Fonts\segoeui.ttf .\
copy C:\Windows\Fonts\segoeuib.ttf .\
copy C:\Windows\Fonts\segoeuii.ttf .\
copy C:\Windows\Fonts\segoeuil.ttf .\
copy C:\Windows\Fonts\segoeuisl.ttf .\
copy C:\Windows\Fonts\segoeuiz.ttf .\
copy C:\Windows\Fonts\seguibl.ttf .\
copy C:\Windows\Fonts\seguibli.ttf .\
copy C:\Windows\Fonts\seguili.ttf .\
copy C:\Windows\Fonts\seguisb.ttf .\
copy C:\Windows\Fonts\seguisbi.ttf .\
copy C:\Windows\Fonts\seguisli.ttf .\
※一括でコピってるけど、使わないのもある。
手順② TTCの分割
TTCはTTFの集合体。
作業はTTFで行うため、ため分割する。
FOR %A IN (*.ttc) DO unitettc64.exe "%A"

※生成されたTTFの内、赤字のものが Yu Gothic UI のため、それらと Segoe UI を合成する。
手順③ 合成
ベース フォント に対して、 追加フォント を足し込むイメージ。

※ 字游工房で公開されている資料とは突合していないため、不正確かもしれない。
諸々作業が終わった後、PDFに記載されていることに気づいた(苦笑)
正確な情報は 字游工房で公開されている資料 を参照。
Yu Gothic UI 系のフォントに対して、以下の手順を繰り返す。
(1). FontForge で Segoe UI フォントを開く
(2). [エレメント] > [フォントの統合] 選択し、 Yu Gothic UI フォント を読み込ませる。
(3). カーニング についてのダイアログが表示されるので [いいえ] を選択する。
(4). [エンコーディング] > [エンコーディングを変換] > [ISO 10646-1 (Unicode, 完全)] を選択する。
(5). FontForge で Yu Gothic フォントを開く
(6). [エレメント] > [フォント情報] を開き、 Yu Gothic フォント のフォント情報を転記する。
PS Names-
TTF名
※ 両フォントにある属性のみコピー。
※ オリジナルのYu Gothic フォントに無い属性は削除する。
(7). [ファイル] > [フォントを出力] を選択し、 ファイル名を入力し、 [生成] ボタンを押下して出力する。
※ [Validate Before Saving] は OFF にする。

(上書きしても良いけど、別名がベター。自分で分かる名前で。)
Yu Gothic UI 系のフォントに対して、以上の手順を繰り返す。
手順④ TTCに結合
合成フォントでTTCファルを作り直し。
以下のコマンドは、Yu Gothic UI のTTFファイルを上書きした想定のコマンド。
unitettc64.exe YuGothB.ttc YuGothB001.ttf YuGothB002.ttf YuGothB003.ttf
unitettc64.exe YuGothL.ttc YuGothL001.ttf YuGothL002.ttf
unitettc64.exe YuGothM.ttc YuGothM001.ttf YuGothM002.ttf
unitettc64.exe YuGothR.ttc YuGothR001.ttf YuGothR002.ttf
※ このツールって、スイッチじゃなくて、引数の数で生成 or 結合の挙動が変わるの、申し訳ないけどちょっと気持ち悪い。。。
手順⑤ フォントのインストール事前作業
游ゴシック のTTCファイルの所有権を奪取し、 Adoministrators に フル コントロール を与える。

※ 游ゴシック のTTCファイル、全部やるます。
※ 手順は腐るほど転がっているので割愛。
手順⑥ フォントのインストール
回復オプション の コマンド プロンプト を起動してコピーする。
-
SHIFTキーを押下しながら再起動を選択。 -
[オプションの選択]>[トラブルシューティング]>[コマンド プロンプロン]を選択。 - よしなに。
@REM before
dir C:\Windows\Fonts\YuGoth*
@REM 上書き
copy /y YuGothB.ttc C:\Windows\Fonts\YuGothB.ttc
copy /y YuGothL.ttc C:\Windows\Fonts\YuGothL.ttc
copy /y YuGothM.ttc C:\Windows\Fonts\YuGothM.ttc
copy /y YuGothR.ttc C:\Windows\Fonts\YuGothR.ttc
@REM after
dir C:\Windows\Fonts\YuGoth*
※ システム ドライブは状況によって変わるので、適宜確認しながら作業してください。
手順⑨ 以上
以上。
トラブル シューティング
Q. なんで Yu Gothic UI のTTCのグリフを直接 backslash に置き換えないの?
A. U+005C と U+00A5 がリンクされてて、それの解除の仕方がわかんなかったんだよ。。。
(´;ω;`)
Q. FontForge でコピペできない。
A. コンテキスト メニュー で頑張ろう。 (プロセスが違うとコピペ出来ない?)
Q. FontForge 文字入力がうまく入力できない。
A. US キーボード を使おう。取り敢えず、英字はまともに入力出来る様になる。


個人的には US インターナショナル が欧州文字も入力出来て、おすすめ。
(後述) 円記号問題について
日本ではこれまで ASCII領域 の 0x5C を backslash (\) ではなく Yen (¥) として使っていた。そのため日本ではWindowsの ディレクトリ セパレータ や、 エスケープ シーケンス が 円記号 (¥) として認識されている。
と言うのも、ASCII領域には実は再定義可能な文字がいくつかあり、そのうちの1つが backslash (\) だった模様。計算機が真っ先に活躍したであろう市場の1つに金融系があると考えると、通貨記号が必要になるのは至極当然のため、 ASCII時代から 円記号 (¥) に置き換えて使用していたのだと推察。
しかし、0x5C を backslash (\) として扱っている ISO-8859 をベースに拡張されている UNICODE では U+005C (0x5C) は Yen (¥) ではなく backslash (\) である。まぁ当然である。特異なS-JISをベースにする理由もない。
まぁ半角カタカナ同様、移動した文字として扱えば良いのにと思うだけど。基本的に、様々な文字コードの中で互換性を持つ扱いとしている ASCII領域 の基本文字ため、ちょっと一筋縄では行かない。
そして、日本のMicrosoftは U+005C (0x5C) のフォント グリフを Yen (¥) にして回避しており、さらに混乱させているのは YenSign問題 である。
ただし、これは日本固有の問題では無く、0x5C を backslash (\) から通貨記号に置き換えていた国がいくつか有る様で。この対応自体は誤りではないのだけど。知れば知るほど、利点が無い。こんなのユーザーが認識改めて、システムを改修するべき話である。改修規模を軽視するつもりも無いが、プログラマやSEなど、プログラマへの認知も阻害している要因になっており、正直こんなの要らない機能でしか無い。
先日も、プログラム系の記事の中で、パスを表現で、ディレクトリ セパレーター に態々 U+00A5 の 円記号 (¥) を使っている馬鹿なページを見かけて辟易とした。(他にも 全角の円記号 (¥) とか、、、) ディレクトリ セパレーター は U+005C だ!
それでも必要だと言うのであれば、Microsoftはちゃんとその理由などを明示的に示すべきである。
昔からある MS Gothic や MS 明朝、 メイリオ も時期的には仕方ないとして。游ゴシック まで置き換える必要があったのだろうか。正直、微塵も必要性が感じられない。通貨記号使っているシステムが改修するべき問題だろう。実際、YodobashiのGOLD POINTの3Dセキュア認証ページは、2019年3月頃には遅いながらも改修がされていた。

(以前チェックしていたときのSS。画角が違うのは、使っていたAndroid端末が違うからだと思うけど、何れも、差し替え無しフォントで検証。)
他の通貨記号を扱うサイトも同様に改修されていると思うが、これが真っ当な対応だと思う。
さっさと、このフォント置き換えは悪法として撤廃してほしい。
あと、日本語キーボードで直接 0xA5 (¥) が打てる様に、キーボード配列も見直してほしい。英語キーボード配列をベースにして。
尚、Androidでもこの悪法を行っている愚かなフォントが存在するので、実際にはMicrosoftだけが罪人ではない。だけど、天下のMicrosoft様が 鶴の一声 があれば、業界も変わりやすいと思う。UNICODEの健全な将来のためにも、頼んます!もう潮時でしょう!
正直パッケージも買って 游ゴシック と 游明朝 の バックスラッシュ も補完しようと思ったけど。流石に1書体で3万とかムリゲー過ぎる。。。こんな マイノリティのエゴ のために、十数万も出すなら、Windows使うの辞めるよ、、、、マジで。。。
(おまけ) Migu 1P によるUI
Meiryo UIも大っきらい!! (No!! Meiryo UI) を使って色々試した結果。WindowsのUIフォントとしては、Migu 1P が最もベターだったので、ここ数年使っている。
Windowsの ディレクトリ セパレーター で円記号問題にゲロ吐いている同士には、オススメしたい。



(NOTOとかTakao、梅とか試したけど。個人的に一番好みだった。)
参考 (謝辞)
-
FontForge Open Source Font Editor
https://fontforge.org/en-US/ -
Vista のメイリオを改造版に置き換える — バックスラッシュをバックスラッシュとして表示するために: まじかんと雑記
http://magicant.txt-nifty.com/main/2009/04/vista-ddf5.html -
フォントの合成 - ふなWiki
https://blue-red.ddo.jp/~ao/wiki/wiki.cgi?page=%A5%D5%A5%A9%A5%F3%A5%C8%A4%CE%B9%E7%C0%AE -
TTCフォントをTTFに分解する方法。 - Qiita
https://qiita.com/maboy/items/9f64d406c830aab548b1 -
Windowsカスタマイズシリーズ
http://tatsu.life.coocan.jp/MySoft/WinCust/index.html -
Miguフォント : M+とIPAの合成フォント
https://mix-mplus-ipa.osdn.jp/migu/








