Как установить oh my zsh на ubuntu

Обновлено: 04.07.2024

При работе со средами на основе Unix большая часть времени уходит на работу в терминале. Красивый терминал заставит нас чувствовать себя хорошо и повысит нашу производительность. Вот где в игру вступает OH-MY-ZSH.

OH-MY-ZSH - это платформа с открытым исходным кодом для управления конфигурацией ZSH, управляемая сообществом. Он поставляется в комплекте с множеством полезных функций, плагинов, помощников, тем и некоторыми вещами, которые сделают вас лучше в терминале. В настоящее время поддерживается 275+ плагинов и 150 тем.

Первым делом вам необходимо установить и настроить ZSH в качестве оболочки по умолчанию в Ubuntu.

  • Следует установить Zsh (подойдет версия 4.3.9 или более новая, но мы предпочитаем 5.0.8 и новее).
  • Wget должен быть установлен.
  • Должен быть установлен Git (рекомендуется v2.4.11 или выше).

Давайте посмотрим, как установить и настроить программу OH-MY-ZSH в Ubuntu Linux.

Установка OH-MY-ZSH в Ubuntu Linux

Установка Oh My Zsh может быть выполнена с помощью команд «Curl» или «Wget» в вашем терминале. Убедитесь, что в ОС установлена u200bu200bодна из этих утилит, в противном случае установите их вместе с git, выполнив следующую команду apt.

Затем установите Oh My Zsh через командную строку с помощью curl или wget, как показано.


После установки OH-MY-ZSH будет создана резервная копия существующего файла .zhrc . Затем будет создан новый файл .zshrc с конфигурациями. Поэтому всякий раз, когда вы решите удалить OH-MY-ZSH с помощью программы удаления, автоматически будет восстановлен старый файл .zshrc .

Все конфигурации помещаются в файл .zshrc . Здесь вы либо измените параметры, либо включите новые плагины, либо измените темы в зависимости от потребностей.

Давайте разберем некоторые важные параметры, которые мы можем изменить в файле .zshrc .

Среди всех функций OH-MY-ZSH мне нравится набор тем, который идет в комплекте с установкой. Это визуально улучшает внешний вид моего терминала. Темы устанавливаются в папку «/home/tecmint/.oh-my-zsh/themes/».


По умолчанию загружается тема «robbyrussell». Чтобы изменить тему, измените параметр «ZSH_THEME u003d » в файле .zshrc .


