Skip to content
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

Enhance parallel package with overflow frame alignment, footnote handling and improved documentation #2216

Draft
wants to merge 31 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 27 commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
ab528f7
feat(layout): resize and center main parallel frames
no-vici Jan 15, 2025
1b5ba3c
feat(layout): add parallel frames for footnotes under main frames
no-vici Jan 15, 2025
a112bb0
feat(layout): resize folio frame to accommodate footnotes
no-vici Jan 15, 2025
3c131aa
feat(layout): register footnote frames with the parallel package
no-vici Jan 15, 2025
d4547e3
feat(layout): enhance frame management with footnote support
no-vici Jan 15, 2025
b43a94d
docs(comments): add descriptive comments for typesetter pools and nul…
no-vici Jan 15, 2025
309d258
feat(layout): add utility functions for frame and line height calcula…
no-vici Jan 15, 2025
dc65468
feat(layout): add createDummyContent function for overflow frame hand…
no-vici Jan 15, 2025
6bdb280
feat(layout): add balanceFramesWithDummyContent function for frame he…
no-vici Jan 15, 2025
76dbd72
refactor(layout): improve addBalancingGlue function for frame balancing
no-vici Jan 15, 2025
822ab59
feat(layout): add addParskipToFrames function for flexible vertical f…
no-vici Jan 15, 2025
b39badd
feat(command): add \parskip command for paragraph spacing
no-vici Jan 15, 2025
c956df4
refactor(command): enhance \sync command with parskip handling and mo…
no-vici Jan 15, 2025
e62e758
refactor(layout): enhance parallelPagebreak with overflow handling an…
no-vici Jan 15, 2025
87f5707
chore(package): load necessary packages for footnote handling in para…
no-vici Jan 15, 2025
dbe9129
feat(footnotes): initialize typesetters for footnote frames in parall…
no-vici Jan 15, 2025
55c0d85
feat(footnotes): add \smaller and \footnoteNumber commands for stylin…
no-vici Jan 15, 2025
7d64213
feat(footnotes): add \parallel_footnote:rule command for custom footn…
no-vici Jan 15, 2025
e597937
feat(footnotes): add measureStringWidth function to calculate string …
no-vici Jan 15, 2025
2d399c2
feat(footnotes): add \parallel_footnote:constructor command for footn…
no-vici Jan 15, 2025
12ea0eb
feat(footnotes): add \parallel_footnote command for managing footnote…
no-vici Jan 15, 2025
8784dc6
feat(footnotes): add functions for generating footnote IDs and calcul…
no-vici Jan 15, 2025
22018f9
feat(footnotes): add typesetFootnotes function to handle footnote lay…
no-vici Jan 15, 2025
1099151
docs(parallel): enhance package documentation with detailed explanati…
no-vici Jan 15, 2025
1560349
fix(footnotes): resolve repeating note issue in typesetFootnotes func…
no-vici Jan 16, 2025
c78bde3
feat(logging): add log helper function for streamlined debugging
no-vici Jan 16, 2025
9154935
refactor(layout): improve line height calculation and dummy content g…
no-vici Jan 18, 2025
24e6b6d
refactor(parallel): refactor for modularity and maintainability
no-vici Jan 22, 2025
ccbb79b
style: Reformat Lua with stylua
no-vici Jan 22, 2025
50a5956
fix(footnotes): relocate footnoteManager:typesetFootnotes to parallel…
no-vici Jan 23, 2025
47e73c7
fix(footnotes): fix missing footnotes and footnote marker
no-vici Jan 23, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 34 additions & 18 deletions classes/diglot.lua
Original file line number Diff line number Diff line change
Expand Up @@ -14,29 +14,45 @@ function class:_init (options)
SILE.scratch.counters.folio = { value = 1, display = "arabic" }
end)

self:declareFrame("a", {
left = "8.3%pw",
right = "48%pw",
top = "11.6%ph",
bottom = "80%ph",
})
self:declareFrame("b", {
left = "52%pw",
right = "100%pw-left(a)",
top = "top(a)",
bottom = "bottom(a)",
})
self:declareFrame("folio", {
left = "left(a)",
right = "right(b)",
top = "bottom(a)+3%ph",
bottom = "bottom(a)+8%ph",
})
self:declareFrame("a", {
left = "2.5%pw",
right = "47.5%pw",
top = "3.5%ph",
bottom = "85%ph",
})
self:declareFrame("b", {
left = "52.5%pw",
right = "100%pw-left(a)",
top = "top(a)",
bottom = "bottom(a)",
})
self:declareFrame("c", {
left = "left(a)",
right = "right(a)",
top = "bottom(a)",
bottom = "bottom(a)+10%ph", -- Adjust as needed for footnote space
})
self:declareFrame("d", {
left = "left(b)",
right = "right(b)",
top = "bottom(b)",
bottom = "bottom(b)+10%ph", -- Adjust as needed for footnote space
})
self:declareFrame("folio", {
left = "left(a)",
right = "right(b)",
top = "bottom(c)+1.5%ph",
bottom = "bottom(c)+4.75%ph",
})
self:loadPackage("parallel", {
frames = {
left = "a",
right = "b",
},
ftn_frames = {
ftn_left = "c",
ftn_right = "d",
},
})
end

Expand Down
Loading