sh-mode の case 文のインデント
ひろせといいます
Linux で自分でソースからコンパイルした Emacs 21.3 を X で使っています。
付属の sh-mode (sh-script.el) で X と非 X とで case 文のインデントが違
うのですが、そろえる方法はないのでしょうかという質問です。
例えば
case "$1" in
foo)
bar
baz
;;
esac
をインデントした場合、
emacs で X な emacs だと
case "$1" in
<TAB>foo)
<TAB><TAB>bar
<TAB><TAB>baz
<TAB><TAB>;;
esac
となるのですが、
emacs -nw で kterm の中の emacs だと
case "$1" in
<TAB>foo)
<TAB>bar
<TAB>baz
<TAB>;;
esac
となってしまいます。
# 個人的には前者にそろえたい。
-nw ありでもなしでも sh-indent-for-case-alt の値は ++ なのですが、bar
のところで sh-show-indent すると X なときは「sh-indent-for-case-alt is
++」なのですが、非 X だと「line has default indentation」とミニバッファ
に表示されます。
余計なものを読まないように emacs -q でやってみても同様の結果でした。
また、6/20 ぐらいに CVS からもってきた 21.3.50 でも同様でした。
# どちらも sh-script.el のバージョンは 2.0f
//
X と非 X とでインデントが違うのは気持悪いのでそろえたいのですが、何か
アドバイスないでしょうか?
もしくは他のおすすめの shell script 支援モードないでしょうか?
# ちょっと前までは ksh-mode.el というのを使っていました。
ではでは
--
ひろせ
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735