]> Lady’s Gitweb - LesML/log
LesML
33 hours agoSupport attributes inside of links 0.5.2
Lady [Wed, 17 Sep 2025 02:57:28 +0000 (22:57 -0400)]
Support attributes inside of links

This commit changes the partitioning behaviour to allow for element
  nodes within the first part, assuming that the first part is not
  being restricted to an n·c·name.
This is required to enable attribute specifiers inside of the text of
  links.
Element nodes are still not allowed in the second part of the
  partition (the link target or attribute value).

33 hours agoFix note divs 0.5.1
Lady [Wed, 17 Sep 2025 02:55:22 +0000 (22:55 -0400)]
Fix note divs

The parser used to erroneously discard all divs, including semantic
  ones (i·e those with a `@role´).
Also, it used to require a variation selector after `⚠´, which didn¦t
  actually work with the implementation and should not have been
  required.

33 hours agoSupport hgroups with heading continuations 0.5.0
Lady [Mon, 28 Apr 2025 01:55:06 +0000 (21:55 -0400)]
Support hgroups with heading continuations

These are a bit interesting because continuation paragraphs can be
  placed ⹐before⹑ the heading they “continue” (not just after).
A block comment can be used to separate them from a preceding list or
  similar.

33 hours agoQuotes and brackets as multiparagraph divisions
Lady [Mon, 28 Apr 2025 00:42:16 +0000 (20:42 -0400)]
Quotes and brackets as multiparagraph divisions

This commit introduces a new concept of multiparagraph divisions (where
  the lines within are re·analysed after the prefix is removed) and
  transitions block quotations to it.
I resisted this for a long while because it¦s less “simple”, but the
  precedent of preformatted text and the old quotation mechanism
  (which was kind of messy) was already conceptually close.
And footer support really requires this.

33 hours agoProperly escape all comments
Lady [Sun, 27 Apr 2025 22:00:37 +0000 (18:00 -0400)]
Properly escape all comments

33 hours agoDrop langtags on offset text but support on paras
Lady [Sun, 27 Apr 2025 05:21:13 +0000 (01:21 -0400)]
Drop langtags on offset text but support on paras

Now that language attributes can be arbitrarily added to any inline,
  a special syntax for them doesn’t make much sense.
However, that syntax would be useful on block‐level elements.

There isn¦t a real technical reason for the explicit `$´ end of the
  language tag, since the following whitespace could have been used to
  end it also, but it makes the syntax a bit more obvious, matches the
  existing format with the shebangs, and is less likely to conflict
  with i·d syntaxes (which might include `@´ but probably won¦t also
  end in a `$´).

You can still make i·d¦s like `@es$´ if you need by explicitly
  language‐tagging: `¶@es$@en$´.

This commit also allows block sigils to not be followed by a space if
  they are immediately followed by a pilcrow.

33 hours agoSupport attributes
Lady [Sun, 27 Apr 2025 04:31:53 +0000 (00:31 -0400)]
Support attributes

This required a reworking of the link parsing code to enable it to also
  be used for attribute parsing (more‐or‐less), and maybe also fixed a
  bug where, if there was an end token with no start token, no further
  end tokens would be processed (even later ones they did have start
  tokens).

33 hours agoSupport inline comments
Lady [Sun, 27 Apr 2025 04:26:14 +0000 (00:26 -0400)]
Support inline comments

Comments work different from other inlines and have their own
  processing rules.
“Empty” comments are useful primarily to break up spans of text into
  discrete text nodes.

33 hours agoAdd support for proper name marks
Lady [Sat, 26 Apr 2025 03:32:24 +0000 (23:32 -0400)]
Add support for proper name marks

33 hours agoWrap results in a div
Lady [Sat, 26 Apr 2025 03:24:11 +0000 (23:24 -0400)]
Wrap results in a div

Even in the case where there is only one document, there may be
  additional document comments which should be grouped alongside it and
  not intermixed with any comments in the surrounding area.
For the case when there is only one document and nothing else, not
  even a comment, it is probably better to still wrap the output for
  consistency.

33 hours agoDrop empty shebang documents
Lady [Sat, 26 Apr 2025 03:16:03 +0000 (23:16 -0400)]
Drop empty shebang documents

Previously, a shebang forced a document to be output, even if it was
  empty.
However, this conflicts with the ability to add document comments at
  the beginning of a document where the shebang is serving as a magic
  number (for example, copyright comments):
This would create two documents, one for the shebang and a second one
  for the final comment.
Now, empty documents will be dropped regardless of whether they use the
  shebang or comment syntax.

33 hours agoUse set functions rather than generate-id()
Lady [Sat, 26 Apr 2025 02:53:07 +0000 (22:53 -0400)]
Use set functions rather than generate-id()

These should be faster, and are generally cleaner and more readable
  besides.

33 hours agoDon¦t use html: prefix 0.4.0
Lady [Sat, 22 Mar 2025 02:41:57 +0000 (22:41 -0400)]
Don¦t use html: prefix

This is unnecessary and makes the resulting files a lot larger.

33 hours agoAdjust order of precedence for inlines
Lady [Sat, 22 Mar 2025 02:32:18 +0000 (22:32 -0400)]
Adjust order of precedence for inlines

I think this ordering makes a little bit more sense.

33 hours agoEnable nested tags of the same kind
Lady [Sat, 22 Mar 2025 01:45:20 +0000 (21:45 -0400)]
Enable nested tags of the same kind

Previously, the processing rules do not allow nesting an element inside
  of itself: ‹ ☞︎nested ☞︎tags☜︎ like ☞︎this☜︎☜︎ › do not work as
  expected.
This design choice was to (at least) appropriately handle
  ‹ ☞︎⟨this☜︎ weird ⟨case☜︎⟩ ›, where each inline should stop at the
  first delimiter.
Correct processing starts by looking for end sigils first, not start
  sigils, backtracking to the last start sigil which precedes it,
  wrapping that text, and then reprocessing the entire set of nodes
  until no more end sigils with matching start sigils are found.

This commit implements that behaviour, which is of course a fair bit
  more complicated but should improve the results.
It also changes specifying characters by Unicode codepoint to use
  curly braces rather than angle brackets, as the latter conflicted
  with the angle brackets used in links.
Specifying by Unicode codepoint still isn¦t supported in links, but
  the behaviour should be less surprising.

The old Unicode codepoint behaviour was probably broken also, in the
  case where the codepoint was not the first character in a paragraph,
  but it is fixed now.

33 hours agoDon¦t use literal result elements 0.3.1
Lady [Sat, 14 Dec 2024 02:32:59 +0000 (21:32 -0500)]
Don¦t use literal result elements

It¦s simpler and cleaner to always just create elements with
  `<xslt:element>´, as these never inherit namespaces from their
  surrounding context.

33 hours agoSupport preformatted text
Lady [Sat, 14 Dec 2024 02:09:02 +0000 (21:09 -0500)]
Support preformatted text

33 hours agoBetter handle i·d‐less pilcrows 0.3.0
Lady [Sat, 19 Oct 2024 22:57:17 +0000 (18:57 -0400)]
Better handle i·d‐less pilcrows

A pilcrow is useful to “force” a paragraph when it would otherwise
  start with a sigil.
These pilcrows may not have i·d¦s; this should be supported.

33 hours agoAllow block sigils followed by nothing
Lady [Sat, 19 Oct 2024 19:59:57 +0000 (15:59 -0400)]
Allow block sigils followed by nothing

33 hours agoSupport “comment” paragraphs
Lady [Sat, 19 Oct 2024 19:50:48 +0000 (15:50 -0400)]
Support “comment” paragraphs

33 hours agoPreserve document and record‐jar comments
Lady [Sat, 19 Oct 2024 19:37:08 +0000 (15:37 -0400)]
Preserve document and record‐jar comments

33 hours agoSupport multiple documents per file
Lady [Sat, 19 Oct 2024 19:30:35 +0000 (15:30 -0400)]
Support multiple documents per file

Documents may begin with either `#!lesml´ or `##´.

33 hours agoRefactor initial chunking to be line‐based
Lady [Sat, 19 Oct 2024 17:11:12 +0000 (13:11 -0400)]
Refactor initial chunking to be line‐based

The old parsing mechanism operated primarily on large string chunks,
  which were re‐parsed into lines potentially multiple times.
This refactor changes the parsing to use lines and ranges, which is a
  little more verbose/complicated from an X·Path perspective (it
  requires a lot of `generate-id()´ comparisons) but hopefully, on the
  whole, better.

33 hours agoSupport language tag and profile 0.2.2
Lady [Sat, 19 Oct 2024 16:43:33 +0000 (12:43 -0400)]
Support language tag and profile

This commit provides initial support for language‐tagged Les·M·L
  documents and additional document properties.
Only one property is supported: `profile´.
Language tags are themselves internally treated as properties whose
  key contains spaces; property keys cannot ordinarily contain spaces
  so there is no concern for confusion.

33 hours agoIncrease the number of section‐break characters 0.2.1
Lady [Wed, 14 Aug 2024 22:21:48 +0000 (18:21 -0400)]
Increase the number of section‐break characters

33 hours agoSwitch symbols for subsection and subsubsection 0.2.0
Lady [Sun, 12 May 2024 07:03:30 +0000 (03:03 -0400)]
Switch symbols for subsection and subsubsection

`❦´ is a stronger symbol than `✠´; its corresponding directional
  fences `❧´ and `☙´ indicate section boundaries, while `⹐´ and `⹑´
  simply enclose emphasis.

33 hours agoUse square instead of triangular bullet for level 3
Lady [Sun, 12 May 2024 07:01:42 +0000 (03:01 -0400)]
Use square instead of triangular bullet for level 3

This matches default H·T·M·L bulleting and avoids potential semantic
  connotations that the triangle bullet may seem to have.

19 months agoInitial implementation 0.1.0
Lady [Sun, 12 May 2024 06:39:16 +0000 (02:39 -0400)]
Initial implementation

This page took 0.028782 seconds and 4 git commands to generate.