Чтобы изменения вступили в силу, необходимо указать источник (источник

OH-MY-ZSH поддерживает множество плагинов. Настроить плагин довольно просто. Все, что вам нужно сделать, это получить пакет плагина и добавить имя плагина в параметр plugins в файле .zshrc . По умолчанию git - единственный плагин, который включается после установки.


Теперь я добавлю еще два плагина «ZSH-autosuggestions и ZSH-Syntax-highlighting» путем клонирования пакетов.

Чтобы сделать плагины эффективными, все, что вам нужно сделать, это отредактировать файл .zhsrc , добавить имя плагина в plugins u003d() с пробелом между названиями каждого плагина.


Теперь исходный файл (исходный

/.zshrc), чтобы изменения вступили в силу. Теперь вы можете видеть на скриншоте, что функция автоматического предложения включена, и он запоминает команду, которую я использовал ранее, и предлагает на ее основе.


OH-MY-ZSH автоматически проверяет наличие обновлений каждые две недели. Чтобы отключить его, установите параметр DISABLE_AUTO_UPDATE u003d «true». Вы также можете контролировать количество дней, в течение которых должно выполняться обновление, установив export UPDATE_ZSH_DAYS u003d .


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


Удаление OH-MY-ZSH в Ubuntu Linux

Если вы хотите удалить oh-my-zsh, выполните команду «uninstall oh_my_zsh». Он удалит все необходимые файлы и папки из oh_my_zsh и вернется в предыдущее состояние. Перезагрузите терминал, чтобы изменения вступили в силу.


Это все для этой статьи. Мы изучили, что такое oh-my-zsh, как его установить и настроить. Мы также видели плагины и темы. Функций гораздо больше, чем мы обсуждали в этой статье. Изучите и поделитесь с нами своим опытом.


В этом руководстве показано, как установить zsh и настроить фреймворк Oh my zsh на компьютере с Linux.

Это очень популярный инструмент командной строки для рабочего процесса веб-разработчиков.

Некоторые из характерных особенностей:

  • Лучшее завершение вкладки
  • Удобная навигация по каталогам
  • Поддерживает множество тем и плагинов
  • Подсветка синтаксиса
  • Автозаполнение
  • Интерактивная конфигурация
  • Настройка цвета

Установка ZSH на Linux

По умолчанию в дистрибутивах Ubuntu и Debian нет zsh.

Чтобы установить zsh в ubuntu 20.04 и Debian 10, запустите:

Чтобы проверить установку zsh:

Из выходных данных видно, что zsh успешно установлен в /usr/bin/zsh.

Изменить текущую оболочку

Сначала проверьте, в какой оболочке вы сейчас работаете, с помощью следующей команды echo:

Приведенный выше вывод показывает, что в настоящее время используется оболочка bash. Чтобы изменить оболочку по умолчанию, вы должны выполнить следующую команду chsh:

Выйдите из текущего сеанса, теперь, когда вы войдете заново в терминал, у вас будет оболочка Zsh вместо bash по умолчанию.

Примечание: в CentOS 8 установите пакет util-linux-user, чтобы иметь chsh:

Установка фреймворка Oh my zsh

Он поставляется с множеством функций, тем и плагинов.

Во-первых, вам нужно установить wget и git для загрузки необходимых инструментов установки:

Затем скачайте установочный скрипт Oh My Zsh, запустите:

/.oh-my-zsh», запустите команду ls, чтобы просмотреть ее содержимое:

Затем вам нужно создать файл конфигурации для оболочки zsh. Вы можете скопировать шаблон конфигурации из папки «

/.oh-my-zsh» в свой домашний каталог:

Как изменить тему

По умолчанию Oh-my-zsh использует тему robbyrussell .

Вы можете найти это, открыв файл .zshrc:

Есть много других тем в каталоге

Чтобы изменить тему по умолчанию, отредактируйте файл .zshrc и измените тему по умолчанию.

Например, чтобы изменить тему на «kiwi», обновите, как показано далее:

Затем примените изменение, запустив:

Как включить плагины

Oh-my-zsh предлагает множество плагинов.

Вы можете посмотреть в каталоге

Чтобы включить плагины, отредактируйте файл .zshrc и добавьте соответствующие плагины в строку «plugins».

Настроика подсветки синтаксиса на Zsh

Если вы хотите включить подсветку синтаксиса в оболочке Zsh, клонируйте zsh-syntax-hightlighting из github и переместите его в папку плагинов:

Настроика автозаполнения на Zsh

При вводе команды в оболочке zsh полезно, если оболочка поддерживает механизм автозаполнения.

К счастью, oh-my-zsh очень хорошо поддерживает эту функцию.

Чтобы включить автоматическое предложение, установите плагин zsh-autosuggestions:

Затем добавьте плагин в список плагинов в файле

Теперь примените изменение, запустив:

Заключение

В этом руководстве мы узнали, как установить и настроить ZSH на машинах с Ubuntu 20.04 и CentOS 8.

Спасибо за чтение и, пожалуйста, оставьте свои мысли в разделе комментариев ниже.

Большинство дистрибутивов поставляется со встроенным Bash. Используя дополнения можно сделать из него все что захотите, но гораздо проще этого добиться с Zsh. Почему?

  • Продвинутая механика автодополнения команд по нажатию <Tab> или <Arrow Up>. В отличие от Bash, вам не нужно это настраивать, все работает на высшем уровне прямо «из коробки».
  • Множество готовых тем, модулей, плагинов и прочего. Настраиваемость через фреймворки (oh-my-zsh, prezto и др.), которые значительно расширяют возможности кастомизации и улучшения терминала. Опять же, всего этого можно добиться и в Bash, но для Zsh масса уже готовых материалов. Для Bash их значительно меньше, а некоторых вовсе нет.

Настройка Zsh

Для начала, установим Zsh (если он уже установлен, например, как в Manjaro, можете пропустить этот пункт):


Когда вам предложат установить Zsh как оболочка по-умолчанию, нажмите Y , чтоб подтвердить.

Oh-My-Zsh — популярный и активно развивающийся фреймворк Zsh, который позволяет гибко настроить оболочку терминала. Установим его:

Подсветка синтаксиса. Гораздо проще ориентироваться по содержимому терминала, когда разные части команд подсвечены разными цветами. Например, директории будут подчеркиваться, а команды — выделяться цветом, отличным от обычного текста. Установим плагин zsh-syntax-highlighting :

Чтоб плагин заработал, его надо подключить.

/.zshrc меняем строку с plugins= :


Если такой строки нет — добавьте её.

Готово! Получаем удобный и функциональный терминал. Теперь сделаем его визуально приятным.

Настраиваем внешний вид


Скачиваем и добавляем в систему шрифт JetBrains Mono Nerd (c иконками):
Выберитеодин из списка, в папке шрифт/complete выберите шрифт без «Windows Compatible», с окончанием «Mono».

Подключаем шрифт и тему.

Если в файле эти строки уже есть — замените их.


Цвета. Важная часть оформления терминала — цветовая схема. Я перебрал много разных схем, редактировал их, остановился на Monokai Dark. Не режет глаза, но при этом приятная и яркая. Список цветов:


В разных терминалах по-разному меняется цветовая схема (обычно, это делается через настройки терминала), но порядок цветов везде одинаковый. Вы можете импортировать этот шаблон в формате Termite и экспортировать его для вашего терминала через terminal.sexy

Запускаем конфигурацию темы: p10k configure .
Настройте тему, выбирая варианты отображения, которые вам больше нравятся.

Финальный штрих — меняем конфиг темы и заменяем встроенные цвета.

Если в файле эти строки уже есть — замените их. Коды цветов можно получить командой

Небольшой обзор и инструкция по установке оболочки для терминала Zsh и набора модификаций для него, чтобы сделать работу в терминале приятной и информативной.

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

Данный материал пригодет только для пользователей unix-подобных систем, а именно Linux и MacOS. На MacOS не знаю что да как, но судя по всему установка и настройка совершенно не отличаются друг от друга. Соответственно его можно ставить и на веб-сервера.

Что это и зачем оно ¶

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

Пример с GitHub

Я не могу вам описать всех возможностей, ибо некоторые из них не так заметны и не сразу бросаются в глаза. Например, при указании пути до файла\папки Tab в Zsh, делает то же самое что и в bash, но куда круче, а я заметил это спустя неделю, так как не обращал внимания. Он мало того что может учитывать регистры папок и поправлять вас, так и список папок также можно визуально перебирать табом, что просто очень удобно и ускоряет работу.

Я вообще изначально ставил данный шелл и фреймворк только ради Git плагина, который показывает (если вы находитесь в папках с репозиторием), актуально ли текущее состояние репозитория, в какой ветке находимся, имеются ли новые изменения в файлах, есть ли коммиты или изменения. В общем всю необходимую информацию. Не нужно проверять ветку через git branch -v , проверять есть ли изменения через git status и т.д.

У него есть куча интеграций с различными программами и системными утилитами, которые позволяют сделать работу с терминалом намного, намного приятнее. Ведь, особенно, с Drupal 8, работать с ним нужно все чаще и больше.

Установка Zsh и Oh My Zsh ¶

Первым делом нужно установить оболочку Zsh, для этого в Ubuntu необходимо просто запросить данный пакет, так как он находится в официальных репозиториях:

Далее нам необходимо поставить фреймворк Oh My Zsh. Разработчики предлагают два варианта установки, по сути они одинаковые, вам просто предоставляется выбор как вытянуть скрипт установщика, wget или curl , это лишь важно в тех случаях, когда на системе нет одного из них (частенько можно встретить отсутствие curl), и вы не хотите ставить пакет ради этого, или нет прав. Я также пишу вам два варианта, а какой использовать решайте сами:

После данной установки, у вас запросят пароль чтобы переключить шел для текущего пользователя на Zsh. Вводим, и всё готово!

Oh My Zsh после установки

Из коробки он хоть уже и дает больше информации, как по мне, он выглядит хуже оригинального. Для этого в OMZ есть поддержка тем и плагинов, которые могут в корне менять оболочку.

Где и что находится ¶

Данный раздел я не мог упустить так как он может очень сильно помочь в дальнейшем. Фреймворк Oh My Zsh находится в папке

/.oh-my-zsh — там, в свою очередь, находятся все файлы фреймворка. А сама папка ничто иное как репозиторий Oh My Zsh. Но удалять папку просто так не стоит, там для этого есть специальный скрипт, ниже напишу как.

Все настройки для Oh My Zsh находятся в файле

/.zshrc . О нем подробнее будет ниже.

Установка плагинов ¶

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

Например я хочу поставить себе следующие плагины:

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

Для того чтобы включить данные плагины (они уже есть в комплекте), достаточно отредактировать файл

/.zshrc . Для этого, в ubuntu, достаточно написать nano

/.zshrc , что вам удобнее. Открываем данный файл на редактирование и ищем строку plugins=(git) и добавляем туда все нужные нам плагины, учитывая список выше, вышло следующее: plugins=(git npm vagrant composer sudo web-search) . После изменения данного файла, всегда необходимо прописывать source

/.zshrc , иначе изменения вступят в силу только после перезагрузки.

После этого можете тестировать работу.

Установка тем оформления ¶

Из коробки оформление Zsh кому-то может и приглянуться, но мне оно не зашло. Называется она robbyrussell . Но есть куча других тем, по ссылке полный список тем которые идут в комплекте Oh My Zsh.

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

Для включеня данной темы нам опять, достаточно открыть

/.zshrc файли найти строку ZSH_THEME="robbyrussell" и заменить стандартную тему на нужную, в моем случае agnoster , итого получается ZSH_THEME="agnoster" . Не забываем про source

/.zshrc . И всё уже работает!

agnoster

Если у вас вместо иконок Git или нету "уголков" в строке навигации, то вам нужно поставить спец. шрифты с данными иконками. Множество тем требует установки данных шрифтов, они никак не помешают, но будет работать как нужно. Если всё как и на скринах - ставить не нужно, если же нет, то ниже инструкция для вас.

Этого уже будет достаточно, можно работать. Но некоторые моменты я ещё затрону.

Настройки ¶

Я их не правлю, но выписал с обьяснением чтобы было проще ориентироваться. Напоминаю что все они в

  • CASE_SENSITIVE="true" — чуствительность к регистру. Как я указал в начале статьи, он сам может исправлять регистр если видит что в текущем ничего не найдено. Если это мешает, установив данный параметр в true, поведение будет привычное bash.
  • HYPHEN_INSENSITIVE="true" — включает автоматическую замену между "_" и "-". Аналогично параметру выше, но касается только дефиса и подчеркивания.
  • DISABLE_AUTO_UPDATE="true" — позволяет отключить автоматическое обновления Oh My Zsh.
  • export UPDATE_ZSH_DAYS=13 — задает переодично проверки обновлений.
  • DISABLE_LS_COLORS="true" — позволяте отключить цветовую палитру при выводе команды ls .
  • DISABLE_AUTO_TITLE="true" — отключение автоматического заголовка терминала.
  • ENABLE_CORRECTION="true" — включает корректировку команд. Например, вводя compozer он выдаст запрос: correct 'compozer' to 'composer'? .
  • COMPLETION_WAITING_DOTS="true" — включает точки ожидания ввода аргументов. Например введя composer и нажав Tab , он будет перебирать доступные команды (из-за одноименного плагина), а если ввести java и нажать таб, у него нет вариантов автодополнения (они будут появляться по мере их успешнного ввода в терминале и кэшироваться) он будет отображать красные точки для обязательного ввода которые можно отменить только Ctrl + C .
  • DISABLE_UNTRACKED_FILES_DIRTY="true" — отключает пометку неиспользуемых файлов в пределе Git репозитория как "гразных", что увеличивает скорость скана для git. Не могу сказать точнее что это и как это работает, но это напрямую связанно с git вообще, а не только плагином.
  • HIST_STAMPS="mm/dd/yyyy" — позволяет менять формат даты для команды history .
  • ZSH_CUSTOM=/path/to/new-custom-folder — позволяет добавить дополнительный путь до папки где будут храниться кастомные плагины и темы. По дефолту

Это все настройки Oh My Zsh, ниже по файлу вы найдете различные переменные и примеры использования.

Фиксим проблему с PATH ¶

Вариант первый, это в файле конфига

/.zshrc раскомментировать соответсвующую строку в самом начале и добавить нужные пути, либо добавить их прямо из терминала:

Удаляем Oh My Zsh ¶

Если вам потребуется полностью удалить Oh My Zsh и сам шелл с системы, то это делается достаточно просто:

Читайте также: