Bernd
Pol

# Настройка &kdevelop;

&kdevelop; — очень мощная и гибкая среда, которая предлагает много способов подстроить её под себя. Для начала настройки перейдите в меню Настройка Настроить KDevelop.... Появившееся диалоговое окно настройки будет содержать слева названия разделов, а справа — параметры; набор параметров зависит от выбранного раздела.

Выбор параметра

Выбор параметра

В данном руководстве эти параметры будут описаны в другом порядке, в обобщённых разделах Общая настройка, Настройка документации и Расширенная настройка, что делает чтение более понятным.

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

- Главное
- Интерфейс пользователя
- Шаблоны файлов
- Редактор
- Автозамена
- Поддержка скриптов
- Меню инструментов
- Внешние инструменты
- Документация
- Заготовки
- Файлы
- Файлы
- Генератор классов C++
- Форматирование
- Анализ кода C++

## Общая настройка

Здесь описаны самые общие действия по настройке &kdevelop;:

- Основные параметры

- Выбор интерфейса пользователя

- ### Редактирование исходного кода

  - Выбор редактора

  - Выбор стиля форматирования кода

  - Настройка заготовок кода

- Настройка инструмента выбора файлов

### Основные параметры

Раздел Главное позволяет настроить внешний вид и поведение &kdevelop;, которые в повседневной работе будут меняться редко:

Основные параметры проекта, в частности:

  - определение каталога проектов по умолчанию, в котором будут создаваться новые проекты;

  - выбор возможности загружать автоматически последний открытый проект при запуске &kdevelop;.

Выбор шрифта для наиболее часто используемых информационных окон, называемых:

  - Панель Сообщения, используемая для показа хода компиляции, к примеру, и

  - Панель вывода приложения, показывающая ошибки и вывод запущенного приложения.

Некоторые общие параметры внешнего вида строк на панели Сообщения:

  - переносить ли длинные строки;

  - показывать ли сообщения о смене каталогов и выводимые сообщения команды `make`.

  Уровень детализации сообщений о ходе компиляции на панели Сообщения.

Раздел «Главное»

Загружать последний открытый проект при запуске

  Установите флажок, чтобы после запуска среды продолжить работу над проектом, с которым вы работали в предыдущий раз. При следующем запуске &kdevelop; автоматически загрузит этот проект. При этом будет восстановлено также и его состояние (открытые файлы, панели инструментов и так далее).

Каталог проектов по умолчанию

  По умолчанию &kdevelop; использует основной родительский каталог для всех новых проектов. Можно указать абсолютный путь к родительскому каталогу в поле ввода или воспользоваться кнопкой выбора каталога.

  Тем не менее, всегда можно изменить родительский каталог для создаваемого проекта в Мастере создания проекта.

Шрифт окна

  Панель вывода приложения используется для вывода информации и ошибок приложений, запущенных из &kdevelop;. Эту информацию приложения обычно выводят в консоли, если запускаются отдельно. Поэтому нет необходимости переключаться из среды при тестировании разрабатываемого приложения.

  Чтобы выбрать подходящий для окна Сообщения шрифт, нажмите кнопку Выбрать..., слева от которой показывается текущий шрифт (на рисунке выше это «Luxi Sans»). Появится стандартное диалоговое окно &kde; Выбор шрифта, в котором можно подобрать нужный.

  При первом запуске &kdevelop; использует шрифт из текущей настройки пользователя &kde;. Эти параметры зафиксированы, так что если в Центре управления произвести изменения в разделе Внешний вид и темы Шрифты, то это не повлияет на шрифты &kdevelop;. Для смены шрифта нужно принудительно выбрать шрифт окна Сообщения.

Вывод компилятора

  &kdevelop; фильтрует выводимую в панели Сообщения информацию во время процесса сборки. Можно управлять уровнем детализации сообщений &kdevelop; с помощью контекстного меню этой панели.

  Очень краткий

    Выводить только предупреждения, ошибки и названия компилируемых файлов.

  Краткий

    Подавлять все флаги компилятора и привести выводимую информацию в более понятную форму.

  Полный

    Выводить все сообщения компилятора в неизменной форме.

  Существует другой способ переключить детализацию вывода компилятора. Просто щёлкните правой кнопкой на панели Сообщения и выберите из контекстного меню подходящий уровень детализации.

Перенос строк

  По умолчанию &kdevelop; переносит длинные строки в окне Сообщения, так что важная информация может быть воспринята не сразу. В некоторых случаях это затрудняет чтение длинных выводимых сообщений. Сняв флажок с этого параметра можно запретить перенос длинных строк.

  Существует и другой способ переключить перенос строк. Щёлкните правой кнопкой мыши в панели Сообщения и выберите в контекстном меню Перенос строк.

Сообщения о смене каталога

  Программа `make` обычно выводит сообщения типа «Entering directory» (вход в каталог) и «Leaving directory» (выход из каталога) при смене каталогов в ходе компиляции. Поскольку это засоряет выводимую информацию в панели Сообщения, &kdevelop; по умолчанию подавляет такие сообщения. Отметьте этот параметр, чтобы включить вывод информации о смене каталогов во время работы программы `make`.

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

