Тут докладно викладено вимоги до стильового оформлення тексту у форматі restructured для підручника з Krita.
Рекомендуємо ознайомитися із офіційною специфікацією reStructuredText і, оскільки ця специфікація зберігається на sourceforge, збережіть копію на ваш диск (на час написання цього підручника у sourceforge є проблеми із працездатністю серверів):
Сторінка Sphinx щодо текстів restructured — корисна для вивчення специфічних для sphinx команд та їхнього використання для створення, наприклад, таблиці змісту підручника.
Існують відмінності між офіційною документацією reStructuredText та документацією sphinx, а також різні способи досягти того самого результату. У цьому підручнику описано рекомендовані способи форматування.
Кожна сторінка має розпочинатися з трьох елементів:
Метаопис
Це загальний опис сторінки. Його буде перетворено на метамітку html, яка використовуватиметься рушіями пошуку:
..meta:::description:Опис.
Список авторів та ліцензування.
Просто для стеження за тим, хто редагував сторінку, та зазначення авторських прав. Дані має бути закоментовано, щоб комп’ютер не обробляв їх. Умовами ліцензування усього підручника є GDL 1.3, і про це також слід згадати:
Це список термінів, які відокремлено комами, призначений для індексування сторінки у Покажчик. Створений покажчик є доволі корисним для підручника у форматі PDF, а також читачів, яким потрібен пошук значень та прикладів за термінами. Список термінів визначається так:
.. index:: Ключ, Ключове слово із пробілами, ! Ключове слово основного визначення
Мітка.
Цей запис призначено для полегшення посилання на сторінку за допомогою коду :ref:`назва_мітки`. Намагайтеся використовувати прості для використання назви змінних:
.._назва_мітки:
Після мітки слід додати заголовок, оскільки :ref:`назва_мітки` використовуватиме текст заголовка як замінник самого посилання.
Усі ці правила більшою чи меншою мірою визначила програма для перетворення даних mediawiki Pandoc до reStructuredText. Якщо у вас більше 4 рівнів заголовків, переконайтеся, що сторінка не є надто складною і не потребує поділу на частини.
Іноді потрібне посилання на підрозділ сторінки. Для створення такого посилання додайте мітку над заголовком.
Заголовки не повинні завершуватися символами пунктуації, оскільки заголовок буде використано як замінник посилання у тексті.
Посилання слід вказувати так: :ref:`назва_мітки`. Якщо замість самої мітки має бути показано якийсь текст, користуйтеся таким форматом: :ref:`показанийтекст<назва_мітки>`.
Для посилань на зовнішні сторінки використовується команда `адреса`_ або `назвапосилання<адреса>`_, яку буде показано так: назва посилання.
Pandoc перетворює посилання на `назва_посилання`__ і потім додає ..__:url наприкінці документа. Це так зване «анонімне посилання», що означає, що залежно порядок посилань наприкінці документа залежатиме від від порядку посилань у тексті. Це може здатися незручним та складним, але як уже є. У цьому полягає причина того, що ми намагаємося уникати таких посилань.
Це цитата. Вона подібна до підрядкової примітки, але мітка у ній є текстовою.
На цитату також можна посилатися. Ось так: `цитата<CIT2002>`_.
Ми не використовуємо підрядкові посилання у підручнику через те, що вважаємо їх занадто академічними для наших читачів. Втім, ми збираємо посилання та документи, які викладають предмет сторінки ширше, наприкінці сторінки. У Sphinx передбачено команду ..seealso:: для визначення зовнішніх посилань, а у reStructuredText використовують ..rubic::Footnotes для спеціально зібраних підрядкових приміток, оскільки так зручніше для перетворення на код LaTeX.
Ви можете робити фрагмент тексту курсивним або напівжирним за допомогою однією або двох зірочок, відповідно:
*emphasize***strong**
Не можна одночасно використовувати *нахилений і напівжирний*, доведеться вибрати щось одне.
Можна створювати нижні індекси та верхні індекси за допомогою команд :sub:`текст` та :sup:`текст`.
Втім, користуйтеся цим дуже обережно! Бажано використовувати наявне семантичне форматування у sphinx за будь-яких умов, оскільки це полегшує перекладачам визначення того, для чого призначено текст:
Ви можете створити певний різновид скорочень для фрагментів тексту або зображень за допомогою такого коду:
..|shorthand|replace::щосьабощещось.
Це означає, що якщо ви використаєте |shorthand|, у тексті його буде замінено на «something or the other». Це корисно для зображень і тексту, який має бути форматовано у складний спосіб, наприклад рядка «LaTeX».
У документації Krita використовуються |mouseleft|, |mousemiddle|, |mousescroll| та |mouseright|, які перетворюються на , , і , відповідно. Ці коди визначено conf.py sphinx, вони додаються до кожного файла rst.
Для посилань, якщо ви використовуєте посилання багато разів, ви можете написати щось подібне до такого наприкінці файла:
Далі, коли використовуватимете посилання, просто введіть `bugzilla`_, щоб отримати посилання на багзіллу зі словом-замінником посилання у тексті «bugzilla». `KritaManual`_ буде перетворено на посилання на docs.krita.org із текстом «Krita Manual».
=========================================ПризначенняТиптаблиці===============================================списокскороченьПростатаблицябагатооб'єднаних стовпчиків Таблиця із ґраткоюПроста,аледовгаТаблиця-список=========================================+------------------------------+------------------+|Призначення|Типтаблиці|+==============================+==================+|списокскорочень|Простатаблиця|+------------------------------+------------------+|багатооб'єднаних стовпчиків |Таблиця з ґраткою |+------------------------------+------------------+|Проста,аледовга|Таблиця-список|+------------------------------+------------------+..list-table:::header-rows:1-*Призначення*Типтаблиці-*списокскорочень*простатаблиця-*багатооб'єднаних стовпчиків*таблицязґраткою-*проста,аледовга*таблиця-список
Таблиці із повноцінною ґраткою найкраще використовувати, коли вам потрібні усі можливості таблиці: складні стовпчики та об’єднані рядки, але код таких таблиць є доволі складним. З цієї причини слід віддавати перевагу простому коду малих таблиць, а для довгих таблиць використовувати команду list, з якою простіше працювати.
Попередження є типом окремих розділів із текстом, на який читач має звернути увагу.
Можна використовувати такі попередження (за порядком критичності):
Підказка
Підказки корисні для зазначення додаткових відомостей щодо теми, яких немає у основному тексті. Приклад підказки: «У openSuse ці пакунки мають інші назви, ніж у Debian».
Порада
Додаткові відомості щодо того, як щось зробити. Приклад: «Ви можете створити шаблон на основі ваших улюблених налаштувань документа» або «Скористайтеся клавішею M для віддзеркалення полотна — це полегшить виявлення помилок під час малювання».
Важливо
Це щось, що варто зауважити, але не обов’язково у негативному сенсі.
Попередження
Загалом, це щось негативне.
Увага
Загальне привернення уваги. Скористайтеся цим, якщо тема є важливою, але не такою важливою, як, наприклад, втрата даних.
Застереження
Це форматування для випадків, коли можлива втрата даних, зокрема через те, що дані не було збережено, або через те, що у додатках Python ще не передбачено можливості скасовування дій.
Небезпека
Цей варіант для речей, які є небезпечними для комп’ютера загалом, зокрема дій, які можуть призвести до «заморожування» системи через нестачу пам’яті.
Помилка
Ймовірно, не використовуватимуться у цьому підручнику. Sphinx може створювати такі сповіщення за визначеними вручну умовами, але у нашому варіанті цю можливість типово вимкнено.
Тобто, горизонтальні лінійки можна додавати за допомогою ----.
Команда рубрики
Команда rubric є командою створення заголовка, який на перший погляд виглядає як команда «topic», але якщо тема (topic) складається з декількох абзаців, рубрика це сам заголовок. Ось так:
..rubric::Командарубрики
Отже, коли нею слід користуватися?
Користуйтеся рубриками, лише якщо впевнені, що тема є надто незначною, щоб мати належний заголовок.
Тема
Коли текст відокремлено від загального ходу думки сторінки, тобто він стосується іншої теми, поза межами теми сторінки.
Рубрика
Коли текст відокремлено від загального ходу думки сторінки, але він не потребує окремого заголовка.
Попередження
Лише якщо є семантична відповідність. Це особливо важливо для попереджень щодо небезпеки, оскільки надто часте їхнє використання може призвести до того, що користувач не звертатиме на них уваги.
Ви також можете скористатися командою ..code::. Якщо ви додасте після неї назву мови програмування, текст буде оброблено відповідно до правил підсвічування синтаксичних конструкцій мови:
// Коментар C++intmyFunction(inti){i+=1;// Check if more than 12if(i>12){i=0;}returni;}
/* Коментар CSS */body{margin:0auto;/* is 800 still sensible? */max-width:800px;font-size:16px;color:#333;background-color:#eee;padding:1em;font-family:serif;line-height:1.4;}
<p>це <spanstyle="font-style:italic">наш</span><!-- коментар HTML --> абзац.</p>
Зазвичай, у підручнику не використовується. Слід використовувати лише за кончої потреби для представлення даних, які потребують точного форматування, але не у випадках, коли використання визначається лише естетичними міркуваннями.
Ви можете скористатися наведеним нижче кодом для включення тексту, який має сенс лише для перекладів підручника. Наприклад, ви можете надати читачам перекладеного підручника англійські еквіваленти назви певного пункту з довідковою метою:
Якщо ви перекладаєте підручник мовою, у якій не використовуються обмежувальні пробіли для слів (наприклад, китайською або японською), ви можете скористатися екранованим пробілом для відокремлення розмітки і слів. Це, зокрема, корисно для запису посилань на сторінки, ось так:
床前\ `明月 <https://krita.org/>`_\ 光
Зауважте, що під час перекладу на основі файла PO вам слід екранувати зворотну похилу риску ще однією зворотною похилою рискою: