# 3.2. Как установить новые типы данных

## 3.2.1. Что такое типы данных

Файл содержит только биты и байты. Нужно знать, как интерпретировать их, чтобы в них появился смысл. Обычный способ достижения этого -- посмотреть на имя файла. Если, например, оно оканчивается на `.gif` вы предполагаете, что это изображение в формате GIF. Именно это делают большинство графических оболочек пользователя. KFM тоже так поступает, так как это очень быстро, но не очень удобно. Если у имени файла нет расширения, неизвестно, какой тип данных содержится в файле, и, соответственно, KFM не знает, какое приложение может обрабатывать эти данные. Поэтому если KFM не может определить тип данных по расширению, он смотрит на первые байты файла и извлекает информацию из своего магического файла. Это называется "автоматическое магическое детектирование MIME-типов" и работает вполне прилично. Так что, если для типа данных есть сведения в магическом файле `$KDEDIR/share/mimelnk/magic`, KFM догадается, что файл `МояПодружка` содержит изображение.

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

## 3.2.2. Что такое MIME-тип

MIME-типы -- интернетовский стандарт. Этот стандарт определяет систему названий типов данных. Название типа данных делится на две части. Первая содержит род данных (изображение, видеозапись, звук, текст, ...), а поскольку существуют разные виды текста (программа на C, текст на естественном языке, ...) и разные форматы хранения изображений и т.п., вторая часть указывает на конкретный формат. Хороший пример -- `image/gif`. Первая часть сообщает, что это изображение, а вторая -- что оно в формате GIF.

Если у вас есть сомнения по поводу какого-либо MIME-типа, загляните в магический файл. Многие MIME-типы там уже зарегистрированы.

Обычно этот раздел интересен только системным администраторам и разработчикам. В правильно установленной KDE все уже сделано, но некоторые хотят знать, как это все работает, поэтому продолжаем.

Каталог `$KDEDIR/share/mimelnk` содержит много подкаталогов, соответствующих первой части названий MIME-типов. Например, упомянутому `image/gif` соответствует файл `$KDEDIR/share/mimelnk/image/gif.kdelnk`. Каждый конфигурационный файл имеет расширение `.kdelnk`. Иногда KFM скрывает это расширение, чтобы не портить внешний вид.

Рано или поздно вы обнаружите, что структура подкаталогов в общем каталоге KDE такая же, как в в вашем каталоге `˜/.kde`. Как системный администратор собственной машины, вы, вероятно, будете обычно редактировать общую конфигурацию, а если вы пользователь университетской UNIX-системы, вам позволено редактировать только личную конфигурацию. Все, что говорится здесь о каталоге `$KDEDIR`, применимо и к `˜/.kde`. Для того, чтобы редактировать общие конфигурационные файлы в `$KDEDIR`, вы должны быть суперпользователем, для редактирования личных настроек это, конечно, не нужно.

## 3.2.3. Подробности

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

     # KDE Config File
     [KDE Desktop Entry]
     Type=MimeType
     MimeType=image/gif
     Icon=image.xpm
     Patterns=*.gif;*.GIF;
     Comment=Gif images
     Comment[de]=GIF Dokument
     Comment[nl]=Gif afbeelding

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

Первая строка -- стандартный заголовок конфигурационного файла KDE. Строка `Type` содержится в каждом конфигурационном файле KFM, чтобы указать назначение этого файла. Затем следуют название MIME-типа, пиктограмма, список шаблонов (разделенных `;` ) и комментарии на разных языках.

Теперь хакеры могут быть свободны.