Интеграция с редактором форм

  Этот переключатель позволяет выбрать способ открытия файлов `.ui`. &kdevelop; поставляется с собственным редактором форм, KDevDesigner, который может быть запущен или как встроенная, или как отдельная программа. Для редактирования файлов `.ui` можно также использовать Qt Designer.

  - Использовать встроенный редактор форм &kdevelop;

    Использование собственного редактора форм, встроенного в &kdevelop;

  - Запускать редактор форм &kdevelop; как отдельную программу

    Приложение KDevDesigner будет запущено отдельно в своём окне.

    KDevDesigner в отдельном окне

  - Запускать Qt Designer

    Qt Designer из пакета Qt будет запущен отдельно при открытии в &kdevelop; файла `.ui`.

Эмулятор терминала

  Здесь можно выбрать, какой терминал будет встроен в KDevelop.

  - Использовать параметры KDE

    Использовать параметры &kde;, установленные в Центре управления в разделе Компоненты Компоненты по умолчанию, в котором выбирается эмулятор терминала по умолчанию, используемый во всех требующих терминал приложениях &kde;.

  - Другой:

    Выберите другой эмулятор терминала, отличный от терминала по умолчанию.

### Выбор интерфейса пользователя

Как уже было сказано в разделе Интерфейсы, есть пять разных способов настроить рабочую область &kdevelop;:

- Простой IDEAl

  Это упрощённая версия интерфейса пользователя IDEA. Она разработана для простоты и удобства. В ней не используются вкладки инструментов.

- Режим IDEAl

  Это клон пользовательского интерфейса IDEA, установленный по умолчанию и похожий на режим Вкладки.

- Дочерние окна

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

- Вкладки

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

- Отдельные окна

  Все окна редактора, просмотра и панели будут выглядеть как обычные отдельные окна (непосредственно на рабочем столе). Главный инструмент управления будет содержать только меню, панели инструментов и строку состояния. Типичным примером этого режима интерфейса пользователя является Borland Delphi 6.0.

Чтобы переключить режим интерфейса, выберите в меню Настройка Настроить KDevelop... . В появившемся диалоговом окне выберите раздел Интерфейс пользователя. В появившемся окне справа будут следующие параметры.

Выбор режима интерфейса пользователя

Выбор режима интерфейса пользователя

Выберите режим интерфейса пользователя и нажмите OK.

Чтобы изменения вступили в силу необходимо перезапустить &kdevelop;.

При выборе режимов Простой IDEAl, IDEAl или Вкладки станут доступными ещё две секции параметров: Использовать вкладки и Кнопка закрытия при наведении. Эти параметры позволяют настроить условия, при которых вкладки будут показываться сверху окон документов, а также возможность закрыть документ щелчком на значке вкладки.

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

Настройка показа вкладок документов

  По умолчанию, в режимах «Вкладки» и «IDEAl» в верхней части окон документов показываются вкладки с названиями, с помощью которых щелчком левой кнопки мыши можно легко переключаться между разными документами. Чтобы получить в рабочей области больше свободного пространства для окон документов можно изменить внешний вид в секции Использовать вкладки.

  Всегда

    Значение по умолчанию — показывать вкладку, содержащую значок и имя файла вверху окна документа в основной рабочей области &kdevelop;.

  При нескольких совпадениях

    Не показывать вкладку, если открыт только один документ. Однако, если открыто более одного документа, &kdevelop; будет показывать панель вкладок так же, как и при выборе значения Всегда. Можно выбрать этот режим, если большую часть времени работа ведётся над одним документом, это увеличит рабочее место по вертикали.

  Никогда

    Никогда не показывать секцию вкладок документов. Это полезно, если вы редко используете мышь для переключения между открытыми документами. Этот режим предоставляет больше места по вертикали для всех окон документов. Чтобы выбрать другое окно документа или закрыть окно, используйте меню Окно.

Настройка закрытия файла щелчком по его вкладке

  Настроив &kdevelop; на показ панелей вкладок документов в режимах «Всегда» или «Когда в основной части рабочей области открыто более одного документа», можно кроме возможности выбора документа добавить вкладкам дополнительную функциональность. Для этого используйте секцию Кнопка закрытия при наведении.

  Нет

    Стандартное поведение. Дополнительная функциональность отсутствует. Вкладки используются только для переключения на документ щелчком левой кнопки мыши.

  Да

    При выборе этого значения &kdevelop; позволит закрывать окно документа щелчком левой кнопки мыши. Наведите указатель мыши на маленький значок в левой части вкладки. Он изменится на значок закрытия. Щёлкните левой кнопкой мыши на этом значке и &kdevelop; закроет соответствующий документ.

  Да, с задержкой

    После выбора этого значения &kdevelop; позволит закрывать окно документа так же, как при выборе предыдущего значения Да. Значок не сменится немедленно, до появления значка закрытия пройдёт немного времени.

