Hi Irene

Welcome to the group, and good to hear you diving into TiddlyWiki.

In TiddlyWiki5 there's the concept of "tag order" which is the default
order used for retrieving/displaying the list of tiddlers with a particular
tag. By default, the ordering will be alphabetical, but it can be
overridden by defining the 'list' field on the tag tiddler with a space
delimited list of tiddler titles (using double square brackets for titles
that have spaces). Any tiddlers that aren't listed in the 'list' field

You can see an example on the tiddler $:/tags/EditTemplate (to find it
easily, open the AdvancedSearch tiddler from the sidebar tools menu, select
the "Shadows" tag and search for EditTemplate). You'll see that the "list"
field lists the components of the edit template in the order that they are
used:

$:/core/ui/EditTemplate/controls
$:/core/ui/EditTemplate/title
$:/core/ui/EditTemplate/tags
$:/core/ui/EditTemplate/body
$:/core/ui/EditTemplate/type
$:/core/ui/EditTemplate/fields

(I've replaced the separating spaces with newlines for clarity).

Anyhow, having had a quick look at tiddlywiki.com, none of this is properly
documented at the moment. You'll quickly discover that that's an ongoing
problem - I keep coding when I should be documenting. Anyhow, I'll make
some changes to address the tag documentation for the next release.

Many thanks,

Jeremy


On Fri, Jan 3, 2014 at 3:19 PM, Irene Knapp <[email protected]> wrote:

> So, I'm messing with some TW5 extension stuff.  I have written a macro
> that I call "cond" because it's patterned after Lisp's construct bearing
> that name, and what it does is provide some flow-control in a generic way
> such that it's not necessary to write custom macros as often.
>
> I've also modified the view template to give each tiddler a "subtitle" in
> small text after the main title, based on a separate field of course.  (I
> used the cond macro to make the subtitle only appear if it is nonempty.)
>
> I'm trying now to modify the edit template similarly, and I'm running into
> a problem: There's no way to manually control the order of the parts which
> are combined to make the template.
>
> For everyone's convenience, here is the code of $:/core/ui/EditTemplate.
>  Similar code appears in a few places, and I can't help but think that
> there must be some nice way to reduce this duplication...
>
> \define frame-classes()
> tw-tiddler-frame tw-tiddler-edit-frame $(missingTiddlerClass)$
> $(shadowTiddlerClass)$ $(systemTiddlerClass)$
> \end
> <$set name="storyTiddler" value=<<currentTiddler>>><div
> class=<<frame-classes>>><$list
> filter="[is[shadow]!has[draft.of]tag[$:/tags/EditTemplate]]
> [!is[shadow]!has[draft.of]tag[$:/tags/EditTemplate]]
> +[tag[$:/tags/EditTemplate]]" variable="listItem"><$transclude
> tiddler=<<listItem>>/></$list></div></$set>
>
>
> As you can see, this is leaving the order unspecified and relying on the
> default behavior.  I think the result is to use the creation-timestamp
> order, which is a bit bizarre if true, and not at all extensible, since
> there's no mechanism through the UI to change that value!  (Nor should
> there be.)  It also seems to place tiddlers that exist in shadow form (even
> if they're overridden so that the shadow is not the one in effect) prior to
> ones that don't.  All a bit weird.
>
> So, I'm looking for design suggestions.  Obviously, I could change the
> code that gathers the template's parts to use a list instead of tags, since
> a list is an ordered collection, but that doesn't really seem right...  It
> means that users customizing this template need to go into the template
> itself and modify the list, rather than just applying a tag to the new part
> they're adding.  Of course, in some sense that can't be avoided since it's
> necessary to check what the ordering presently is, for any mechanism that
> allows it to be specified...  So, I'm thinking now in terms of changes that
> would affect both the code and the UI, perhaps making it more convenient to
> manipulate where a tiddler is listed, from the tiddler itself.
>
> Since any solution is going to be reasonably deep, though, I'd be trying
> to get it rolled in upstream, and it would be great if I could get Jeremy's
> thoughts.  Is changing template tiddlers to use lists the right approach?
>  What sort of UI might fit well with the existing design while making it
> possible to manipulate where a tiddler is listed, from that tiddler itself?
>
> I also had a less-involved solution in mind, which would simply add a
> "priority" field to each tagged tiddler.  This runs into a few problems:
>  What if if a tiddler needs to be ordered with respect to multiple tags?
>  And, there's no easy way to view the priorities of the other items in the
> notional "ordered tag" that this would produce, and thus no easy way to
> determine what any given tiddler's priority should be.  It would at the
> very least require UI changes also, to make it usable, and the end result
> would be uglier than using a real list.
>
> Okay, I'm not sure how to wrap this up, so I'm just going to end there.
>  Hopefully people can make sense of what I'm asking. :)
>
> -- Irene
>
> --
> You received this message because you are subscribed to the Google Groups
> "TiddlyWikiDev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/tiddlywikidev.
> For more options, visit https://groups.google.com/groups/opt_out.
>



-- 
Jeremy Ruston
mailto:[email protected]

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWikiDev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/tiddlywikidev.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to