воскресенье, 23 сентября 2007 г.

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

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

~/.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/и_т._д. - рулят!

Комментариев нет: