2013-05-08

Sublime Text 2 でステータスバーに改行コードを表示する

Sublime Text 2 で現在の改行コードが何かを確認するには、メニューバーから View -> Line Endings と辿っていかなければならず、改行コードが異なるファイルを日々取り扱っている場合には不便です。
LineEndings というパッケージをインストールすると、TeraPad や CotEditor のように、常にステータスバーに改行コードを表示できるようになります。

SublimeText/LineEndings · GitHub

Package Control から LineEndings を検索すればインストールできます。

LineEndings の検索

インストールが完了すると、左下に改行コードが表示されるようになります。
また、こちらに表示されるのは、Windows か Unix か CR という表示です。

LineEndings のインストール前後での表示

CotEditor で表示される改行コードとの対応表は以下。

Sublime Text 2CotEditor
WindowsCR/LF
UnixLF
CRCR

LineEndings のユーザー設定項目

メニューバーから Preferences -> Package Settings -> LineEndings -> Settings – User と辿ると開くファイルに以下の項目が設定可能です。

show_line_endings_on_status_bar

ステータスバーに改行コードを表示するかどうか
デフォルト: true
false にすることは可能ですが、false の場合パッケージ入れた意味があまりなくなります。
下記の2つの設定だけでいい場合には false にします。

alert_when_line_ending_is

リストに入れた改行コードの場合、アラートを表示する
デフォルト: 無し

// この場合どの改行コードでもアラートが出る
"alert_when_line_ending_is":["Windows", "Unix", "CR"]

// Windows ( CR/LF ) でアラートを出したい場合
"alert_when_line_ending_is":["Windows"]

auto_convert_line_endings_to

ファイルを読み込んだ時点で設定した改行コードに自動変換する。
自動変換するだけで保存はしない。
デフォルト: 無し

// ファイルが CR でも LF でも CR/LF に変換して読み込み
"auto_convert_line_endings_to" : "Windows"

GitHub のページには、このパッケージでできることとして以下の項目が挙げられています。

誤訳があればコメント欄などで教えていただければと思います。
また、Todo に「Show mixed line endings.」とあるので、今後のアップデートで、各行末にアイコンのようなもので改行コードが見られるようになるのかもしれません。

以下は補足ですが、デフォルトの改行コードは、Preferences -> Settings – Default で以下のように設定されています。

// Determines what character(s) are used to terminate each line in new files.
// Valid values are 'system' (whatever the OS uses), 'windows' (CRLF) and
// 'unix' (LF only).
"default_line_ending": "system",

こちらに書かれている設定を元に、Preferences -> Settings – User で設定できます( command + , で開きます )。
system の部分を windows か unix に変更すれば、それぞれ CRLF か LF がデフォルトになります。
なお、system のままでいい場合には default_line_ending 自体記述する必要はありません。