アカベコマイリ

HEAR NOTHING SEE NOTHING SAY NOTHING

Sublime Text を購入してみた

すこし前の話になるが Sublime Text を購入したので所感を書いておく。

Sublime Text とは

Sublime Text はクロス プラットフォーム対応のテキスト エディタ。名前に Sublime を冠したり公式サイトで The text editor you'll fall in love with (恋に落ちるテキスト エディタ) と銘打つあたりに自信のほどを感じる。

ライセンスは有料個人向けの Single User License企業・団体むけの Business license が用意されている。価格は 2013 年 9 月の時点で 1 ライセンス USD $70。Business は本数に応じて割引あり。Single User でも利用者が一人ならインストールするマシン数に制限はない。

有料ではあるものの試用期間は定められておらず機能制限も特にない。たまに購入をうながすメッセージ ボックスが表示されるけれど、それもやんわりとしたもの。つまり試用におけるデメリットはほとんどないわけだが、その気前のよさに感激したのと数ヶ月ほど利用してみてアプリ自体を気に入ったため購入することにした。

購入は Sublime Text 公式サイトの Buy ページからおこなえる。Email と Name を入力して PayPal から課金するとメールで Sublime Text License Key が送られてきた。License Key には Name 欄で入力したテキストが含まれるため、変なものにすると後悔するかもしれない。

Sublime Text のメニューから Help → Enter License を選択すると License Key を入力するためのダイアログが表示されるので、送られてきたものをコピペしてから Use License ボタンを押して手続きが完了。試用状態が解除される。

Sublime Text は現行版の 2 とベータ版の 3 があるのだけど 3 を利用するためにライセンス購入は必須。Mac 版では 2 と 3 で実行ファイルの名前が異なるためアプリケーション フォルダ内で同居させられる。パッケージの管理場所も別なので 2 の環境にも影響しない。

もし最新の機能やパフォーマンスに興味があるなら試してみるのもよいだろう。

お気に入りの機能や特徴

Sublime Text の機能や特徴で、特に気に入ったものをまとめる。

クロスプラットフォーム

Sublime Text は Windows、Mac、Linux 版を提供している。クロス プラットフォーム対応のエディタといえば定番の vi や emacs が思い浮かぶけど GUI エディタは珍しいのではなかろうか。

ここ数年、私は Windows と Mac を同時に利用する機会が増えてきたので環境間のエディタを統一できることをありがたく感じる。これまで Windows では EmEditor、Mac は CotEditor という感じだったが現在は Sublime Text へ一本化している。

あとメニューやショートカット キーを除き、どのプラットフォームでも使用感が一緒というのは何気にすごいと思う。

環境の共有が容易

Sublime Text の設定は基本的に JSON ファイルとなる。プレーン テキストなのでメンテナンスしやすく可搬性も高い。ブログなどで参考になる設定を見つけたときコピペで反映できるのは便利だ。パッケージについても特定の環境に依存するような設定はないらしく、以下の記事で紹介されているような方法により複数環境で設定を共有できる。

手軽なプロジェクト管理

Sublime Text にはプロジェクト管理機能が用意されている。といっても IDE のように専用のファイルはなく単純にフォルダをサイドバーへ登録するだけの手軽さ。

プロジェクト管理

フォルダーを登録すると中身を階層として管理できる。サブ フォルダーをクリックすれば展開されてファイルを選択したらエディタ上に表示される。ダブル クリックした場合はタブとして開かれる。Web 開発ぐらいならこの程度の機能で十分だと思う。コンパイルが必要な場合でも Makefile などを書いてビルドシステム機能から呼び出せるので Sublime Text だけで開発することも可能だろう。

IDE と異なりプロジェクト管理ファイルは不要なので既存環境への影響もない。そのため Git のローカル リポジトリとかでも気軽に登録できる。登録されたフォルダは変更が監視されており Finder や Explorer でファイルやフォルダを増減すると自動反映してくれる。これも地味に便利。

充実した構文強調

標準でも十分といえるぐらい構文強調が充実している。代表的なプログラミング言語はあらたか網羅されている感じ。

言語によっては詳細な分類もある。例えば Java だと Java の他に Java Properties、JSP、JavaDoc などが用意されていた。構文強調はパッケージとして追加したりユーザーが定義することもできる。不足を感じても Package Control をあたれば大抵は見つかるだろう。

ビルドシステム

ファイルの保存や + B キーを押した時などに特別な処理をおこなうための機能。例えばソース コードのコンパイルなど。ビルド システムの処理はユーザーが自由に定義できる。パッケージによっては Markedown のプレビュー用 HTML を生成したり JavaScript を Minify して min.js ファイルを出力するといった機能を追加することも可能。

コマンド パレット

コマンド パレットは Sublime Text の機能をキーボードから呼び出すためのツール。Mac は + Shift + P、Windows なら Ctrl + Shift + P で呼び出せる。消すときは Esc キーを押すかコマンド パレット以外の場所をクリックすればよい。

コマンド パレット

検索窓は部分一致とインクリメンタルサーチに対応しており適当に入力しても対象を見つけやすい。

コマンドの実行履歴を記憶しているらしく検索による絞り込みと同時に使用頻度の高いものを優先的に選択してくれる。例えば Package Control を多用しているなら packinst と入力した時点で絞り込みと共に選択されたりする。

パッケージを追加してゆくとコマンドも増えてゆく。それらは大抵 Package Name: Function という名前になっているので、どんな機能があるのか確かめたいときはとりあえずパッケージ名を入力してみるとよい。

豊富なパッケージ

Sublime Text は標準でも十分に多機能だがパッケージと呼ばれる拡張機能により、さらなる機能追加をおこなえる。

Package Control を利用すればリポジトリに存在するパッケージやテーマの列挙と追加・削除をアプリ上で管理可能。というか Package Control なしで利用するユーザーはいないだろうから標準でバンドルしてほしい。

パッケージは構文強調の追加や構文チェックのようにエディタ的な定番から Sublime Text の UI を増強したり、弱点 (文字コードや改行の扱いとか) を補うものまで実に様々。非常に豊富なため探しているだけで楽しい。

…と、このあたりで私の利用しているパッケージを紹介するつもりだったけど記事が長くなりすぎるので後日あらためて書く。