LINUX.ORG.RU

Релиз fish 2.2.0

 


0

1

Fish (friendly interactive shell) — это интерактивная командная оболочка, служащая заменой bash в повседневной жизни. Отличается дружелюбностью и полезным функционалом, таким как подсветка синтаксиса, автодополнение, быстрый поиск по истории и многое другое.
Особенности нового релиза:

  • Добавлена команда abbr, с помощью которой можно создавать аббревиатуры для быстрого доступа к часто используемым командам
  • Добавлен режим fish_vi_mode, реализующий использование клавиатурных комбинаций в стиле vi
  • Новая реализация строчного и интерактивного постраничного просмотра текстовых данных, привычная для пользователей zsh
  • Удалён сервер fishd из-за многочисленных багов и потенциальных проблем с безопасностью
  • Новый web-интерфейс для настройки, добавлен выбор тем для промпта и другие улучшения
  • Добавлены переводы для немецкого, португальского и китайского

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

★★★★★

Проверено: splinter ()
Последнее исправление: CYB3R (всего исправлений: 3)
Ответ на: комментарий от aptemka

Это было только на моём ПК и не знаю почему, скорее всего именно из-за того, что часто ходил в tty.

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

емнип, оно не ругается, а пускает elinks/lynx/чё-там-ещё.

f1u77y ★★★★
()

Давно уже использую.

Из того, что мне действительно в нем удобно - это вот эта фича с подсветкой «ожидаемой/последней подходящей» команды и дополнения ее при CTRL+f (не знаю как она у них там называется) - в zsh такого не видел (может плагин подобного функционала есть какой и мне тут подскажут, но в свое время смотрел и не нашел). Ну и плагин balias - который добавляет алиасы с полной поддержкой. К примеру в bash alias yarcsn «yaourt -Rcsn» Не будет дополнять вводимые пакеты

а в fish balias yarcsn «yaourt -Rcsn» Все дополняет как и в обычной команде. Может кто подскажет подобное в zsh также. Ну и вебконфиг - просто чтобы настроить промт. В этом весь лор «ничего не знают и не пользовались», но поворчать на «АААА там вебконфиг - значит ненужное» всегда гаразды.

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

StillSteal
()
Ответ на: комментарий от loz

Так же, у меня работает ^D -> Delete character _after_ the cursor.. А ^W - у меня дублирует ^U, не работает.

Допускаю, что это в моем окружении так. Но тогда возникает вопрос, а где «Delete character after the cursor» в оригинале? Специально, приманка для перфекционистов?

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

Осталось, чтобы кто-то ответил есть ли что-то подобное balias в zsh(думаю что должно) и полностью ли совместим zsh с bash на данный момент(ибо в свое время не был полностью) и думаю я выделю время, чтобы опять его настроить и попробовать опять.

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

^H у меня отлично работает. Таким же образом, как в unix-kb.cat-v.org

Deleted
()

Без возможности постить твиты оно все равно никому не нужно.

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

Ъ.

после ознакомления с http://www.computerworld.com.au/article/279011/a-z_programming_languages_bour... (The A-Z of Programming Languages: Bourne shell, or sh An in-depth interview with Steve Bourne, creator of the Bourne shell, or sh) примерами сырцов до sh и sh скриптов на tuhs.org( в том числе:

и http://emulator.pdp-11.org.ru/misc/1978.07_-_Bell_System_Technical_Journal.pdf ( page's 1971... The Unix shell by S.R.Bourne )

и https://en.wikipedia.org/wiki/The_Unix_System от sh-отца.

и то что ща bash как он есть.

ps.https://en.wikipedia.org/wiki/Bourne_shell

так что python в консоле вполне метод.

qulinxao ★★☆
()

Добавлен режим fish_vi_mode, реализующий использование клавиатурных комбинаций в стиле vim

Ох е, неплохо. Только думал что странно что такого нет нигде

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

Только думал что странно что такого нет нигде

Это почти везде есть.

anonymous
()

Хм...

:~$ echo $SHELL
/bin/bash

Мда? Ну ок... *пожал плечами*

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

Ctrl-H - всегда удалял символ после курсора Ctrl-W - «слово».

Проверил. Работает.

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

Ты как-то странно его поставил, по идее там всё нормально дополняет по умолчанию. Дополнение для cd реализуется в файле _cd zsh-completions, возможно ты его просто не поставил.

Из преимуществ того же автокомплита, например, возможность создания меню при авдодополнении с множественным выбором autocd(просто пишешь ~/dev/kern/omap4 <enter> и переходит в директорию), а также например возможность написать ~/d/k/o<tab> и если вариант 1, то это дополнится до ~/dev/kern/omap4, если нет, то там будет либо меню, либо перечисления, автокоррекция и многое другое.

e7z0x1 ★★★★★
()

Лучше бы прикрутили пару eye-candy фишек к башу. Пытался в свое время попробовать zsh и fish.

Про fish все уже сказали: инопланетный синтаксис => ффтопку, хотя их вариант help'а (правда захардкоженный), мне очень нравится.

zsh — в 2015 году в дефолтном zsh не работают home/end и что-то еще. Попробовал пару недель помучаться с oh-my-zsh, а потом снес это поделие к чертовой матери. Какой-то emacs среди шеллов: абсолютно неюзабельный дефолт, зато КОКОЙ ПОТЕНЦИАЛ.

Сижу на баше без синтаксической подсветки, без bash-completion, и это все равно лучше fish/zsh вместе взятых.

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

преимущество zsh перед bash в чем?

