アシアルブログ

アシアルの中の人が技術と想いのたけをつづるブログです

TextMateで全角スペースと半角スペースの区別ができるようにする

こんにちは。先日、我慢しきれずに、MacBookを購入してしまった橋本です。
開発環境がMacになったということで、最近はTextMateを使って開発をしているのですが、
TextMateを使ってコーディングをしていると、ぱっと見問題なさそうなコードなのにバグが出て、調べてみると全角スペースが隠れていたということがよくあります。
TextMateは元々マルチバイト文字に対応していないため、日本語を無理やりまともな形で表示させると、全角スペースと半角スペースが等幅で表示されてしまい、一見半角なのか全角なのか判断がつきません。
そこで、今回はTextMateで全角スペースと半角スペースを見分けるために、全角スペースをハイライト表示するという設定を紹介します。

設定は以下の手順で行います。
(今回はHTMLファイルで表示させるための設定を例にすすめます。)
1.TextMateのメニューから、「Bundles」の中の「Bundle Editor」の中の「Edit Languages」を選択。

2.左のメニューでHTMLを選択。


3.以下の場所に次のコードを挿入


whitespace-multi = {
	patterns = (
		{	name = 'invalid.whitespace-multi';
			match = '( )';
		},
	);
};




4.以下の場所に次のコードを挿入


{ include = '#whitespace-multi'; },



↓ここに挿入することで、PHPタグ内でもハイライト表示がされるようになります。



5.TextMateのメニューから「Preferences」の「Fonts & Colors」を選択。
6.「+」アイコンをクリックしてElementを追加し、以下のとおり設定する。
Element名: whitespace-multi(ここは他の名前でも大丈夫です)
Scope Selecter: invalid.whitespace-multi(ここはこのとおり入力してください)
背景色(BG): 目立つ色(ここも自由です)



設定は以上です。
上記の設定を行うと、全角スペースが以下のように表示されます。


これで、全角スペースが入っている場合にはハイライト表示されるため、全角スペースの消し忘れに悩まされることもなくなります。

TextMate愛好家の皆様、TextMate2.0が出るまでは上記の方法でなんとか乗り切りましょう!