LINUX.ORG.RU

latex отступ первой строки после заголовка

 


0

1

Пробую latex (надоело воевать с офисами…)

MWE

\documentclass[a4paper, 12pt]{article}
\usepackage[document]{ragged2e}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{indentfirst}
\setlength{\parindent}{20pt}
\usepackage[english, russian]{babel}
\usepackage{geometry}
\geometry{left=20mm, right=10mm, top=10mm, bottom=20mm}
\setcounter{secnumdepth}{0}

\begin{document}
\section{Введение}
\begin{justify}
Тут немного текста.

А тут еще немного.
\end{justify}
\end{document}

У первой строки «Тут немного текста» все равно нет отступа, хотя indentfirst подключен и явно задана величина отступа. В гугле похожие вопросы решались именно так. Костыль в виде \hspace работает, но зачем он нужен в каждом разделе…

Как временное решение использую

\usepackage{ragged2e}

\justify % на первой странице документа

\begin{center} % для центрирования заголовков разделов
\section{blabla}
\end{center}

Если у кого-то есть безкостыльный вариант, напишите.

Entmatix
() автор топика
Ответ на: комментарий от TeopeTuK

Что хочу:

  • Весь текст выравнивается по ширине (fully justified).
  • У всех абзацев есть абзацный отступ.
  • Все заголовки по центру.

Если использовать среду justify без доп. пакетов, первый абзац после заголовка не имеет абзацного отступа. Приходится перед каждым первым абзацем после заголовка вставлять отступ вручную. Пакет indentfirst не решает проблему (просто ничего не делает с первым абзацем).

Если использовать ragged2e, то с выравниваением текста и абзацев все ок, и не надо везде вставлять среду, но заголовки тоже выравниваются по ширине, вместо центрирования. Приходится вручную центрировать каждый.

Entmatix
() автор топика
Последнее исправление: Entmatix (всего исправлений: 1)
Ответ на: комментарий от Entmatix

В таком случае ragged2e не нужен. indentfirst сделает тебе абзацный отступ в начале раздела, а для заголовков обычно используют пакет titlesec. Пример:

\documentclass[a4paper, 12pt]{article}

\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english, russian]{babel}

\usepackage{indentfirst}
\setlength{\parindent}{20pt}

\usepackage[showframe]{geometry}
\geometry{left=20mm, right=10mm, top=10mm, bottom=20mm}

\usepackage[center]{titlesec}


\setcounter{secnumdepth}{0}

\begin{document}
\section{Введение}
Доступен выпуск дистрибутива Ubuntu Sway Remix 23.04, предоставляющего преднастроенный и готовый к использованию рабочий стол на основе мозаичного композитного менеджера Sway. Дистрибутив является неофициальной редакцией Ubuntu 23.04, созданной с оглядкой как на опытных пользователей GNU/Linux, так и новичков, желающих попробовать окружение мозаичных оконных менеджеров без необходимости в их долгой настройке. Для загрузки подготовлены сборки для архитектур amd64 и arm64 (Raspberry Pi).

Доступен выпуск дистрибутива Ubuntu Sway Remix 23.04, предоставляющего преднастроенный и готовый к использованию рабочий стол на основе мозаичного композитного менеджера Sway. Дистрибутив является неофициальной редакцией Ubuntu 23.04, созданной с оглядкой как на опытных пользователей GNU/Linux, так и новичков, желающих попробовать окружение мозаичных оконных менеджеров без необходимости в их долгой настройке. Для загрузки подготовлены сборки для архитектур amd64 и arm64 (Raspberry Pi).
\end{document}
TeopeTuK ★★★★
()
Ответ на: комментарий от Entmatix

Ээээ, тогда не понятно зачем justify? Просто пиши текст без всякого окружения и будет тебе счастье.

И да, поменяй article на что-нибудь не окаменевшее во времена раннего кайнозоя более внятное, например, scrartcl из KOMA-script.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

И да, поменяй article на что-нибудь не окаменевшее во времена раннего кайнозоя более внятное, например, scrartcl из KOMA-script.

А чем плох article? КОМА, я так понимаю, это целый комбайн на все случаи жизни. Мне там большая часть скорее всего не пригодится. С чем article не сможет справиться сейчас в минималистичных документах?

Entmatix
() автор топика
Последнее исправление: Entmatix (всего исправлений: 1)
Ответ на: комментарий от Entmatix
  • article создавался в прошлом тысячелетии (буквально). Это не проблема, но очень много пакетов LaTeX завязаны на те или иные умолчания прописанные в article.sty, поэтому в целях совместимости там _ничего_ менять нельзя, включая убирание и добавление багов. По любому чиху придётся добавлять стиль, который этот чих правит. Это всё вываливается в портянки любимых стилей и они начинают друг с другом взаимодействовать самыми загадочным образом.
  • article.sty настроен на американские правила для полиграфии (размер листа по умолчанию letter, широкие поля, отсутствие отступа для первого параграфа и прочее), а русская полиграфия ориентирована скорее на французские традиции (A4, узкие поля и др.).

KOMA-script разрабатывают не французы, но немцы и документация там 300+ страниц. Кажется, что это много, но если вдаваться в детали качественной печати, то это ещё мало и документация по классу там крайне высокого качества. Почти все проблемы можно решить методами именно класса без привлечения сторонних пакетов. Ну и умолчание там попривычнее само собой.

Само собой для простых текстов можно пользоваться чем угодно. Но проблема в том, что тексты имеют тенденцию усложняться.

Evgueni ★★★★★
()
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от Evgueni

Ну это было очевидно, но… Он вроде как с вышеупомянутым titlesec не работает. Не компилит, ругается. Отключаю titlesec и все ок, но при этом заголовки опять не по центру -_-.

Entmatix
() автор топика
Ответ на: комментарий от einhander

Оба хороши. Правда я последний не использовал в работе, а с помощью KOMA-script парочку книг сверстал. Вполне неплохо получилось.

Evgueni ★★★★★
()
Последнее исправление: Evgueni (всего исправлений: 1)