Eu defini uma classe simples
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{mycustom}[2019/03/06 My custom class]
\LoadClass{article}
\RequirePackage{setspace}
\newcommand{\summary}{
\begingroup
\setlength{\parindent}{0cm}
\onehalfspacing
}
\newcommand{\ensummary}{
\endgroup
}
\endinput
Dado que criei um arquivo LaTeX simples, definido como:
\documentclass{mycustom}
\usepackage{lipsum}
\begin{document}
\lipsum[1][1-3]
\summary
\lipsum[1][1-4]\par
\ensummary
\lipsum[1][1-3]
\end{document}
Percebi que não adiciono par
dentro do \summary
espaçamento um e meio simplesmente não funciona. Gostaria de saber como ocorre esse comportamento, e se existe uma forma de remover \par
e manter o mesmo comportamento (espaçamento um e meio dentro do \summary
). Qualquer sugestão de melhoria é muito bem-vinda.
Este é o parágrafo quando adiciono\par
Este é o parágrafo sem\par
Preste atenção ao espaçamento entre linhas no parágrafo central.
Responder1
Você deve encerrar a definição do ambiente com \par
para que fique no escopo da alteração do espaço de linha. Por outro lado, você devecomeçaro meio ambiente, \par
caso contrário o texto anterior poderá ser afetado (tente o exemplo abaixo sem o primeiro \par
na definição).
Conforme observado nos comentários, este deve ser um ambiente (o látex normalmente impede que comandos sejam definidos com nomes começando com \end...
), caso em que o explícito \begingroup
não é necessário, também \newline
nunca termina um parágrafo, apenas força uma quebra de linha.
\documentclass{article}
\usepackage{setspace,lipsum}
\newenvironment{summary}
{\par\setlength{\parindent}{0cm}\onehalfspacing}
{\par}
\begin{document}
\lipsum[1][1-3]
\begin{summary}
\lipsum[1][1-4]
\end{summary}
\lipsum[1][1-3]
\end{document}