4

I use the novel package to typeset a novel for print, and I am really pleased by the beautiful, clean output with grid typesetting. Thanks, @rallg, for creating this package!

However, the standard indentation is too large for my purpose. I read all the files and the whole HTML documentation, but I could not find out how to set the amount of the indentation. I tried putting \setlength\parindent{10pt} in the preamble, but this had no effect. Have I perhaps overlooked something? Would it be possible to change this setting in the first place?

Here is the code of my document with the settings I'm using and some sample text. Thanks in advance for your answers.

% !TeX TS-program = lualatex
% !TeX encoding = UTF-8
%
% EXAMPLE OF NOVEL DOCUMENT CLASS
% Uses mostly default layout.
% IF YOU COMPILE THIS DOCUMENT: Be sure that this file, and its generated PDF,
%   have read/write permissions for any user. If they don't, then
%   compile will fail at the point where files are written.
\documentclass{novel} % v. 1.81b.
\SetTitle{Test Title}
\SetSubtitle{Test Subtitle}
\SetAuthor{Test Author}
\SetPDFX[CGATSTR001]{X-1a:2001}
\setotherlanguage{latin} % requires package hyphen-latin for best results.
\SetFontSize{12pt}
\setlength\parindent{10pt}
\SetChapterStartStyle{empty}
\SetChapterStartHeight{6}
%\SetChapterFont[Numbers=Lining,Scale=1.8]{\parentfont}
%\SetSubchFont[Numbers=Lining,Scale=1.4]{\parentfont}
\SetMargins{1.5cm}{2.2cm}{1.5cm}{1.5cm}
\SetHeadFootStyle{2}
\begin{document}
\frontmatter

% i. Half-Title page:
\thispagestyle{empty}
\vspace*{6\nbs}
\hfill\charscale[1.8]{\textbf{This is}}\par
\vspace{\nbs}
\hfill\charscale[2.4]{\textbf{\color{gray}the Test Title}}\par
\clearpage

% ii. Blank page:
\thispagestyle{empty}
\null
\clearpage

% iii. Full Title page:
% \thispagestyle{empty}
\vspace*{5\nbs}
\begin{center}
\charscale[2]{\textbf{This is}}\par
\vspace{2\nbs}
\charscale[3]{\textbf{\color{gray}the Test Title}}\par
\vspace{1.5\nbs}
\charscale[1.6]{This is the Test Subtitle}\par
\vspace{4\nbs}
\ChapterDeco[6]{\decoglyph{n9548}}
\vspace{4\nbs}
{\addfontfeature{Scale=3}\theAuthor}
\vfill
{\addfontfeature{Scale=1.25} Nonexistent Publications\\
Anytown • Anyplace • Anywhere}\par

\end{center}
\clearpage


% iv. Copyright page:
\thispagestyle{empty}
\begin{center}
\itshape{
\null
\vfill
\textsc{Test Title}\par
Copyright ©2023 Test Author.\par % Whichever year, copyright holder.
All Rights Reserved.\par % Usually no need to be elaborate.
\null
This is a work of fiction.\\
All persons and events are\\
from the author's imagination.\\
Resemblance to any real person,\\
living or dead, is coincidental.\par % Or similar language.
\null
ISBN 0-12345678-9\par % Whatever it is. No barcode, just number.
\null

Independently Published by Test Author,\par % Publisher is you, not the print/distribution service.
Anytown, Anystate USA\par % Publisher's location.
www.example.com/dhardcase/publications/\par % Contact for publisher or author.
\null
Publisher's Cataloging-In-Publication Data\\
available upon request.\par
% Fiction often does not need catalog data.
} % end itshape
\end{center}
\clearpage

% v. Epigraph, Dedication, Table of Contents, or repeated Half-Title.
% In this case, an Epigraph:
\thispagestyle{empty}
\vspace*{7\nbs}
\begin{adjustwidth}{5em}{5em}
\noindent Here would be the Epigraph

\hfill---\textit{Author of the Epigraph}\par
\end{adjustwidth}
\cleartorecto % here, inserts blank, so mainmatter begins recto

% Now to begin your story:
\mainmatter

% Chapter One:

\begin{ChapterStart}
\ChapterTitle{Prolog}
\vspace*{2\nbs}
\ChapterTitle{1} %
\end{ChapterStart}

The first sentence is not indented. Should be this way.

This is the first sentence of the second paragraph. It is indented, which is fine, but I would like to have a smaller indentation. How can I change this setting?
\end{document}

1
  • I am the novel developer. Version 1.82, to be uploaded to CTAN on August 26, 2023, will have a new preamble-only command \myparindent{length} that over-rides the default.
    – rallg
    Aug 25, 2023 at 20:11

1 Answer 1

7

novel.cls tries really hard to prevent you from playing around with various "text lengths" (which include \parindent). Two particular ways where this is done:

  1. novel.cls calls \gsetlength\parindent{1.5em} inside an \AtEndPreamble (in fact all textlengths are set there); so any changes to \parindent in the preamble will be overwritten.
  2. novel.cls restores \parindent to the default value at every \end{ChapterStart}.

If you really want to change the default value, you will need to provide the new \parindent after \begin{document} and also bypass the restoration, by setting the length \normalparindent. So, try inserting immediately after \begin{document}

\begin{document}
%%%% Add the following two lines to change the default parindent
\gsetlength\parindent{10pt}
\gsetlength\normalparindent\parindent
%%%% end changes
\frontmatter
2
  • Thanks, @Willie Wong. Your solution worked like a charm for me. Yes, I really need to change the amount of the indentation because 1.5em is a bit too much for German printed novels. All the recent books I checked have about 10pt or just 1em. Thanks!
    – Eaglechild
    Jul 27, 2023 at 22:53
  • Good answer, Willie. I am the author of novel, and indeed it tries really hard to prevent some user changes. I did not realize that German text uses small indent. Possible update (maybe).
    – rallg
    Aug 22, 2023 at 17:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .