[FIX] разреженные строки: переносы в составных словах и в инлайн-коде

This commit is contained in:
Arseny
2026-09-02 13:45:00 +03:00
parent 7c518cd59d
commit beac1d5a7d
5 changed files with 68 additions and 29 deletions
+3 -1
View File
@@ -99,7 +99,9 @@ def parse_log(
def _describe(diag: Diagnostic) -> str:
where = f"строка {diag.line}" if diag.line is not None else "место не указано"
where = (
f"абзац в строке {diag.line}" if diag.line is not None else "место не указано"
)
if diag.kind == "overfull":
return f" {where}: на {diag.amount:.1f} pt шире поля"
if diag.kind == "underfull":
+5 -2
View File
@@ -26,8 +26,11 @@ PREAMBLE = r"""\documentclass[a4paper, 14pt]{extarticle}
\setcounter{bottomnumber}{2}
\setcounter{totalnumber}{5}
\usepackage{wrapfig}
\sloppy
\setlength{\emergencystretch}{2em}
% \sloppy не используется намеренно: он снимает штраф за разреженные строки
% целиком, и абзац с длинным неразрывным словом разгоняется пробелами вдвое
% шире нормальных. \emergencystretch включается только там, где иначе строка
% вышла бы за поле.
\setlength{\emergencystretch}{3em}
\clubpenalty=10000
\widowpenalty=10000
\usepackage{enumitem}