2011年3月2日水曜日

ホワイトスペースについて

Kohana3.1.x検証中に、APPPATH/config/以下のコンフィグファイルが読み込めない(syntax errorが発生)現象に見舞われました。ガイド(Getting Started)のソースで検証していたのでコードに問題がないと思い込んでいたのが愚かしいですが、原因はブラウザからのコピペ時に半角でないスペースが含まれていた事でありました。

Kohanaというかphpというか、もっと一般的なミスでありました。
全角スペースでなかったので見落としてしまっていたのです。
ああ恥ずかしい。

具体的には、文字参照でいうところの' 'や' 'が空白行に入っており、削除すると解決しました。

検証

wikidepiaのスペース#「コンピュータにおけるスペース」項にある一覧表の文字参照をデコードし、テスト用のソースにペーストして走らせてエラーがでるか確認しました。



記号 Unicode JIS X 0213 文字参照 名称 検証
U+0020  
 
(半角スペース) 正常
  U+00A0 1-9-2  
 
 
ノーブレークスペース
(改行を行わないスペース)
エラー
U+2002 -  
 
 
enスペース
(en幅のスペース)
エラー
U+2003 -  
 
 
emスペース
(em幅のスペース)
エラー
U+2004 -  
 
(emの1/3幅のスペース) エラー
U+2005 -  
 
(emの1/4幅のスペース) エラー
U+2009 -  
 
 
(emの1/5幅のスペース) エラー
U+2006 -  
 
(emの1/6幅のスペース) エラー
U+2007 -  
 
フィギュアスペース
(等幅フォントの半分の幅)
エラー
U+2008 -  
 
約物スペース
約物と同幅で横幅が狭い)
エラー
U+200A -  
 
ヘアスペース
(非常に小さいスペース)
エラー
​​ U+200B - ​
​
幅なしスペース(幅が0) 検証不可
  U+3000 -  
 
表意文字スペース
和字間隔、俗に全角スペース)
エラー
 U+FEFF - 

幅なし改行なしスペース 検証不可
U+0009 	
	
タブキー 正常

※検証不可は幅がなく選択ができないのでコピーすることができませんでした。