2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Название глав с шаблонными фрагментами
Сообщение02.02.2018, 18:31 
Аватара пользователя


26/09/16
198
Снегири
А можно ли сделать так, чтобы в названиях глав автоматически подставлялись какие-то шаблонные фразы? И чтобы можно было от них избавляться в \tableofcontents?

Вот, допустим, пишу я:

...
Лабораторная работа № 2
Поедание котят

Котят едят вот так-то

Лабораторная работа №3
Поглаживание ёжиков

Ёжиков гладят вот такими способами
...

Мне бы хотелось сделать так, чтобы слова "Лабораторная работа № 2" были выделены одним шрифтом, "Поедание котят" - другим, и стояло в новой строчке.
Сейчас я делаю это при помощи

Код:
\newcommand{\anonchapter}[1]{
\chapter*{#1}\addcontentsline{toc}{chapter}
{\numberline {}#1}
{\setcounter{section}{0}}
{\setcounter{figure}{0}}
{\setcounter{table}{0}}
{\setcounter{equation}{0}}
}


И потом уже

Код:
\anonchapter{Лабораторная работа №2}
\setcounter{chapter}{2}

\begin{center}
Поедание котят
\end{center}


Но в автоматическом \tableofcontents после этого получается

...
Лабораторная работа № 2 ... 12
Лабораторная работа № 3 ... 15
...

А мне бы хотелось видеть там что-то вроде

...
2. Поедание котят ... 12
3. Поглаживание ёжиков ... 15
...

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

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

 Профиль  
                  
 
 Re: Название глав с шаблонными фрагментами
Сообщение05.02.2018, 13:01 
Заслуженный участник
Аватара пользователя


18/05/06
13438
с Территории
Можно сделать всё, и более того.

В первую очередь не стоит ломать стандартные механизмы нумерации, чтобы потом выстраивать их заново руками. \setcounter - это вроде goto в иных языках: пользоваться можно, но это верный знак, что Вы что-то делаете не так.

Чем Вам не нравится такой подход, например:
код: [ скачать ] [ спрятать ]
Используется синтаксис LaTeX
\documentclass[oneside]{book}
\usepackage[russian]{babel}
\usepackage[cp1251]{inputenc}
\usepackage{lipsum}

\begin{document}
\renewcommand{\chaptername}{Лабораторная работа}
\tableofcontents

\chapter{Поедание котят}
\lipsum[1-2]
\chapter{Поглаживание ёжиков}
\lipsum[3-4]

\end{document}
 


Если дело только в форматировании заголовков, тут нужно переопределять команду \@makechapterhead.

 Профиль  
                  
 
 Re: Название глав с шаблонными фрагментами
Сообщение07.02.2018, 12:35 
Аватара пользователя


26/09/16
198
Снегири
Мне это надо было потому что для изменения заголовков глав я определял отдельный anonchapter, из-за которого нумерация ломалась, и её приходилось запускать насильно.
Но теперь, когда я сделал всё при помощи makechapterhead, этой проблемы больше нет. Спасибо.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group