genixoid ([info]genixoid) wrote,
@ 2005-11-15 12:14:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Current music:Неприкасаемые / Брел брел брел

исповедь ренегата (долой zsh)
Знаю, нелепые историю случаются с каждым.
Вот и со мной такая произошла ;)
Тем не менее, это повлекло за собой смену zsh на bash.
Тем кто не знает что это такое, лучше не

Про то, что zsh умный, хороший, белый и пушистый извесно было давно. Но вот, блин, докатилась эта мода и до нашей хаты $) Поставил, попробовал, не понравилось. Со второй попытки вроде стало даже лучше $)
Всегда бесило несколько моментов:
- излишняя "интелектуальность" при неаккуратной игре на кнопке . Так, например, bash в этом случае предлагал всегда первое ТОЧНОЕ совпадение и/или список подходящих элементов, из которых можно было выбирать продолжая набирать условие поиска и играя время от времени на . Конечно, в этот момент bash тоже играл, но только уже на нервах своим извечным Пи-и-и-и-и-и в PC-спикер, но это было хотя бы отключаемым. ZSH же, делает просто -- подставляет ПОЛНОСТЬЮ первый элемент, который посчитал подходящим под условие, и все остальные выводит в список и предлагает перемещаться по ним с помощью кнопок вверх/вниз.
Так например, нажатие auto в bash приведет к вопросу, а "дальше куда?" (при это ввод останется на auto, так как ни одного полного соответсвия не найдено) в то время, как в zsh сразу же выберет audiofile-config, и если тебе нужен autoscan, то листай еще пунктов 20 меню. Не удобно, особенно после bash. Говорят, есть какие-то интуитивные кнопки, но учить их не никакого желания.
- если добавить программу в пределах PATH, то zsh увидит ее только после следующего запуска
- автодополнение zsh пожалуй даже излишне. Особенно когда, пытаешься запустить java T в каталоге, который содержит в себе и вложенных каталогах море скомпилированных java-файлов. про apt-get install молчу.

Это все предистория.

А сегодня, мне понадобилось удалить файл и его резервную копию, созданную по умолчанию (~). Делаю стандартное для bash движение пальцев /bin/rm путь_к_файлу/первые_буквы*

Представляете что произошло в zsh?




(Post a new comment)


[info]kadettt
2005-11-15 09:18 am UTC (link)
(эстеццки ковыряясь в носе) это вот ты щас про про чо говорил?

(Reply to this) (Thread)


[info]genixoid
2005-11-15 09:29 am UTC (link)
про то, что он снес мне все в домашнем каталоге ;)

(Reply to this) (Parent)(Thread)

*sigh*
[info]gvy
2008-07-11 10:49 am UTC (link)
Ну так с rm(1) вообще обращаться на автомате вредно. _Особенно_ с шаблонами.

Подрастёшь, привыкнешь в zsh _раскрывать_ эти шаблоны табом, _смотреть_ глазами, а потом уже наваливаться всей грудью на rm <энтер> ;)

Первый элемент подставляется со _второго_ нажатия.

PS: а вот что достаёт -- так это то, что у нас из коробки не стоит setopt nonomatch :-/ Из-за этого банальный grep ^[0-9]* *.txt обламывается.

PPS: бесплатный хинт дня, чтоб подсластить тебе горечь неаккуратной игры на кнопках в *nix: Alt-. в zsh/bash делает историю по последнему аргументу, очень удобно для
mkdir test
cd
[Error: Irreparable invalid markup ('<alt-.>') in entry. Owner must fix manually. Raw contents below.]

Ну так с rm(1) вообще обращаться на автомате вредно. _Особенно_ с шаблонами.

Подрастёшь, привыкнешь в zsh _раскрывать_ эти шаблоны табом, _смотреть_ глазами, а потом уже наваливаться всей грудью на rm <энтер> ;)

Первый элемент подставляется со _второго_ нажатия.

PS: а вот что достаёт -- так это то, что у нас из коробки не стоит setopt nonomatch :-/ Из-за этого банальный grep ^[0-9]* *.txt обламывается.

PPS: бесплатный хинт дня, чтоб подсластить тебе горечь неаккуратной игры на кнопках в *nix: Alt-. в zsh/bash делает историю по последнему аргументу, очень удобно для
mkdir test
cd <Alt-.>

(Reply to this) (Parent)(Thread)

Re: *sigh*
[info]genixoid
2008-07-11 10:51 am UTC (link)
спасибо, миш!

(Reply to this) (Parent)

ну и когда я научусь даты смотреть...
[info]gvy
2008-07-11 10:53 am UTC (link)
...впрочем, сказал всё равно то же самое, что и три года тому. %)

(Reply to this) (Parent)(Thread)

так ли это важно?
[info]genixoid
2008-07-11 10:59 am UTC (link)
SUBJ

(Reply to this) (Parent)


[info]scor2k
2005-11-15 10:39 am UTC (link)
Незнаю, [info]genixoid, чего-то ты с настройками намудрил )) У меня на auto показывается подсказка на 8 строчек:

scor@jabber ~ $ auto
autoconf autoheader_2.5 automake-default autoscan-2.5
autoconf-2.5 autoload automake_wrapper autoscan-default
autoconf-default autom4te autopoint autoscan_2.5
autoconf_2.5 autom4te-2.5 autoreconf autoupdate
autoconf_wrapper autom4te-default autoreconf-2.5 autoupdate-2.5
autoheader autom4te_2.5 autoreconf-default autoupdate-default
autoheader-2.5 automake autoreconf_2.5 autoupdate_2.5
autoheader-default automake-1.8 autoscan

Конфиг кинуть?

(Reply to this) (Thread)


[info]genixoid
2005-11-15 10:56 am UTC (link)
кидай конечно

(Reply to this) (Parent)(Thread)


[info]scor2k
2005-11-15 11:13 am UTC (link)
setopt NO_BEEP
setopt AUTO_CD
setopt CORRECT_ALL
setopt histexpiredupsfirst histfindnodups
setopt histignoredups histnostore histverify histignorespace
bindkey "^[[7~" beginning-of-line
bindkey "^[[8~" end-of-line
HISTSIZE=1000
SAVEHIST=1000
HISTFILE=~/.history
setopt HIST_IGNORE_ALL_DUPS

Хотя советую убрать CORRECT_ALL - он иногда не те исправления делает ;) Я его дома убрал уже.

(Reply to this) (Parent)(Thread)


[info]scor2k
2005-11-15 11:15 am UTC (link)
А на работе вообще только:
setopt NO_BEEP
стоит... и все нормально работает...

(Reply to this) (Parent)


[info]genixoid
2005-11-15 11:19 am UTC (link)
хм, прикольно
так лучше, уже можно жить

(Reply to this) (Parent)

(Reply from suspended user)

[info]mirrorbox
2005-11-15 11:07 am UTC (link)
Что так?

(Reply to this) (Parent)(Thread)

(Reply from suspended user)

[info]scor2k
2005-11-15 11:14 am UTC (link)
Есть такое :) Но все же дело привычки :)

(Reply to this) (Parent)


[info]gvy
2005-11-15 01:49 pm UTC (link)
ну не гробить же из-за этого психику?

PS: да, а ещё при rm ша*лон завёл привычку делать таб и просматривать _точный_ результат глазами перед enter. особенно если есть .*

(Reply to this) (Parent)(Thread)

(Reply from suspended user)

[info]gvy
2005-11-16 07:15 am UTC (link)
Мне сильно проще, наверное -- выбор, чем заниматься, был вообще всегда, да и за деньги быстро появился. Соответственно убиваться с чпуксами или бсдями -- отказать. :)

Касательно настройки -- дозревать до dotfiles cvs/... лениво, пока они всё те же годами и, в общем, существенные строчки попадают редко; поэтому таковая сводится к scp.

(Reply to this) (Parent)(Thread)

(Reply from suspended user)

[info]gvy
2005-11-16 08:13 am UTC (link)
> я уж не знаю конкретно вашу ситуацию
Довольно простая -- избегаю здоровых контор с нездоровыми проблемами. В частности, в ОПСОСы звали (оба местных крупных), вот читал сей опус [info]zmeuka и радовался, что у него хорошо получилось изложить за меня, а мне излагать не пришлось вовсе.

А так -- ну хорошо, если SMSC стоит, а не лежит или где-то в промежутке. Значится, не Comverse... но и то осмысленно отпинать вендора, мол, хочу линукс и zsh. Может, удивится и вежливо пошлёт со странными желаниями иметь интерактивные сессии где попало, а может, и впрямь задумается лишний раз насчёт смены динозавров.

С Tru64/Alpha им же ж тоже приходится сваливать...

Вообще же есть подозрение, что операторам (даже xUSSR) может быть сильно дешевле собраться и сляпать открытый проект того же SMSC, чем платить сотни тыщ за единичные поделки на рынке, который давно напоминает пузырь. Вон kannel взять и допинать до works for _us_. Оно ещё года два тому для нас уже чего-то делало, если склероз не изменяет. А, не, народ на операторе из него кусочки подсматривал.

Ы?

(Reply to this) (Parent)(Thread)


[info]gvy
2005-11-16 08:14 am UTC (link)
кажись, ударение в "стоит" не так прочитал?

(Reply to this) (Parent)(Thread)

(Reply from suspended user)

(Reply from suspended user)

[info]gvy
2005-11-16 08:57 am UTC (link)
> как ОПСОС мы еще не родились
А, тогда совсем неинтересно -- если ещё не родились, но (вполне нормально) традиционное решение уже принято и местами проплачено -- пока эти деньги не отобьются, да и вообще контора на ноги не встанет, куда-то рыпаться совсем не с ноги... это или стартапу прилично, который решил всех конкурентов обойти на более другом подходе, или уже совсем родившейся и выросшей лавке.

Про зоопарк как раз понятно, btw.

Интересно, через пару лет что будет в нокиевских SMSC...

(Reply to this) (Parent)(Thread)

(Reply from suspended user)

