| Commit message (Collapse) | Author |
|
|
|
Guile 3 reserves _ for other stuff.
|
|
Esbuild is way faster, and feels less hacky. One downside is that it
doesn't actually check Typescript types. However, typescript can still
be installed alongside, and has the fancy --noEmit flag for just this
situation.
|
|
|
|
|
|
|
|
xgettext:s comment fetcher doesn't handle the same source string at
multiple places, with different comments. Meaning that at those places
all comments were copied over each time.
This commit remove the problematic comments from the source code.
|
|
While it was nice, the most important part was the multi-valued let from
srfi-71 (which is implemented in srfi-71)). The minor pattern matching
structures could often be replaced with car+cdr, or a propper match.
|
|
Since procedures allow direct controll of the output.
Everything worked fine for XML output, but HTML encodes apostrophes as
', which works really bad in script tags.
|
|
|
|
This new setup stores all configurations are parameters. This forces
everything into modules, and ensures that we can't have a module use an
unloaded config. It (unfortunatelly) also causes users to have to
specify namespaces when defining values, but ini-files (and the like)
already does that. Also, there is nothing stopping a new `set-config!'
from being defined which allows un-namespaced operation.
The commit also removes the introspection procedures. They where a bit
weird to begin with, since they only showed loaded fields. And since the
program had no way of properly serializing or deserializing them we
remove them for the time being. They would however be good to
reintroduce together with a proper menu for editing simple
configuration (see Emacs' `custom-set-variables').
|
|
|
|
|
|
Along with an initial example of their use.
|
|
|
|
|
|
This is the first (major) step in splitting the generally useful items
into its own library.
|
|
Primarly this moves all vcompenent input and output code to clearly
labeled modules, instead of being spread out. At the same time it also
removes a handfull of unused procedures.
|
|
|
|
|
|
Previously I generated buttons on the form
<a><div/></a> & <button><div/></button>, which was invalid for button
tags. This removes the inner div, with the only cost being that the
hitbox for the button is slightly wonky if pressed at the top left where
the button isn't when it's depressed, since I move it.
|
|
|
|
pre-start and post-end are the real intervals for a given page, since
some more days than requested are often shown to make sense of a given
layout.
|
|
|
|
|
|
This handles each instance of a recurring event as its own unique event,
which allows us to properly send it to the frontend. It's currently not
possible to submit the repeating events back, but that is probably a
underlying problem.
|
|
|
|
|
|
|
|
|
|
|
|
Previously css rules for each calendar (governing color) where handled
through CSS classes. This however had the problem that all calendar
names needed to be mapped unto valid classnames, and it brought some
problems with updating it.
This change places the calendar information in the dataset.calendar
attribute. It's still base64 encoded, so special characters don't need
escaping, and XML doesn't trip up.
|
|
As noted in the fidd, our simple filter-sorted-stream on event-overlaps?
missbehaves in some edge cases. The new system "should" work *fingers
crossed*.
|
|
Chromium can't handle JavaScript-modules in XHTML-document [1]. The
workaround is to use a javascript bundler. Here we start depending on
browserify. I evaluated both that and webpack, and browserify seemed to
work marginally better with typescript.
Unfortunately this also makes us depend on npm, where we unfortunately
already are bloatet...
$ ls static/node_modules | wc -l
174
[1]: https://bugs.chromium.org/p/chromium/issues/detail?id=717643
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|