Closed yjcui closed 6 months ago
I believe I've tried my best to maintain consistency among different themes: for instance, self.colors
, self.info
, slide
, and empty-slide
, they all have a similar unified structure. I've abstracted these parts that can be standardized, so if you only utilize these standardized parts, you can easily switch between different themes.
However, we also have to acknowledge that there will inevitably be differences among different themes. We can't eliminate efforts to provide special effects for certain themes in the pursuit of uniformity, such as the subtitle
parameter in the #slide[]
function in the 'university' theme. I don't think we should impose too many restrictions on this because the demand for theme switching isn't actually that common; most people still prefer to achieve better visual effects within a specific theme.
Of course, you're welcome to propose your ideas in this issue, and if they're reasonable, I can consider adding more standardized abstractions for Touying.
Thanks for the response! One idea just came to my mind. Is it possible to have a pseudo-standard template which has all possible parameters defaulting to something like none
or empty strings? For example, I noticed university
theme came with progress-bar
while the default
theme did not. Error would be reported when changing from university
to default
as parameter progress-bar
was not defined. I can manually commented it out, but it would be convenient if default
theme also comes with this parameter but defaults to false
. Not sure how difficult it would be, implementation-wise.
I think just adding ..args
to the register function to capture the remaining unused arguments would solve the problem, and I'll create a PR to fix the issue :-)
Even better. Thanks!
Would it be possible to keep all themes compatible with each other? Currently different themes are implemented in different ways (variable names, function def, etc.) and user can not switch from one theme to another by changing the theme name only. It would be preferrable to define common template for the slides structure and maintain the consistency, just like how LaTeX/Beamer did it.