After kicking off blogmore.el, and then tinkering with it more and more, I've found it really quite helpful while writing posts. One thing I have noticed though -- given I use BlogMore for this blog and my photoblog -- is that I wanted to be able to use the package for working with more than one blog.
So today I found myself with some time to kill and the result is that blogmore.el v2.0 has now been released. This version allows for setting up multiple blogs, each with their own settings for where posts live, how their paths are formatted, and so on.
To handle this I've also added the blogmore-work-on command so that the active blog can be quickly changed.
All of this can be configured using Emacs' customize feature.

This has all changed since v1.x, where most of the customize options have now been renamed to include -default- in their name. The idea here is that what was the value for a setting previously is now the default value if a given blog hasn't had that setting defined.
For any given blog you wish to work with, you configure a name (for your own reference) and the path to the posts. Optionally you can also set lots of other values too.

If a value is left on Default, then the corresponding default setting will be used; if it's set, then that value is used for that specific blog.
The defaults out of the box match how I do things with my blogs, of course, so the configuration is pretty straightforward. As of the time of writing my use-package for blogmore.el looks like this:
(use-package blogmore
:vc (:url "https://github.com/davep/blogmore.el" :rev :newest)
:init (add-hook 'blogmore-new-post-hook #'end-it)
:custom
(blogmore-blogs
'(("blog.davep.org" "~/write/davep.github.com/content/posts/")
("seen-by.davep.dev" "~/write/seen-by/content/posts/")))
:bind
("<f12> m b" . blogmore-work-on)
("<f12> m p n" . blogmore-new)
("<f12> m p e" . blogmore-edit)
("<f12> m s c" . blogmore-set-category)
("<f12> m a t" . blogmore-add-tag)
("<f12> m u d" . blogmore-update-date)
("<f12> m u m" . blogmore-update-modified)
("<f12> m l p" . blogmore-link-post)
("<f12> m l c" . blogmore-link-category)
("<f12> m l t" . blogmore-link-tag))
In the above you can see that I've set only the blog title and posts path for each blog in blogmore-blogs; the remaining values are all implied nil and so will be defaulted. The full list of values for any given blog are:
(BLOG-NAME
POSTS-DIRECTORY
POST-TEMPLATE
POST-MAKER-FUNCTION
CATEGORY-MAKER-FUNCTION
TAG-MAKER-FUNCTION
POST-LINK-FORMAT
CATEGORY-LINK-FORMAT
TAG-LINK-FORMAT)
where:
BLOG-NAMEis the descriptive name to use for the blog.POSTS-DIRECTORYis the directory where the blog's posts are stored.POST-TEMPLATEis a template for new posts. Ifnil,blogmore-default-templateis used.POST-MAKER-FUNCTIONis a function that takes a filename and returns a string to be used in the post's URL. Ifnil,blogmore-default-post-maker-functionis used.CATEGORY-MAKER-FUNCTIONis a function that takes a category name and returns a string to be used in the category's URL. Ifnil,blogmore-default-category-maker-functionis used.TAG-MAKER-FUNCTIONis a function that takes a tag name and returns a string to be used in the tag's URL. Ifnil,blogmore-default-tag-maker-functionis used.POST-LINK-FORMATis a format string for the post's URL, where%sis replaced with the value returned by the post maker function. Ifnil,blogmore-default-post-link-formatis used.CATEGORY-LINK-FORMATis a format string for the category's URL, where%sis replaced with the value returned by the category maker function. Ifnil,blogmore-default-category-link-formatis used.TAG-LINK-FORMATis a format string for the tag's URL, where%sis replaced with the value returned by the tag maker function. Ifnil,blogmore-default-tag-link-formatis used.
While I very much doubt any of this is useful to anyone else, it's at least flexible for my purposes and can probably be configured to someone else's purpose should they happen to be using BlogMore and Emacs.