Open mkyas opened 2 years ago
I was following the Thesis example given by the memoir documentation. It suggested doing a package for small customizations like in ruthesis.cls
The problems that I see after skimming the 800 lines of code in ruthesis.sty: It requires inputenc which breaks lualatex It requires pdfpages which may need options that we cannot supply without trouble and which we often do not need. One flags force openany, but in CS we require faithful page numbering between the versions. It sets a GraphicsPath and messes with the typesetting parameters. Ir requires booktabs which sometimes conflicts with memoir (see page xxix of the memoir manual). It requires newtx fonts, where we prefer STIX The code seems to not handle title, author, date, and more properly and it may not show up as pdfinfo when we use hyperref. I think in CS we do not have the signature page. Can we disable it. Same with the archives page.
The typical size of these styling files is in the range of 200 lines.
Thanks Marcel! My commentary: Inputenc is needed for UTF8 support in pdflatex and normal latex. If we were to use lualatex, it can be removed. For backwards compatibility, an \if could be used to disable it. I do not have experience with lualatex.
Pdfpages can probably be moved into custom.sty or removed.
Page numbering can be made compatible with CS.
Booktabs can be removed and the memoir version used.
Newtx can be switched to SWIX. I just didn’t know about that font. As long as it is a times-like serifed font, we should be ok.
I need help figuring out how to process title, author, and date in a way that you like. The problem (as always) is handling two languages.
Signaturepage and archive page are just macros. If you comment them out, they vanish from the document. They are left in as reference for if anyone bothers to print and sign anymore.
Probably best to do a branch “lua-template”, try out these changes, then merge back into the master.
-- Dr. Joseph T. Foley @.***> Assistant Professor, Reykjavik University +354-599-6569
From: mkyas @.> Sent: Monday, February 7, 2022 6:07 PM To: foleyj2/ru-thesis @.> Cc: Joseph Timothy Foley @.>; Comment @.> Subject: Re: [foleyj2/ru-thesis] The whole template is monolithic (Issue #11)
The problems that I see after skimming the 800 lines of code in ruthesis.sty: It requires inputenc which breaks lualatex It requires pdfpages which may need options that we cannot supply without trouble and which we often do not need. One flags force openany, but in CS we require faithful page numbering between the versions. It sets a GraphicsPath and messes with the typesetting parameters. Ir requires booktabs which sometimes conflicts with memoir (see page xxix of the memoir manual). It requires newtx fonts, where we prefer STIX The code seems to not handle title, author, date, and more properly and it may not show up as pdfinfo when we use hyperref. I think in CS we do not have the signature page. Can we disable it. Same with the archives page.
The typical size of these styling files is in the range of 200 lines.
— Reply to this email directly, view it on GitHubhttps://github.com/foleyj2/ru-thesis/issues/11#issuecomment-1031761816, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAGJ6RYXVNF4QONTL5L7CELU2AC4DANCNFSM5NYCZ3BA. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub. You are receiving this because you commented.Message ID: @.**@.>>
One issue that I see with your approach is that you try to do "the right thing", i.e. provide a solution for all conceivable situations. I would rather follow "worse is better", provide useful components but you can adapt to all the situations. This is why Multics is a footnote in OS design and UNIX won the world.
Reminder from quick meeting: divide ruthesis.sty into a titlepages.sty and a fonts.sty or something like that to break things up. The ruthesis will be a 60% solution for most people. Inspiration: beemer's level of modularization.
@mkyas created a new branch modularization to start this work.
I think in CS we do not have the signature page. Can we disable it.
I had to include a signature page for my submission in 2021
Modularization on the master branch has started. Critical things such as stocksize/pagesize are now in a new rubook.cls. Status on the issues Marcel brought up:
We will deal with inputenc with the toolchain switch to luaenc on issue #15 Removed the archival and cover code (it can be retrieved from history) to reduce ruthesis.sty to 600 lines It has many lines partially because I used indenting to keep track of macro definitions.
Commit 1b6dc3ce1607da8dd7f1f0bc46608c7920febd5e I removed booktabs package from ruthesis.sty
Graphicspath manipulation now in the main.tex. Commit: 5436ac85a8fc25907092da5ea82558c13c4dfcfc
Added \ifpdf and \ifluatex to work with inputenc and fontenc intelligently. Lualatex now compiles with STIX2 smoothly. I accidentally included that in commit 5436ac85a8fc25907092da5ea82558c13c4dfcfc
Added information about setting up lualatex in commit ea4c687ffbaa8b8c4836aed666b419cff75e25ca. TODO: add TeXStudio magic comments to setup lualatex
Down to 489 lines in ruthesis.sty. Getting there!
We may want to facilitate flexible use of these templates. We could define a standard class file that requires a bunch of style files to implement the desired features. The current version uses macro names defined by other packages. It also requires packages that are not needed in CS.