読者です 読者をやめる 読者になる 読者になる

ナカザンドットネット

Android Developer's memo

プログラミング用フォント「Ricty」をLionに導入してみたメモ

1日中、文字を見ながら思考を続けるプログラマならば、使用するフォントにもこだわりを持とう。
プログラマだったら使うフォントにもこだわれ - プログラミング用フォント「Ricty」 | Act as Professional - hiroki.jp by HIROCASTER

こちらの記事を結構大昔に読んだことがあった気がしたんですが、ぶっちゃけそれとは関係なく、ターミナルを眺めてたらふと、「あ、このフォントでコマンドライン見続けるのしんどい」と思ってしまったんですね。
今回の下手人の名は「Monaco」フォント。ターミナルの標準フォントです。
たぶんMonacoさんは一種のゲシュタルト崩壊のとばっちりをくらっただけで、むしろ世間的にはプログラマーに好まれるフォントの一つと言ってもいい(当社調べ)はずなので、そのうちまたしれっとMonaco使い始めるかも知れませんが、とりあえず今回は新しいフォントを試すことにしました。

で、冒頭の記事を思い出してRictyを導入して見ることになったのですが、1年前とは手順が変わってるっぽいのでメモしておこうと思います。

Rictyとは

そもそもRicty(リクティ、でいいのかな?)ってどういうフォントなん?という話になりますが、公式サイトから引用しますと、

  • ラテン文字には Raph Levien 氏の Inconsolata が適用されます。
  • それ以外の文字には Migu 1M が適用されます。美しい M+ とロバストな IPA、そして、itouhiro 氏が改良された視認性の高い日本語文字 (半濁音など) が使用できます。
  • 半角文字と全角文字の横幅の比が 1:2 に調整されています。
  • 全角スペースが可視化されます。
  • 全角のコンマ、ピリオド、コロン、セミコロンが半角のそれぞれに対して差別化されています。
  • en ダッシュ、em ダッシュが破断線のようになります (LaTeX での入力ミス防止のため)。

プログラミング用フォント Ricty

とのこと。細かい調整はしてあるようですが、基本的には2種類のフォントのハイブリッドということになります。
1年前との変更点も、この特性に起因しているようです。

1年前と変わった点

Ricty が SIL Open Font License Version 1.1 section 5 に違反する解釈ができるとの指摘を受け、万全を期すために Version 3.0.0 より TrueType フォントの配布を中止し、生成スクリプトのみの配布とさせていただいております。
プログラミング用フォント Ricty

ライセンスが微妙な感じなので生成スクリプトのみ配布中、ということです。

ということで、最新版の導入手順について説明していきます。

導入手順

公式GitHubのドキュメントに準拠します。

  1. FontForgeの導入
  2. Inconsolataをインストール
  3. Migu 1Mをインストール
  4. GitHubから生成スクリプト一式をダウンロード
  5. 生成スクリプトを実行
  6. 出来上がったRictyフォントをインストール
  7. ターミナルで使う場合の注意

FontForgeの導入

FontForgeはフォントをビルドしたりするためのツールっぽいです(適当)
Macでこの手のツールを導入する際には、MacPortsかHomeBrewを使うのが常套手段かと思いますが、とりあえず今回はMacPortsだけでいきます。HomeBrewのリポジトリにもFontForge自体はあるっぽいんですが、どうやらコケやすいらしいです。誰かフォロー記事頼む。

MacPortsFontForgeを導入

MacPorts自体の導入方法については適当にググってください。SnowLeopardやLionなら本家でpkgファイル落とせるんで何も見なくても普通にインストールできちゃうかもです。
MacPortsが導入されている環境で、以下のコマンドを実行してください。

$> sudo port install fontforge

ビルドには数分かかります。
FontForgeの導入はこれで完了です。

Inconsolataをインストール

  1. 公式サイトからOpenType fileをダウンロードします。さっきfontforgeを導入しましたが、FontForge sourceは今回関係ありません。
  2. SpotlightかどこかからMac標準のフォント管理ソフト「Font Book」を起動し、ダウンロードした.otfファイルを「フォント」欄にドラッグアンドドロップしちゃってください。

f:id:Nkzn:20120601231857p:plain

Migu 1Mをインストール

  1. 公式サイトのダウンロードページからダウンロードしますが、MigMixなど紛らわしいものもあるので注意してください。「Migu 1M」をダウンロードします。
  2. zipを解凍するとregularフォントとboldフォントが入っているので、両方ともInconsolataと同じ要領でFont Bookに放り込んでインストールします。

GitHubから生成スクリプト一式をダウンロード

Ricty公式GitHubからスクリプトなどなどが入ったファイルをダウンロードします。
下の図にあるボタンからzipで落としてくるのが無難でしょう。
f:id:Nkzn:20120601232534p:plain
落としてきたら、任意の(ターミナルで到達しやすい)ディレクトリに解凍してください。f:id:Nkzn:20120601232916p:plain
ターミナルで開くとこんな感じになります。

生成スクリプトを実行

ターミナルで生成スクリプトを実行します。

$> [前項で解凍したディレクトリ]/ricty_generator.sh auto

Font Bookにドラッグアンドドロップしたフォントが上手くインストールされていれば、しばらく待つだけでRictyフォントが生成されます。

f:id:Nkzn:20120601233338p:plain
Ricty生成後のディレクトリ内はこんな感じ。

以下の4種類が生成されています。

  • Ricty-Regular.ttf
  • Ricty-Bold.ttf
  • RictyDiscord-Regular.ttf
  • RictyDiscord-Bold.ttf

RictyDiscordについては、公式サイトで以下のような説明がありました。

Ricty では、調和・統一感の維持のため、プログラミング用フォントのコアである Inconsolata 由来の ASCII 文字に手を入れないようにしています。Discord (不協和音) 版は、統一感を乱す覚悟で ASCII 文字に手を入れた Ricty の派生フォントです。
プログラミング用フォント Ricty

まあ、お好みで使い分けてね、ということです。数字やアルファベットへの線や点の入り方が微妙に違っていて面白いです。

出来上がったRictyフォントをインストール

これまでと同じ要領でFont Bookに放り込んでください。

ターミナルで使う場合の注意(おまけ)

さて、今回はターミナルのフォントに端を発した作業でしたので、ターミナルでの使い勝手が気になります。
とりあえずターミナルのフォント設定をRictyにしてみましょう。


f:id:Nkzn:20120601233941p:plain





わくわく。





f:id:Nkzn:20120601234033p:plain





( ゚д゚)






汚っ!!!???







これ見た瞬間、期待が大きかった反動もあって、一気に幻滅しました。







ま、まだあわてるような時間じゃ((AAry


そうだ、アンチエイリアスをかけよう。


f:id:Nkzn:20120601234459p:plain




どきどき




f:id:Nkzn:20120601234536p:plain



き・・・・



綺麗だー!!!!



ということで、Rictyをターミナルで利用する場合にはアンチエイリアス設定必須です。



今日の午後いっぱい、ターミナルとEclipseをRictyにして仕事してみましたが、とても気持ちよかったです。
気持ちのいい仕事は、気持ちのいいフォントから。皆さんも気持ちのいいフォント、導入してみませんか。