TiddlyTalk is a pain. Let me try pasting that code again so that it shows
okay over there.
```
<$button>
<$action-createtiddler
$basetitle="testTiddler"
$template={{{ [[BASENAME-]addsuffix{!!grammar_class}] }}} >
<$action-navigate $to=<<createTiddler-title>>/>
</$action-createtiddler>
create new test tiddler
</$button>
```
On Saturday, January 22, 2022 at 3:53:48 PM UTC-4 Charlie Veniot wrote:
> I'm thinking you found a bug related to how the action-createtiddler
> handles the $template parameter.
>
> In the meantime (i.e. until there is a fix or somebody can explain this
> "feature" going on) ...
>
> The following seems to work A-1 for me in my testing (ignore the "pre"
> tags):
>
> <pre>
> <$button>
> <$action-createtiddler
> $basetitle="testTiddler"
> $template={{{ [[BASENAME-]addsuffix{!!grammar_class}] }}}
> >
>
> <$action-navigate $to=<<createTiddler-title>>/>
> </$action-createtiddler>
> create new test tiddler
> </$button>
> </pre>
>
> On Saturday, January 22, 2022 at 2:07:59 PM UTC-4 CarloGgi wrote:
>
>> hallo folks,
>> i need to feed the $template parameter of an <$action-createtiddler>
>> widget with the correct template tiddler's name. The latter has a fixed
>> part 'BASENAME' and a parameterized (or variable) suffix, which is choosen
>> by means of a <$select> input. The idea is to have a macro build the full
>> name based on the choice made by using <$select>, like in:
>>
>> \define templatename() BASENAME-{{!!grammar_class}}
>>
>> the suffix, as you can imagine, is taken from field grammar_class which
>> is set by the <$select> widget control.
>>
>> Now one would expect that things would work nice and easy writing this
>> code:
>>
>> <$button> create new test tiddler
>> <$action-createtiddler
>> $basetitle='testTiddler'
>> $template=<<templatename>> >
>> <$action-navigate $to=<<createTiddler-title>>/>
>> </$action-createtiddler>
>> </$button>
>>
>> but disappointingly enough they do not! The new tiddler is created
>> indeed, but from NO TEMPLATE at all!
>> Funny as it is, if we add a debug line like:
>>
>> template's name: <<templatename>> <br/>
>>
>> it displays correctly as
>>
>> BASENAME-verb (or BASENAME-noun, or adjective, or whatever the
>> <$select> choice was)
>>
>> Hard-coding the name in the macro makes the code work (just for testing
>> purposes, there is no point here to have a macro just echoing an hard-coded
>> string).
>>
>> Now, before I ask why ON EARTH the above code doesn't work, let me say
>> that I expect for it to be because of how macros are parsed and when macro
>> substitution is made, in which case I will do a little comment on it later.
>>
>> Thanks everybody,
>> CG
>>
>
--
You received this message because you are subscribed to the Google Groups
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/tiddlywiki/5eac18a5-61ae-4991-a1cc-68fc69103619n%40googlegroups.com.