WindowsでRictyを生成するときに、コマンドラインオプションをつける方法(改訂版)

2017-01-05
このページの内容が古くなったので書き直しました。
改訂版のページはこちら↓です。
WindowsでRictyを生成するときに、コマンドラインオプションをつける方法(2017年1月)
過去に何度か記事にした、Windowsでプログラミング用フォント Rictyを生成する方法2017年1月版です。 WindowsでRictyとRictyDiscord、さらにそれらの斜体(obliq...

2016-07-26 Githubに置いてあったRictyのソースが削除されて、作者のページに移動してしまったので記事を改訂。 うー、正直Githubにあった時のほうが分かりやすかった……。

2016-01-19 Inconsolateフォントのアップデートに伴い、Ricty生成スクリプトも更新されたので、それに合わせて記事を改訂。

必要なファイルのダウンロード

Ricty生成に必要なファイルをダウンロード。

Ricty 生成用スクリプト

必要なファイルは以下の4つ。 ページのあちこちに散らばっているので、漏れのないようにDLを。

  • ricty_generator.sh
  • ricty_discord_converter.pe
  • os2version_reviser.sh
  • regular2oblique_converter.pe
ric-dl-01 ric-dl-02 ric-dl-03
Migu 1M フォント

ページ内には「Migu」という名前のフォントが複数あるので間違えないように。
Migu 1M をダウンロード。

ric-r-mig
Inconsolata フォント

Google Fonts の Inconsolata ページの下に「1 Family Selected」という黒いタブがあるのでクリック。 右上の「↓」ボタンを押して、zip ファイルをダウンロード。

ric-inconsolate

FontForge

2016年7月時点での最新版「fontforge-cygwin_2016_05_26.zip」では、上手く動かないスクリプトがある。ひとつ前のバージョン、「fontforge-cygwin_2015_01_21.zip」を使用。

ric-ffdl

fontforgeのインストール

配布サイトにある「インストール」の手順にしたがって、インストールする。インストールが終わるとfontforgeが起動するが、いったんこれを終了させる。

以降、fontforgeのインストールフォルダは、配布サイトの例で示されている D:\fontforge として説明する。

必要なファイルのコピー

fontforgeをインストールしたフォルダ D:\fontforge に、Ricty生成のためのファイルをコピーする。

フォルダに入れるファイルの一覧
ダウンロードしたファイル D:\fontforge に入れるファイル
Ricty生成用スクリプト ricty_generator.sh
ricty_discord_converter.pe
os2version_reviser.sh
regular2oblique_converter.pe
Inconsolata フォント Inconsolata-Regular.ttf
Inconsolata-Bold.ttf
Migu 1M フォント migu-1m-regular.ttf
migu-1m-bold.ttf

D:\fontforge フォルダの構成はこんなかんじになる。
ric-filelist

Rictyの生成

fontforge.bat ファイルを複製して、名前を ricty.bat とする。
ricty.bat の中身を以下のように書き換えてから、 ricty.bat をダブルクリックで実行すればOK。

・・・(上部省略)・・・
xwin-close.exe -wait
fontforge.exe -nosplash %file0% %1 %2 %3 %4 %5 %6 %7
xwin-close.exe -close
・・・(上部省略)・・・
xwin-close.exe -wait
sh ricty_generator.sh auto
sh os2version_reviser.sh Ricty-*.ttf RictyDiscord-*.ttf
xwin-close.exe -close

オプションを変更したい場合

この記事の本題、自分でオプションを変更・追加したい場合。
さきほど書き換えた ricty.bat を以下のように変更する。

・・・(上部省略)・・・
xwin-close.exe -wait
sh ricty_generator.sh auto
sh os2version_reviser.sh Ricty-*.ttf RictyDiscord-*.ttf
xwin-close.exe -close
・・・(上部省略)・・・
xwin-close.exe -wait
sh ricty_generator.sh [オプション] Inconsolata-{Regular,Bold}.ttf migu-1m-{regular,bold}.ttf
sh os2version_reviser.sh Ricty-*.ttf RictyDiscord-*.ttf
xwin-close.exe -close

3行目の部分がポイント。
[オプション] の部分に、有効にしたいオプションを並べる。
使えるオプションは Rictyホームページの「ricty_generator.sh のコマンドラインオプション」の項目を参照。

例えば「行間を広くする(-w)」と「全角スペースを可視化しない(-z)」を有効にしたい場合には、以下のようになる。

・・・(上部省略)・・・
xwin-close.exe -wait
sh ricty_generator.sh -w -z Inconsolata-{Regular,Bold}.ttf migu-1m-{regular,bold}.ttf
sh os2version_reviser.sh Ricty-*.ttf RictyDiscord-*.ttf
xwin-close.exe -close

RictyDiscordのオプション

Rictyは派生フォントの「RictyDiscord」も同時に生成してくれるけど、これのオプションを変更したい場合。

生成のためのスクリプトファイル ricty_generator.sh をテキストエディタで開く。
ファイルの末尾の以下の部分。

$fontforge_command -script $path2discord_patch \
	${ricty_familyname}${ricty_familyname_suffix}-Regular.ttf \
	${ricty_familyname}${ricty_familyname_suffix}-Bold.ttf \
	2> $redirection_stderr || exit 4

ここを以下のように書き換える。

$fontforge_command -script $path2discord_converter \
	-plus \
	-0 \
	-Z \
	${ricty_familyname}${ricty_familyname_suffix}-Regular.ttf \
	${ricty_familyname}${ricty_familyname_suffix}-Bold.ttf \
	2> $redirection_stderr || exit 4

2行目以降に、Rictyホームページの「ricty_discord_converter.pe のコマンドラインオプション」にある有効にしたいオプションを並べる。

上の例の場合は

  • + を少し下方に移動しない。(-plus)
  • 0 をドットゼロにせず、スラッシュゼロのままにする。(-0)
  • Z にクロスバーを付けない。(-Z)

のオプションがオンになっていることになる。

斜体(oblique)の生成

Rictyの斜体を生成したい場合は、ricty_generator.sh の最後、# Exit の手前に一行追加する。

        ${ricty_familyname}${ricty_familyname_suffix}-Regular.ttf \
        ${ricty_familyname}${ricty_familyname_suffix}-Bold.ttf \
        2> $redirection_stderr || exit 4
fi

# Exit
echo "Succeeded in generating Ricty!"
exit 0
        ${ricty_familyname}${ricty_familyname_suffix}-Regular.ttf \
        ${ricty_familyname}${ricty_familyname_suffix}-Bold.ttf \
        2> $redirection_stderr || exit 4
fi

$fontforge_command -script regular2oblique_converter.pe Ricty*.ttf
# Exit
echo "Succeeded in generating Ricty!"
exit 0

書き換えが終わったら、 ricty.bat を実行すればフォントが生成される。
ちなみに生成には数分程度時間がかかる。生成が終わるとコマンドプロンプト画面は勝手に閉じるので、それまでは画面が止まってるように見えても放置。