# [tw5] Re: Delete a field on a newly "cloned" tiddler

Frd,

Thanks for that. I can use Marks answer for this issue, but your utility
will most likely assist in some of the advanced solutions I suggest in my
reply to Marks last comment.

Generate NewTitle sounds like something that should be more available to
tiddlywiki users.

Lovely
Regards
Tony

On Saturday, 11 August 2018 18:14:27 UTC+10, FrD wrote:
>
> Hi TonyM,
>
> There is a function in the core that generates a new title based on a
> I've wrapped it in a js macro. You could try it. Import save and reload
> (in a test wiki or in a copy of your wiki !!!)
>
> Just enter <<generateNewTitle "task">> or <<generateNewTitle "my favorite
> tiddler">>
>
> Be careful with your data, try it on a copy.
>
> Regards
>
> FrD
>
> Le samedi 11 août 2018 09:53:40 UTC+2, TonyM a écrit :
>>
>> Frd,
>>
>> Thanks for your effort. Unfortunately I do not know the name before hand
>> as I am cloning to create multiple instances of say tasks. They may be
>>
>> This is a messy part of the available code.
>>
>> So I am currentlt working on a copy selected fields to a new tiddler,
>> which does create a new tiddler, but does not include the increment of
>> duplicate tiddler names.
>>
>> Arrrrgh, I can't win.
>>
>> Perhaps I determine the new name myself and make it unique. This will be
>> easier in the next release with the range operator.
>>
>> Regards
>> Tony
>>
>> On Saturday, 11 August 2018 17:40:33 UTC+10, FrD wrote:
>>>
>>> Hi TonyM,
>>>
>>> Finally I found a way to do what you want. The drawback is that you need
>>> to know in advance the name of the tiddler you want to create.
>>>
>>> Go to https://tiddlywiki.com/
>>> Create a tiddler, for instance "testtemplate" with a tag ("MyTag"), some
>>> text and two fields : field1 and field2.
>>> Create a tiddler, say "testcreate" with this code inside :
>>>
>>> \define actions()
>>> <$action-setfield$tiddler="testtemplate" $field="title"$value=
>>> "MyNewTiddler" />
>>> <$action-deletefield$tiddler="MyNewTiddler" $field="field2" /> >>> \end >>> >>> <$button actions=<<actions>>>
>>> Create and remove field
>>> </$button> >>> >>> When you click the button, testtemplate is cloned (without being >>> deleted) and field2 is removed from the cloned tiddler. >>> I think it's a convoluted way to use action-setfield and probably not >>> the way it was intended to be used. But it seems to work. >>> >>> Regards >>> >>> FrD >>> >>> Le samedi 11 août 2018 09:12:03 UTC+2, TonyM a écrit : >>>> >>>> Mark, >>>> >>>> Just to clarify, the "idea of [your] own and FrD's suggestion" just did >>>> not work? >>>> >>>> I was relay smart because I decided to use a subtiddler such as >>>> task/template to indicate it was a template tiddler so task no longer held >>>> the removeme field and would not be cloned. This is a good idea but >>>> somewhere I decided this was a useful tip for creating templates for >>>> subTiddlers, and I returned it the above method only to be reminded it >>>> does >>>> not work again. >>>> >>>> >>>> I am using the following to clone tiddlers I am using as templates; >>>> >>>> <$button message="tm-new-tiddler" param=<<currentTiddler>>
>>>> tooltip="Clone this 'template'" aria-label="Clone this 'template'" class=<
>>>> <tv-config-toolbar-class>> >
>>>> <$action-setfield$field=template-source $value=<<currentTiddler>>/> >>>> {{$:/PSaT/newTiddler/icon.svg}}
>>>> </$button> >>>> >>>> So to restate the problem >>>> >>>> *This works nicely except I have to remove a field from the new Tiddler >>>> eg removeme* >>>> *<$action-deletefield $field=removeme/>* >>>> >>>> *Unfortunately if I use this in the above tiddler it removes the field >>>> from the source tiddler before the cloning.* >>>> >>>> As Mark suggested I may need resort to the ActionCreateTiddler so a >>>> Final call to see if anyone knows a workaround or has build a clone tool >>>> using ActionCreateTiddler? >>>> >>>> Regards >>>> Tony >>>> >>>> On Friday, 3 August 2018 12:46:30 UTC+10, TonyM wrote: >>>>> >>>>> Folks/Team, >>>>> >>>>> I am creating a tool to create tiddlers from template tiddlers and >>>>> will share today (if I resolve this). >>>>> >>>>> However to do so I am using the following to clone the tiddler to a >>>>> new tiddler name eg "task 1" and open for edit (which the user then >>>>> modifies) >>>>> >>>>> \whitespace trim >>>>> <$button message="tm-new-tiddler" param=<<currentTiddler>> tooltip="Clone
>>>>> this 'template'" aria-label="Clone this 'template'" class=<<tv-config-
>>>>> toolbar-class>> >
>>>>> <$action-setfield$field=template-source $value=<<currentTiddler>>/> >>>>> *<$action-deletefield $field=tiddler-template-caption/**>* >>>>> {{$:/core/images/clone-button}}
>>>>> </$button> >>>>> >>>>> >>>>> - I identify which tiddlers are templates by the existence of the >>>>> field *tiddler-template-caption* >>>>> - During the clone which works perfectly the >>>>> tiddler-template-caption also gets cloned >>>>> - Unfortunately this means the new tiddlers now appear in the list >>>>> of tiddler templates >>>>> - In the above code *<$action-deletefield
>>>>>    $field=tiddler-template-caption/*> deletes the field from the >>>>> template tiddler not the new one. >>>>> - How can I delete this field from the new tiddler with the yet to >>>>> be determined name? >>>>> >>>>> I believe I need to use message="tm-new-tiddler" param=<< >>>>> currentTiddler>> rather than ActionCreateTiddlerWidget to clone the >>>>> tiddler, where I would use the$savetitle.
>>>>> I want the clone to work regardless of the fields and their content so
>>>>> I do not want to explicitly create the fields, I just want them to come
>>>>> from the template tiddler except for *tiddler-template-caption.*
>>>>>
>>>>> Note: <$action-setfield$field=template-source
>>>>> $value=<<currentTiddler>>/> updates the template tiddler before the >>>>> clone, >>>>> this saves the user doing it. >>>>> >>>>> How can I trigger *<$action-deletefield
>>>>> \$field=tiddler-template-caption/**> on the new tiddler after it is
>>>>> named/created without an additional "trigger"*
>>>>>
>>>>> Thanks
>>>>> Tony
>>>>>
>>>>

--
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