Emacs just controls everything now. Why not!
Rather than using the builtin NixOS support for EXWM I've added a
custom snippet that takes care of the launching. This assumes that the
user launching the session has my emacs configuration installed, which
I, in practice, always do.
* remove setup of i3wm (until I'm comfortable using exwm I will keep
the i3 configuration files around)
* disable compton (exwm brings its own compositor)
* disable auto-starting of emacs user service
* enable & configure exwm (also see correlating commits in my emacs.d
repository)
I don't actually use all that many emacs navication keys in X11
applications - but being able to copy & paste is nice.
Overrides the default set of input simulation keys for EXWM with
slightly fewer and more sane bindings.
The default elblog route (/{article-name}) can now be extended with
user-supplied routes by overriding the elblog-additional-routes
customize variable.
This variable takes the same format as the alist supplied to
elnode-hostpath-dispatcher.
The prefix `/en` has been dropped from the default handler because
that only existed to be compatible with my old blog, which is no
longer required as it can now be handled with a custom legacy route in
my personal blog configuration.
* adds a hash-table stored in a variable called `elblog-articles` that
defines a map of article names (used as URI fragments) to file names
of org-mode files
* adds a custom variable `elblog-article-directory` which must be set
to the base path of the org-mode files representing elblog articles
* refactors the article-rendering functions to look up articles in the
articles hash-table and renders them from there
After this change elblog is almost functional as a blog software, only
missing index generation.
Implements a (very) simple "blogging" software in Emacs Lisp using
org-mode and elnode.
Once loaded and started, elblog will serve individual blog posts at
`localhost:8010/en/$post-name`, where "post-name" can be any string.
Elblog will attempt to find a buffer called "$post-name.org" and
render it to HTML.
An index of blog posts is currently not implemented and everything is
completely unthemed, but for a language this old this is ridiculously
productive given the amount of code.
* move all look-and-feel related settings into, you guessed it,
look-and-feel.el
* remove *lots* of old stuff and also re-evaluate what it's actually
doing.
Refactors package installation to be slightly more sane, for example
package-refresh-contents will only be called if packages are missing.
Removes some other old cruft, too, and paves way for a slightly
different initialisation process.
This release comes with minor usability improvements and features.
* A new 'lookupIPAddr' template function is available for resolving
DNS A records in templates. Thanks to @landro for the pull request!
* Handling of "non-standard" resource set structures has been improved
to result in better error messages and behaviour in several places.
Release binaries are signed with GPG key `66F505681DB8F43B` which is
verified on my Github profile.
--------------
Note: This is the last Kontemplate release that will be written in Go.
Rob Pike's art project has proven its point but I believe it is
ethically questionable and morally indefensible to continue on this
path.
You can track #72 for the Rust-rewrite of Kontemplate.