シェルスクリプト条件文の罠

zshの設定を見直し中にハマったので、メモ。

if [ $TERM = xterm ]; then
  ^ ^             ^

^部分にスペース必修。

[はコマンドなんだな・・・。

% where [
[: shell built-in command
/usr/bin/[

zshはビルトインだけど、コマンドとコマンドの間にはスペースがいるらしい。

それを踏まえて・・・プロンプトの設定をする。

if [ $TERM = xterm ] ; then
	PROMPT="%% "
	RPROMPT="[%~]"
else
	PROMPT="%~ %% "
fi
PROMPT2="%_> "

gvimでもディレクトリが見られるようになった!!

が、プロンプトでの改行方法がイマイチ不明。gvimで上手く改行出来ない・・・。プロンプト設定は奥が深そうだ。