Налаштування змінних документа

Змінні KatePart реалізовано у KatePart як змінні документа, подібно до рядка режимів у emacs і vi. У katepart, рядки мають формат kate: НАЗВА_ЗМІННОЇ ЗНАЧЕННЯ; [ НАЗВА_ЗМІННОЇ ЗНАЧЕННЯ; ... ]. Рядки можуть, звичайно ж, бути коментарями, якщо файл має формат, у якому передбачено коментарі. Назви змінних мають бути цілими словами (без пробілів), наступна частина рядка, до наступної крапки з комою, є значенням змінної. Використання крапки з комою є обов’язковим.

Ось приклад рядка змінних, який вмикає примусове встановлення відступів для файлів C++, java або javascript:

// kate: replace-tabs on; indent-width 4; indent-mode cstyle;

Примітка

Програма шукатиме рядки змінних лише у перших і останніх 10 рядках документа.

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

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

У KatePart передбачено підтримку читання налаштувань з файлів .editorconfig, якщо встановлено бібліотеку editorconfig. KatePart автоматично шукає .editorconfig під час відкриття файла. Втім, перевага надається файлам .kateconfig.

Як KatePart використовує змінні

Під час читання налаштування, katepart шукатиме змінні у таких місцях (у вказаному порядку):

  • Загальне налаштування.

  • Додаткові дані сеансу.

  • Налаштування типу файлів.

  • Змінні документа у файлі .kateconfig.

  • Змінні документа у самому документі.

  • Параметри, вказані під час редагування за допомогою меню або командного рядка.

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

Будь-яка змінна, якої немає у наведеному нижче списку, і яка зберігається в документі, запит на яку може бути надіслано іншими об’єктами, такими як додатки, які можуть використовувати ці додатки з власною метою. Наприклад, у режимі відступів зі змінними змінні документа буде використано для налаштування режиму.

Список змінних, наведених тут, стосується версії 5.38 KatePart. У майбутніх версіях може бути додано нові змінні. Існує 3 можливих типи значень змінних, які приймають наступні значення:

  • BOOL — on|off|true|false|1|0

  • INTEGER — будь-яке ціле число

  • STRING — всі інші змінні

Можливі змінні

auto-brackets [BOOL]

Увімкнути автоматичне вставлення дужок.

auto-center-lines [INT]

Встановлює кількість автоматично вирівняних по центру рядків.

background-color [STRING]

Встановлює колір тла документа. Значенням має бути рядок, який можна інтерпретувати яка колір, наприклад, #ff0000.

backspace-indents [BOOL]

Увімкнути або вимкнути вилучення відступів у відповідь на натискання Backspace.

block-selection [BOOL]

Вмикає або вимикає режим прямокутного виділення.

bom | byte-order-mark | byte-order-marker [BOOL]

Увімкнути або вимкнути позначення порядку байтів (ППБ) під час збереження файлів у форматі Unicode (utf8, utf16, utf32).

Актуальна версія: Kate 3.4 (KDE 4.4)

bracket-highlight-color [STRING]

Встановлює колір підсвічування дужок. Значенням має бути рядок, який можна інтерпретувати як коректний колір, наприклад #ff0000.

current-line-color [STRING]

Встановлює колір поточного рядка. Значенням має бути рядок, який можна інтерпретувати як коректний колір, наприклад #ff0000.

default-dictionary [STRING]

Визначає типовий словник, який буде використано для перевірки правопису.

Актуальна версія: Kate 3.4 (KDE 4.4)

dynamic-word-wrap [BOOL]

Вмикає або вимикає динамічне перенесення рядків.

eol | end-of-line [STRING]

Визначає режим використання символу кінця рядка. Можливі значення: unix, mac і dos

folding-markers [BOOL]

Вмикає або вимикає показ позначок згортання.

folding-preview [BOOL]

Увімкнути перегляд згорнутого на межі поля редагування.

font-size [INT]

Встановлює розмір у точках шрифту документа.

font [STRING]

Встановлює гарнітуру шрифту поточного документу. Значенням має бути чинна назва шрифту, наприклад courier.

hl | syntax [STRING]

Встановити підсвічування синтаксису. Коректними рядками є всі пункти відповідних меню. Наприклад, для C++ достатньо вказати C++.

icon-bar-color [STRING]

Встановлює колір смужки піктограми. Значенням має бути рядок, який можна інтерпретувати як коректний колір, наприклад, #ff0000.

icon-border [BOOL]

Вмикає або вимикає показ смужки піктограм.

indent-mode [STRING]

