by @nyarla

Cocoa Emacs on OSX LionでRictyフォントを使ってみた!

概要: Mac で Ricty を生成して Emacs で使ってみるテスト


こんにちま!

最近、2ch のフォント厨隔離スレ未だに活動してることにびっくりした、 にゃるらこと岡村 直樹 (23)です。皆さんフォントには興味あるでしょうか。

僕は昔上記隔離スレに張り付いていた時期もあったような覚えがありますが、 流れの早さに着いて行けなくなって脱落 → スレを見なくなるのコンボを決め、 当時収集していたファイルは全部捨てたような記憶があります。 確か高校ぐらいの時だったかな。

それが本題に何の関係があるの? と思われると思いますが、 そのフォント厨隔離スレを今日たまたま見てしまった際、 そういえば Ricty って言うフォントが一時話題になってたよねーという事を思い出し、 せっかくだから使って見よう! ということになって、 今日昼からその作業を行っておりました。

まあそれが本題。

Rictyってどんなフォント?

をうまい具合に合成したフォントで、主に Linux 環境でのプログラミング等のコーディングに適したフォントです。

それでこのフォント、最初の内はバイナリが配布されていたのですが、 途中で元のフォントのライセンスを厳守するために、バイナリ配布をやめ、 生成スクリプトのみでの配布になっていて、Rictyを使うためには、 自分でフォントを生成する必要があります。

それでフォントを生成するためには、

というソフトウェアをインスコする必要があるのですが、 今日はそれでちょっとハマったので、その辺り次解説します。

fontforgeHomebrewを使ってインストールする

さて、Rictyの生成にはfontforgeが必要なのですが、 僕はこのソフトウェアを Homebrew を使って インストールしました。

それでインストールは、

$ sudo brew install fontforge --use-gcc --without-python

とすると、(たぶん)トラブル無くインストールできると思います。

実を言うと最初、普通にbrew install fontforgeしたのですが、 なんか途中でよく分からないエラーが出て失敗。 それで、Homebrewの警告に--use-gcc使え! みたいなのが出てて、 実際にそうしたらインストールはできたんですが、 今度はfontforgeが起動しないという事態に。

でもってfontforgeの起動時のエラーメッセージを見るに、 何やら Python 関連のリンクにエラーが出てるみたいな感じだったので、 とりあえず--without-pythonして見て、ようやく使えるようになった、 という感じでした。

Rictyを生成

fontforgeのインストールが完了したら、次はRictyそのものの生成の取りかかります。

まず、Rictyの生成には、

の三つが必要なので、それぞれをリンク先から落としてきます。

リンク先から必要なファイルを落としたら、 まずRicty-3.1.2.tar.gzを任意のディレクトリに解凍し、 そこに先ほど用意したInconsolataフォントと、 Migu 1Mフォントの Regular と Bold を、 フォント名を変更せずに Ricty 生成スクリプトのあるディレクトリに放り込みます。

んで、各種フォントを放りこんだら、端末か何かで、

$ ./ricty_generator.sh auto

をすれば、Rictyのフォントが生成されます。簡単ですね!

で、あとは生成されたフォントをインストールすれば、 各種ソフトウェアでRictyフォントが使えるようになります。

Cocoa Emacs でRictyを使う

ここからは僕の普段のエディタであるEmacs(Cocoa Emacs)の設定です。

とりあえずフォント周りの設定としては、

(let* ((size 16)
(asciifont "Ricty") ; ASCII fonts
(jpfont "Ricty") ; Japanese fonts
(h (* size 10))
(fontspec (font-spec :family asciifont))
(jp-fontspec (font-spec :family jpfont)))
(set-face-attribute 'default nil :family asciifont :height h)
(set-fontset-font nil 'japanese-jisx0213.2004-1 jp-fontspec)
(set-fontset-font nil 'japanese-jisx0213-2 jp-fontspec)
(set-fontset-font nil 'katakana-jisx0201 jp-fontspec)
(set-fontset-font nil '(#x0080 . #x024F) fontspec)
(set-fontset-font nil '(#x0370 . #x03FF) fontspec))

という感じ。

まあこの設定は前にしてあったフォント周りの設定をそのまま改変しただけですが、 もうちょい詳しい設定は、 僕の dotfiles を参照してください。

それで、フォントの設定はこれで問題なかったのですが、 これで Emacs に問題は全くないか、と言えばそうでは無く、 なんかウィンドウの横幅が倍になる、という、何コレ珍百景みたいな状態になりました。

次はその辺りの修正方法について

Cocoa Emacs に和文フォントをしてするとウィンドウの横幅が倍になる問題を解決する

タイトル長い。

さっきいった横幅云々っていう問題は、 どうも Cocoa Emacs のフォント設定に和文フォントを指定すると発生するらしく、 症状としては横幅がどういうわけか倍になります。

この症状の対処法とかは、

が詳しいです。

で、これを直すには、Emacs に上記リンク先で公開されているパッチを当ててコンパイルする必要があります。 それで僕は Cocoa Emacs をHomebrewを使ってインスコしてあるのですが、 前にインストールした時点では、コンパイルできないが云々とかで、

という作業をしていました。

で、Homebrewを使って Emacs をインスコする際の作業については、 僕の過去記事を参照して欲しいのですが、その際に、 最初にあげたリンク先のパッチ、

を取り込んで起きます。

んで、あとは前に記事を書いた通りにコンパイルすれば、 ウィンドウサイズが倍になる問題が解決します。

以上で作業は終わり

ということで以上が Mac OS X Lion 上で、Rictyを生成して Cocoa Emacs で使ってみる、 という話でした。

まあ色々と細々と作業してたんで時間かかりましたが、 今はRictyを適用した Emacs でこの記事を書いております。 っていうかこの記事を書くのも時間かかってますが。

ということで今日の作業は以上です。

あとせっかくなんでスクリーンショット貼っておきます。

#FIXME