Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Усовершенствуйте свой терминал с помощью утилиты powerline

Оригинал: Add power to your terminal with powerline
Автор: Paul W. Frields
Дата публикации: 4 сентября 2015 г.
Перевод: А.Панин
Дата перевода: 8 октября 2015 г.

Усовершенствуйте свой терминал с помощью утилиты powerline

Не так давно в Fedora Magzine было опубликовано интервью с системным архитектором компании Rackspace Major Hayden, в котором он упомянул об утилите powerline. Если вы постоянно работаете с терминалом, утилита powerline может оказаться полезной и для вас. Она будет предоставлять полезную информацию о состоянии вашей системы и поможет организовать продуктивный рабочий процесс.

Для командной оболочки

По умолчанию плагин для командной оболочки предоставляет пользователю большой объем полезной информации:

  • Имя, использованное при входе в систему

  • Локальное время

  • Текущая рабочая директория или путь. Путь автоматически сокращается при превышении ширины терминала.

  • Количество активных фоновых задач.

  • Имя узла в случае соединения по протоколу SSH с удаленной системой, на которой установлен пакет программного обеспечения powerline.

Возможности утилиты позволяют избежать сложных манипуляций с переменными окружения и сценариями командной оболочки! Для установки утилиты следует открыть терминал и выполнить следующую команду:

sudo dnf install powerline

При написании следующих инструкций предполагалось, что вы используете стандартную командную оболочку bash дистрибутива Fedora. Если вы используете другую командную оболочку, обратитесь за инструкциями к документации.

На следующем этапе следует настроить командную оболочку bash для использования powerline по умолчанию. Добавьте следующий фрагмент кода в ваш файл ~/.bashrc:

if [ -f `which powerline-daemon` ]; then
  powerline-daemon -q
  POWERLINE_BASH_CONTINUATION=1
  POWERLINE_BASH_SELECT=1
  . /usr/share/powerline/bash/powerline.sh
fi

Для активации изменений откройте новую командную оболочку или терминал. Ваш терминал должен выглядеть аналогичным образом:

Powerline для командной оболочки

Попробуйте изменить текущую директорию. Обратите внимание на то, как вместе с текущей директорией изменяется "сегментированное" приветствие. Это очень удобно! Также вы в любой момент можете узнать количество ожидающих фоновых задач. А в том случае, если пакет программного обеспечения powerline установлен на удаленной системе, приветствие будет включать имя узла при каждом соединении с этой системой по протоколу SSH.

Для tmux

Если вы привыкли работать с терминалом, вы скорее всего также знаете о tmux. Данная утилита позволяет разделить ваш терминал на множество окон и панелей, каждая из которых работает в рамках собственной сессии. Но стандартная строка состояния tmux не сравнится по информативности с утилитой powerline, выводящей следующую информацию при использовании настроек по умолчанию:

  • Информация об окне

  • Информация о загруженности системы

  • Дата и время

  • Имя узла, если вы соединились с удаленной системой по протоколу SSH

Исходя из этого, давайте установим необходимый плагин:

sudo dnf install tmux-powerline

Теперь следует добавить эту строку в ваш файл ~/.tmux.conf:

source "/usr/share/tmux/powerline.conf"

После этого следует удалить или закомментировать все строки файла конфигурации tmux с параметрами, относящимися к длине и содержанию строки состояния. Примерами этих параметров являются параметры status-left, status-right, status-left-length и status-right-length.

Ваши параметры конфигурации будут храниться в файле ~/.tmux.conf. Если в вашей системе нет этого файла, вы можете загрузить образец данного файла из сети или скопировать образец из директории /usr/share/doc/tmux/examples в файл с именем ~/.tmux.conf, после чего отредактировать его в соответствии с своими предпочтениями.

При следующем запуске tmux вы должны увидеть строку состояния powerline:

Powerline для tmux

Для vim

Если вы используете текстовый реактор vim, вам также повезло. Для vim также существует мощный плагин. По умолчанию он выводит следующую информацию:

  • Режим работы (обычный, вставка, замена)

  • Текущая директория и имя файла

  • Кодировки текста

  • Позиция в рамках документа и строки

Для установки плагина следует использовать следующую команду:

sudo dnf install vim-plugin-powerline

Теперь добавьте следующие строки в ваш файл ~/.vimrc:

python from powerline.vim import setup as powerline_setup
python powerline_setup()
python del powerline_setup
set laststatus=2
set t_Co=256

После этого вы можете запустить vim обнаружить новую элегантную строку состояния:

Powerline для vim

Настройка powerline

Ни одна из утилит с интерфейсом командной строки не может обойтись без параметров конфигурации. Хотя в данном случае процесс конфигурации не является достаточно простым; вы должны иметь опыт работы с файлами формата JSON. Как бы то ни было, официальный набор документации утилиты содержит полное руководство по ее конфигурации. Также ввиду того, что при разработке утилиты использовался язык программирования Python, имеется безграничное количество вариантов ее модификации.

Изменения конфигурации утилиты связаны с добавлением, изменением или удалением сегментов. Существует огромное количество сегментов, например:

  • Сегменты управления содержимым переменных окружения

  • Сегменты данных системы контроля версий (такие, как git branch и status!)

  • Сегменты информации о погоде

  • ...и множество других сегментов.

Для изменения формата вывода информации о состоянии системы в рамках окружения вам следует создать или отредактировать конфигурационные файлы в директории ~/.config/powerline. Эти конфигурационные файлы хранятся в формате тем для каждого из плагинов. Вы можете использовать утилиту powerline-lint для проверки корректности ваших файлов конфигурации и выявления ошибок после внесения изменений в них.

Некоторые изменения могут потребовать перезапуска сессии и, возможно, перезапуска демона:

powerline-daemon --replace

Теперь вы можете получать информацию о состоянии вашей системы, не отвлекаясь от работы любимыми инструментами!