# 3.3. Как установить новое приложение

Каждое приложение KDE поставляется вместе с конфигурационными файлами, так что у пользователя нет надобности их редактировать. Тем не менее, вам может потребоваться настроить существующие приложения для работы в KDE. В этом уроке мы попробуем встроить XV в KDE.

## 3.3.1. Куда и зачем

Каждое приложение должно поместить конфигурационный файл в каталог `$KDEDIR/share/applnk` или его подкаталог. Кроме того, у вас есть личная система каталогов в `˜/.kde/share/applnk`, куда вы можете установить дополнительные приложения. Эти файлы будут видны только вам, но не остальным пользователям. KFM и kpanel просматривают эти каталоги при старте. Системное меню kpanel соответствует структуре этих каталогов. Пиктограммы в этих каталогах ведут себя как настоящие приложения. Вы можете щелкнуть по ним для запуска приложения и можете перетаскивать на них файлы. Иногда полезно держать такие конфигурационные файлы вне каталога `applnk`. Они работают в любом каталоге, но только те, которые содержатся в `applnk`, просматриваются при старте. Поэтому, если вы хотите установить, например, XV в качестве приложения по умолчанию для изображений, вы должны поместить конфигурационный файл именно в этот особый каталог. Возможно, есть приложения, которые вы предпочтете видеть не в KFM или kpanel, а на рабочем столе, тогда вы можете создать конфигурационные файлы на рабочем столе или в другом месте. Для этого используется почти такой же способ, как и описываемый здесь.

Если KFM находит файл, первое, что он делает -- пытается определить его тип данных. После этого он ищет все приложения, которые зарегистрированы для этого типа данных. Если ни одного не находится, он спрашивает у пользователя. Если нашлось только одно или имеется установленное по умолчанию, будет использовано именно оно, иначе KFM выберет наугад. Контекстное меню, вызываемое правой кнопкой мыши, предложит вам выбор из всех приложений, зарегистрированных для этого типа данных.

## 3.3.2. Шаг за шагом

Можете сразу перейти к следующей секции, если вы не хакер и не разработчик, и пропустить подробности.

Конфигурационный файл, который мы создадим, будет примерно таким:

     # KDE Config File
     [KDE Desktop Entry]
     BinaryPattern=xv;
     MimeType=image/gif;image/jpeg;image/tiff;image/x-xbm;image/x-xpm;
     Comment=XV Image App
     Comment[de]=XV Graphik Programm
     Exec=xv %f
     TerminalOptions=
     Icon=image.xpm
     Path=
     Type=Application
     Terminal=0
     Name=XV
     Name[de]=XV

Первая строка содержит магические байты, вторая -- список имен, которые может иметь это приложение (разделитель -- `;` ). Здесь же указана пиктограмма, соответствующая исполняемому файлу. Следующая строка содержит список всех MIME-типов, с которыми может работать приложение, затем идут обычные комментарии на разных языках. Параметр `Exec` содержит команду оболочки, которая будет выполнена для запуска приложения. `%f` будет заменен именами документов; ознакомьтесь с подробностями в следующем разделе. Параметр `Type` обязателен, как и для любого конфигурационного файла KFM. Вы можете потребовать от KFM запустить приложение в терминальном окне, установив `Terminal=1` и при необходимости настроив установки терминала. Параметр `Path` позволяет установить рабочий каталог. Последние две строки определяют название приложения. Это название используется, например, в контекстных меню KFM. Как и для комментариев, необходим английский вариант, и могут быть переводы на разные языки.

## 3.3.3. Маленькие секреты

Большинству старых приложений требуется аргумент `%f`. Это значит, что они могут работать с файлами только на локальном жестком диске. Если же вы используете URL, KFM загрузит эти файлы на локальный диск и после этого запустит приложение. Если приложение изменило файлы, KFM спросит пользователя, не хочет ли он выгрузить их обратно.

Вы можете использовать `%u` вместо `%f`. В этом случае KFM передаст приложению сам URL и не будет копировать файлы с других машин на локальный диск. Некоторые приложения KDE поддерживают эту замечательную возможность.

Имеются дополнительные параметры, которые можно использовать. Вот краткий список:

- `%k` Полное имя (с путем) самого конфигурационного файла. Это полезно, если запускаемое приложение должно читать или изменять конфигурационный файл, использованный для запуска. Например, таким способом вы можете реализовать простое представление принтера. Тот же файл, который изображает принтер на рабочем столе, хранит установки принтера. Используйте `%k` для передачи имени конфигурационного файла программе для работы с принтером.

- `%n` Имя документа без пути.

- `%d` Путь к документу без имени файла. `%d` и `%n` вместе -- то же, что и`%f`.

- `%c` Имя приложения. Это заголовок окна приложения (возможно, на вашем языке). Этот параметр позволяет задать заголовок окна приложения.