Compile creating just one paragraph in LaTex Memoir book

Hi.
I’m pretty new in scrivener and newer still in Latex, but im giving it a try to write my thesis.
I am using the Non-Fiction Format for latex base, but when I compile my text, the resulting latex file doesn’t recognize paragraphs and in the end I get a pdf with just one large paragraph between sections.
After some googling I found a couple of people with the same problem, but I couldn’t get to a satisfying solution.
So, making double paragraphs in the editor works…but I find that not ideal. Also, I can use the edit - project replace function, but I would prefer to replace at the time of compiling. Sadly, I can’t seem to get to put the paragraph symbol in those fields with the command+enter combination as in the edit - project replace case.

Also, when I look into the prefixes as suffixes paragraph section in the compile section layouts, although there is a \paragraph{} there, when I go look in the .tex file, those prefixes don’t appear…just the top \section{} ones…
Can anyone help me with this ?

Thanks a lot

Hello, welcome to Scrivener!

Just to make one thing clear, this template is intended to provide a way of working in which one writes using LaTeX for the most part. It is not meant to be a tool that takes a word processing file and converts it into LaTeX for you. There are some conveniences, for sure, but you are expected to form proper syntax in the editor out of them, and LaTeX, like most plain-text markup, demands you use one clear space between each paragraph as a matter of syntax. These systems are designed to be composed using dirt basic plain-text editing tools—you definitely would not want to look at a document someone wrote that didn’t have spaced paragraphs, in a text editor! :slight_smile:

That said, I have designed this template to easily accommodate a quasi-word processing typing style, for those that find fully spaced paragraphs unusual. To enable the behaviour:

  1. Go into Section Layouts and in any layout you use that prints text, enable the Override text and notes formatting checkbox, below the mock editor. Note that each of these built-in layouts has had the paragraph formatting pre-set to visual double-spacing. That is significant.
  2. Head over to the Transformations pane, and enabled Convert to plain text. The default setting I’ve supplied here is what you want. This will turn that visual spacing you saw into literal spacing.

So putting two and two together: you are telling Scrivener to internally convert all unstyled text in your thesis to visually spaced paragraphs, and then the transformation setting takes any visual paragraph spacing, either from the editor or the compiler, and turns it into carriage returns.

Keep that in mind for any custom layouts you create or modify, that are meant to handle bulk paragraph body text. They will need similar paragraph spacing in order to trigger this behaviour.

And therein is how you would conditionally override this behaviour if need be! You would not probably want to have each line of your equation spaced out, for example, or code blocks if you use those. So just make sure that stuff like that is styled text, or in a special section layout for it, and that those use single-line spacing so this whitespace conversion rule doesn’t trigger.

Yeah, you could do it that way (it’s ⌥↩, incidentally), but I really wouldn’t recommend it for all of the above reasons. If you blanket convert your entire document to double-spacing you could very well damage your output and cause all kinds of headaches in the typesetting phase.

That is referring to the special paragraph line break environment, which isn’t really a paragraph as you’re thinking of it. It’s meant for significant paragraphs that have a heading, and is traditionally typeset as a run-in head, meaning the paragraph text flows off of the heading line. You might use such a thing when going over several significant points in a document.

They are used as a “sixth level” of depth by default. If you go into your Project ▸ Project Settings… and examine the “Section Types: Default Types by Structure”, you’ll see I’ve added them as the lowest level of hierarchy allowed.

By the way, as someone new to LaTeX, the wiki I linked to above is invaluable, bookmark it. :slight_smile: Another one I’d recommend is the TeX Stack Exchange site. Unless you have some extremely niche desire, chances are any question you can think of asking has been asked there, and answered many times over. I formatted the Scrivener user manual with LaTeX, with a huge amount of help from this site. LaTeX a great tool, but it’s a lot like learning a programming language, and online communities are a great way to do so.

Ioa, I have a recurring problem with the styles, when using a template saved from your sample project: carriage returns are ignored.

The document is written in rich text. Paragraphs end with a single carriage return. The paragraph has a Body paragraph+character style assigned. The Body style also exists in the Compile format.

Yet, paragraphs are not broken when converted to HTML. The source MD file has no double carriage return breaking paragraphs, so the problem starts when compiling the Scrivener project to Markdown.

What am I doing wrong?

Paolo

I moved this over to a relevant thread with a checklist on how best to convert word processor style paragraph spacing to Markdown, above.

Note that if you used styles for all of your paragraphs that will make things more complicated, but only slightly, just so long as the paragraph style, set up in the Styles compile format pane, adds spacing after each paragraph as well, it will work fine.

1 Like

Is this achieved by adding Alt-Return into the Compile Style’s “Paragraph Suffix” field?

Paolo

The described settings will convert rich text paragraph padding to literal spacing, so my suggestion was to mirror the paragraph spacing the section layout’s default formatting would be using, in any styles that should also have an empty line between lines.

But sure, actually inserting a literal carriage return after each para-suffix should also do the job. I haven’t tried it though, these things are sometimes better verified by experimenting directly as there may be some odd interaction I’m not thinking of (and am not around a Mac at the moment to try).

I can confirm that adding a carriage return as the paragraph style’s suffix does work.

I even deactivated the other settings you suggested, since I plan to apply styles to all the paragraphs. I don’t know if this is the best decision when working in Scrivener, but at the moment it seems the one best fitting with my habits.

Paolo

1 Like

It’s perfectly fine to work that way! There is often more overhead since one may often have to set up styles at least twice, in the editor and in their compile settings—and then further for any other Formats that are designed. It isn’t generally recommended for that reason, and also because working that way requires learning quite a bit more, and in some of Scrivener’s more advanced areas, to achieve that control. It is certainly “hard mode”, which is fair to say of any tool I think, and stylesheets. Not using stylesheets is “easy mode”.

But the advantage is you get a lot more control, and for a workflow like you are using, where semantic text is ideal, it rather all fits in with the motif anyway.

With the workflow I’m setting up, it is true that the appearance of the styles is not really relevant.

  • The styles of the editor are just for visualization while working. This is, all considered, the core of the editing workshop, where you set everything as you like and feel more comfortable, independent of the final look.

  • The styles of the compile settings are more relevant for their linked scripts and transformations, than for their look. This latter will be decided by the Quarto, LaTeX or Typst template.

Still, it is reassuring to have the compile styles ready for generating PDFs right from Scrivener, maybe for a quick draft, or in case the Quarto/LaTeX/Typst workflow doesn’t work for inexplicable reasons, just a couple minutes before a deadline.

Paolo