[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[FDclone-users:00032] Re: .fd2rc.$TERM



At Sat, 24 Aug 2002 13:05:52 +0900,
hma@syd.odn.ne.jp wrote:
> こんにちは。濱崎と申します。
> 
> Ver 2 になってから、設定ファイル
> .fd2rc.$TERM (.fd2rc.linux, .fd2rc.kterm など)
> が無効になっているようですが、
> 差し支えなければ仕様を復活していただけないでしょうか。

 自分で ~/.fd2rc に

    if [ -f ~/.fd2rc.$TERM ]; then
        . ~/.fd2rc.$TERM
    fi

と書いて解決する話でしょうか?

 また、ファイルを分けなくとも if や case で条件分岐できますね。
Ver. 2 では文法が Bourne Shell 互換になったので、普通のシェル
スクリプトを書く要領でいけます。(但し、本格的に長い関数を書いたり
するならコンパイルオプションの調整が必要)


 なお、私はエイリアスの定義ファイルを (a)sh, bash, zsh, (t)csh,
FDclone で共有しています。むろん B-shell系では

    . ~/.shaliases

とし、 C-shell 系では、強引ながら:

    if ( -f $HOME/.shaliases ) then
        sh -c ". $HOME/.shaliases; echo \'; alias" | sh -c '\
            read q; \
            IFS==; \
            while read alias_name cmd; do \
                case $cmd in \
                $q*) echo $alias_name $cmd;; \
                *) echo $alias_name $q$cmd$q;; \
                esac; \
            done' | source /dev/stdin
    endif

と変換して取り込んでいます。別名の範疇を超えたようなエイリアスは
文法の違いから動きませんが。csh は ' をまともにエスケープするのが
困難なので、むりやりパイプ経由で渡しています。環境変数定義も同様。
(alias -> printenv して setenv)

-- 
                     /
                    /__  __            Akinori.org / MUSHA.org
                   / )  )  ) )  /     FreeBSD.org / Ruby-lang.org
Akinori MUSHA aka / (_ /  ( (__(  @ iDaemons.org / and.or.jp

"When I leave I don't know what I'm hoping to find
              When I leave I don't know what I'm leaving behind.."