Enlightenment - out from the crowd

sda00

2007-12-19

Тема WM/DE всегда вызывает нездоровый ажиотаж. Порой кажется, что приверженцы того или иного WM-а или DE готовы вылить друг на друга ушат помоев, превратив любую дискуссию в безобразную перепалку, лишённую и намёка на смысл. При этом вопросы удобства, функциональности и т.п. становятся совершенно излишними. Холивар! Бей <вписать_требуемое> спасай Россию! Благо обилие wm-ов к тому располагает. На мой совершенно неискушённый взгляд есть некий треугольник во всём этом безобразии. Нет, более уместно будет говорить не о трио, но о 2-х полюсах: MAC OS и голая консоль терминала (из желания подчеркнуть, что известная компания из Рэдмонда таки скоммуниздила основы дизайна экскьюз май бэд фрэнч). И несётся из углов: "мышой возюкать", "клаву топтать", "юзабилити", "дружественность", "<сами_впишите_что_считаете_нужным>". Касаясь личных предпочтений - интерфейс Mac OS X мне ближе командной строки, поскольку он (imho) более ориентирован на выполнение какой-либо работы (пример: выделяем текст в любом окне, идём в сервисы и видим, что мы с этим текстом можем сразу сделать - проверить орфографию, послать по почте и т.п. - интеграция системы и приложений великолепнейшая. Вся организация меню строится на действиях, приложениях, а не на бессмысленной кнопке "Пуск" и последующем блуждании в дебрях чужого "разума", состояние психического здоровья которого оставляет желать лучшего).

Среди всего этого хаоса Enlightenment выделялся всегда. Полностью согласен с утверждением, что это - единственный WM, позволяющий контролировать любой аспект своей деятельности и дающий пользователю делать именно то, что он хочет (а не то, что иной WM считает правильным в той или иной ситуации). Сейчас в стадии активной разработки находится DR17 (E17, Enlightenment DR17), стабильным же считается DR16 (E16, Enlightenment DR16). Во многом они похожи, чего не скажешь по внешнему виду. Е17 принёс с собой класс библиотек EFL - Enlightenment Foundation Libraries, в то время как основой прежних релизов Е выступала лишь imlib, переросшая впоследствии в imlib2 (намеренно упускаю fnlib, поскольку ныне неактуальна, а слухи о появлении собственной "шрифтовой" библиотеки для Е17-го изрядно поднадоели).

Если вести разговор с точки зрения поддержки EWMH, NetWM или прочих стандартов, то достаточно ознакомиться с файлом COMPLIANCE в корневом каталоге с исходниками Е16-го. Можно при желании запустить в консоли eesh и управлять WM-ом посредством командной строки (для Е17-го то же самое проделывается при помощи команды enlightenment_remote). Одной из лучших характеристик Е является следующая: "Если Вы в состоянии создать картинку - Вы можете заставить Е выглядеть точно также" (Rob Malda). Ни в коей мере не хочу принижать достоинства прочих, имя которым - легион: ion, wmii, dwm, twm, fvvm, windowmaker, icewm, cde и т.д.. долгое время пользовал windowmaker пока не захотелось чего-то совершенно особенного. Не могу назвать выбор Е объективным - пришло ощущение, что это - моё. так оно и началось. Заинтересовался Е17-м - появился сайт: http://rootshell.be/~sda00/,

где в довольно сумбурной форме нарисованы заметки об этом WM-е: http://rootshell.be/~sda00/notes.html .

Позвольте же в заключение выложить довольно неуклюжий конфиг Е16-го (файл ~/.e16/bindings.cfg). Он мало чем отличается от дефолта:

  • Alt+Esc - запуск exige (простая командная строка Е17-го)
  • Ctl+Esc - запуск urxvt
  • Ctl+F1 - показ всех запущенных приложений на всех столах с возможностью выбора нужного
  • Ctl+F2 - выключение пэйджера (он у меня самого большого размера, удобно окна таскать сразу по пейджеру, чем париться с переключениями)
  • Ctl+F3 - включение пэйджера
  • Shift+F8 - максимизация приложения на весь экран с "бордюрами"
  • Shift+F9 - минимизация/сворачивание приложения
  • Shift+F10 - максимизация приложения на весь экран без "бордюров" оформления темы
  • Shift+F11 - отображение приложения без "бордюров"
  • Shift+F12 - отображение приложения c "бордюром" по умолчанию (как правило количество типов "бордюров" зависит от темы и ограничено лишь фантазией создателя оной. любой из доступных "бордюров" может стать дефолтным для выбранного приложения) выключена реакция Е на щелчки левой кнопкой мыши (вместе со всеми возможными "модификаторами") по рабочему столу.
