4 ms·
I didn't know what an outliner was: From the Git page: An outliner is a text editor that organizes information in a hierarchy, allowing users to control the le
by acomjean 13y ago
I didn't know what an outliner was:
From the Git page: An outliner is a text editor that organizes information in a hierarchy, allowing users to control the level of detail and to reorganize according to structure. Your notes can have full detail, yet be organized so a casual reader can get a quick overview. Outlining is a great way for teams to organize work.
- smoyer 13y agoAnd isn't this just a special case of an object graph where all the objects are strings, the relationships sub-objects can't have two parents and the traversal is over when you've reached a leaf? What about hierarchies of objects that aren't strings? (I'd like to organize them too). What about hierarchies that aren't a strict tree? (I can't really do my genealogy on this). P.S. I like what Dave does with outliners but I'm not sure I'd apply them everywhere he does.
- jerf 13y agoI've fiddled with this extensively. The problem isn't data representation; sure, "outlines" are "just" graphs. The question is, what on Earth does your UI look like? Editing "graphs" is hardly more structured than creating a "data editor"... ok, those are some nice English words you've got there, but how does it actually work? At least by limiting it to text and stuff that looks a lot like text, you can produce a real application that does real things of real value. It may not be suitable for everything, but your thing that is suitable for "everything" is likely come out being suitable for nothing in practice.
- smoyer 13y agoThat's a hard problem - I haven't done any "fiddle" but I've spent a lot of time doing Gedankenexperiment and haven't come up with anything I believe is remotely applicable. The genealogy example I gave is simpler but I'm not sure I've seen an editor for that use-case that's optimal either. Maybe the problem just can't be simplified further? And as an aside, I wasn't trying to disparage Dave Winer's implementation of tree editing at all.
- andrewflnr 13y agoI wrote one. It might not be exactly what you had in mind. It works okay for me for brainstorming: github.com/andrewf/graphpaper
- thyrsus 13y agoWhen folks stop talking about trees and start talking about graphs, they seem to forget that you usually want to have an order on the edges. I think an outliner is a great way to explore a fully connected directed graph with sequenced edges; just don't hit "Expand everything" when the graph contains a cycle. Leo http://leoeditor.com/ http://leoeditor.com/ expends a lot of effort to avoid cycles, which shows up in slow execution when adding edges ("cloning", in its terminology) to a node reaching a significant subgraph. If the graph can contain cycles, a recursive expander needs to contain cycle recognition and terminate after a finite number of trips through the cycle (probably one).
- andrewflnr 13y agoWhat do you mean by an "order on the edges"? I'm only superficially familiar with graph theory.
- thyrsus 13y agoIn graph theory, one usually has a set of nodes (A, B, C, ...) and a set(!) of edges between the nodes, either directed ((A,B), (A,C), (B,A)) or undirected (in which edge (A,B) implies (B,A), (A,C) implies (C,A), etc.). Sets don't have an order; most graph theory doesn't distinguish between the set of directed edges ((A,B), (A,C), (B,A)) and ((A,C), (A,B), (B,A)). On the other hand, when dealing with trees (aka outlines) it is almost always assumed that there is a significant order - a sequencing - on the edges between parent and child, and that it means something if you change the order of the children (outline subheads). I'm interested in more general (directed) graphs that nonetheless have a sequence - an order - on the edges, and where operations on that sequence are explored, in addition to the more usually examined addition and removal of edges. Until holographic displays are cheap (and maybe even after) I think trees, aka outlines, are a great visualization technique for such graphs - just take precautions with "Expand All" when the edges contain ((A,A)) or ((A,B), (B,A)) or any other length cycle. Or, as an outline This is heading A This is heading A .... This is heading B This is heading A This is heading A .... This is heading B This is heading A This is heading A ....
- fluidcruft 13y agoIt's OK. OpenOffice/LibreOffice don't either and they just yell at people that notice MS Office's outliner functionality is missing in OOo.
- michaelmior 13y agoMe either. That info really should have been in the announcement. I read through the whole thing and still had no real idea what Concord is.