以下の記事が目からウロコだったので触発されました。
zsh といえばフラグを使った黒魔術ですよね。
- 変数展開フラグ (Parameter Expansion Flags)
- 編集子 (Modifiers)
- グロブフラグ (Globbing Flags)
- グロブ修飾子 (Glob Qualifiers)
- などなど
というわけでフラグ類を調べるバージョンを考えてみました。
.zshrc
zfman() {
local w='^'
w=${(r:8:)w}
w="$w${(r:7:)1}|$w$1(\[.*\].*)|$w$1:.*:|$w$1/.*/.*"
PAGER="less -g -s '+/"$w"'" man zshall
echo "Search word: $w"
}
$ zfman h
$ zfman j
なお、発展途上につき全てに対応できていないかもしれません。
自分がよく使うものはこれでだいたい検索できるなぁぐらいしか確認していないので、他に検索できないパターンがあれば教えて下さい。
まとめ
参考元と合わせて以下のようにすると、使いやすいと思う。
.zshrc
## man zshall
# zman [search word]
zman() {
if [[ -n $1 ]]; then
PAGER="less -g -s '+/"$1"'" man zshall
echo "Search word: $1"
else
man zshall
fi
}
# zsh 用語検索
# http://qiita.com/mollifier/items/14bbea7503910300b3ba
zwman() {
zman "^ $1"
}
# zsh フラグ検索
zfman() {
local w='^'
w=${(r:8:)w}
w="$w${(r:7:)1}|$w$1(\[.*\].*)|$w$1:.*:|$w$1/.*/.*"
zman "$w"
}