LINUX.ORG.RU

Релиз fish 2.0

 ,


1

1

17 мая 2013 года прошел релиз командной оболочки fish, что был обозначен версией 2.0.

Из основных нововведений, пришедших с этим выпуском:

  • Исправление случаев некорректного поведения переменной $status.
  • Прекращено использование многоточия для «разрыва» длинных строк.
  • Добавлена поддержка синтаксической конструкции else if.
  • Добавлена возможность использования правосторонней строки приглашения (promt).
  • Повышена совместимость с эмулятором терминалов rxvt.

Также было внесено еще множество различных изменений и исправлений, с которыми вы можете более подробно ознакомиться по ссылкам в конце новости.

fish (friendly interactive shell) — командная оболочка для Unix-подобных операционных систем. К её отличительным качествам можно отнести подсветку синтаксиса и продвинутое автодополнение. Одно из нововведений fish являются так называемые универсальные переменные, вводимые с помощью конструкции вида set -U переменная значение. Такие переменные разделяются между всеми экземплярами fish на данном компьютере и позволяют осуществлять обмен информацией между ними.

Один из слоганов проекта «Works Out Of The Box», который закрепляется политикой того, что для начала комфортного использования данной командной оболочки, нет необходимости изучать настройки и проводить конфигурацию. Все базовые возможности и функции включены по умолчанию. Для более тонкой настройки проект снабжен подробнейшей документацией.

Страница проекта

>>> Подробности

От себя добавлю: мой шелл на домашних и рабочих машинках.
Очень доволен этим продуктом человеческой идеи.
Пользуюсь сам, подсаживаю других :)

Пакеты они собирают под множество систем, потому рекомендую поставить на «потыкать палочкой», авось и вам пригнётся.

Spirit_of_Stallman ★★★ ()

Для более тонкой настройки, проект снабжен подробнейший документацией

Как у zsh? В дефолт включена куча всякой фигни, а чтобы настроить под себя надо осилить безумный ман на английском с кучей всяких параметров, от которых голова кругом идет?

another ★★★★★ ()
Ответ на: комментарий от another

Я думаю это zsh для неосиляторов zsh'а.
Оной очень не взлюбил, местные аналитики сказали «неосилил».
А поскольку неосилил - достоверно проводить сравнительный анализ трудно.
В нём всё грамотно и лаконично. Не наколенная поделка.

Spirit_of_Stallman ★★★ ()
Ответ на: комментарий от another

У них есть 2 мана.
1. гайд для тех, кто хотел бы слегка вникнуть
2. более глубокая вестчь :)

А так же есть веб-конфигуратор.
Т.е. после команды fish_config, некоторые вещи можно справить через гуй (пример).

Spirit_of_Stallman ★★★ ()
Ответ на: комментарий от Spirit_of_Stallman

Оной очень не взлюбил, местные аналитики сказали «неосилил».

Нет осиливших, кроме разработчиков его. :) Обычно берут более-менее вменяемый конфиг и допиливают чуток до своих нужд. Я и десятой части мана не осилил, а zsh у меня уж года четыре как установлен по дефолту.

Эта рыбка умеет нормально автодополнение к командам и алиасам на команды делать? Например у меня висит алиас «a» на aptitude. zsh знает, что если ввести a, потом i, потом TAB, то он дополнит словом install, а потом после еще одного TAB будет дополнять названиями неустановленных пакетов. Если a потом r потом TAB, то он дополнит словом remove и последующее дополнение будет искаться только среди уже установленных пакетов.

another ★★★★★ ()
Ответ на: комментарий от another

Эта рыбка умеет нормально автодополнение к командам и алиасам на команды делать?

Проверил - нет, увы. В алиасы оно не лезит, просто принимает за должное.
По-поводу пакетов: при remove (apt*) предлагает общий пул пакетов, в том числе и не установленных.

Spirit_of_Stallman ★★★ ()
Ответ на: комментарий от Spirit_of_Stallman

В алиасы оно не лез_и_т

Граммарнаци так и бурлит во мне.

А по теме - тады не айс.

По-поводу пакетов: при remove (apt*) предлагает общий пул пакетов, в том числе и не установленных.

И это тоже не айс. Жаль.

another ★★★★★ ()
Ответ на: комментарий от another

Граммарнаци так и бурлит во мне.

Мискузи. Спеллчекер почему-то пропускает.
Постараюсь запомнить.

Spirit_of_Stallman ★★★ ()

Выглядит хорошо, автодополнения всякие думаю допилят, только вот нет пакета для 13.04 - подождать, или для 12.10 ставить?

loz ★★★★★ ()

fish - это шелл для домохозяек и их малолетних детей.
zsh - для админов/инженеров и прочих погромистов

zolden ★★★★★ ()

Я пользуюсь pash. Зачем мне изучать еще один шелл?

StrongDollar ()
Ответ на: комментарий от another

Я и десятой части мана не осилил, а zsh у меня уж года четыре как установлен по дефолту.

у меня дошли руки осилить, но в итоге оказалось, что полученная информация нафиг не нужна, потому всё что нужно давно настроил с помощью гугла и чьей-то мамы, а ничего нового придумать не смог. Так и сижу с конфигом почти 6-летней давности

lazyklimm ★★★★★ ()
Ответ на: комментарий от StrongDollar

Никто не заставляет, просто дают тебе знать, что есть выбор

