On Wed, Apr 8, 2015 at 8:50 AM, Kent Tenney <[email protected]> wrote: > On Wed, Apr 8, 2015 at 8:30 AM, 'Terry Brown' via leo-editor > <[email protected]> wrote: >> On Wed, 8 Apr 2015 06:57:44 -0500 >> Kent Tenney <[email protected]> wrote: >> >>> clones are akin to links in the file system, specifically, hard links. >>> Documentation often cautions against hard links, they tend to confuse. >>> >>> What if clones were like symlinks? > > Continuing the file system analogy ... >> >> I think clones are hard link like, as you say, and bookmarks are sym >> link like - sym links being pointers to somewhere else that may or > >> maynot exist. > IE a 'broken link' indicated by a red icon or some such > >> >> But whereas a bookmarks.py bookmark just teleports you to the node in >> its home position, > > Doesn't this negate the benefits of a view? I imagine a view of nodes > to allow staying in one tree while working with nodes living hither and yon.
Somewhat analogous to the difference between current 'hyperlinking' and Ted Nelson's vision of 'transclusion' hyperlinks send you to content living somewhere else transclusion pulls content from somewhere else to here Transclusion is a great pattern, underutilized. > > perhaps there could be a kind of sym link node that >> has the same headline and content as the node it points to, such that >> editing the headline or content of the sym link node changes the target >> node, but without going to the target nodes position. > > Right, same as a symlink, open and edit: the link is a proxy for the node > >> >> When I was thinking about clones the other day I realized they're very >> peer to peer, there's no way Leo can easily distinguish the 'original' >> from the 'copy', even though we clearly thing the one in the @<file> >> tree is the original and the one in the view tree is the copy. > > Hence the advice to avoid using hard links in the file system > >> >> So there might be ways to allow find to know what to report and what to >> skip, but everything that parses the outline would have to make the >> same checks against false / duplicate hits. > > if not p.symlink: > do_stuff(p) > else: > continue > >> >> So the better solution might be to attempt to convince Edward that >> bookmarks can take the place of clones for the creation of views :-) >> >> I'm assuming I know what a view is, a collection of nodes pulled from >> elsewhere that are collectively the nodes needed to work on a problem. >> Bookmarks can certainly handle that application, perhaps I need to make >> a better bookmark video. >> >> Cheers -Terry >> >>> When you clone to create a debug view, it would make sense that the >>> view nodes are not primary, they point to the nodes in the @file >>> tree. 'Find' could differentiate between nodes and links. >>> >>> On Wed, Apr 8, 2015 at 6:43 AM, Edward K. Ream <[email protected]> >>> wrote: >>> > On Monday, April 6, 2015 at 2:01:21 PM UTC-5, Terry Brown wrote: >>> >> >>> >> >>> >> If you use clones for creating task specific views of code, they're >>> >> extremely valuable. If you don't... they tend to be a nuisance. >>> > >>> > >>> > I've been thinking about this remark ever since you first wrote it. >>> > >>> > First, I've been wondering whether bookmarks can take the place of >>> > task views. At present, I don't see how they can. Terry, maybe >>> > you can tell me how. >>> > >>> > The rest of this post is an entry in my Engineering Workbook, >>> > without any real end product. Feel free to ignore. >>> > >>> > Second, I've been wondering how to improve my clone-based >>> > workflow. The clones in task views are a nuisance! The same nodes >>> > show up over and over again in searches. >>> > >>> > I use clone-find-all-flattened (cfa) command all the time. It's >>> > the basis of how deal with truly complex bugs, but now I'm having >>> > "creative doubts". Putting up with any nuisance, no matter how >>> > seemingly small, quickly becomes unpleasant. Perhaps this is why >>> > experienced Leonistas like Terry avoid clones. >>> > >>> > So the main question for me is: Is there a way to avoid duplicate >>> > hits in the find command? >>> > >>> > Perhaps I should have asked this question 15 years ago, but recent >>> > improvements have changed my workflow: >>> > >>> > 1. Command history. How did we ever live without this? >>> > 2. @button whatever @args add preloads "whatever" into the history. >>> > 3. I use @button cfa-start-node @args add to customize the cfa >>> > command for leoPy.leo and leoPlugins.leo. >>> > >>> > This combination make it much easier to use the cfa commands. More >>> > importantly for this discussion, it suggests a new design pattern. >>> > >>> > Let's use some magical thinking. We want Ctrl-F/F3 to prefer >>> > clones in a task view to clones in @file trees. Come to think of >>> > it, we want the Alt-G to do the same thing! >>> > >>> > This is magical thinking (at present) because clones may be part of >>> > several task views. >>> > >>> > Perhaps Ctrl-F/F3 themselves can be made smarter, but this could >>> > easily turn into an heroic task. >>> > >>> > Perhaps the @button cfa nodes could provide hints to the find >>> > commands. >>> > >>> > That's enough for now. I'll see if I can convert magic to >>> > engineering :-) >>> > >>> > Edward >>> > >>> > -- >>> > 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 post to this group, send email to [email protected]. >>> > Visit this group at http://groups.google.com/group/leo-editor. >>> > For more options, visit https://groups.google.com/d/optout. >>> >> >> -- >> 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 post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/leo-editor. >> For more options, visit https://groups.google.com/d/optout. -- 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 post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/leo-editor. For more options, visit https://groups.google.com/d/optout.
