Редактируем всплывающее меню

На форуме Linuxforum.ru задали вопрос. Вот и мне стало интересно, а действительно как во всплывающем меню, по клику правой клавишей мышки, можно добавить свои пункты, т.е. расширить подпункт «Действие». Как там было в Windows 98 я не помню, поэтому взялся за изучение материала. Всё оказалось достаточно просто. Итак, имеем установленный Testing и 3.5.7 (в других дистрибутивах действуем по аналогии).

В качестве примера попробуем сделать так, чтобы можно было, воспользовавшись правой клавишей мышки, посмотреть сохранённый документ в формате MS Word в виде простого html. Для начала необходимо убедиться, что пакет wv установлен. Если этого пакета в вашей системе нет, то устанавливаем его (воспользуйтесь менеджером пакетов своего дистрибутива):

$ sudo aptitude install wv

После того, как установится пакет, открывайте любимый текстовый редактор (я буду использовать kate) создайте пустой файл, в который необходимо поместить следующий код:

[Desktop Entry]
ServiceTypes=application/msword
Actions=ViewDocAsHTML
[Desktop Action ViewDocAsHTML]
Name=View Word Doc as HTML
Name[ru]=Просмотр MS Doc как HTML
Exec=wvHtml --targetdir=/tmp %f temp.html; konqueror /tmp/temp.html

Теперь нам необходимо сохранить этот файл, назовём его как «view-doc-as-html.desktop», в пользовательском каталоге KDE, а именно (включите отображение скрытых файлов)

$ /home/<пользователь>/.kde/share/apps/konqueror/servicemenus/

Да собственно всё. Открываем konqueror в режиме менеджера файлов, находим любой вордовский документ, щёлкаем правой кнопкой мыши и выбираем из всплывающего меню: Действие -> Просмотр MS Word как HTML. Наш документ откроется в браузере konqueror. Что нам и требовалось.

Free Image Hosting at www.ImageShack.us

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

Снова открываем любимый текстовый редактор и пишем следующий код

[Desktop Entry]
ServiceTypes=all/allfiles
Actions=SendToEmail
[Desktop Action SendToEmail]
Name=Send attachment
Name[ru]=Отправить как вложение
Exec=kmail %f

Сохраняем этот файл в тот же каталог, что и предыдущий пример, только называем его, например, так «send-to-email.desktop». Всё хорошо и отлично работает, вот только хочется добавить иконки в это меню. Это сделать ещё проще. В секцию [Desktop Action SendToEmail] просто добавляем новый параметр Icon=kmail.

Теперь у нас напротив пункта «Отправить как вложение» появился значёк — конвертик — почтовой программы. Список mime-type можно посмотреть в Центре Управления — Компоненты — Привязки файлов.

И ещё один момент. Здесь я рассмотрел пример создания всплывающего меню для конкретного пользователя, т.е. для себя любимого. Если же вам надо сделать такое меню остальным пользователям, которые имеют доступ к компьютеру, то выше перечисленные файлы необходимо сохранять в /usr/share/apps/konqueror/servicemenus/ или в /opt/kde3/share/apps/konqueror/servicemenus/.

Редактируем всплывающее меню: 10 комментариев

  1. Ну ты же написал «юмор», я и посмеялся =)

    А так в закладки добавил =)

  2. 🙂 Да работа отнимает всё свободное и не свободное время... никак дописать свой блог-движок не могу. эх-х-х-х...

Обсуждение закрыто.