Настройка вкладок инструментов

  Раздел Вкладки инструментов доступен только в режиме IDEAl. Используйте эти переключатели для настройки внешнего вида вкладок инструментов, окружающих в этом режиме рабочую область.

  Значки

    Каждая вкладка будет содержать только значок. Этот режим может быть предпочтителен, если вы работаете на мониторе с низким разрешением.

    Однако, сами значки не всегда понятны. Чтобы узнать, что означает тот или иной значок, наведите курсор мыши на вкладку и подождите. Появится короткая подсказка с названием инструмента.

  Текст

    Режим обзора инструментов по умолчанию. На каждой вкладки панелей показываются названия соответствующих инструментов.

  Текст и значки

    Если стандартное текстовая вкладка инструментов кажется слишком плоским и если вы работаете на мониторе с высоким разрешением, то можно выбрать этот пункт. Названия соответствующих инструментов будут показываться на всех вкладках, кроме того, рядом с названиями для удобства различения будут показываться значки. В качестве примера смотрите раздел Свёрнутые вкладки.

Свёрнутые вкладки

  Если в выбранном режиме IDEAl вкладки инструментов содержат текст (со значками или без них), то не стоит волноваться, что некоторые из них будут скрыты другими вкладками инструментов. Если нижняя вкладка инструментов занимает больше места, чем имеется для показа всех вертикальных вкладок, то они расположатся вокруг, как показано на этом рисунке:

  Вкладки инструментов не перекрываются другими окнами

  Вкладки инструментов не перекрываются другими окнами

  Активная вкладка инструментов должна быть показана зафиксированной (режим неперекрываемости), разделяя рабочую область с другими окнами, чтобы предотвратить перекрытие. Нажмите на небольшой квадратик на границе окна для такой фиксации, как показано в примере.

### Шаблоны файлов

Настройка шаблонов файлов

Настройка шаблонов файлов

### Выбор редактора

&kdevelop; позволяет выбрать редактор для редактирования исходного кода. Выберите в окне Настройка KDevelop раздел Редактор. Справа будут показаны следующие параметры:

Редактор

Редактор

Чтобы выбрать новый редактор, щёлкните по небольшому треугольнику в поле выпадающего списка. В зависимости от установленных в данной версии &kde; редакторов будет предложен список доступных (смотрите важное замечание ниже). Выберите предпочитаемый редактор из списка, затем нажмите OK. В настоящий момент существует два варианта:

Встроенный текстовый редактор

  Стандартный редактор для &kde; — Kate.

Редактор из Qt Designer

  Этот редактор поставляется &Qt; с компонентом Designer.

Редакторы полностью интегрированы в среду &kdevelop;. В частности, возможно перейти к строке исходного кода простым щелчком на сообщении об ошибке в панели Сообщения.

Смена редактора никак не повлияет на уже открытые файлы. Есть два варианта решения проблемы. Или закройте все открытые окна с текстом и откройте их заново. Или же просто закройте весь проект и откройте его снова. Окна автоматически будут открыты в интерфейсе нового текстового редактора.

KDevelop позволяет использовать интерфейсы редакторов, зарегистрированных в &kde;, и поддерживающих интерфейс KatePart. Если отсутствует один из вариантов, показанных выше, проверьте, установлен ли в &kde; соответствующий компонент KPart.

При изменениях извне:

Ничего не делать

  Файл будет отмечен как изменённый внешне, и при сохранении попросят подтвердить его перезапись.

Предупредить пользователя

  Диалоговое окно предупредит пользователя, что файл был изменён, и предложит открыть файл заново.

Автоматически перезагрузить файл

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

### Автозамена для завершения слов

(... в процессе написания ...)

### Поддержка скриптов

(... в процессе написания ...)

### Добавление приложений &kde; в меню «Сервис»

(... в процессе написания ...)

### Добавление внешних приложений в меню

(... в процессе написания ...)

#### Добавление в меню «Сервис»

(... в процессе написания ...)

#### Добавление в контекстное меню файлов

(... в процессе написания ...)

#### Добавление в контекстное меню каталогов

(... в процессе написания ...)

### Выбор стиля форматирования исходного кода

&kdevelop; автоматически форматирует исходный код в выбранном стиле. Этот стиль легко настроить.

Переформатирование исходного кода в настоящий момент доступно только для языков C, C++ и &Java;. Его невозможно использовать для скриптовых языков, например для PHP. Это вызвано тем, что &kdevelop; для реализации этой возможности использует программу astyle.

Чтобы настроить специфический стиль форматирования, выберите пункт меню Настройка Настроить KDevelop.... В появившемся диалоговом окне Настройка KDevelop выберите слева раздел Форматирование. В этом разделе четыре вкладки: Главное, Табуляция и скобки, Отступы и Форматирование.

Изменение стиля влияет только на вновь вводимый код. Чтобы изменить оформление уже существующего исходного текста воспользуйтесь меню Сервис Форматировать исходный код.

Результат этих определений стиля зависит от используемого редактора. На данный момент большинство параметров ориентировано на «Встроенный текстовый редактор». Некоторые другие редакторы (например, редактор Qt) могут использовать свои собственные параметры настройки. В этом случае необходимо поэкспериментировать, чтобы выяснить результат изменяемых здесь параметров.

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

#### Общая настройка форматирования

Вкладка Главное в разделе Форматирование предлагает пять предустановленных стилей оформления.

Общая настройка стиля форматирования

Общая настройка стиля форматирования

Пример стиля форматирования исходного кода показывается справа. Если ни один из предлагаемых стилей не подходит, то можно выбрать стиль Определяемый пользователем и настроить параметры форматирования кода самостоятельно на ставших доступными трёх других вкладках.

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

#### Настройка стиля выставления отступов

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

Настройка стиля выставления отступов

Настройка стиля выставления отступов

Параметры по умолчанию

  Представленный выбор форматирования сделает текст похожим на стиль ANSI:

      namespace foospace
      {
        int Foo()
        {
          if (isBar)
          {
            bar();
            return 1;
          }
          else
            return 0;
        }
      }

Установка размера отступов

  Переключатель в секции Табуляция определяет символы, которые будут использоваться для выставления отступов.

  Использовать табуляцию

    Вставлять символ табуляции для каждого уровня. Длина табуляции определена в настройках редактора (обычно 8 или 4 символа).

    Процедура определения ширины табуляции зависит от выбранного редактора в разделе Редактор. Обратитесь к документации по редактору.

  Использовать пробелы

    При выборе этого пункта редактор будет вставлять пробелы для каждого уровня отступа. Измените число пробелов от 2 по умолчанию до нужного количества.

Требующие отступов конструкции

  Здесь определяется, какие элементы (C/C++) будут форматированы отступами сверх используемого уровня отступов.

  По умолчанию это только пространства имён (namespace) и метки (label). Можно поэкспериментировать с разными вариантами, чтобы настроить их как требуется.

Переносы длинных строк

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

  Это применяется к статическому переносу слов только при превышении лимита ширины строки. Если редактор настроен на динамический перенос слов (который возможен в интерфейсе редактора &kate;), то эти параметры не применяются.

  Максимальная длина выражения

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

    Значение по умолчанию — 40 символов (половина стандартной страницы из 80 знаков). При необходимости можно увеличить это число (например, при печати исходного кода в альбомном режиме). Можно также сократить это число для увеличения полей страницы при печати.

  Минимум в условном выражении

    Условные операторы или код, следующий, например, за оператором присваивания, должны получать дополнительный отступ в длинных строках. Его величину можно указать здесь.

    По умолчанию указано в два раза больше текущего, означающее, что условные операторы получат дополнительный отступ в размере стандартного отступа, размер которого указан в секции Табуляция. Можно изменить дополнительный отступ на другую фиксированную величину (включая ноль), используя стрелки или введя нужное значение вручную.

#### Другие параметры форматирования

Другие параметры стиля форматирования кода

Другие параметры стиля форматирования кода

Расположение фигурных скобок

  Переключатель Скобки определяет положение разделителей блоков в коде C и C++. Предлагается оставить без изменения или выбрать из трёх других вариантов.

  На новой строке

    Вставить символ новой строки перед каждой открывающей фигурной скобкой. Обе скобки будут иметь одинаковый с заголовком блока отступ.

        namespace foospace
        {
          int Foo()
          {
            if (isBar)
            {
              bar();
              return 1;
            }
            else
              return 0;
          }
        }

  На той же строке

    Оставить открывающую скобку на одной строке с заголовком блока. Закрывающие скобки будут иметь отступ одинаковый с заголовком блока. Оператор else условия if будет оставлен на одной строке с закрывающей скобкой.

        namespace foospace {
          int Foo() {
            if (isBar) {
              bar();
              return 1;
            } else
              return 0;
          }
        }

  Стиль Linux

    Это совмещение описанных выше стилей. Скобки, отделяющие блок функции, будут переводиться на новую строку, а скобки, открывающие блок условного выражения или цикла, будут оставлены на той же строке.

        namespace foospace
        {
          int Foo()
          {
            if (isBar) {
              bar();
              return 1;
            } else
              return 0;
          }
        }

Дополнительные пробелы

  По умолчанию, &kdevelop; стремится к уменьшению количества пробелов в исходном коде.

      if (isBar(fooArg)==barValue)

  Для улучшения читаемости можно вставить дополнительные пробелы.

  Добавлять пробелы внутри круглых скобок

    На самом деле пробелы будут ставиться вокруг текста, заключённого в круглые скобки. Это улучшает читаемость аргументов функций и условных операторов.

        if ( isBar( fooArg )==barValue )

  Добавлять пробелы вокруг операторов

    Вставить пробелы вокруг операторов присваивания и сравнения.

        if (isBar(fooArg) == barValue)

Выражения в одной строке

  В некоторых случаях форматирование кода, разделяющее длинную строку, будет лишним. Для кода C и C++ это может быть настроено здесь.

  Сохранять выражения в одной строке

    Не разрывать выражения, даже если они превышают ограничение длины строки.

  Сохранять блоки в одной строке

    Не разрывать блоки, даже если они превышают ограничение длины строки.

### Настройка заготовок кода

При работе с &kdevelop; можно сохранять часто используемые участки кода в виде заготовок. Чтобы настроить использование заготовок, выберите пункт Настройка Настроить KDevelop... из меню. В появившемся диалоговом окне Настройка KDevelop выберите слева раздел Заготовки. В правой части появятся параметры настройки.

Настройка заготовок кода

Настройка заготовок кода

Всплывающие подсказки

  Установите флажок Показывать содержание заготовки в подсказке для просмотра кода во всплывающей подсказке при наведении указателя мыши на заготовку.

Работа с переменными в заготовках

  Инструмент Заготовки допускает использование переменных в предопределённых местах каждый раз при вставке заготовки в файл. Для реализации этого раздел Заготовки предоставляет свой собственный механизм переменных. Их можно настроить в секции Переменные.

  Разделитель

    Инструмент Заготовки различает переменные в тексте путём добавления к названию переменной специального символа разделителя. Чтобы использовать другой символ, измените установленный по умолчанию символ $ в поле Разделитель.

  Метод задания значений переменных

    - Отдельный диалог для каждой переменной — вывести отдельный диалог для каждой переменной, которая будет найдена при вставке заготовки в текст.

    - Одно окно для всех переменных заготовки — вывести при вставке заготовки один общий диалог для указания значений всех переменных.

### Окна

(... в процессе написания ...)

### Файлы

&kdevelop; содержит модуль Выбор файлов, который позволяет выбрать любой файл или каталог в файловой системе.

Выбор файлов в режиме IDEAl

Выбор файлов (режим IDEAl)

Панель Файлы может быть гибко настроено. Откройте Настройка Настроить KDevelop... . В диалоговом окне Настройка KDevelop выберите слева раздел Файлы.

Настройка выбора файлов

Настройка выбора файлов

Настройка панели инструментов

  Панель инструментов выбора файлов можно настроить как обычно.

  #### Добавление действия на панель инструментов

  1. Выберите пункт из списка Выбранные действия справа, после которого нужно вставить новое действие.

  2. Выберите действие для вставки из списка Доступные действия слева.

  3. Нажмите кнопку со стрелкой вправо, расположенную между списками.

     Действие будет изъято из списка Доступные действия и вставлено в список Выбранные действия после выбранного пункта.

  #### Удаление действия c панели инструментов

  1. Выберите пункт, который нужно удалить, в списке Выбранные действия.

  2. Нажмите кнопку со стрелкой влево, расположенную между списками.

     Выбранный пункт будет изъят из списка Выбранные действия и перемещён назад в список Доступные действия.

  #### Изменение порядка пунктов в панели инструментов

  1. Выберите действие, которое нужно переместить, в списке Выбранные действия справа.

  2. Нажмите кнопку со стрелкой вверх или стрелкой вниз.

     Выбранный пункт будет перемещён выше или ниже по списку Выбранные действия.

Способ обновления содержимого

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

  Нажмите кнопку Обновить в панели для обновления содержимого панели. Эта кнопка по умолчанию отсутствует. Нужно сначала добавить её.

  Можно настроить панель для немедленного показа вносимых изменений в файловую систему. Параметры секции Автоматическая синхронизация отвечают за это.

  При активизации документа

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

  При открытии документа

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

  При показе панели выбора файла

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

  Эти параметры можно как угодно комбинировать для настройки желаемого поведения.

Количество пунктов в выпадающих списках

  Под секцией Автоматическая синхронизация находится два счётчика, которые задают максимальное количество пунктов в выпадающих списках каталогов и фильтров на панели, в которые попадают вводимые значения.

  Максимальное количество запоминаемых каталогов

    Введите максимальное количество каталогов, которые должны сохраняться в списке.

  Максимальное количество запоминаемых фильтров

    Введите максимальное количество фильтров, которые должны сохраняться в списке.

  Что запоминать между сеансами

    По умолчанию панель настроена на восстановление каталога и фильтра при следующем запуске &kdevelop;. Можно изменить эти параметры в секции Сеанс.

    При автоматическом запуске &kdevelop; менеджером сеансов &kde; изменения этих параметров не учитываются. В этом случае каталог и фильтр будут восстанавливаться всегда.

  Восстанавливать каталог

    Снимите флажок, если не хотите, чтобы каталог в панели выбора файлов запоминался между сеансами.

    Если вы выбрали один из параметров автоматического обновления содержимого каталога, каталог может автоматически меняться несмотря на сохранённое значение с прошлого сеанса.

  Восстанавливать фильтр

    Снимите флажок, если не хотите, чтобы применяемый фильтр запоминался между сеансами.

### Генератор классов C++

(... в процессе написания ...)

### Форматирование

(... в процессе написания ...)

### Анализ кода C++

(... в процессе написания ...)

## Настройка документации

&kdevelop; содержит мощную справочную систему, предоставляющую доступ к нескольким видам справки. Например, в режиме IDEAl есть вкладка Документация у правой границы рабочей области.

Панель документации в режиме IDEAl

Панель документации (режим IDEAl)

Для доступа к документации &kdevelop; должен быть загружен модуль Документация. Смотрите раздел Подключаемые модули.

Можно настроить содержимое и поведение различных частей справочной панели, выбрав в меню Настройка Настроить KDevelop.... В появившемся диалоговом окне Настройка KDevelop выберите слева раздел Документация.

В этом разделе доступны три вкладки.

- Коллекции документации
- Полнотекстовый поиск
- Разное

### Настройка коллекций документации

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

Вкладка настройки коллекций содержит список всех доступных коллекций документации. &kdevelop; поддерживает различные типы коллекций документации:

- Коллекция документации &Qt;
- Коллекция документации CHM
- Коллекция документации Doxygen
- Коллекция документации KDevelopTOC
- Коллекция документации Devhelp
- Пользовательская коллекция документации

Настройка коллекций документации

Настройка коллекций документации

#### Элементы настройки коллекций документации

Список доступных коллекций расположен слева, кнопки по управлению элементами списка — справа.

Кнопки управления списком коллекций

  Для управления списком доступны три кнопки:

  Добавить...

    Открыть диалоговое окно Коллекция документации, позволяющее указать путь к документации и её название.

  Изменить...

    Открыть диалоговое окно Коллекция документации, позволяющее изменить путь к ранее выбранной документации и переименовать её.

  Удалить

    Удалить выбранную коллекцию из списка.

    Коллекция будет удалена только из списка. Файлы документации не будут удалены. Если документация не нужна, удалите её самостоятельно другими средствами.

  Добавление или изменение коллекции документации

  Кнопка справа от поля Расположение открывает диалоговое окно выбора каталога, показывающее файлы в зависимости от выбранного типа.

  Поле Заголовок может быть недоступным для некоторых типов коллекций.

Список коллекций документации

  Список коллекций содержит четыре столбца:

  Содержание

    Если в этом столбце установлен флажок, данная коллекция будет показана на вкладке Содержание панели Документация.

    Снятие флажка в столбце Содержание приведёт к снятию флажков в столбцах Индекс и Поиск. Таким образом, нельзя получить доступ к индексу документации, не показанному в содержании.

  Индекс

    Если флажок установлен, коллекция будет проиндексирована. Это позволит быстро искать в коллекции на вкладках Индекс и Искать в индексе панели Документация.

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

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

  Поиск

    Если флажок установлен, содержание этого коллекции будет включено в кэш для полнотекстового поиска на вкладке Поиск панели документации.

    &kdevelop; использует утилиту htdig для полнотекстового поиска. Поиск производится по внутреннему индексу, который должен быть создан посредством htdig до первого использования.

    Для вступления изменений в силу нужно будет обновить индекс на вкладке Поиск панели документации.

  Заголовок

    Название раздела, показываемого на вкладке Содержание панели документации.

  В некоторых прежних версиях &kdevelop; можно было выбирать, какие пункты документации показывать для конкретного проекта. Теперь эта возможность отключена.

#### Коллекции документации &Qt;

На этой вкладке можно настроить документацию по &Qt;.

Настройка коллекции документации &Qt;

Настройка коллекции документации &Qt;

Как правило, этот пункт заполняется при первом запуске &kdevelop;. Будет произведён поиск файлов документации в формате `*.xml` или `*.dcf` в каталоге &Qt;. Слева показывается список найденных файлов.

Если используется нестандартная установка, то либо информация будет отсутствовать вовсе, либо записи будут ссылаться на неверное место (например, на другую версию &Qt;, установленную в системе). Можно указать пути кнопками справа.

&kdevelop; будет использовать имеющиеся заголовки страниц установленной документации &Qt;. Поэтому поле Заголовок в диалоге создания и изменения коллекции недоступно.

По умолчанию, на вкладке Содержание показывается не вся документация &Qt;. Для выбора показываемой коллекции установите флажок в столбце Содержание в списке коллекций.

Чтобы использовать документацию &Qt;, включенную в индекс поиска или полнотекстовый поиск, установите флажки в столбцах Индекс и Поиск на соответствующей вкладке настройки.

#### Настройка коллекции документации CHM

На этой вкладке можно настроить просмотр файлов документации в формате &Microsoft; CHM.

Настройка документации в формате &Microsoft; CHM

Настройка документации в формате &Microsoft; CHM

По умолчанию, эта вкладка будет пустой (как показано выше). Можно добавить новые элементы соответствующими кнопками справа от списка. При выборе расположения будут показаны только файлы `*.chm`.

Дополнительную информацию о формате &Microsoft; `*.chm` можно получить, например, на сайте PHP: Documentation - Extended CHM Format.

#### Документация, сгенерированная Doxygen

На этой вкладке можно настроить работу с документацией по &API;, сгенерированной &doxygen;.

Настройка документации по &API;

Настройка документации по &API;

Документация по &API; содержит описание интерфейсов библиотек. Документация по &API; генерируется внешней программой &doxygen;.

Сгенерированная &doxygen; документация по &API; состоит из набора файлов `html`, в том числе файла `index.html`, содержащего содержание. Также в ней могут присутствовать файлы `tag` для привязки к уже существующей документации по &API;. &kdevelop; будет искать `index.html` и файлы с расширением `*.tag` во время поиска документации по &API;.

Существует ряд ограничений, накладываемых при поиске документации по &API;. Каталог, в которой находится файл `index.html`, должен содержать подкаталоги с отдельными коллекциями документации. В каждой из них должен быть файл `.tag` и каталог `html/`.

Примером такой структуры документации &doxygen; по &API; служит `$`KDEDIR`/share/doc/HTML/en/kdelibs-apidocs`.

Старый формат KDoc документации по &API; &kde; больше не поддерживается напрямую. Если всё же требуется воспользоваться документацией в старом формате, добавьте файлы как пользовательскую коллекцию документации.

&kdevelop; будет содержать найденные в &kde; пути к &API; библиотек. Есть несколько способов для их обнаружения.

- Сообщите путь к документации скрипту `configure` с помощью параметра `--with-kdelibsdoxy-dir` при компиляции &kdevelop; (смотрите раздел Где взять документацию по &API; &kdevelop;).

- Обычно команда `configure` автоматически находит пути в стандартных каталогах.

- Если документация автоматически не обнаружена, при первом запуске &kdevelop; будет проверен каталог `$`KDEDIR`/share/doc/HTML/en/kdelibs-apidocs/`.

Если &kdevelop; не обнаружил документацию при первом запуске, список Коллекция документации Doxygen будет пустым.

Добавить записи о своей документации по &API; (например, для своего текущего проекта) можно с помощью кнопок справа. Если требуется проиндексировать документацию или включить её в полнотекстовый поиск, установите флажки в столбцах Индекс или Поиск в списке коллекций.

&kdevelop; берёт информацию о заголовках из файла `index.html`. Поэтому поле Заголовок в диалоговом окне Коллекция документации недоступно.

Документация по &API; &kde; не ограничивается только описанием &API; библиотек &kde;. Если вы хотите получить дополнительную информацию об интерфейсах (например, как включить модуль &kate; в ваши программы), установите &kde; Base Libraries &API; из исходного кода командами `make apidox` и `make install` для пакета `kdebase` и добавьте коллекцию Doxygen.

Добавление базового &API; &kde;

Добавление базового &API; &kde;

Укажите в поле Расположение реальный каталог установки вместо `/home/dev/mykde-system/`.

Аналогичным образом можно добавить в список Коллекция документации Doxygen документацию по &API; вашего проекта. Предыдущие версии &kdevelop; разрешали указывать коллекцию документации отдельно для каждого проекта. Теперь эта возможность не поддерживается.

#### Иерархическая документация (KDevelopTOC)

Система документации &kdevelop; предоставляет немедленный доступ к иерархически расположенной структуре документации, расположенной как локально, так и в Интернете. Это настраивается на странице Коллекция документации KDevelopTOC (TOC — Table Of Contents, содержание).

Документация в формате KDevelopTOC

&kdevelop; поставляется с большим набором готовых файлов KDevelopTOC, автоматически добавляющихся в список коллекций. Чтобы не загромождать экран, показываются только наиболее важные из них. Чтобы обратиться к другой коллекции, установите флажок в столбце Содержание в списке коллекций.

Файлы KDevelopTOC не могут быть проиндексированы для полнотекстового поиска, так как обычно они содержат ссылки на онлайновую документацию. С другой стороны, содержание в файле `.toc` может быть быть задано вручную в теге `<index>`. Поэтому флажок Индекс будет доступен только если будет тег `<index>` в файле `.toc`. Описание Файлов TOC приведено ниже.

Флажок Поиск будет всегда недоступен.

Новую коллекцию можно добавить соответствующими кнопками справа от списка. В диалоге выбора расположения будут показаны только файлы `*.toc`.

В отличие от предыдущих версий &kdevelop; кнопка Удалить не удаляет с диска файл `.toc`, а лишь убирает его из списка, поэтому операция удаления сейчас безопасна.

#### Файлы TOC

Для наглядности продемонстрируем преимущества использования файлов TOC на следующем примере. Откройте панель «Документация» и найдите в дереве документации на вкладке «Содержание» пункт «KDevelop API documetation». Нажмите на стрелку слева от названия. Откроется структура, позволяющая перейти к необходимому разделу. При этом &kdevelop; не будет получать информацию из Интернета. Если же вы нажмёте на названии главы, &kdevelop; откроет страницу с этой главой из Интернета.

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

Такой доступ к структуре сделал возможным использование специальных файлов содержания, которые имеют расширение `.toc`. Любой файл TOC содержит структурированное описание документа в формате &XML;.

