Re: pmount completion в jessie
On Mon, 26 Jan 2015, Eugene Berdnikov wrote:
EB>> AREAS="yunka kultuk muya udokan"
EB>> for i in $AREAS
EB>> do
EB>> echo area $i processed...
EB>> done
EB>>
EB>> Отгадайте с трех раз, что она покажет в zsh?
EB>
EB> В sh-моде все имеющиеся под моей рукой борновские шеллы (bash,
EB> dash, zsh) обрабатывают эту конструкцию совершенно одинаково.
EB> Более того, я уверен, что невозможно найти ни одного
EB> современного шелла, который бы в sh-моде выполнил этот код
EB> как-то иначе.
Я охотно верю, что авторы zsh физически вполне способны
реализовать стандартное поведение. Более того, я знаю, что отмена
интерпретации подставляемого значения переменной была их
сознательным решением, которым они гордятся. К делу это не имеет
никакого отношения.
Очевидная разница между bash и zsh здесь в том, что bash в
режиме совместимости - отключает расширения, дополнительные
возможности, каждым из которых программист может пользоваться или не
пользоваться по своему усмотрению. Отключение это делается ради
редких и случайных совпадений, скажем, переменных старинного
shell-скрипта с новыми ключевыми словами bash-а.
zsh же в режиме совместимости - запускает интерпретатор
_другого_ (хоть и похожего) языка с _другим_ синтаксисом. Причем
различия в синтаксисе касаются самых базовых конструкций языка.
EB>
EB> Вы, скорее всего, не знаете что такое sh-мода, когда и как она
EB> включается (в том чфисле автоматически), и почему в современных
EB> шеллах в интерактивном режиме она по умолчанию выключена. При
EB> этом свой код выдаёте за эталон.
Когда мне нужен интерпретатор чистого shell-а , то zsh в
режиме совместимости среди претендентов на эту функцию не первый и
даже не десятый.
Reply to: