E17 - tips & tricks, часть I

sda00

2007-12-19

Первое, что слегка настораживает - поиск информации обо всех доступных модулях время от времени становится возможным только вручную. К счастью они могут быть расположены всего в двух местах:

 ~/.e/e/modules
$prefix/lib/enlightenment/modules

Где prefix = каталог_установки_e17-го. для активации желаемого модуля стоит воспользоваться следующими командами:

 enlightenment_remote -module-load имя_модуля
enlightenment_remote -module-enable имя_модуля

Любой загруженный модуль отъедает чуток памяти. Выгрузка неиспользуемых модулей для машин с малым объёмом ОЗУ будет очень полезна:

 enlightenment_remote -module-disable имя_модуля
enlightenment_remote -module-unload имя_модуля

Второе - это формирование собственного Favorite Applications меню. Гуёвый тулкит не предусматривает создание вложенных каталогов с элементами меню (субменю). Не страшно, поскольку с недавних пор вывод меню полностью соответствует стандартам freedesktop. Рассмотрим, с чем нам предстоит работать. Для этого создадим при помощи Enlightenment Configuration Panel->Menus->Favorites Menu ярлычок например для Bluefish (очень неплохого редактора для всяких глупостей). После чего у нас появится файлик ~/.e/e/applications/menu/favorite.menu со следующим содержанием (пропущены 2 первые строки с хэдером xml-а и указателем !DOCTYPE):

$ cat favorite.menu.bak

<Menu>
<Name>(null)</Name>
<DefaultAppDirs/>
<DefaultDirectoryDirs/>
<Layout>
<Filename>bluefish.desktop</Filename>
</Layout>
<Include>
<Filename>bluefish.desktop</Filename>
</Include>
</Menu>

при подобном "построении" с использованием Layout-а добавить туда каталог с "ярлычками" своих любимых программ чуток труднее, чем переписать саму структуру этого файла с нуля. Сам же файл bluefish.desktop создан в ~/.local/share/applications, значит ~/.local/share/desktop-directories - это и есть каталог для создания .directory файла (в соответствии со спецификациями freedesktop для создания своего субменю нам нужен .directory файл и .desktop файл/файлы, расположенные в datadir/desktop-directories и datadir/applications соответственно). Мне всегда хотелось иметь все EFL приложения, собранные в одном месте. поэтому создал файлик ~/.local/share/desktop-directories/e17_apps.directory:

$ cat e17_apps.directory

[Desktop Entry] Encoding=UTF-8 Icon=~/.icons/nuoveXT.2.2/128x128/places/folder.png Icon[en_US]=~/.icons/nuoveXT.2.2/128x128/places/folder.png Name=E17_Apps

desktop файлы в ~/.local/share/applications создаются в момент присвоения окнам необходимых иконок. меняем структуру ~/.e/e/applications/menu/favorite.menu на следующую:

<Menu>
<Name>Other</Name>
<Menu>
<Name>E17_Apps</Name>
<DefaultAppDirs/>
<DefaultDirectoryDirs/>
<Directory>E17_Apps</Directory>
<Include>
<Filename>exhibit.desktop</Filename>
</Include>
</Menu>
<DefaultAppDirs/>
<DefaultDirectoryDirs/>
<Include>
<Filename>bluefish.desktop</Filename>
</Include>
</Menu>

Всё что остаётся - заполнить элементы нашего меню по усмотрению и наслаждаться результатом:

Иконка на субменю правда не подхватилась, но это уже мелочи (видимо опять чего-то не учёл). К сожалению любая модификация получившегося меню с помощью гуи E17-го приведёт к утере наших изменений, посему... vim/bluefish/kate/emacs/и_т._д. - рулят!