Расширяем возможности Konqueror. Часто, даже в такой замечательной среде как KDE, бывает не хватает самого малого. Недавно поставил себе для linux замечательный архиватор 7zip. Его прелести расписывать не буду. Но вот в меню не хватало самого малого, это пункта Распаковать 7z архив. А открывать его в XArhive Manager и распаковывать было лень оболочка (Ark к сожалению не понимает этого формата архива). Поэтому вспомнилась статья, уже не помню где прочитаная и кем написанная. Там описывалось как добавить в пункт Действия Konqueror'a нужный пунктик. Благадоря такой замечательной вещи как KDE, это не составит большой трудности. И в дальнейшем расширять Konqueror сможете вы сами. Но вернемся к этой самой проблеме. Для быстрой работы с 7zip архивами нам понадобиться создать два файла: 7z.desktop и un7z.desktop. Первый будет служить для упаковки файлов в архив, второй для распаковки 7zip архивов. В файл 7z.desktop заносим следующие строчки: [Desktop Entry] ServiceTypes=all/allfiles,inode/directory Encoding=UTF-8 Actions=Create7zArhive [Desktop Action Create7zArhive] Name[ru]=Создать архив *.7z Exec=7z a %u.7z %u Icon=ark А в файл un7z.desktop заносим следующие строчки: [Desktop Entry] Encoding=UTF-8 ServiceTypes=application/x-7z Actions=Unpacking7zArhive [Desktop Action Unpacking7zArhive] Name[ru]=Распаковать архив *.7z Exec=7z e %F Icon=ark Как видно содержание файла состоит из двух частей: [Desktop Entry] - где описывается сам элемент и [Desktop Action Create7zArhive] - где описывается действия над этим элементом. Строка ServiceTypes служит для указания типов файлов, для которых наш пункт меню будет активным. Мы будем запаковывать любые файлы и каталоги, поэтому ставим all/allfiles и inode/directory. А распаковывать будем только 7z архивы. Поэтому в файле un7z.desktop в строке ServiceTypes указываем тип файлов нужного нам архива application/x-7z. Теперь пункт меню Распаковать архив *.7z будет доступен только для файлов с расширением 7z. Encoding=UTF-8 означает кодировку в какой записаны комментарии. Actions - названия действия. Именно по этому названию привязывается вторая часть [Desktop Action Unpacking7zArhive]. Name[ru] - Этот параметр служит для локализации. Exec - это самая главная строчка. В ней мы указываем команду и параметры для упаковки файлов и распаковки архивов. Exec=7z a %u.7z %u означает что надо выполнить команду 7z с параметром a (добавить в архив). Притом %u служит для принятия имени файла (директории) которой мы упаковываем и создании с этим же именем файла архива. Расширение добавляется автоматически. Для распаковки указываем Exec=7z e %F Выполняем команду 7z с опцией e (распаковать архив). %F служит для передачи архиватору имени распоковываемого файла. Icon=ark Служит для указании иконки. Теперь остаеться скопировать эти два файла в каталог /opt/kde3/share/apps/konqueror/servicemenus/ (нужны права root) и насладиться новыми возможностями. Кстати в этом каталоге можно найти множество подобный файлов. Их можно изучить и по их аналогии создавать действия под свои нужды. В некоторых дистрибутивах kde установлена в другую дирикторию, обычно в /usr/local/kde Так же приведу текст файлов для создания Rar архивов, у кого их в контекстном меню нет. Файл rar.desktop [Desktop Entry] ServiceTypes=all/allfiles,inode/directory Encoding=UTF-8 Actions=CreateRarArhive [Desktop Action CreateRarArhive] Name[ru]=Создать архив *.rar Exec=rar a %u.rar %u Icon=ark Файл unrar.desktop [Desktop Entry] Encoding=UTF-8 ServiceTypes=application/x-rar Actions=UnpackingRarArhive [Desktop Action UnpackingRarArhive] Name[ru]=Распаковать архив *.rar Exec=rar e %F Icon=ark
|