Настройка ZSH в Mac OS
Mar 22, 2017 · 1 min read
С недавних пор начал использовать Mac OS, почти сразу подумал, что стандартный терминал не очень-то и удобен.
В качестве оболочки будем использовать ZSH, о нём, думаю, не слышал только любитель красивых UI, а вместо стандартного терминала я использую iTerm2.
В Mac OS ZSH предустановлен, поэтому сразу устанавливаем его в качестве оболочки по умолчанию с помощью команды chsh -s /bin/zsh . После перезапуска терминала оболочкой должен быть уже ZSH, если попросит начать настройку, то прервём сей процесс, нажав q.
Ручками мы писать конфиги, разумеется, не будем, пусть это сделает “Oh My Szh”. Переходим в домашний каталог и выполняем:
След у ющим шагом откроем для редактирования файл
/.zshrc и изменим значение параметра ZSH_THEME на agnoster , сохраняемся и перезапускаем терминал. В этот момент вы, скорее всего, увидите криво (никак) отображаемые символы, всё это происходит из-за некоторых отсутствующих шрифтов в системе, исправим это:
- Скачаем архив — вот здесь .
- Перейдём в “ fonts-master/UbuntuMono/” и установим все шрифты в этой директории.
- В настройках терминала выставляем шрифт “ Ubuntu Mono derivative Powerline”.
После перезапуска терминала вы, наконец, сможете узреть нормально работающую тему “agnoster”.
Источник
Настройка ZSH в MacOS
С началом использования MacOS, почти сразу понимаешь, что стандартный терминал не очень-то и удобен.
В качестве оболочки будем использовать ZSH, о нём, думаю, не слышал только любитель красивых UI, а вместо стандартного терминала я используем iTerm2.
В MacOS ZSH предустановлен, поэтому сразу устанавливаем его в качестве оболочки по умолчанию с помощью команды:
После перезапуска терминала оболочкой должен быть уже ZSH.
Если попросит начать настройку, то прервём сей процесс, нажав q.
Ручками не нужно переписывать конфиги, пусть это сделает Oh My Szh. Это набор плагинов и настроек, которые решают самые популярные задачи и делают ваш шелл просто супер удобным. Установим его, следуя инструкциям с официального сайта.
Переходим в домашний каталог и выполняем:
Установка прошла, но ничего не поменялось? Надо закрыть терминал и снова открыть его, чтобы настройки, которые приехали к нам из oh-my-zsh, прочитались и применились. Закрыли-открыли, теперь видим новое приветствие:
Приветствие шелла после установки Oh My ZSH
Это стандартная тема oh-my-zsh под названием robbyrussell (по имени автора). Мы можем поставить любую из тем, которые поставляются с oh-my-zsh. Я, использую Bureau.
Чтобы поменять тему, напишите её название (маленькими буквами, как на странице со списком тем) в файле .zshrc . Он лежит в вашей домашней папке ( /Users/Ваш_логин или /home/ваш_логин ). Поскольку он начинается с точки, он скрыт. Включите отображение скрытых файлов. Тему нужно прописать в переменную ZSH_THEME , это в районе восьмой строки, вот так:
Меняем тему в конфиге с помощью переменной ZSH_THEME
Сохраните файл и снова перезапустите терминал (или откройте в нём новую вкладку). Теперь шелл выглядит по-новому:
Тема Bureau в шелле
Это тема Bureau. В верхней строчке сначала имя пользователя, потом имя машины, потом путь к папке, где пользователь сейчас находится. Справа текущее время. В следующей строке просто символы, которые обозначают, что ввод здесь, а справа после шестиугольника текущая версия Node.js, ветка Git (если пользователь сейчас в Git-репозитории), и кружочки, которые обозначают, что есть несохранённые изменения. В этой теме версия Node.js показывается только если вы используете Node Version Manager.
Тема Agnoster в шелле
Если, увидите кривые символы, то не пугайтесь, всё это происходит из-за некоторых отсутствующих шрифтов в системе.
- Скачаем архив — вот здесь.
- Перейдём в “fonts-master/UbuntuMono/” и установим все шрифты в этой директории.
- В настройках терминала выставляем шрифт “Ubuntu Mono derivative Powerline”.
После перезапуска терминала вы, наконец, сможете узреть нормально работающий терминал.
Для правильной работы темы во встроенном терминале VScode в конфиг нужно добавить:
Источник
Как сделать красивую консоль в Mac и Linux
Если у вас OS X, поставьте iTerm2, он лучше стандартного Terminal.app. Если у вас Linux, то у вас наверняка уже есть неплохой терминал, или вы можете самостоятельно поставить любой, который вам нравится. Я вот люблю Sakura. Ещё я обычно меняю цветовую схему. Стандартные чёрные мне не очень нравятся, есть крутая схема Solarized. Как её устанавливать тоже зависит от вашего терминала.
Теперь настроим непосредственно шелл. Шелл — это оболочка, в которой выполняются команды. Он показывает вам так называемое приглашение, оно обычно состоит из имени пользователя, имени компьютера и пути к тому месту, где вы сейчас находитесь. И выполняет команды, которые вы в него вводите. Стандартный шелл выглядит так:
Стандартное приглашение в шелле
Скучновато, правда? Первое, что мы сделаем — сменим оболочку с bash на zsh. Bash — это стандартная оболочка, которая поставляется в комплекте большинства систем. Zsh — это более современная оболочка со множеством плюшек. По сравнению с bash улучшены автодополнение, алиасы, хоткеи. Всё, что может bash, zsh может тоже, так что не вижу причин не переходить. У пользователей OS X zsh уже есть на компьютере, а пользователям Linux, скорее всего, нужно его установить. В Ubuntu и Debian это делается просто:
Установка zsh в Ubuntu и Debian
Пользователи остальных систем наверняка справятся с установкой. Теперь нужно сделать, чтобы zsh был вашей оболочкой по умолчанию, то есть использовался каждый раз, когда вы открываете терминал. Для этого есть команда chsh (change shell):
Ввод пароля при смене шелла
У вас спросят пароль администратора. По мере ввода на экране ничего изменяться не будет, просто напечатайте ваш пароль и нажмите Enter . Появится сообщение о том, что ваш шелл изменён:
Смена оболочки по умолчанию
Теперь нужно выйти из системы и снова зайти. Когда вы откроете терминал, увидите приветственное сообщение zsh. Он предлагает вам ничего не делать, записать в свои настройки только комментарии, чтобы это сообщение не появлялось в следующий раз или пойти в меню настройки:
Приветствие от zsh
Мы, ничего не делая, выйдем (нажмём q ), потому что знаем секрет. Секрет в том, что не нужно писать длинный конфиг, если вы новый пользователь: частые проблемы и хотелки уже решили другие, и родилась такая замечательная штука — Oh My ZSH. Это набор плагинов и настроек, которые решают самые популярные задачи и делают ваш шелл просто офигенным. Установим его, следуя инструкциям с официального сайта:
Установка прошла, но ничего не поменялось? Надо закрыть терминал и снова открыть его, чтобы настройки, которые приехали к нам из oh-my-zsh, прочитались и применились. Закрыли-открыли, теперь видим новое приветствие:
Приветствие шелла после установки Oh My ZSH!
Это стандартная тема oh-my-zsh под названием robbyrussell (по имени автора). Мы можем поставить любую из тем, которые поставляются с oh-my-zsh. Я, например, использую Bureau, когда-то я её писала, потому что не нашла подходящей. Чтобы поменять тему, напишите её название (маленькими буквами, как на странице со списком тем) в файле .zshrc . Он лежит в вашей домашней папке ( /Users/Ваш_логин или /home/ваш_логин ). Поскольку он начинается с точки, он скрыт. Включите отображение скрытых файлов. Тему нужно прописать в переменную ZSH_THEME , это в районе восьмой строки, вот так:
Меняем тему в конфиге с помощью переменной ZSH_THEME
Сохраните файл и снова перезапустите терминал (или откройте в нём новую вкладку). Теперь шелл выглядит по-новому:
Тема Bureau в шелле
Это тема Bureau. В верхней строчке сначала имя пользователя, потом имя машины, потом путь к папке, где пользователь сейчас находится. Справа текущее время. В следующей строке просто символы, которые обозначают, что ввод здесь, а справа после шестиугольника текущая версия Node.js, ветка Git (если пользователь сейчас в Git-репозитории), и кружочки, которые обозначают, что есть несохранённые изменения. В этой теме версия Node.js показывается только если вы используете Node Version Manager.
Тема Agnoster в шелле
А это тема Лёши, можете её взять из github и сохранить в папке
/.oh-my-zsh/themes , или установить простой командой:
Не забудьте прописать тему meritt в вашем файле .zshrc .
Да и вообще, полистайте список тем и выберите ту, которая вам по душе. Или склейте свою из кусочков понравившихся тем, или даже напишите с нуля! Все темы лежат в папке
/.oh-my-zsh/themes . Делитесь вашими темами: выкладывайте скриншоты и ссылки на файлы тем.
Источник
Oh My Zsh: прокачай свой терминал
Стандартный терминал Unix систем, будь то MacOS или Linux, неплох. И все же, от инструмента, за которым приходится работать каждый день, хочется большего. Ниже представлена версия того, как сделать его более удобным и продуктивным.
Новичкам возможно будет интересно (и полезно):
Знакомьтесь, iTerm2
Для начала, замените стандартный терминал на что-нибудь получше. Пользователям MacOS рекомендую iTerm2 . Для пользователе прочих Unix систем существуют другие решения, например Guake .
Список функций iTerm2 представлен на официальной странице , среди них: автодополнение, поиск с подсветкой в консоли, сплит панели, копирование без использования мыши, переключение в терминал с помощью горячей клавиши, менеджер паролей и другие.
Чтобы установить iTerm2 вручную: скачайте его с официального сайта, распакуйте скачанный архив и переместите приложение в папку с программами.
Или, если используете Homebrew, установить iTerm2 можно одной командой:
Самый популярный шорткат — быстрое отображение или скрытие iTerm2. Можно сделать чтобы консоль выезжала сверху, как в Quake.
Но фича не работает из коробки, поэтому потребуется выполнить некоторые действия: перейдите в настройки (iTerm2 — Preferences), далее Profiles — Keys — Configure Hotkey Window, хоткей можно указать любой, остальные настройки как на скриншоте ниже.
Далее (там же в Profiles) перейдите в Window, и установите настройки как на скриншоте (или измените по своему усмотрению). За стиль окна отвечает настройка Style.
Можно двигаться дальше.
Мигрируй на Zsh
Zsh она же Z shell — одна из современных командных оболочек Unix. Мало кто знаком и использует все ее функции. Однако это и не требуется — фреймворк Oh My Zsh, который мы установим далее, позволит настраивать ее и кастомизировать с помощью тем и плагинов.
У пользователей MacOS, скорее всего, Zsh уже установлена, если нет — установите с помощью менеджера пакетов Homebrew, а затем сделайте zsh оболочкой по умолчанию.
Установка zsh в Ubuntu и Debian.
Пользователи прочих Unix систем наверняка справятся с установкой .
Убедиться, что zsh является оболочкой по умолчанию можно следующей командой.
Результат /bin/zsh означает, что все сделано верно.
Далее необходимо перелогиниться. Когда вновь откроете терминал, возможно увидите приветственное сообщение zsh. Ничего не меняйте и выйдите, выбрав q.
Zsh: быстрый старт
Еще до установки Oh My Zsh и плагинов можно оценить мощь Zsh.
Попробуйте ввести следующую команду:
Она вставит в консоль предыдущую команду. Будет полезна, если забыли указать sudo для команды требующей root:
От предыдущей команды можно взять только аргумент.
Вставить в консоль последнюю команду, начинающуюся с указанных символов:
Конструкция похожа на предыдущую, но применима для известной части символов в середине или в конце команды:
Например, !?VIDEO? из моей истории команд, после нажатия на Tab, преобразуется в:
Опечатку в последней введенной команде можно исправить так:
А с помощью следующей команды удобно сделать бэкап файла.
Конструкция выше аналогична команде:
Следующая конструкция удалит ранее распакованные файлы. Будет полезна если вы распаковали архив tar.gz не в тот каталог.
Примеры выше, малая доля того, что умеет Zsh. Еще больше возможностей открывается при использовании фреймворка Oh My Zsh.
Установка Oh My Zsh
Oh My Zsh — open source фреймворк, поддерживаемый сообществом. Предназначен для управления настройками Zsh и расширяющий его функционал и за счет плагинов и тем.
Установка через curl
Установка через wget
Установка вручную (загрузите скрипт, затем выполните его)
Oh My Zsh установится в папку
/.oh-my-zsh. Если понадобится удалить Oh My Zsh, не удаляйте папку вручную, а воспользуйтесь специальной командой:
Oh My Zsh в действии
Одно из неудобств консоли — перемещение по папкам. Oh My Zsh расширяет возможности автодополнения по кнопке Tab.
Например, Oh My Zsh исправляет регистр букв. Можно написать:
Затем нажать Tab и команда преобразуется в:
Если с введенных символов начинаются имена нескольких каталогов, по нажатию на Tab будет выведен список уточнений, а при повторном нажатии Tab, стрелками (или последующими нажатиями Tab) можно будет выбрать нужный каталог.
Автодополнение работает для любой части файлов и каталогов. Чтобы перейти в каталог
/Downloads, можно написать:
По нажатию Tab, строка будет преобразована.
Oh My Zsh умеет дополнять имена каталогов по всему пути, а не только по последней его части, например:
По нажатию Tab, строка будет преобразована.
А если добавить в файл конфигурации
/.zshrc часто используемые каталоги в переменную CDPATH, то не нужно будет печатать даже первые буквы имен каталогов.
Выбор темы
Дефолтная тема Oh My Zsh минималистична и хороша, но я предпочитаю Agnoster. Обратите внимание, как информативно выглядит в ней git-репозиторий.
Чтобы установить тему из репозитория откройте файл
/.zshrc, и в поле ZSH_THEME замените значение на имя понравившейся темы.
Подобрать тему можно на странице репозитория Oh My Zsh .
Чтобы установить внешнюю тему, скачайте ее, а затем переместите в каталог тем
Если после установки темы наблюдаете проблему со шрифтами, странные символы или кривые уголочки нужно установить дополнительные шрифты powerline patched fonts .
Затем перейдите в настройки iTerm2 — Preferences, далее Profiles — Text и в поле Font выберите скачанный шрифт, например Meslo LG или Droid Sans. Перезапустите терминал, теперь шрифты будут корректно отображаться в выбранной теме.
Выбор цветовой схемы
Рекомендую попробовать цветовые схемы iTerm2 Material Design или тему Dracula .
Цветовые схемы устанавливаются в дополнение к темам, чтобы сделать вид терминала еще привлекательнее, или вместо них — если тему по душе вы еще не подобрали.
Так выглядит мой терминал с установленной темой Agnoster и цветовой схемой Dracula.
Чтобы изменить цветовую схему терминала, скачайте понравившуюся, а затем перейдите в настройки iTerm2 — Preferences, далее Profiles — Color и в поле Color Presets (справа внизу), выберите пункт Import и импортируйте, а затем выберите скачанную тему.
Плагины
Плагины расширяют возможности Oh My Zsh. Список всех плагинов входящих в состав Oh My Zsh приведен на странице репозитория .
Как и в случае с темами, чтобы добавить плагин, нужно прописать его название в файле
/.zshrc, секция plugins. Например, чтобы активировать плагин docker, добавьте «docker» в секцию plugins.
Чтобы установить сторонний плагин, его нужно предварительно скачать и положить в каталог сторонних плагинов
По умолчанию включен только один плагин — git. Он показывает актуально ли текущее состояние репозитория, активную ветку и есть ли изменения. Таким образом не нужно постоянно проверять git branch -v и git status.
Несколько полезных плагинов из репозитория Oh My Zsh:
npm — добавлят поддержку автодополнения к npm;
vagrant — автодополнения для vagrant, если пользуетесь им;
composer — автодополнения и алиасы;
sudo — если для выполнения команды потребовались права суперпользователя, плагин позволит не возвращаться в начало строки, а нажать два раза Esc, и он добавит sudo в начало команды.
И пара интересных внешних плагинов:
zsh-syntax-highlighting — добавляет подсветку синтаксиса, подсвечивает команду если в написании допущена ошибка;
zsh-autosuggestions — предугадывает команды на основе ранее вводимых.
Алиасы
Алиасы или псевдонимы — это сокращения для длинных команд или даже последовательности команд.
Список текущих алиасов Oh My Zsh можно посмотреть командой:
Свои алиасы можно добавлять в файле
Шпаргалка с алиасами встроенными в Oh My Zsh доступна на странице репозитория . Ознакомьтесь, а лучше запомните.
Ссылки
На этом всё. Но вы можете поддержать проект. Даже небольшая сумма поможет нам писать больше полезных статей.
Если статья помогла или понравилась, пожалуйста поделитесь ей в соцсетях.
Источник