-
-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Declare SILE.scratch.headers in twoside only #2087
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -72,6 +72,9 @@ function package:_init (options) | |
end) | ||
self.class:registerHook("newpage", spreadHook) | ||
self.class:registerHook("newpage", switchPage) | ||
if not SILE.scratch.headers then | ||
SILE.scratch.headers = {} | ||
end | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The only place "twoside" uses headers scratch are in Is even this command There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
I have no idea... Where do you think it should be? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
My deep feeling is that only the class knows how to handle page breaks and what do to with "empty" pages, (based on the reason why it it introducing them with so-called spreads). It's hard to explain with the "limited" book class provided by SILE, but I can try, based on my experience designing books with my own resilient.book class (again, it does have some flaws I am aware of, however)1:
And here we're indeed discussing parts, chapters, etc. -- that is, things that are (currently) a class-design topic. Footnotes
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks for your explanation, I got your point. Well, I did this PR without ever thinking about |
||
end | ||
|
||
function package:registerCommands () | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This class is a joke.
When will we kill it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Er? What is supposed to be a "bible" class?
Food for thought: I did typeset many bibles (Freely-Given-org/BibleTypesetter#3 -- Still pending any sort of review and approval, which is sad, but anyway) without needing a "bible" class.
So what is supposed to be a "bible" class in layman terms?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bible typesetting comes with a standard set of features over and above what most books require. Defaulting to grid typesetting, having headers that keep track of the verse at start and end of pages for use in headers, multiple types of footnotes/cross references, etc. The bible class should build on the book class with a few default features available that cover common needs that aren't so common in regular books. Of course you don't have to use it, it's just a starting point.
Additionally it's where I'd put stuff to cover default processing functions for OSIS/USFM/whatever tags that don't have any relevance to non-Bible content.