Найти в Дзене
🐍 Путь Питониста

💻 Чем i3 лучше Gnome и KDE? Тайловый оконный менеджер для Linux

До знакомства с Linux моё представление о графическом интерфейсе персонального компьютера было ограничено типичной картиной: окошки, к которым сверху приклеена панель названия. На панельке есть три кнопочки: свернуть, развернуть и закрыть. А ещё есть панелька с запущенными программами и часами. Окошки можно двигать за панельку и можно растягивать, потянув за краешек. Конечно, от системы к системе есть небольшие различия: где-то панель задач находится сверху, а где-то снизу, где-то кнопки управления окном слева, а где-то справа. Но особой сути это не меняет: мы всё также открываем окошки друг над другом. Если они нам загораживают нужные окна, мы их либо сворачиваем, либо нажимаем на окно нужное и оно встаёт на передний план. Если нам нужно увидеть больше элементов интерфейса, например, в файловом менеджере, то мы жмём "Развернуть" и теперь окно занимает весь экран. В современных системах уже появилась полезная функция - прилипание. Захватил окошко мышкой, подвёл к краю, отпустил - и теп
Оглавление

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

Конечно, от системы к системе есть небольшие различия: где-то панель задач находится сверху, а где-то снизу, где-то кнопки управления окном слева, а где-то справа. Но особой сути это не меняет: мы всё также открываем окошки друг над другом. Если они нам загораживают нужные окна, мы их либо сворачиваем, либо нажимаем на окно нужное и оно встаёт на передний план. Если нам нужно увидеть больше элементов интерфейса, например, в файловом менеджере, то мы жмём "Развернуть" и теперь окно занимает весь экран.

Источник: https://www.reddit.com/r/unixporn/comments/c0i8e1/i3gaps_neon_80s/
Источник: https://www.reddit.com/r/unixporn/comments/c0i8e1/i3gaps_neon_80s/

В современных системах уже появилась полезная функция - прилипание. Захватил окошко мышкой, подвёл к краю, отпустил - и теперь окно занимает 50% экрана. А другую половину заполняешь другой программой. Если тебе нужно работать с четырьмя программами одновременно, то ты открываешь их на четверть экрана каждую. И так каждый раз в подобной ситуации. А почему бы это не автоматизировать? Чтобы окошки, открываясь, автоматически занимали половину экрана, если их два? Или четверть экрана, если их четыре?

Ну так это уже было давно сделано в плиточных оконных менеджерах (tiling window manager). И про один из них я Вам сегодня расскажу.

Что такое оконный менеджер?

Сперва, давайте уточним, что такое оконный менеджер в Linux. Оконный менеджер - это программа, которая управляет расположением и размером окон на рабочем столе, а также рисует интерфейс для управления ими (имеются ввиду края окна и панель названия). Также оконный менеджер управляет виртуальными рабочими столами.

Gnome и KDE - оконные менеджеры?

Нет. Gnome, KDE, XFCE, Cinnamon, Pantheon и многие другие - окружения рабочего стола (desktop enviroment или просто DE). Это целый набор программ, выполненных в одном логическом стиле и формирующие единую экосистему. В состав каждого окружения входит свой оконный менеджер. У Gnome есть Mutter, у KDE есть KWin, у Cinnamon есть Muffin, у XFCE есть Xfwm. Сравнивать голый i3 с Gnome и KDE не совсем корректно. Но я очень редко встречал, чтобы кто-то использовал, например, KWin отдельно от остальных программ KDE.

i3 - плиточный оконный менеджер

Перейдём к делу. Чем же всё-таки i3 отличается от привычных оконных менеджеров? Для этого давайте просто взглянем на то, как он работает.

-2

Допустим, перед нами пустой рабочий стол. Открываем программу. Например, файловый менеджер.

-3

Он открылся на весь экран. Пока что ничего необычного.
Параллельно, нам нужно что-то делать в терминале. Открываем...

-4

И сразу видим, что что-то не так. Новое окно открылось не поверх старого, а рядом с ним, поделив место на экране пополам. То есть нам не надо тратить время на перемещение окон, i3 сделал это за нас. Мы можем сразу же одинаково эффективно работать с обеими программами.

Ок, понадобилось что-то загуглить или скачать. Открываем браузер...

-5

Опять, i3 поделил место на экране, чтобы можно было комфортно работать со всеми программами. И в общем-то с браузером так работать можно, но я предпочитаю, чтобы всё таки окошко было побольше. Поменяю его местами с окном побольше.

-6

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

-7

