Додаток проєктів

Вступ

Основне призначення додатка роботи з проєктами — створення структурованого списку файлів, які належать до проєкту. Реалізовано такі можливості:

  1. Надання структурованого перегляду файлів проєкту

  2. Спрощення і пришвидшення відкриття проєктів і перемикання між проєктами

  3. Підтримка пошуку із заміною у межах проєкту

  4. Підтримка простого механізму автоматичного доповнення коду

  5. Спрощення швидкого відкриття файлів у проєкті

  6. Підтримка збирання проєкту

Структурований перегляд файлів

Після вмикання додатка роботи з проєктами за допомогою вікна налаштовування Kate відкрийте файл з проєкту. У відповідь на бічній панелі буде показано список усіх проєктів та файлів у цих проєктах:

Як можна бачити у нашому прикладі, поточним активним проєктом є «Kate», а його вміст показано у форматі ієрархічного списку. Якщо натиснути пункт файла у такому списку, програма відкриє його для редагування. Крім того, передбачено контекстне меню, за допомогою якого можна відкривати файли у інших програмах, зокрема можна відкривати файли .ui за допомогою Qt Designer.

Фільтрувати список можна ввівши частину назви файла, який ви шукаєте у поле для пошуку, розташоване під списком.

Перемикання проєктів

Ідея роботи додатка полягає у тому, що вам ніколи не доведеться відкривати проєкт вручну (таку можливість, зрештою, взагалі не передбачено). Якщо ви відкриєте якийсь файл, додаток роботи з проєктами швидко виконає сканування теки, де він зберігається, і усіх її батьківських тек, і спробує знайти файл .kateproject. Якщо такий файл буде знайдено, програма автоматично завантажить відповідний проєкт.

Крім того, якщо ви відкриєте якийсь інший документ, що належить до іншого проєкту, у Kate, додаток роботи з проєктами автоматично змінить поточний проєкт на проєкт нововідкритого файла. Отже, без потреби у додаткових діях, завжди буде відкрито відповідний проєкт. Звичайно ж, ви також можете перемкнути поточний активний проєкт за допомогою спадного списку.

Пошук і заміна у проєктах

У Kate передбачено додаток пошуку із заміною, сторінку якого буде показано на нижній панелі. Якщо відкрито проєкт, ви можете розгорнути панель пошуку із заміною і перемкнути додаток на режим пошуку із заміною у поточному проєкті:

Просте автоматичне доповнення

Маючи дані щодо усіх файлів, які належать до проєкту, додаток роботи з проєктами надає можливості з автоматичного доповнення коду, реалізовані на основі CTags. Під час першого відкриття проєкту CTags виконує обробку усіх файлів проєкту у фоновому режимі і зберігає усі дані CTags до каталогу /tmp. Отримані дані потім використовуються для заповнення списку контекстної панелі автоматичного доповнення у Kate.

Якщо ж відповідні можливості автоматичного доповнення виявляться недоступними, Kate зможе показувати у списку автоматичного доповнення лише пункти, отримані на основі даних слів з поточного файла. Таким чином, можливості автоматичного доповнення, реалізовані у додатку роботи з проєктами є набагато потужнішими за стандартні.

Якщо у системі не буде виявлено програм CTags, Kate повідомить вам про це панеллю нагадування. Крім того, варто зауважити, що файл CTags у /tmp спорожнюється кожного разу, коли ви завершуєте роботу Kate. Отже, додаток не засмічуватиме теку зайвими застарілими файлами.

Швидке відкриття файлів

Оскільки клацання на пунктах файлів у ієрархічному списку не є найшвидшим способом відкрити файл, у Kate передбачено вбудований механізм швидкого відкриття файлів, активувати який можна за допомогою натискання комбінації клавіш Ctrl+Alt+O. У відповідь буде показано список, подібний до цього:

Фільтрувати список можна введенням частини назви файла, який ви шукаєте. Навігацію списком можна здійснювати за допомогою натискання клавіш зі стрілками та клавіш Page Up/Down. Натисканням клавіші Enter можна активувати позначений файл. Натискання клавіші Esc приховує панель відкриття.