Автоподстановка алиасов. Например, алиас a-i по табу разворачивается в sudo apt-get -V install, и следущий таб уже автодополняет имена пакетов. Еще в zsh при листании истории стрелками учитывается набранная подстрока, а не тупо пролистывается вся история. Меню автодополнений тоже бывает удобно: kill <Tab> и ходишь стрелками по меню. Может и баш все это умеет, я давно им не пользовался. Из коробки по крайней мере ничего этого нет.

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

Из того, что мне действительно в нем удобно - это вот эта фича с подсветкой «ожидаемой/последней подходящей» команды и дополнения ее при CTRL+f (не знаю как она у них там называется) - в zsh такого не видел (может плагин подобного функционала есть какой и мне тут подскажут, но в свое время смотрел и не нашел).

https://github.com/zsh-users/zsh-history-substring-search/, но мне всегда history-search-backward/history-search-forward и history-incremental-pattern-search-backward хватало.

Ну и плагин balias - который добавляет алиасы с полной поддержкой. К примеру в bash alias yarcsn «yaourt -Rcsn» Не будет дополнять вводимые пакеты а в fish balias yarcsn «yaourt -Rcsn» Все дополняет как и в обычной команде. Может кто подскажет подобное в zsh также.

Из коробки.

Хотя юзать ви-мод для командной строки, если и не маразм - то излишество(всегда можно открыть длинную строку в самом вим и пофиксть), а так может кому и удобно будет.

Лишние телодвижения. Ну и автодополнение теряется. А еще есть athame, но для zsh и fish это пока не доступно.

salsa
()
Ответ на: комментарий от StillSteal

Все, что можно сделать в bash, можно сделать и в zsh. Плюс, есть разные способы симулировать bash.

А теперь плохая новость:

% man zshall | wc -l
19205
19k, Карл!

salsa
()
Ответ на: комментарий от kawaii_neko

Сижу на баше без синтаксической подсветки, без bash-completion, и это все равно лучше fish/zsh вместе взятых.

Ну конечно. А блокнот лучше емакса и вима вместе взятых. Сел и сразу вбиваешь текст, разбираться не нужно.

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

Ну конечно. А блокнот лучше емакса и вима вместе взятых. Сел и сразу вбиваешь текст, разбираться не нужно.

Всё верно, каждой задаче свой инструмент. Нахрена мне емаксы и вимы для 15 строчек моих текстовых заметок? Того же mcedit для обычной правки конфигов более чем достаточно.

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

Тут соглашусь, сам когда-то охренел от этой помойки. Типичная зверь-говносборочка. Надо читать маны и настраивать самому. Это долго, но делается один раз и на годы. Конечно, если терминал используется редко, то нафиг надо. А если это основной инструмент, то можно уж и покорпеть над конфигом.

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

Тут соглашусь, сам когда-то охренел от этой помойки. Типичная зверь-говносборочка. Надо читать маны и настраивать самому. Это долго, но делается один раз и на годы. Конечно, если терминал используется редко, то нафиг надо. А если это основной инструмент, то можно уж и покорпеть над конфигом.

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

Это долго

Я понимаю, emacs можно пару недель под себя доводить, но zsh-то настраивается максимум за вечер. И если не на всю жизнь, но на годы точно, с этим согласен.

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

Я понимаю, emacs можно пару недель под себя доводить

Какой там, емакс можно годами доводить, как и вим кстати. Я вот до сих пор открываю иногда неизвестные мне возможности вима, хотя казалось бы за 10 лет он изучен вдоль и поперек. Zsh тоже та ещё вундервафля.

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

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

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

но они работают!

Но почему не по умолчанию?

Xenius ★★★★★
()

Теперь vi-режимом можно пользоваться. Без индикации режима редактора это было очень неудобно.

gorky ★★
()

Пробовал однажды. То как они поменяли синтаксис по сравнению с традиционным bash - порадовало. Всё остальное - нет.

Ни тебе типов данных как в zsh, ни нормальных условий, которые непонятно как работают. И даже простую считалку сделать не смогли. Сыро слишком, сыро.

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

То как они поменяли синтаксис по сравнению с традиционным bash - порадовало.

Это begin; set -lx VAR 123; foo; end вместо VAR=123 foo то?
На самом деле вообще ничего хорошего, даже source рандомного файла не сделаешь.

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

Это begin; set -lx VAR 123; foo; end вместо VAR=123 foo то?

begin и end тут не нужны. Между «VAR=123» и «foo» должен быть ';'.

Ну тебе может и нужно сорсить bash, а мне его синтаксис и постоянное разбиение слов где попало( приходится почти везде экранировать кавычками) - порядком надоели.

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

Нужны-нужны, так как область видимости переменной текущий блок.

$ echo $LANG
en_US.UTF-8
$ set -lx LANG C; foo
...
$ echo $LANG
C
Ладно хоть можно считерить и использовать env LANG=C foo

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

А, ты про это. Ну, ещё один повод считать fish сырым.

nexfwall ★★★★
()

Фраза catch 22 throw exception в случае отваливающегося у волка перемороженного хвоста приобретает новый смысл. Ловись рыбка - большая и маленькая! <===< <=<

Woofywoof
()

Fish (friendly interactive shell)
shell
web-интерфейс для настройки

я один чего-то не понимаю в этом мире ?

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

Не один, тут таких как ты много.

anonymous
()

Давно ушел с zsh на fish и доволен как слон, все работает из коробки как доктор прописал, почти ничего не надо настраивать. В zsh надо было постоянно допиливать конфиги. А что до синтаксиса, так на fish не скрипты и писать.

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