Version: 22.214.171.124 (1238528) 64-bit - 23 Mar 2021
Using the drop down Compile > Edit Section Layout > Title Options > Title Case, the selection will work correctly and display your section layout title in the selected case. But then if you exit Scrivener and load up the project again, it reverts to Normal. It seems this is because the Windows version is saving the configuration incorrectly.
Steps to reproduce
- Load up a project and go to Compile > Section Layouts. Find a section where you have a section title, like the name of a chapter in normal case e.g. “1 Section Title”
- Go to Compile > Edit Section Layout > Title Options > Title Case and select “Uppercase”
- Observe in the preview that the Section Title is now in upper case: “1 SECTION TITLE”. You can even test the compile function, it will work and render you a PDF with the section title in upper case.
- Save your project and exit Scrivener.
- Open Scrivener and load the project again.
- Go to the Section Layout editor again.
- Observe that the section title is in normal case again. It will also compile to normal case.
The section’s title case persists in the previously selected Title Case.
The Windows version is saving the title case as an XML attribute on the Titles element:
<Titles TitleCase="Uppercase"> <Prefix Case="Uppercase"><![CDATA[<$R:part> ]]></Prefix> <Suffix Case="SmallCaps"/> </Titles>
This element attribute appears to be ignored when the configuration is loaded from the file.
Using the Mac version, I see that title case is saved as an XML child element “TitleCase” (albeit with the value as inner XML, which is inconsisent with sibling Prefix and Suffix elements using a Case attribute):
<Titles> <TitleCase>Uppercase</TitleCase> <Prefix Case="Uppercase"><![CDATA[<$R:part> ]]></Prefix> <Suffix Case="SmallCaps"/> </Titles>
If I add this to my .scrformat file on Windows, it works and will persist the configuration until I edit the section layout again. This resaves it with the broken Windows behaviour.
Perhaps this is a mismatch in the XML schemas being used to write and read the section layout object.