Source Han Code JPフォントをインストールする

いままでプログラミング用の固定幅フォントとして、Ricty deminishedを使っていたのだが、Visual Studio Codeで`の文字が重なって表示されてしまい、ちょっと不満だった。そこで、Ubuntu 20.04をインストールし直したので、プログラミング用フォントである、Source Han Code JPをインストールしてみたのでメモ。

インストールが結構ややこしい。

1. OpenType SVGをgit clone

Source Han Code JPフォントをビルドするのに、opentype-svcのソースが必要なので、githubよりcloneする。

git clone https://github.com/adobe-type-tools/opentype-svg.git

2. Source Han Code JPフォントのソースをgit clone

git clone https://github.com/adobe-fonts/source-han-code-jp.git

3. AFDKOをインストール

バイナリ形式のフォントを生成するためには、Adobe Font Development Kit for OpenType(AFDKO)のインストールが必要条件になるらしいのでインストールする。

python3-vertualenvをインストール

sudo apt install python3-virtualenv

ディレクトリ移動

cd source-han-code-jp

仮想環境の作成とモジュールのインストール

python3 -m virtualenv afdko_env
source afdko_env/bin/activate
pip install afdko

SVGファイルを埋め込むためのスクリプトaddSVGtable.pyというのが必要で、これは先程cloneしたOpenType SVGのソースから、Source Han Code JPフォントのソースディレクトリにコピーして持ってくる。

cp ../opentype-svg/*.py .
cp -r ../opentype-svg/util .
cp -r ../opentype-svg/imgs .
cp -r ../opentype-svg/fonts .

4. commands.shの実行

次に、commands.shの中で、addSVGtable.py を呼び出しているところがあるので、それを絶対パスで書き換える。 これを行わないと、次に実行するcommands.shで失敗する。

例えば、source-han-code-jpを、~/Downloads/hanの下に展開していたら、addSVGtable.pyと書かれている行(2箇所)を以下のように変える。

if ~/Downloads/han/source-han-code-jp/addSVGtable.py -s $svg ${nf} ; then :

書き換え後、コマンド実行

./commands.sh

成功すればフォントが出来上がる。以下のコマンドを実行してインストール。

mkdir ~/.fonts
cp ./*/*.otf ~/.fonts
fc-cache -fv

5. Visual Studio Codeの設定

Visutal Studio Codeの場合、設定のUser-Text Editor-Font-Font Familyを、'Source Han Code JP N'というように設定する。フォントを変えてみたところ、`が重なって表示されることはなくなった。しばらく使ってみることにする。