トップ 最新

ワタタツの日記!

2005 年 11 月 9 日 (水)

ちょっと前に作ったWX3[10]0(K|SA|J) を心待ちにしているすべての UNIXer へ 〜 特製プロンプト を発売日に変更せよ

WILLCOM 新端末こと WX3[10]0(K|SA|J) (WX310K, WX310SA, WX310J, WX300K) を心待ちにされている UNIX 系 OS ユーザへの特製プロンプトですが、WX310K は 11 月 25 日などと、発売日が発表されましたので、例えば WX310K を心待ちにされている方は以下のようにしてください。

bash 用

#------ for WX3[10]0 Series --------
RELEASEDATE="25 Nov"
MODELNAME="WX310K"
PROMPT_COMMAND=precmd
precmd() {
UNTILWX310=`expr \`date --date "$RELEASEDATE" +%s\` - \`date +%s\``
UNTILWX310=`expr $UNTILWX310 / 60 / 60 / 24 + 1`
PS1="\[\e[0;37m\]\[\e[0;36m\]\[\e[7m\]    \[\e[0m\]    \[\e[0;36m\]\[\e[7m\]    \[\e[0m\]    \[\e[0;36m\]\[\e[7m\]    \[\e[0m\] コミュニケーションの「新しい贅沢」を\n\
\[\e[0;36m\]\[\e[7m\]        \[\e[0m\]    \[\e[0;36m\]\[\e[7m\]        \[\e[0m\] \
   待望の WILLCOM 新端末 $MODELNAME 発売まで、あと $UNTILWX310 日。\n\
[\[\e[4m\]\u@\h:\w(\!)\[\e[0;36m\]\[\e[0m\]] " # ←この最後の行は今までのプロンプトにでもしよっと
} 

csh 系ユーザ用

# for WX3[10]0 Series
set RELEASEDATE="25 Nov"
set MODELNAME="WX310K"
alias precmd '@ rd=`date --date "$RELEASEDATE" +%s ` ; @ nd=`date +%s` ; @ UNTILWX310=`expr $rd - $nd `; @ UNTILWX310=`expr $UNTILWX310 / 60 / 60 / 24` ; set prompt="%{\e[0;37m%}%{\e[0;36m%}%{\e[7m%}    %{\e[0m%}    %{\e[0;36m%}%{\e[7m%}    %{\e[0m%}    %{\e[0;36m%}%{\e[7m%}    %{\e[0m%} コミュニケーションの「新しい贅沢」を\n%{\e[0;36m%}%{\e[7m%}        %{\e[0m%}    %{\e[0;36m%}%{\e[7m%}        %{\e[0m%}    待望の WILLCOM 新端末 $MODELNAME 発売まで、あと $UNTILWX310 日。\n[%{\e[4m%}%n@%m:%~(%!)%{\e[0;36m%}%{\e[0m%}] " '

依然として date に --date オプションがないと動かないので `date --date "$RELEASEDATE" +%s ` のところは、11 月 25 日なら 1132844400 に置き換えてください。そうすれば date のバージョンは関係なく動くはずです。 GNU coreutils を最新にしてもいい方はそうして使ってください。

SA や J やしゃーぽんな方は RELEASEDATE や MODELNAME を好きな機種用に変えて使ってください。

このコードはもちろん好き放題改編再配布して使いまくってください。 コメント、リンク、トラックバックお待ちしてます(^^;

Tags: PHS UNIX Linux sh