amazpyel ★★★ ()

т.к. на странице проекта вообще кот наплакал инфы, прошу дать примеры кода на этом чудо-шелле

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft
function move 
    set id (xlayout -l | grep -w ".*visible.*$argv.*" | awk '{print $1}');
    set x 0
    set y 0

    for i in (seq 1 1 5); 
        xlayout --set --id $id -g 200x200+$x+$y;
        set x (expr $x + 50);
        set y (expr $y + 50);
        sleep 0.5;
    end
end
rikardoac ()

Судя по изменениям последней версии теперь этим даже можно пользоваться. Правда непонятно как им с такими багами кто-то пользовался раньше :)

Например копирование длинных строк наконец-то починили.

Интересно, а как у них реализованы переменные, разделяемые между разными процессами оболочки - никто не смотрел?

Lennart ()
Ответ на: комментарий от StrongDollar

Я пользуюсь pash. Зачем мне изучать еще один шелл?

Жуть. Но я люблю вообще любые кроссплатформенные хреновины, так что одобряю.

И кстати, чем Python не кроссплатформенный шелл? Где его только нету, даже в Embedded можно пихнуть.

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от Spirit_of_Stallman

Веб-морда для конфига шелла? 0_0 (йа нуп, йа нуп)

dv76 ★★★ ()
Ответ на: комментарий от I-Love-Microsoft

Ога, во всех попытках сделать на python shell, - только как функционал начинает дорастать до sh - всё начинает тупить.

paranormal ★★ ()
Ответ на: комментарий от another

безумный ман на английском с кучей всяких параметров, от которых голова кругом идет

Отсылка к следующему?):

man zshexpn | grep -1 brain

anonymous ()
Ответ на: комментарий от Spirit_of_Stallman

Оной очень не взлюбил, местные аналитики сказали «неосилил».

Пользуюсь, но тоже очень недолюбливаю: «too bloated», много специфичных вещей, к которым не хочется привязываться. Ощущение костыльности (удобства не отрицаю) зашкаливает, ладно еще емакс..

anonymous ()
Ответ на: комментарий от lazyklimm

потому всё что нужно давно настроил с помощью гугла и чьей-то мамы

Просто интересно: дописывались ли свои (ну rationalize-dots многие добавляли) line-editing ф-ии? Вроде (inc/dec)rement number как виме? Писались ли свои ф-ии дополнения?

anonymous ()
Ответ на: комментарий от paranormal

Уверен, никаких оптимизаций производительности мой любимый bash не имеет. Просто фичи, просто прямая интерпретация текста. Или я не прав?

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от Spirit_of_Stallman

А скрипты что для sh на нем работать будут, или все переперать надо?

vada ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

Уверен, никаких оптимизаций производительности мой любимый bash не имеет

Там VM с прекомпиляцией в байт код.

vada ★★★★★ ()
Ответ на: комментарий от zolden

Это вы так самооценку поднимаете? На деле для большинства задач хватает bash.

unikum ★★★★★ ()
Ответ на: комментарий от vada

А скрипты что для sh на нем работать будут, или все переперать надо?

Смотря что вы имеете в виду.
Если просто выполнение скриптов - то конечно же будут, это его базовая обязанность (тем более он же не удаляет sh/bash, а шабэнг доступно указывает на нужный интерпретатор для этого скрипта).
А если вы за конфиги (ala bashrc) и забор, с них, чего-то по типу $PS1 - то нет.

Spirit_of_Stallman ★★★ ()
Последнее исправление: Spirit_of_Stallman (всего исправлений: 2)
Ответ на: комментарий от zolden

fish - это шелл для домохозяек и их малолетних детей.
zsh - для админов/инженеров и прочих погромистов

Так это же замечательно.
Фрагментация потребностей, и полное покрытие всех сегментов.
Хорошо что я школу еще не закончил, и не плохо готовлю. Fish именно для меня.

Spirit_of_Stallman ★★★ ()
Ответ на: комментарий от unikum

На деле для большинства задач хватает bash.

Я бы сказал что «для всех задач хватает bash».
Главные различия всех *sh — или сахар или различные, по силе, парсеры. Собственно хватить может и просто sh :)

Spirit_of_Stallman ★★★ ()
Ответ на: комментарий от unikum

совершенно унылое автодополнение, так что для интерактивной работы zsh таки удобнее

lazyklimm ★★★★★ ()

Дополнение менюшкой (как menu-select в zsh) оно умеет?

А развёртывание ~/D/p/q по <TAB> в ~/Documents/projects/qfrost?

Obey-Kun ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

Не прав ;). Фич - много. Вовсе не простая интерпретация. Вот скажем readline/readline.h, возьмёшься такое писать на интерпретируемом языке? или заюзаеш .h?

И так далее - на каждом шагу тебя ждёт «ёбаная неведомая хуйня»...

paranormal ★★ ()

Расскажите плиз в крации для чего он нужен.

anonymous ()

Насколько данное решение совместимо с bash?

lucentcode ★★★★★ ()
Ответ на: комментарий от aptyp

а bash?

а баш с годами становится всё лучше и лучше, перенимая фишки из zsh

zolden ★★★★★ ()

Интересная оболочка. Но привык к bash. Пару раз уже пытался перейти на zsh - но муторно переносить свои настройки с .bashrc на .zshrc ...

lucentcode ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.