Теперь я вообще хочу чтобы терминал превратился во всем нам привычное окно, а браузер занимал побольше места. Без проблем.

-8

Ну, я надеюсь, что суть Вы уловили. i3 автоматически открывает окна так, чтобы они занимали 100% свободной площади экрана, но при этом все оставались видимыми. При этом он, как и обычный оконный менеджер, позволяет нам перемещать окна (точнее скачать, менять их местами) и изменять их размер, автоматически подстраивая размер остальных окон.

Пример того, как можно настроить и пользоваться i3:

Конечно, если мы откроем 6-7 окон, то они все будут крошечные и мешать друг другу. Будет тесно. Кроме того, иногда мы всё-таки хотим, чтобы окно открылось на весь экран даже, если оно не единственное.
Поэтому i3 также поддерживает обычный функционал виртуальных рабочих столов. Мы спокойно можем туда переместить некоторые окна и переключаться между рабочими столами по необходимости.

Как без элементов управления манипулировать окнами?

i3 создан по принципу keyboard-driven workflow. Это значит, что абсолютно всем здесь можно управлять с помощью клавиатуры. Перемещение окон, открытие и закрытие программ, переключение виртуальных рабочих столов и прочее. Возможность обходится без мыши замечательно подойдёт для владельцев ноутбуков, т.к. теперь неудобный тачпад практически не нужен.

Источник: https://www.reddit.com/r/unixporn/comments/emcqz2/i3gaps_pocket_2_with_arco_linux/
Источник: https://www.reddit.com/r/unixporn/comments/emcqz2/i3gaps_pocket_2_with_arco_linux/

Конечно, мышь никто не отменял, некоторые операции здесь можно выполнять и привычным способом. Например, переключать между рабочими столами или перемещать окна, открытые в стандартном "парящем" режиме.

Ну и как Вы могли заметить, окна можно открывать так, как они открываются в стандартных оконных менеджерах, чтобы они были "над" другими окнами. Кстати, модальные окна, которые было бы глупо открывать на весь экран, автоматически появляются поверх остальных окон в привычном размере.

i3 - это только оконный менеджер. А как же остальные части окружения рабочего стола?

Да, i3 поставляется с парой других программ и всё. Здесь нет ни уведомлений, ни эффектов рабочего стола, ни окна настроек. Даже фоновую картинку нельзя установить. Как же быть?

Под Linux есть много программ, выполняющих все эти задачи на ура, но при этом не привязаных к какому-то определённому окружению. Конечно, на установку и настройку всего этого придётся потратить какое-то время.

Источник: https://www.reddit.com/r/unixporn/comments/epoc70/i3gaps_15yo_zoomers_i3_setup/
Источник: https://www.reddit.com/r/unixporn/comments/epoc70/i3gaps_15yo_zoomers_i3_setup/

Не хочу тратить время! Хочу что бы за меня уже всё продумали!

Вы без проблем можете найти дистрибутивы с предустановленным и настроенным i3 и пакетом остальных программ.

Вот некоторые дистрибутивы, имеющие версию с i3:

Как я могу попробовать i3?

Источник: https://www.reddit.com/r/unixporn/comments/8monwi/i3gapspolybar_my_first_attempt_at_ricing/?utm_source=share&utm_medium=web2x
Источник: https://www.reddit.com/r/unixporn/comments/8monwi/i3gapspolybar_my_first_attempt_at_ricing/?utm_source=share&utm_medium=web2x

i3wm (i3 window manager) распространяется в пакете i3 вместе с парой утилит (статусбар, экран блокировки, лаунчер программ) и есть в репозиториях всех основных дистрибутивов. Вы можете установить его с помощью Вашего пакетного менеджера.

После этого разлогиньтесь. И заново войдите, но при этом выбрав i3 в качестве оконного менеджера (на экране входа есть меню с выбором). Советую открыть сайт с документацией, например, на телефоне. Она вам понадобится.

Конечно же, плиточные оконные менеджеры не подойдут всем без исключения. Если Вы постоянно работаете с мышкой, либо кроме браузера вам ничего не нужно, то и на i3 вы скорее всего лишь зря потратите время.

Но если мышку Вы трогаете редко (например Вы программист или писатель, то возможно, что i3 вам идеально подойдёт).

И на этом у меня всё. Спасибо, что дочитали.

❤️ Буду рад, если Вы поставите лайк, я хоть буду знать, что не зря всё это пишу 😊 Подписывайтесь, если хотите и дальше читать про интересные и необычные программы под Linux, о которых Вы могли не знать.