Git

Менеджер окон niri

niri это композитор Wayland с прокручиваемым тайлингом. Если вы привыкли к окнам, которые лежат друг на друге, первые полчаса будут непривычны, а потом многие не хотят возвращаться.

Лента окон#

Окна стоят в колонках на бесконечной горизонтальной ленте. Открыли новое окно: оно появляется рядом, а остальные не сжимаются. Нужное окно «доезжает» в видимую область, когда вы переходите на него.

  • Колонка это вертикальная стопка из одного или нескольких окон.
  • Лента это все колонки одного рабочего стола, она бесконечна вправо.
  • Окно может быть плавающим, тогда оно не занимает место в ленте.

Рабочие столы#

Рабочие столы в niri динамические, как в GNOME: они располагаются вертикально, пустой стол всегда ждёт внизу. Между столами переключаются клавишами Mod+Page_Down и Mod+Page_Up (а также Mod+U и Mod+I) или по номеру Mod+1 … Mod+9.

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

Обзор#

Mod+A или Mod+Tab открывает обзор: рабочие столы и окна уменьшаются, и можно выбрать нужное мышью. Обзор удобен, когда потерялся и не помнишь, в какой колонке окно.

Основные действия#

Что нужноСочетание
Запустить терминалMod+Return
Открыть лаунчерMod+D
Закрыть окноMod+Q
Перейти влево или вправо по колонкамMod+← и Mod+→ (или Mod+H, Mod+L)
Перейти вверх или вниз внутри колонкиMod+↑ и Mod+↓ (или Mod+K, Mod+J)
Сдвинуть колонкуMod+Ctrl+← и Mod+Ctrl+→
Развернуть колонкуMod+F
На весь экранMod+Shift+F
Сделать окно плавающимMod+V
Объединить окна в колонкуMod+[ и Mod+]

Полный список в разделе горячие клавиши. Его же можно открыть прямо в системе: Mod+Shift+/.

Мышь и колесо#

Окнами и столами удобно управлять и мышью, если зажать Mod:

Что делаетеЧто происходит
Mod + вертикальное колесостол выше или ниже
Mod + горизонтальное (боковое) колёсикоколонка слева или справа
Mod+Ctrl + вертикальное колесоперенести колонку на другой стол
Mod+Ctrl + горизонтальное колёсикосдвинуть колонку по ленте
Mod + средняя кнопка мышизакрыть окно

Боковое колёсико есть, например, у мышей Logitech MX Master. На обычной мыши то же самое делает Mod+Shift с вертикальным колесом: фокус смещается по колонкам.

Размеры колонок#

Mod+R по кругу переключает типовые ширины колонки. Mod+Minus и Mod+Equal меняют ширину на 10%. Mod+C центрирует колонку, Mod+Ctrl+F растягивает её на всё свободное место.

Скриншоты и запись экрана#

  • Print делает снимок области по выбору.
  • Ctrl+Print снимает весь экран.
  • Alt+Print снимает текущее окно.

Запись экрана и отдельного окна работает через xdg-desktop-portal-gnome.

Старые приложения X11#

Программы, которые умеют только X11, запускаются через xwayland-satellite. Отдельно ничего настраивать не нужно.

Что настраивается в конфиге#

Конфиг niri лежит в ~/.config/niri/config.kdl, а сочетания клавиш вынесены в ~/.config/niri/binds.kdl. Менять сочетания удобно через Tuner на странице «Клавиатура». Если правите файл вручную, помните, что niri перечитывает конфиг на лету.

Важно. Панель, лаунчер и уведомления в niri не входят: это отдельная программа Niti, которая запускается пользовательской службой niti.service.