On 5/27/20, Seth Johnson <[email protected]> wrote: > On 5/27/20, vitalije <[email protected]> wrote: >> >>> > Indeed we can look at vnodes and we'll see that each node found on the >>> > clipboard has a corresponding node with the exactly the same gnx among >>> > the known vnodes (providing that we copied from the same outline and >>> > that >>> > outline has not been modified since). If we use this information to >>> > decide whether node should be cloned or not then each node will be >>> > cloned >>> > and we would have just what paste-retaining-clones does. >>> >>> Right! And you would be able to identify "internal sets" that match >>> and easily template-as-encapsulated with new vnodes, if the user >>> chooses to do the encapsulated template mode. >> >> I am sorry but it seems that you misunderstand my previous message. I was >> explaining why it would be useless to look in vnodes even though we can >> do >> that no usable information will be retrieved from such lookup. However >> your >> other idea (checking if the node is single or not in the whole outline) >> might work. > > > I think I got you, but tried to add a little more on. Now I'm not > sure what you mean by single or not in the whole outline. You mean > the suboutline being pasted as template? Or the entire Leo outline > you're working within and making templates within? > > I don't get why you can't look at the vnodes for the clones in the > suboutline (let's call it the t-outline, for the suboutline tree that > you've grabbed in the clipboard to make a template from), and identify > all those in the t-outline that associate with identical vnodes. Each > such set of nodes within the t-outline that point to the same vnode, > get a new vnode and all of those clones get pasted as pointing at that > new vnode instead. Thereby you've made the template's clones "local." > > Just go through the t-outline and make a list of gnxs and their > current vnodes. When pasting, make new clone nodes pointing a new > vnode for all of those that have the same/identical vnodes. Any > clone-nodes in the t-outline that are solitary, with their own unique > vnode, just get pasted as plain nodes. > > This would be different from paste-retaining-clones. (I guess > paste-retaining-clones already does what I call template-as-global, > right?)
I'm not using the vnodes to decide what gets cloned or not; I'm using it to decide which clones in the t-outline are a set (because they point at the same vnode), and thus they get a new vnode instead of the one they had. You use the vnodes to identify these internal sets of clones, so you can treat them as "local clones" by giving them a new common vnode inside the template. > Seth > >> Vitalije >> >> -- >> You received this message because you are subscribed to the Google Groups >> "leo-editor" 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/leo-editor/fb5f0a3c-ecf7-464c-9b68-fc311e8a0c31%40googlegroups.com. >> > -- You received this message because you are subscribed to the Google Groups "leo-editor" 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/leo-editor/CAJkfFBxpgU5ER6QTvCZy6xcdBzbtS3utY8B_Uum9M%2BF4p4CUzQ%40mail.gmail.com.