Крім того, засіб швидкого відкриття запам’ятовує попередні файли. Отже, одразу після розгортання панелі швидкого відкриття буде позначено попередній відкритий файл, — вам достатньо буде натиснути клавішу Enter, щоб його відкрити. Іноді, це дуже зручно.

Підтримка збирання проєкту

Ще однією можливістю є підтримка автоматичного налаштовування додатка збирання.

Створення проєктів

Автоматичне завантаження проєктів

У додатку роботи з проєктами передбачено можливість автоматичного завантаження. Список файлів формується на основі даних системи керування версіями. Для того, щоб скористатися цією можливістю, вам слід увімкнути відповідну систему керування версіями у параметрах програми (типово увімкнено):

Створення проєктів вручну

Вам достатньо створити файл .kateproject у кореневій теці проєкту. Наприклад, для «Kate» файл .kateproject містить такі дані:

{
  "name": "Kate"
, "files": [ { "git": 1 } ]
}

Вміст файла записується із використанням синтаксису JSON. Проєкт називається «Kate», а список файлів, які у ньому містяться, отримується з даних git.

Окрім підтримки git, передбачено підтримку subversion (svn) та mercurial (hg). Якщо ви не хочете, щоб додаток читав дані із системи керування версіями, ви можете наказати йому рекурсивно завантажити файли з каталогів так:

{
  "name": "Kate"
, "files": [ { "directory": "kate", "filters": ["*.cpp", "*.h", "*.ui", "CMakeLists.txt", "Find*.cmake"], "recursive": 1 } ]
}

Тут підкаталоги та фільтри визначають те, що є частиною проєкту. За допомогою фільтрів також можна поєднувати дані з системи керування версіями і вказані вручну файли.

Якщо вам потрібно додати підтримку додатка збирання, ви можете вписати до файла .kateproject такі рядки:

{
  "name": "Kate"
, "files": [ { "git": 1 } ]
, "build": {
    "directory": "build"
  , "build": "make all"
  , "clean": "make clean"
  , "install": "make install"
  }
}

Якщо у вашому проєкті є файл .kateproject, за яким стежить система керування версіями, але вам потрібно скоригувати налаштування певного робочого простору, ви можете зберегти ці зміни до окремого файла із назвою .kateproject.local. Вміст цього файла матиме вищий пріоритет за вміст .kateproject.

Поточний проєкт

За допомогою пункту меню ПроєктиПерейти (Alt+1) ви можете відкрити панель Поточний проєкт у нижній частині вікна редактора із такими чотирма вкладками:

Панель термінала

Запуск емулятора термінала у кореневій теці проєкту.

Покажчик коду

Після введення перших символів назви об’єкта у поле для пошуку програма спробує знайти відповідні об’єкти мови за назвою. Буде показано відповідні функції, класи, символи тощо разом із даними щодо їхнього типу та назви відповідного файла та номера рядка.

Позначте пункт у списку, щоб перейти до відповідного рядка у файлі із початковим кодом.

Аналіз коду

Натисніть пункт Розпочати аналіз, щоб запустити статичний аналіз коду мовами програмування C та C++ за допомогою cppcheck і отримати звіт із показаними назвами файлів, номерами рядків та рівнем критичності помилки (стильова, попередження тощо) та даними щодо знайденої вади.

Позначте пункт у списку, щоб перейти до відповідного рядка у файлі із початковим кодом.

Нотатки

Текст, введений на цій вкладці, буде збережено у файлі .kateproject.notes.

Меню «Проєкти»

За допомогою меню Проєкти ви зможете перемикатися між поточними відкритими проєктами. Відповідальним за цей пункт меню є додаток «Проєкти».

ПроєктиНазад (Ctrl+Alt+)

Перемкнутися на попередній проєкт.

ПроєктиВперед (Ctrl+Alt+)

Перемкнутися на наступний проєкт.

ПроєктиПерейти до (Alt+1)

Відкрити панель Поточний проєкт у нижній частині вікна редактора.