Rofi (Русский)

From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи Rofi. Дата последней синхронизации: 23 февраля 2023. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Rofi — переключатель окон, диалоговое окно для запуска приложений и ssh, а также замена dmenu. Разрабатывался как клон simpleswitcher, написанного Sean Pringle, а затем расширенного Dave Davenport.

Установка

Установите пакет rofi для использования с оконным сервером Xorg.

Поддержка для Wayland-композиторов в основной ветке приостановлена на неопределенный срок [1]. Для поддержки Wayland, вместо этого, установите rofi-lbonn-waylandAUR или rofi-lbonn-wayland-gitAUR для разработчиков. Обратите внимание, для этих пакетов требуется композитор Wayland, поддерживающий протокол Layer Shell. Сюда входят wlroots-based композиторы, такие как Sway, и некоторые Mir-based композиторы, но не входит, например, mutter, композитор для Gnome.

Чтобы узнать больше о rofi и его использовании, смотрите rofi(1).

Настройка

Существует два способа для задания параметров настроек:

  • Локальная настройка. Обычно, в зависимости от XDG, располагается в ~/.config/rofi/config.rasi.
  • Параметры командной строки:
$ rofi -combi-modi window,drun,ssh -theme solarized -font "hack 10" -show combi

можно выразить в файле настроек следующим образом:

configuration {
 modi: "window,drun,ssh,combi";
 font: "hack 10";
 combi-modi: "window,drun,ssh";
 }
@theme "solarized"

Чтобы получить полный список параметров файла config.rasi, выполните rofi -dump-config. Вы также можете записать вывод команды непосредственно в файл настроек с помощью rofi -dump-config > ~/.config/rofi/config.rasi

Примечание: Пользователи i3 должны знать, что использование запятых в файле настроек i3 может привести к проблемам. Чтобы назначить запуск rofi на сочетание клавиш, используйте файл настроек rofi или замените запятые символом #, например: rofi -combi-modi window#drun#ssh.

Значки

Можно использовать значки для отображения с соответствующими элементами. Предполагая, что у вас установлен papirus-icon-theme, с -show-icons и определением темы значков с -icon-theme, можно настроить отображение значков rofi и выполнить следующее:

$ rofi -combi-modi window,drun,ssh -theme solarized -font "hack 10" -show combi -icon-theme "Papirus" -show-icons

Пользовательские темы

Вы можете просмотреть и применить темы для rofi с помощью

$ rofi-theme-selector

rofi-theme(5) содержит подробные инструкции о том, как создать тему rofi, используя пользовательский CSS-подобный язык. Эта страница содержит дополнительную информацию о системе компоновки, используемой rofi, точном синтаксисе, используемом для темы rofi, а также дополнительные инструкции по оформлению большинства свойств rofi. Система тем rofi может быть простой (тема dmenu по умолчанию содержит около 30 строк CSS), но она достаточно гибкая для создания различных интерактивных, widget-like апплетов и меню, вроде rofi-advanced.

Предоставляемые темы

Rofi поставляется с несколькими официальными темами, хранящимися в /usr/share/rofi/themes; пользовательские темы можно найти в репозитории rofi-themes.

Загрузите официальную либо скачайте пользовательскую .rasi-тему и поместите её в ~/.config/rofi/example.rasi. После этого загрузите тему с помощью параметра командной строки:

$ rofi options -theme example

или с помощью файла настроек вне блока configuration { }:

@theme "example"

Советы и рекомендации

Rofi как замена dmenu

Вызванный как dmenu (через символическую ссылку), rofi ведет себя подобно dmenu. Программы, вызывающие dmenu (например passmenu из pass), будут использовать rofi вместо dmenu. Точное поведение rofi в dmenu-режиме описано в rofi-dmenu(5).

Чтобы rofi приобрёл внешний вид, похожий на внешний вид dmenu, скопируйте файл /usr/share/rofi/themes/dmenu.rasi, поставляемый по умолчанию в пакете rofi, в каталог конфигурации rofi (обычно это ~/.config/rofi) и включите его, добавив @theme dmenu в конец config.rasi, или с помощью опции -theme dmenu в командной строке.

Выполнение команд оболочки из rofi

Если вы хотите запускать команды оболочки или ваши собственные скрипты непосредственно из rofi с просмотром вывода, убедитесь, что сделано следующее.

Определите -run-shell-command '{terminal} -e SHELL -ic "{cmd} && read", где SHELL — ваша оболочка (например bash, zsh). Это позволит вам ввести команду на панели ввода, а затем Shift+Enter. Терминал остается открытым до следующего нажатия клавиши.

Пример для i3 с использованием экранированной последовательности:

bindsym $mod+d exec --no-startup-id rofi -show drun -run-shell-command '{terminal} -e zsh -ic "{cmd} && read"'

Интеграция выбора Unicode

Установите rofimoji для выбора смайликов/символов Unicode, интегрированного в rofi. Смотрите README проекта для использования и настройки.

Меню выбора эмодзи

Установите rofi-emoji для средства выбора смайликов, интегрированного с rofi. Смотрите README проекта для подробностей использования.

Если вы столкнулись с проблемами рендеринга эмодзи (например, в виде прямоугольников), установите ttf-symbolaAUR, noto-fonts-cjk и/или noto-fonts-emoji

Rofi как меню управления питанием

Rofi можно использовать для управления питанием с помощью systemd. Клонируйте репозиторий rofi-power-menu. Чтобы запустить его, укажите rofi, где найти исполняемый файл rofi-power-menu. Например, если исполняемый файл находится в $HOME/.rofi-power-menu:

$ rofi -show p -modi p:$HOME/.rofi-power-menu

Вы также можете поместить исполняемый файл в PATH и передать только его имя.

Для отображения символов по умолчанию вам может потребоваться ttf-nerd-fonts-symbols.

Для подробностей читайте файл README в репозитории.

Rofi как менеджер буфера обмена

Rofi можно использовать как менеджер буфера обмена X11 с помощью Greenclip. Установите пакет rofi-greenclipAUR.