Стандартный каталог файлов TOC

  При установке &kdevelop; устанавливает обычно серию готовых файлов `.toc` в каталог `$KDEDIR/share/apps/kdevdocumentation/tocs`. Это очень простые структурированные текстовые файлы. Можно просмотреть их, используя текстовый редактор или другую программу просмотра текста.

##### Структура файлов TOC

заголовок
  - `<!DOCTYPE kdeveloptoc>`
  - `<kdeveloptoc>`
  - (заголовок)
  - (базовый адрес)
  - (структура содержимого)
  - (структура индекса)
  - `</kdeveloptoc>`

  Структура &XML; будет анализироваться модулем &kdevelop; Документация для генерации содержания в дереве документации и для помощи пользователю в навигации. Она содержит всю информацию, необходимую для показа заголовков и доступа к содержимому файлов документации.

заголовок
  - `<title>` (некоторая строка) `</title>`

  Заголовок раздела на верхнем уровне дерева документации.

  Показываемые здесь заголовки пользователь не может изменить. Если нужно показать другой текст, отредактируйте вручную тег `<title>` в файле `.toc`.

базовый адрес
  - `<base href="` (&URL; документов) `"/>`

  Этот адрес указывает на расположение всех файлов документации. Он будет использован для генерации полного адреса при вызове страниц онлайновой документации.

структура содержимого
  - `<tocsect1 name="` (заголовок раздела) `" url="` (&URL; раздела) `">`
  - ...
  - `<tocsectn name="` (заголовок раздела) `" url="` (&URL; раздела) `"/>`
  - ...
  - `</tocsect1>`

  Вся оставшаяся информация о навигации и доступе записывается в серию пар `<tocsecti>` ... `</tocsecti>`. Каждый i обозначает уровень навигации вниз к номеру n, который связан с показываемым разделом документации.

  Любой тег `<tocsecti>` должен иметь атрибут `name="xxx"`, ассоциированный с ней ("xxx" обозначает строку заголовка). Это название будет показываться как заголовок уровня в дереве документации. Оно должно быть быть связан с определённым разделом документации.

  Привязка может осуществляться через атрибут `url=""`, который ассоциируется с любым уровнем вложенности i. Если пользователь щёлкает на заголовке раздела в дереве документации, то &kdevelop; будет пытаться обратиться к файлу через &URL;, составленный из базового и &URL; данного раздела.

  Тег `<tocsectn/>` должен содержать атрибут `url=""`. Последний вложенный `<tocsectn/>` будет закрыт`/` перед скобкой `>`.

  Любой адрес, составленный из базового &URL; и &URL; раздела, должен указывать на какой-то показываемый файл. Обычно это файл HTML. Можно сделать ссылку внутри такого файла с помощью стандартного знака # в таком формате: `/base-url/section-url#anchor-mark`.

структура индекса
  - `<index>`
  - `<entry name="` (заголовок индекса) `" url="` (&URL; раздела индекса) `"/>`
  - `</index>`

  Индекс — это простой список индексных записей — пар заголовок и &URL;. Индекс не обязателен.

#### Документация DevHelp

Документация DevHelp — другой способ доступа к структурированной информации. Она использует структурную таблицу содержания файлов, в файле с расширением `.devhelp`, сходным с файлами TOC для доступа к документации по GNOME 2.

На вкладке настройки Коллекция документации DevHelp можно выбрать, какие файлы DevHelp будут доступны.

Предоставление документации DevHelp

Файлы DevHelp были доступны на сайте LiDN, но похоже, что им больше никто не занимается. Более свежую документацию DevHelp можно найти на странице DevHelp Books Download.

При установке &kdevelop; попытается найти все файлы `.devhelp` в некоторых стандартных каталогах системы, например в `/opt/gnome/share/`. Найденные файлы не будут показываться по умолчанию, но это можно изменить, установив флажок в столбце Содержание в списке коллекций.

Новую коллекцию можно добавить соответствующими кнопками справа от списка. В диалоге выбора расположения будут показаны только файлы `*.toc`.

#### Настройка пользовательской коллекции документации

Этот тип предназначен для документации в других форматах. Можно добавить файл документации любого формата, который можно открыть в &konqueror;.

Документация в нестандартном формате

При первом запуске &kdevelop; коллекций такого типа нет.

Добавить документацию такого типа довольно просто. Используйте кнопки справа для добавления, изменения или удаления коллекций. &kdevelop; не будет фильтровать файлы в окне выбора файла.

Просто выберите файл для показа в панели документации &kdevelop;. Установите флажок в столбце Содержание в списке коллекций.

Документацию такого типа невозможно проиндексировать или осуществить по ней поиск средствами &kdevelop;. Поэтому отметка флажков в столбцах Индекс и Поиск не будет иметь эффекта, как для других типов коллекций.

### Индексирование документации

(... в процессе написания ...)

Индексирование документации

### Другие параметры настройки коллекций документации

(... в процессе написания ...)

## Расширенная настройка

(... в процессе написания ...)

### Подключаемые модули

(... в процессе написания ...)