[О блоге]
[наверх]
[пред]
[2022-11-11 16:25:47+03:00]
[dd04a8307d8525ff08b3fcb1507dfd2d62cb77d6]
Темы: [mail][zsh]
Дополнение имён почтовых ящиков
http://www.git.stargrave.org/?p=dotfiles.git;a=commitdiff;h=752967292719f7f312d8779d23c2659d3dbb25cf
http://www.git.stargrave.org/?p=dotfiles.git;a=commitdiff;h=9617ad122904870e08106ace6db96c46a2ffca95
Частенько я открываю MUA с чётко указанным почтовым ящиком. mutt -f =MBOX.
Проблема с "MBOX" в том, что если это например будет "go", то "=go" в zsh
раскроется в путь до go. Из-за этого я переименовывал почтовые ящики в
какой-нибудь "godev". Но набирать эти длинные имена геморройно. Можно
автоматически экранировать путь до ящика
(9c8126a531e8f20aa10c5baea299529807ed0a4e), история не будет дополняться
удобно при поиске из-за эти кавычек. Для простоты можно просто сделать
алиас типа mbox () { mutt -f "=$1" }. И теперь мне нужно дополнение
имени аргумента для mbox команды. Благо, в zsh это тривиально:
local mboxes=()
for m ($MAILDIR/*(/on)) mboxes=($mboxes $m:t)
_mycomp_mbox () {
[[ ${words[1]} == mbox ]] && _values mboxes $mboxes && return
}
и добавить _mycomp_mbox в качестве completer-а.
[оставить комментарий]