[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:31922] Re: set-language-env と vi
今屋です。三宅さん有難うございます。先のメール
と一緒に返事をかかせて頂きます。成功しました。
On Thu, 28 Feb 2002 13:12:10 +0900
miyake@xxxxxxxxxxxxxxxxxxxxxx wrote:
> alias vi ':\
> if ( -x /usr/bin/nvi-m17n-canna ) then \
> (setenv NEXINIT "source ~/.nexrc-m17n-canna" ;\\
> exec /usr/bin/nvi-m17n-canna \!*) \
> else if ( -x /usr/bin/nvi-m17n ) then \
> (setenv NEXINIT "source ~/.nexrc-m17n" ; exec /usr/bin/nvi-m17n \!*) \
> else \
> \vi \!* \
> endif\
> '
>丸括弧の中で使用されている行連結指定の \を\\にしただけですが。
>alias 指定の時に評価されるのと、
>alias 実行時に必要なためであろうか?
cshのスクリプトは良く分からないのですが、丸括弧の中だから
2重に必要だったという可能性は僕も大だと思います。でも言われて
見なけりゃわかんなかったっす。括弧にそんなルールが有るとは。
全然関係ない話かもしれないけど、sedやgrepの正規表現でも、
'などを扱う場合は難しい思いをしたことを思い出しました。
> `cat ~/.nextrc-m17n-canna` が "source ~/.nextrc-m17n-canna" になっているのが
> ポイントですか?
この場合、source 〜 を実行した結果をsetenvの引数として渡すのでは
なく、source 〜 を文字列として渡すのではないでしょうか?(っていうか
僕もちょんぼしてた。)NEXINITってman page を検索してもでてこないの
で何につかうモノなのか分かりませんが。