Erik Nelson wrote:
I’ve just discovered Tiddlywiki and would like to run it in my Kubernetes
cluster, and I have a few questions:
Welcome Erik!
You should know that Google Groups is no longer the primary discussion
forum. Most of the discussion is at
https://talk.tiddlywiki.org/
(That group mirrors this one, which is often the only way that regulars
notice posts here.)
I’d prefer to edit using my local vim editor, commit to a git repository as
the source-of-truth, and have the updated content apply to my node-based
instance using CI/CD. Does anyone have experience setting this up? Anything I
should be aware of with this pattern, or is it a bad practice for some reason?
It’s not exactly a bad practice, but it may be significantly less efficient than
other techniques.
I have similar goals, using a git repo as the source of truth and pushing
versions with CI/CD. I don’t use vim, though; I used the built-in TW editor,
usually without a visible toolbar.
The trouble with editing the tiddlers with an external editor is that the
feedback loop is much slower, as the back-end does not generally reload on
changes to the tiddlers. You will often need to stop and restart.
If you edit with the in-wiki editor, your changes are immediate; you can see
them as you save, or, with preview mode, as you type. That can be a huge
time-saver.
If you’re just looking for vim keyboard bindings, there is a CodeMirror
editor available. I don’t know how you would configure it, but
CodeMirror does have a vim mode, so you might be able to edit from the
UI in vim mode. But I don’t know details.
I have two different ways of working in Node. In one, for wikis that are mostly
my own, I run in Node from a git repo, commit frequently, and occasionally
choose to push back to git.
In the other, for wikis that are meant to be read-only for most users, I do the
same thing from a local node server, but my pushes trigger a CI/CD build. That
build creates a stand-alone wiki which is then shared by GitHub/GitLab Pages.
In either case, I have a near-instantaneous feedback loop. I make changes
and they’re rendered right away. I don’t think you’ll be able to do that well
when editing with external vim.