2006-06-29 (Thursday) [長年日記]
■ カメラレディ原稿執筆中
うはー.キツイなぁ...
今,セクション二つ分書いたところです.
セクションは全部で五つか六つくらいになる予定.
かはー.来週のゼミ(しかも二回)の準備もしないといかんね...萎え萎え.
■ VIERAは受験生の敵
VIERAのCMで小雪の古語*1の使い方が間違っている件について.
小雪が「いとうつくし」と言っているが,古語の「うつくし」は現代語では「かわいい」という意味だよ*2!!
つまりだね.これではいくら頑張っても「プラズマかわいいよプラズマ」という意味にしかならない.
クリオネくらいだったらかわいいと言ってもいいが,プラズマは別にかわいくないだろう.さすがに.
■ go to directory alias
以前にどこかから拾った ~/.zsh/aliases に gd alias が定義されていた. gd gdするためのaliasではなくて,go to directoryするaliasのようだ.
alias gd='dirs -v;echo -n "select number: ";read newdir;cd -${newdir}'
そもそもこいつが動かない.というのも,最後のcd -はcd +だろう.
それを直すだけでは飽き足らず,ちょっと弄繰り回してしまった.
alias gd='dirs -v | sort -nr | tail -n 20; echo -n "select directory [0]: "; read dirnum; dirnum=${dirnum:=0}; cd +"$dirnum"'
修正点と簡単な解説
- sort -nr
- 直近のディレクトリが下にくるようにソート
- tail -n 20
- 20以上前のディレクトリは画面に表示しないことにする.画面が流れてもいいならいらないかも
- select directory [0]
- ユーザは数字を選ぶんじゃなくてディレクトリを選ぶ感覚でいるはず.規定の値が[0]ということを示せばわかるだろう
- read dirnum
- 変数にはディレクトリ番号が入るのでdirnumという変数名にした
- dirnum=${dirnum:=0}
- 空の入力だったときは現在のディレクトリに移動
さらに setopt autopushd をすると cd するごとに勝手にディレクトリスタックに入れてくれるので便利かもしれない. そういや,以前はautopushdを知らなかったので,cd関数を作って内部で自動的にpushdしてましたよ. 自分でエラーメッセージを出すのが面倒だったので, ディレクトリがないときなどはエラーが起こるとわかっていつつも, 元のcdを呼ぶ(\cd)といういやなラップ関数でした.
[ツッコミを入れる]
[]
本日のPingbacks(全0件)