[info]genixoid
2005-11-16 08:56 am UTC (link)
> Вон kannel взять и допинать до works for _us_

все же лучше work for _ru/ua_ $)))))

(Reply to this) (Parent)(Thread)

(Reply from suspended user)

[info]theraphim
2005-11-25 10:35 am UTC (link)
ftp://anna.saratov.mts.ru/kannel/kannel-1.4.0-0.D4.1.src.rpm

(Reply to this) (Parent)


[info]theraphim
2005-11-25 10:28 am UTC (link)
Каннел уже давно works for us.

Но вопросы дешевизны здесь поднимать не нужно.
Чем дешевле продукт тем откат меньше.
И kannel works for us исключительно потому, что купленный за ОХУЕННЫЕ деньги коммерческий вап-гейт нихуя не работает.

(Reply to this) (Parent)


[info]php_coder
2005-11-15 04:17 pm UTC (link)
.oO( ууу... как категорично и безаппеляционно...:( )

(Reply to this) (Parent)(Thread)

(Reply from suspended user)

[info]voins
2005-11-15 10:56 am UTC (link)
Для того, чтобы не перезапускать zsh при добавлении новых программ в PATH достаточно сделать rehash. Кэширование содерджимого $PATH отключаемо, но автодополнение будет работать немного медленнее (как в bash). Да и почти всё, что ты перечислил либо отключается либо настраивается.

(Reply to this) (Thread)


[info]genixoid
2005-11-15 11:15 am UTC (link)
Леш, не спорю ;)
Просто аппологеты zsh мне так и не ответили когда их спрашивал (теперь знаю, что не тех спрашивал ;)) а самому читать доки лениво.
На эксперименты с zsh меня сподвигла возросшая популярность zsh в community@/sisyphus@

Да и история-то, была не про то "какой плохой zsh" (кто так подумал? отставить) а про "нелепые историю случаются с каждым" ;)))

(Reply to this) (Parent)(Thread)


[info]voins
2005-11-15 05:10 pm UTC (link)
Меня сложно спрашивать. Я про него почти ничего не помню уже. Давно когда-то один раз настроил и забыл. :) (Кстати, надо бы перечитать ман, вдруг уже чего новое-вкусное в нём появилось). А сам я иногда поглядываю в сторону bash. Мне сейчас иногда бывает важна корректная работа в ru_RU.UTF-8. Если zsh в этом плане починили, то, наверное, не буду слезать, лень. :)

(Reply to this) (Parent)

ну ты даёшь
[info]gvy
2005-11-15 01:46 pm UTC (link)
завёл себе несколько лет как хорошую привычку -- не лупить enter без секундной примерно паузы на посмотреть и подумать (также помогало несколько раз от gpg passphrase в левые вылезшие окна и подобных случаях -- пока бывали такие окна).

а вообще zsh у нас вроде на rm ... * ... отдельное предупреждение вываливал -- мол, таки [y/n]?

PS: выдержки:

setopt histexpiredupsfirst histfindnodups histignoredups histnostore histverify
setopt histignorespace histexpiredupsfirst
setopt autocd bgnice correct nohup nonomatch
setopt listpacked listtypes
# ...
alias mv='nocorrect mv' # no spelling correction on mv
alias cp='nocorrect cp' # no spelling correction on cp
alias rm='nocorrect rm' # no spelling correction on rm
alias mkdir='nocorrect mkdir' # no spelling correction on mkdir
# ...
alias l='/bin/ls -l --color=tty'
alias ls='/bin/ls --color=tty'
# ...
bindkey "^[[7~" beginning-of-line
bindkey "^[[8~" end-of-line
# ...
unsetopt PROMPT_CR
# ...
if [ -n "$DISPLAY" ]; then
preexec () {print -Pn "\e]0;$1\a"}
fi

(разумеется, потом zcompile ~/.zshrc; . ~/.zshrc)

Ну и http://www.freesource.info/wiki/ALTLinux/DotFiles/Shells/Zsh

(Reply to this) (Thread)

Re: ну ты даёшь
[info]genixoid
2005-11-15 01:57 pm UTC (link)
> а вообще zsh у нас вроде на rm ... * ... отдельное предупреждение вываливал -- мол, таки [y/n]?

я не случайно написал /bin/rm -- тем самым хотел обойти назойливость хитрого алиаса ;))))

(Reply to this) (Parent)(Thread)

Re: ну ты даёшь
[info]gvy
2005-11-15 02:15 pm UTC (link)
ну звыняй :]

(Reply to this) (Parent)


[info]php_coder
2005-11-15 04:16 pm UTC (link)
>- автодополнение zsh пожалуй даже излишне.

Спорное утверждение.

>Особенно когда, пытаешься запустить java T в каталоге, который содержит в себе и вложенных каталогах море скомпилированных java-файлов.

Это настраивается. См. http://www-128.ibm.com/developerworks/library/l-z.html (там как раз есть пример про java T =))

>про apt-get install молчу.

А что там? По-мойму как раз автодополнение имени пакетов это одна из самых удобных и используемых мной фишек в zsh.

(Reply to this)


Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…