Программирование Викиданных/Статья в LaTeX на русском

Скопируйте и оформите тексты своих статей в LaTeX на русском языке в проекте wd_book в папке "wd_book/ru".

Факультет компьютерных технологий
Иконка программы Pywikibot

Программирование Викиданных

Главы (2021):

Алгоритм работы (для авторов):

Сейчас не нужно копировать листинги запросов.

Дополнительное задание: ПетрГУ — написать, перевести или озвучить раздел статьи Википедии о Петрозаводском государственном университете.

Листинги программ править

Для красивого представления кода используем пакет lstlisting. См. также документацию в Викиучебнике: b:en:LaTeX/Source Code Listings.

Пример оформления листинга, которого мы будем придерживаться, см. в файле wd_book/ru/intro/listings_about.tex.

Комментарии внутри блока lstlisting можно писать только по-английски. Иначе компилятор LaTeX выдаст ошибку.

В статье Викиверситета перед каждым листингом представлен блок "Используется" с описанием объектов и свойств, используемых в коде. Это достаточно громоздкая конструкция, поэтому пишем по-английски комментарии в листинге вместо этого блока.

Результаты запроса (количество полученных записей) отображаем так:

  1. если какого-либо вдумчивого последующего анализа нет, а приводится только число полученных записей в какой-то год, то оформляйте результаты с помощью сноски. См. пример листинга (ссылка выше) с командами \protect\footnotemark и \footnotetext.
  2. пишем в следующем абзаце после листинга. Обязательна ссылка на номер листинга при упоминании листинга или его результатов, например: (листинг 2.1).

Дополнительное задание: WRN — написать рецензию на научную статью для m:Research:Newsletter.

Оформление править

Обратите внимание на конструкцию \wdq и \wdqName в примере по ссылке выше. Эти конструкции позволяют сделать компактную ссылку на объект Викиданных. Например, команда \wdqName{city}{515} преобразуется в текст city (Q515) с гиперссылкой на страницу этого объекта в Викиданных.

Для ссылки на свойства Викиданных используйте конструкцию \wdProperty{ID}{Name}. Тогда команда \wdProperty{31}{<<экземпляр>>} преобразуется в текст "«экземпляр» (P31)".

Используйте конструкцию \num{}, например \num{20800} для указания чисел больше 999 или вещественных чисел. Это позволит единообразно решить вопрос, как писать 10 000 или 10000 или 10'000 и 1.23 или 1,23. Подробности по ссылке: Digit grouping — Apostrophe or space as decimal point.

Для ссылки на статьи Русской Википедии из LaTeX используйте команду \ruwiki с двумя параметрами. Например, \ruwiki{vDw}{МиГ}. Эта команда эквивалентна коду \href{https://w.wiki/vDw}{МиГ}. Перечислим параметры команды \ruwiki:

  1. суффикс короткой ссылки, получаемой с помощью сервиса URL Shortener. В примере выше первый параметр vDw получается из ссылки https://w.wiki/vDw
  2. название статьи в Русской Википедии, например МиГ.

Будущая работа, упражнения и задачи править

Будущая работа (Викиверситет) → Упражнения (LaTeX)

Раздел статей Викиверситета «Будущая работа» переносим в LaTeX. Соответствующий подраздел главы назовите «Упражнения». Обычно в учебниках главы заканчивают задачами для самостоятельно решения и для закрепления пройденного материала.

Упражнения (Викиверситет) → Задачи, вопросы и ответы (LaTeX)

Переносим в LaTeX раздел статьи Викиверситета «Упражнения».

Задачи (в Викиверситете в разделе «Упражнения») можно вставлять в любом месте главы в LaTeX, предпочтительно на полях. Если какая-то часть главы ближе по смыслу к задаче, то добавляйте задачу ближе к этому тексту главы.

Также как и всю статью, викифицируйте вопросы и ответы, если в них упоминаются какие-либо термины, о которых есть статьи в Википедии.

В LaTeX мы пишем вопросы к тексту и темам, обсуждаемым в главе. Вопросы и ответы на них должны (1) иметь образовательный характер, (2) сообщать новые нетривиальные сведения или (3) могут быть яркими и интересными по теме главы.

См. пример вопроса в главе Программы и программки в книге (listings_about.tex).

К вопросам прилагаются развёрнутые ответы с иллюстрациями, размещайте их в главе Ответы (answers.tex). В этих двух главах посмотрите то, каким образом связаны между собой вопросы и ответы гиперссылками в итоговом PDF-файле.

Приводить ли в ответах листинги SPARQL-запросов? У вас есть варианты:

  1. привести и листинг, и короткую ссылку. Особенно, если есть какие-то особенности в коде, которые вы упоминаете.
  2. привести только короткую гиперссылку на код (используйте URL Shortener). Таким образом, даже с помощью бумажной книги читатель сможет запустить скрипт и получить ответ.

Дополнительное задание: w:Участник:AKA MBG/Ptz — фото объекта на Земле и коллаж города России.

Оформление ссылок на литературу и веб-ресурсы править

  w.wiki/4T2e

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

См. пример оформления ссылки на книгу \cite{Krizhanovsky2015} во «Введении», файл intro.tex. Обратите внимание, что библиографическая запись есть как на полях, так и в разделе «Литература» в конце книги.

Если ссылаетесь на книгу или статью больше 10 страниц (и если в них указаны страницы), то укажите в ссылке номер страницы или диапазон страниц. Это позволит быстрее проверить ссылку.

См. примеры оформления библиографических ссылок BibTeX Style Examples.

В русской версии команда \autocite{} для коротких ссылок на полях

В русской версии LaTeX мы используем вместо \cite{} команду \autocite{}, см. примеры в файле anime.tex. Если ссылка встречается на странице несколько раз, то второй раз на поля будет выводится укороченная ссылка на литературу. В разделе «Литература» будет полная библиографическая ссылка.

Чтобы команда \autocite{} правильно работала, в файле со списком библиографических ссылок wd_references.bib нужно

  1. в своей библиографической ссылке указать дополнительное поле shorttitle с коротким заголовком, обычно дублирует текст в поле title;
  2. если автор отсутствует, то в поле автор указать выключение запятой после имени автора: author = {\nopunct}. См. пример в файле wd_references.bib (ссылка выше).

Индексирование ключевых слов в LaTeX править

 
Суффиксное дерево ‒ это одна из структур индексирования. В случае LaTeX’а индекс ‒ это, скорее, глоссарий со ссылками

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

\index{Программирование!Определения / Листинг} И рядом текст книги с определением «листинга».

Не забудьте при компиляции выполнить команду построения индекса, см. componavt / wd_book на GitHub.

Теперь в PDF-файле в разделе «Предметный указатель» появятся две такие строчки, где 17 — это гиперссылка на 17-ю страницу с определением «листинга»:

Программирование
    Определения / Листинг, 17
1. Команды SPARQL в индексе

В первую очередь хотелось бы дать читателю индекс интересных команд SPARQL, разбросанных по листингам. Интересными командами я называю команды FILTER, MAX, REPLACE, STR. То есть команды, встречающиеся далеко не в каждом скрипте.

Например, если в скрипте с названием "Листинг 3.6: Численность населения «малых городов»" есть команда MAX, то индекс такой:

\index{SPARQL!MAX!Численность населения «малых городов»}

Восклицательный знак — это разделитель. Пишите команду после первого разделителя, а название скрипта после второго разделителя.

2. Типы графиков в индексе

Сгруппируем ссылки на рисунки по типу графика, указанного в первых строчках скрипта. Например, если рисунок называется "Рис. 3.4: Пузырьковая диаграмма по числу побратимов у страны, 2020 год", а в начале скрипта есть строчка "#defaultView:BubbleChart", то пишем такой индекс:

\index{График!BubbleChart!Пузырьковая диаграмма по числу побратимов у страны}

Лучше более краткий вариант:

\index{График!BubbleChart!Число побратимов у страны}

Ссылки на учебный материал по работе с индексом в LaTeX: