A general format for specifying ranges in internal links

The syntax for transclusion of range should allow to Exclude first (or last) block/item mentioned in specification of the range.
This would allow to keep adding items to start or end of (sub)list …
… without need to update specification of each transclusion of this (sub)list.

usecases:

  • content of the chapter without header
  • queue/stack of tasks
  • nested (sub)lists

syntax suggestions

  • I suggest double period as distinct range specifier. “..” has minimum of other common meanings so it would intuitively explain itself at first glance to many computer literate people. Wikipedia: Ellipsis (computer programming) → Ranges
  • ![[FileNameORPageURL#^id1..^id2]] transcludes range starting by block with ^id1 and ending by block denoted by ^id2.
  • Assuming that IDs do not start by hyphen, start/end item would be excluded from the range by prefixed hyphen.
  • ![[pageurl#-^id1..^id2]] excludes first block from range so items inserted after ^id1 are automatically transcluded without need to update references.
  • ![[pageurl#^id1..-^id2]] excludes last block from range so items appended to list before ^id2 are automatically transcluded without need to update references.

related requests/functionality:

13 Likes