В статье про установку ZSH я пообещал рассказать про установку плагинов для этой оболочки и данный пост есть выполнение обещанного.
Я подобрал пять плагинов, которые делают использование терминала и оболочки проще для меня и, уверен, сделают для вас.
Предлагаю подписаться на обновления канала Просто Код в Телеграме. Так вы сможете получать уведомления о выходе новых постов.
Способы установки плагинов ZSH
Приличная часть плагинов уже имеется в наличии, их достаточно лишь включить в конфигурационном файле. Они были установлены вместе с фреймворком Oh My Zsh. Найти их перечень можно на специальной странице в Github. Те плагины, которые не идут «из коробки» нужно устанавливать посредством терминала, но в этом нет ничего сложного. Ну, и наконец, можно устанавливать плагины при помощи менеджера плагинов. Этим способом я никогда не пользовался, поэтому в рамках данной статьи расскажу про первые два. Давайте же теперь поговорим конкретно про сами плагины.
Плагин №1. zsh-autosuggestions
Очень удобная вещь, которая упростит жизнь тем, кто много работает в терминале. Этот плагин добавит в оболочку автодополнение на основе ранее введенных команд. Плагин не идет «из коробки», поэтому вначале его нужно установить. Открываем терминал и вводим команду:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
Она установит нужный плагин, который теперь нужно включить. Для этого открываем файл .zshrc и находим раздел plugins (у меня это 84 строка). По-умолчанию там находится только плагин git. Перенесем строки так, как показано на демонстрации и теперь будет легко добавлять новые плагины с новой строки. Не забываем сохранить изменения и после запустить обновление конфига
exec zsh
Теперь у нас с вами доступна подстановка ранее введенных команд. Очень удобно если вы работаете с длинными командами и не хотите тратить время на их постоянное повторное введение.
Плагин №2. zsh-syntax-highlighting
Добавляет подсветку вводимых команд, что делает их использование зрительно информативным и удобным. Устанавливается плагин аналогично предыдущему:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
После добавляем название плагина в новую строку в конфигурационном файле, сохраняем изменения и перезапускаем ZSH. Как видим в последующих настройках нам очень помогает автодополнение.
Но установленный плагин можно сразу же настроить. В нем доступно пять видов подсветки:
- main - основная подсветка
- brackets - подсветка парных скобок
- pattern - подсветка определенных пользователем паттернов
- cursor - подсветка курсора
- root - подсвечивает команды, если текущий пользователь - root
По-умолчанию включена только основная подсветка. Чтобы включить либо все, либо какую-то одну, либо несколько, нужно открыть файл .zshrc и добавить в него следующую строку:
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern cursor root)
В примере я включил все виды подсветок. Сохраняем изменения и перезапускаем ZSH.
Обычно я убираю подсветку курсора, так как предпочитаю использовать тот, который настроил в терминале. После проведенных настроек плагин готов к использованию.
Плагин №3. web-search
Позволяет открывать поисковые запросы прямо из терминала. Достаточно ввести ключевое слово поисковой системы и то, что желаете найти. После нажатия клавиши Enter откроется окно браузера с результатами поиска. Плагин доступен «из коробки», потому достаточно просто добавить его название в конфигурационный файл.
Доступны такие поисковые системы, как google, yandex, bing и много каких еще. При этом можно добавлять собственные поисковые системы, про то как это сделать рассказано на странице плагина в Github.
Плагин №4. dirhistory
Помните как мы говорили про точки и пустую папку в Linux? Если не читали эту заметку, то сделайте это после прочтения данного поста.
В статье я рассказывал про то, что для перехода на верхний уровень каталога нужно ввести команду cd ..
Плагин dirhistory автоматизирует эти действия и делает переход по каталогам внутри терминала проще. Плагин, как и предыдущий, идет «из коробки», поэтому добавляем его название в конфиг для активации.
Теперь нам доступна навигация по каталогам в терминале при помощи горячих клавиш:
- Alt + Left - переход в предыдущую директорию
- Alt + Right - переход в следующую директорию (обратно)
- Alt + Up - переход на верхний уровень каталога (в родительскую директорию)
- Alt + Down - переход в дочернюю директорию (первую по алфавиту)
Плагин №5. history
Плагин, который расширяет функционал использования истории ранее введенных команд и упрощает ее использование. Часто бывает так, что не помнишь как именно выглядит и пишется какая-либо команда полностью. И обращаешься к истории при помощи grep (пост об этом «швейцарском ноже» в арсенале сисадмина выходил ранее на канале), чтобы посмотреть то, что вводилось раньше.
Плагин history добавляет простые для использования алиасы, который экономят время. Установить его можно также, как и предыдущие, так как он идет вместе с фреймворком Oh My Zsh.
После активации можно использовать следующие алиасы:
- h - для быстрого доступа к истории
- hs <текст> - для поиска нужного текста при помощи grep
- hi <текст> - для поиска нужного текста при помощи grep с отключением учета регистра (можно писать команды для поиска с любой буквы)
Подведем итоги
Мы научились двум способам установки плагинов в ZSH и познакомились с пятью плагинами, которые упростят вам использование терминала и командной оболочки. Как вы понимаете, это далеко не все доступные для скачивания и использования плагины, а лишь очень маленькая, практически мизерная, их часть. Также думаю, что те подписчики и читатели канала, которые тоже используют ZSH могут рассказать про те плагины, которые установлены у них. Приглашаем таких людей в комментарии.
Кстати, нас уже более 800 человек на канале! Чтобы приблизиться к 1000 подписчиков нужно подписаться на канал (если вас еще нет среди тех восьми сотен), лайкать и комментировать выходящие материалы (чтобы алгоритмы показывали канал в ленте рекомендаций), делать репосты интересных заметок в своих социальных сетях (чтобы Дзен видел нашу активность).