>           (when (looking-at "[ \t]*#\\+BEGIN_\\S-+[ \t]+\\(\\S-+\\)")

Sorry, it obviously should have been \\(.+\\) at the end.

One thing the core parser could do is to put the remaining of the
opening line of a special block into an :args or similar property of
the special block element, leaving it otherwise unparsed. This is in
the same spirit than what it already do for the affiliated attrs_X
element. It's not a lot of help but it would at least spare backends
from having to parse the remaining of the opening line as I did. They
would still have to parse :args exactly as they now parse :attrs_X,
but there are helper functions for that task. The idea is that stuff
that is very specific to a backend X would be in :attrs_X, but stuff
that is related to what makes the block semantically special could be
in :args. Nevertheless special blocks will probably be backend
specific in most cases.

Reply via email to