Встановлює режим автоматично встановлення відступу. Можна використовувати значення none, normal, cstyle, haskell, lilypond, lisp, python, ruby і xml. Докладніше про це можна дізнатися з розділу «Використання автоматичних відступів».

indent-pasted-text [BOOL]

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

Актуальна версія: Kate 3.11 (KDE 4.11)

indent-width [INT]

Встановлює ширину відступу.

keep-extra-spaces [BOOL]

Визначає, чи буде враховано існуючі пробіли під час обчислення ширини відступу.

line-numbers [BOOL]

Вмикає або вимикає показ номерів рядків.

newline-at-eof [BOOL]

Додати порожній рядок наприкінці файла (EOF) під час збереження документа.

Актуальна версія: Kate 3.9 (KDE 4.9)

overwrite-mode [BOOL]

Вмикає або вимикає режим перезапису (заміни).

persistent-selection [BOOL]

Вмикає або вимикає режим стійкого вибору.

replace-tabs-save [BOOL]

Вмикає або вимикає перетворення табуляції у пробіли під час збереження документа.

replace-tabs [BOOL]

Вмикає або вимикає динамічне перетворення табуляції у пробіли.

remove-trailing-spaces [РЯДОК]

Вилучити кінцеві пробіли під час збереження документа. Можливі аргументи:

  • не вилучати, - or 0: не вилучати пробіли наприкінці рядків.

  • змінені, mod, + або 1: вилучити лише пробіли наприкінці змінених рядків. Змінені рядки буде визначено за допомогою системи визначення змінених рядків, вбудованої до програми.

  • всі, * або 2: вилучити пробіли наприкінці рядків у всьому документі.

scrollbar-minimap [BOOL]

Мінікарта на смужці гортання.

scrollbar-preview [BOOL]

Перегляд на смужці гортання.

scheme [STRING]

Встановлює схему кольорів. Щоб змінна запрацювала, її значенням має бути рядок назви схеми кольорів, яка існує у ваших налаштуваннях.

selection-color [STRING]

Встановлює колір виділеного тексту. Значенням має бути рядок, який можна інтерпретувати як коректний колір, наприклад, #ff0000.

show-tabs [BOOL]

Вмикає або вимикає візуалізацію символів табуляції.

smart-home [BOOL]

Вмикає або вимикає кмітливу навігацію документом за допомогою клавіші Home.

tab-indents [BOOL]

Вмикає або вимикає створення відступів клавішею Tab.

tab-width [INT]

Визначає показану ширину відступу табуляції.

undo-steps [INT]

Встановлює кількість дій, які записуватимуться до журналу скасування дій.

Зауваження: у Kate 3 (KDE 4) вважається застарілою. Цю змінну буде проігноровано. Максимальну кількість дій зі скасування нічим не обмежено.

word-wrap-column [INT]

Встановлює ширину статичного перенесення рядків.

word-wrap-marker-color [STRING]

Встановлює колір позначки перенесення рядків. Значенням має бути рядок, який можна інтерпретувати як коректний колір, наприклад #ff0000.

word-wrap [BOOL]

Вмикає або вимикає статичне перенесення рядків.

Додаткові параметри у файлах .kateconfig

KatePart завжди шукає файл .kateconfig для локальних файлів (не файлів, які зберігаються на віддалених ресурсах). Крім того, можна встановити параметри на основі замінників (для суфіксів назв файлів), ось так:

kate: tab-width 4; indent-width 4; replace-tabs on;
kate-wildcard(*.xml): indent-width 2;
kate-wildcard(Makefile): replace-tabs off;

У цьому прикладі в усіх файлах використовуватиметься табуляція у 4 пробіли, ширина абзацного відступу у 4 пробіли, а табуляції буде замінено на відповідну кількість пробілів. Втім для усіх файлів *.xml буде встановлено ширину абзацного відступу у 2 пробіли. У файлах Makefile використовуватимуться табуляції, тобто їх не буде замінено на пробіли.

Замінники слід відокремлювати один від одного крапкою з комою. Інакше кажучи, декілька суфіксів файлів можна вказати ось так:

kate-wildcard(*.json;*.xml): indent-width 2;

Крім того, ви можете скористатися типами MIME для визначення певних категорій файлів. Наприклад, щоб встановити у всіх файлах коду C++ відступ у 4 пробіли, можна скористатися таким записом:

kate-mimetype(text/x-c++src): indent-width 4;

Примітка

Окрім підтримки визначення у файлах .kateconfig, замінники і залежні від типу MIME змінні документів можна визначати і у самих файлах коду у коментарях.