KOMA-Script y espaciado vertical después del título del párrafo

KOMA-Script y espaciado vertical después del título del párrafo

Actualmente tengo problemas para cambiar el espaciado vertical del título de un párrafo al texto del cuerpo siguiente. Lo que quiero tener es una nueva línea después del encabezado del párrafo. Según tengo entendido, lo nuevo \RedeclareSectionCommandaplica afterskip=1spuna nueva línea (espacio simple) entre la sección del párrafo y el texto del cuerpo. De alguna manera esto no funciona como quiero. Mi código se ve ahora algo así como (MWE):

\documentclass[12pt,english,parskip=half*,listof=nochaptergap,final]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{setspace}

\RedeclareSectionCommands[
    beforeskip=-3.25ex plus -1ex minus -0.2ex,
    afterskip=1sp,
    %indent=0pt
]{paragraph,subparagraph}

\onehalfspacing

\begin{document}
\paragraph{Test paragraph}
Test test test test test \\
Test test test test test
\end{document}

Lo que quiero tener es una nueva línea después de un párrafo y, si es posible, una opción para personalizar yo mismo el espaciado vertical.

--- SOLUCIÓN ---

En caso de que alguien sea tan raro como yo, simplemente elimínelo parskip=half*de las opciones de documento y ¡listo! ¡¡¡GRACIAS @esdd!!!

Respuesta1

Actualizar

KOMA-Script versión 3.26introduce dos nuevas claves para \RedeclareSectionCommandy \RedeclareSectionCommands: runiny afterindent. Los valores posibles para ambas claves bysignson truey false. Para obtener más información, consulte la documentación de KOMA-Script o, por ejemplo,Ajustar el espaciado alrededor de los títulos de secciones/subsecciones con koma-script.

Usando la nueva clave runincon valor false¹ es posible eliminar el \parskipentre el encabezado y el siguiente texto mediante afterskip=-\parskip.

Ejemplo:

\documentclass[12pt,english,parskip=half*,listof=nochaptergap,final]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[onehalfspacing]{setspace}

\RedeclareSectionCommands[
    beforeskip=-3.25ex plus -1ex minus -0.2ex,
    runin=false,
    afterskip=-\parskip
]{paragraph,subparagraph}

\usepackage{blindtext}
\begin{document}
\paragraph{Test paragraph}
\Blindtext[2]
\end{document}

captura de pantalla

¹ La configuración predeterminada es runin=bysignla que da como resultado el mismo comportamiento que en la respuesta original.


Respuesta original

El espacio vertical entre un título y el texto siguiente es al menos el mismo que el espacio entre dos párrafos en el cuerpo del texto. Eso significa que si está utilizando un parskip en lugar de un parindent (debido a parskip=half*), el espacio entre un encabezado y el siguiente texto es al menos el mismo que este parskip.

ingrese la descripción de la imagen aquí

Código:

\documentclass[12pt,english,parskip=half*,listof=nochaptergap,final]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[onehalfspacing]{setspace}

\RedeclareSectionCommands[
    beforeskip=-3.25ex plus -1ex minus -0.2ex,
    afterskip=1sp,% smallest possible positive value
]{paragraph,subparagraph}

\usepackage{blindtext}
\begin{document}
\paragraph{Test paragraph}
\Blindtext[2]
\end{document}

Un valor positivo de afterskippara un comando de sección amplía el salto vertical en este valor. Con un valor negativo del afterskiptexto, el texto comienza en la misma línea que el encabezado y el valor de afterskipse utiliza como un salto horizontal.

ingrese la descripción de la imagen aquí

Código:

\documentclass[12pt,english,parskip=half*,listof=nochaptergap,final]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[onehalfspacing]{setspace}

\RedeclareSectionCommands[
    beforeskip=-3.25ex plus -1ex minus -0.2ex,
    afterskip=-1em,% works as horizontal skip of 1em
]{paragraph,subparagraph}

\usepackage{blindtext}
\begin{document}
\paragraph{Test paragraph}
\Blindtext[2]
\end{document}

Así que elimina parskip=half*de tus opciones de clase. Luego se usa parindent en lugar de parskip y solo el valor positivo de afterskipse usa como salto vertical entre el encabezado y el texto siguiente.

ingrese la descripción de la imagen aquí

Código:

\documentclass[12pt,english,
    %parskip=half*,% <- commented, so parskip=false is used
    listof=nochaptergap,final
]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[onehalfspacing]{setspace}

\RedeclareSectionCommands[
    beforeskip=-3.25ex plus -1ex minus -0.2ex,
    afterskip=1sp,
]{paragraph,subparagraph}

\usepackage{blindtext}
\begin{document}
\paragraph{Test paragraph}
\Blindtext[2]
\end{document}

Si realmente quieres o necesitas parkip=halfeliminar el parskip entre los, paragraph headingpuedes usar

\documentclass[12pt,english,parskip=half,listof=nochaptergap,final]{scrreprt}
\usepackage[utf8]{inputenc}

\RedeclareSectionCommands[
beforeskip=-3.25ex plus -1ex minus -0.2ex,
afterskip=1sp,
%indent=0pt
]{paragraph,subparagraph}

\usepackage{xpatch}
\xapptocmd{\sectionlinesformat}{%
\ifstr{#1}{paragraph}{\vspace*{-\parskip}}{}%
\ifstr{#1}{subparagraph}{\vspace*{-\parskip}}{}%
}{}{}

\usepackage{blindtext}
\begin{document}
\paragraph{Test paragraph}
\Blindtext[2]
\end{document}

ingrese la descripción de la imagen aquí

Pero no recomiendo esto, porque es inusual tener un espacio más pequeño entre un título y el texto siguiente que entre dos párrafos en el cuerpo del texto.

información relacionada