Cyroit

全角英数や半角カナが判別しやすい、文字間隔調整機能付き等幅フォント「Cyroit」

Cyroit (しろいと) はプログラミングにもお使いいただける日本語等幅フォントです。
プログラミング向け合成フォントとして評価の高い ricty の生成スクリプトで遊んでいるうちに、フォント製作の沼にはまってしまったことで誕生しました。
全角英数記号や半角カナ等にアンダーラインが引いてあるため、全角・半角の組み合わせになっている括弧や、誤って使われている全角チルダなどをすぐに見つけることができます。
全角スペースや半角・ノーブレークスペースを可視化したバージョンも用意してあり、使い分けて使用できます。

フォントサンプル

CotEditor にて
ScreenShot

warp + Starship + lsd にて
ScreenShot

egword Universal2 にて
ScreenShot

カーニングサンプル
ScreenShot

桁区切り表示サンプル
ScreenShot

ダウンロード

最新版 (v2.3.0)

フォントやスクリプトの使用は自己責任にてお願いいたします。
各ファイルを使用することで生じた不具合・損害等について omonomo は責任を負いません。

その他の特徴

ラテン文字について

仮名文字について

漢字について

記号類について

機能的なものについて

収録フォントの違い

見た目が少し違うだけなのに種類を増やしたため、無駄にファイルサイズが大きくなってしまい大変申しわけございません。
それぞれにレギュラー、オブリーク、ボールド、ボールドオブリークの書体が含まれています。

名称 サンプル 説明
Cyroit Normal 通常版。スタイルセット対応。内容については後述。
CyroitBS BS 基本版。Ver.1.x.x までの通常版。全角スペースを可視化しています。
CyroitSP SP スペシャルスペース版。半角スペース、ノーブレークスペースも可視化したバージョン。
CyroitDG DG 桁区切り表示版。たくさん並んだ数字とにらめっこする時間を短縮できます。
CyroitFX TS 文字間隔固定版。calt と相性が悪いソフト用。また他のバージョンよりも軽快に動作します。
CyroitHB HB 平凡版。全てのスペースが不可視でグリフ改変も抑えたバージョン。プリントアウト用にどうぞ。

通常版のスタイルセットについて

設定方法については、Fira Code説明が分かりやすいと思います。

タグ名 サンプル 内容
ss01 ss01 全角スペース可視化
ss02 ss02 半角スペース可視化
ss03 ss03 3桁区切りマーク表示
ss04 ss04 4桁区切りマーク表示
ss05 ss05 小数小文字化
ss06 ss06 全角・半角形の下線消去
ss07 ss07 識別性向上グリフ無効化
ss08 ss08 DQVZ のグリフ変更

ライセンス

素材元のフォントやスクリプトはライセンスが異なる場合があります。

生成スクリプトの使い方

ビルド環境

Cyroit は以下の環境でビルドできることを確認しています。

基本的な使い方

あらかじめパッケージマネージャ等を利用して FontForgeFontTools をインストールし、使える状態にしておいてください。

スクリプトのある場所をカレントディレクトリにして

./run_ff_ttx.sh -F

異常なく完了した場合、直下の build フォルダにフォントが保存されます。

各スクリプトの説明

Cyroit の生成には5つの Shell スクリプトを使用します。

run_ff_ttx.sh

一連の処理を自動化します。全スクリプトの中のリーダーです。
-F オプション以外は生成フォントの確認用になります。
パラメータとして引数に font_generator のオプション (hVxfNn 以外) をハイフン無しで羅列することにより、生成フォントをカスタマイズすることができます。

(例) 接尾語に「NoNF」を付けて、Nerd Fonts 抜きの基本版 (完成品) を生成する場合

./run_ff_ttx.sh -F -n "NoNF" ztse

font_generator.sh

通常、直接実行する必要はありません。
FontForge のスクリプト機能を利用してフォントの合成と改変を行います。
オプションを指定することでフォントの見た目や機能を変更することができます。
オプションの最後に素材にするフォントのファイル名を指定する必要がありますが、基本的に auto で問題ありません。
合成したフォントを完成させるには、table_modificator を実行してフォント情報を書き換える必要があります。

(例) 下書きモードで平凡版を生成する場合

./font_generator.sh -dZzubts auto

table_modificator.sh

通常、直接実行する必要はありません。
font_generator で合成したフォントの情報を FontTools の ttx コマンドを使用して書き換えます。
とりあえずオプション無し、もしくは -o のみ付けて実行すれば必要な情報を書き換えてフォントを完成させてくれます。
-r を付けていないか、必要なテーブルファイルが存在しない場合、スクリプト内で uvs_table_maker と calt_table_maker を実行します。

uvs_table_maker.sh

通常、直接実行する必要はありません。
フォント合成時に失われた IVS 関連の cmap テーブルを作り直します。
作成したデータは table_modificator で使用します。

calt_table_maker.sh

通常、直接実行する必要はありません。
calt テーブルを作成します。作成したデータは table_modificator で使用します。

メモ

リンク