Работая в терминале Linux иногда хочется придать ему внешний вид который как то выделялся. Можно накатить ZSH, а можно установить Fish Shell. Последний весьма интересный проект, отличается от обычного терминала подсветкой синтаксиса, авто запоминанием вводимых команд, и разумеется кастомизации, то есть изменением внешнего вида. Настройка внешнего вида достигается в веб интерфейсе, который открывается в вашем браузере, что в свою очередь так же отличается от всех остальных терминалов. Сам код Fish Shell написан на языке C и C++, распространяется бесплатно и имеет открытый исходный код.
В любом случае, если вы хотите изменить внешний вид терминала, а так же немного сделать работу в нем более комфортной, одним из способов достичь этого является Fish Shell. Да и в целом проект весьма интересный и обладает многими функциями которые помогают при работе в терминале.
Устанавливаем Fish Shell в Debian
Fish Shell можно установить в операционных системах MacOS, FreeBSD и в Windows, но, мы остановимся только на установке в Linux. Для тех кто хочет установить данную оболочку терминала в других системах, рекомендую ознакомиться с этими инструкциями на официальном сайте. Для того что бы установить Fish Shell в Linux, необходимо подключить репозитории, для этого открываем терминал и вводим команды:
Установка Fish Shell в Debian 10
echo 'deb http://download.opensuse.org/repositories/shells:/fish:/release:/3/Debian_10/ /' | sudo tee /etc/apt/sources.list.d/shells:fish:release:3.list
curl -fsSL https://download.opensuse.org/repositories/shells:fish:release:3/Debian_10/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/shells_fish_release_3.gpg > /dev/null
Затем обновляем списки пакетов и устанавливаем Fish Shell в Debian 10
sudo apt update
sudo apt install fish
Установка Fish Shell в Debian 11
То же самое проделываем в Debian 11, открываем терминал и вводим следующие команды:
echo 'deb http://download.opensuse.org/repositories/shells:/fish:/release:/3/Debian_11/ /' | sudo tee /etc/apt/sources.list.d/shells:fish:release:3.list
curl -fsSL https://download.opensuse.org/repositories/shells:fish:release:3/Debian_11/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/shells_fish_release_3.gpg > /dev/null

Обновляем списки пакетов и устанавливаем Fish Shell в Debian 11
sudo apt update
sudo apt install fish

После установки Fish Shell можно найти в установленных программах, вам останется лишь назначить его по умолчанию, а затем пользоваться:

Установка Fish Shell в Ubuntu
Если вы пользователь дистрибутива Ubuntu или ее ответвлений, таких как Linux Mint, то вы можете подключить PPA репозиторий, откуда и установите Fish Shell. Как обычно, переходим в терминал и вводим команду на подключения PPA репозитория:
sudo apt-add-repository ppa:fish-shell/release-3

Нажимаем на Enter что бы подтвердить наши намерения на подключения репозитория, а затем обновляем на всякий пожарный списки пакетов и устанавливаем Fish Shell:
sudo apt update
sudo apt install fish

После установки Fish Shell вы найдете в установленных программах, вам останется лишь установить его по умолчанию и назначить его на горячие клавиши. По поводу горячих клавиш в Gnome 3 у нас есть статья, если интересно, она доступна по этой ссылке.
Установка Fish Shell в Fedora
Что касается дистрибутива Fedora, то тут установка Fish Shell еще проще, вам не нужно добавлять репозитории, так как Fish Shell уже имеется в родных репозиториях самого дистрибутива. А для установки вам достаточно выполнить всего одну команду:
sudo dnf install fish

Установка Fish Shell в Arch / Manjaro
Точно так же можно установить Fish Shell и в дистрибутивах Arch и его ответвлений, в частности в Manjaro – всего одной командой. Открываем терминал и выполняем команду для установки Fish Shell:
sudo pacman -S fish

Настройка Fish Shell
Как уже писалось, настройка Fish Shell осуществляется через веб интерфейс, что весьма не характерно в среде Linux для терминалов. Для того что бы вызвать меню настройки, выполняется команда в терминале:
fish_config
После ее выполнения откроется интерфейс, где можно производить настройки Fish Shell:

Настроить внешний вид Fish Shell можно лишь экспериментами, так как дало это сугубо личное, и для одного один внешний вид будет нравиться, а другому нет. Весь функционал по настройки представлен в веб интерфейсе, но ничто не мешает вам править сами конфиги программы, но, будьте аккуратны, перед тем как править конфиги рекомендую сделать копии исходников.
Заключение
Безусловно, Fish Shell весьма интересный проект, который может не только разукрасить унылый терминал, но и облегчить чтение тех же конфигов благодаря подсветке синтаксиса. В любом случае даже если вас устраивает терминал по умолчанию, попробовать Fish Shell стоит. Более подробную информацию о всех функциях вы можете найти на официальном сайте. Так же, можно найти в сети множества инструкций по Fish Shell, могу порекомендовать вам одно видео, где вы можете почерпнуть некоторую информацию касательно индивидуальной настройки Fish Shell:
А на этом сегодня все, надеюсь, данная статья будет вам полезна.
Хотелось бы выразить огромную благодарность тем, кто принимает активное участие в жизни и развитии журнала, огромное спасибо вам за это.
Журнал Cyber-X