$ cat ~/.e16/bindings.cfg

Aclass BUTTONBINDINGS normal MouseDown A 1 wop * mo ptr MouseDown SA 1 wop = mo ptr MouseDouble A 1 wop * shade MouseDown A 2 wop * sz ptr MouseDouble A 2 wop * th available MouseDown A 3 menus show WINOPS_MENU Aclass DESKBINDINGS normal Tooltip Clicking your mouse on the desktop will perform Tooltip the following actions Tooltip Display User Menus Tooltip Display Enlightenment Menu Tooltip Display Settings Menu MouseDown - 2 menus show ROOT_2 Tooltip Display Enlightenment Menu MouseDown A 2 menus show windowlist Tooltip Display Task List Menu MouseDown C 2 menus show deskmenu Tooltip Display Desktop Menu MouseDown S 2 menus show groupmenu Tooltip Display Group Menu MouseDown - 3 menus show CONFIG_SUBMENU Tooltip Display Settings Menu MouseDown * 4 desk prev Tooltip Go Back a Desktop MouseDown * 5 desk next Tooltip Go Forward a Desktop Aclass KEYBINDINGS global KeyDown A F1 desk goto 0 KeyDown A F2 desk goto 1 KeyDown A F3 desk goto 2 KeyDown A F4 desk goto 3 KeyDown A F5 desk goto 4 KeyDown A F6 desk goto 5 KeyDown A F7 desk goto 6 KeyDown A F8 desk goto 7 KeyDown A Tab focus next KeyDown SA Down area move 0 1 KeyDown SA Up area move 0 -1 KeyDown SA Left area move -1 0 KeyDown SA Right area move 1 0 KeyDown CA Delete exit logout KeyDown CA End exit restart KeyDown CA Right desk next KeyDown CA Left desk prev KeyDown CA Return desk this KeyDown CA Up wop * raise KeyDown CA Down wop * lower KeyDown CA x wop * close KeyDown CA k wop * kill KeyDown CA s wop * stick KeyDown CA i wop * iconify KeyDown CA r wop * shade KeyDown CA f wop * fullscreen KeyDown CA m wop * ts conservative KeyDown CA w menus show WINOPS_MENU KeyDown CA a button_show all KeyDown CA b button_show KeyDown CA c button_show buttons CONFIG* KeyDown CA d desk dragbar dir KeyDown CA o desk dragbar order KeyDown CS F1 menus show APPS_SUBMENU KeyDown CS F2 menus show ROOT_2 KeyDown CS F3 menus show CONFIG_SUBMENU KeyDown CS F4 menus show windowlist KeyDown S F9 wop * iconify KeyDown S F10 wop * fullscreen KeyDown S F11 wop * border BORDERLESS KeyDown S F12 wop * border DEFAULT KeyDown C F1 menus show windowlist KeyDown A Escape exec exige KeyDown C F2 exec /opt/e16/bin/eesh "pager off" KeyDown C F3 exec /opt/e16/bin/eesh "pager on" KeyDown S F8 wop * ts KeyDown C Escape exec urxvt

Для создания своего уникального меню пользователя, ознакомьтесь с файлом ~/.e16/menus/file.menu (его можно редактировать с помощью e16menuedit2).

Е16-ый вместе со всеми доступными epplets (эпплетами), инструментами для конфигурирования, библиотеками и т.п. занимает порядка 20мб. Работает молниеносно, прекрасно поддерживает композит, прозрачность, Alt+правая кнопка мыши на любом запущенном приложении (по умолчанию) даст такое количество опций, о которых "вы всегда мечтали, но боялись спросить".

Контроль, гибкость, свобода... ARE YOU ENLIGHTENED ???