On Wednesday, January 29, 2020 at 2:40:14 PM UTC-8, TonyM wrote: > > I love Eric's work here, though if you go back to my recent toc thread I > specifically demonstrated calculating the level. In part so you can build > your own toc. Eric's work is great but as features are added it gets harder > for others to customise. > > The feature rich solutions are valuable like Eric's but the do it yourself > code patterns can reduce the need to maintain feature rich solutions. > > How often do we need all the features? >
One of Jeremy's basic guiding principles in creating TiddlyWiki is to make customization more accessible for the untrained "non-technical" user. While "do-it-yourself code patterns" are very important for people who are somewhat coding-proficient, there are many people who are not programming-oriented and simply wish to have a "feature-rich solution" ready-made for them. In addition, even for the coding-proficient user, there is the effect of "feature creep", where the initial custom implementation is straightforward, but rapidly increases in complexity as the desire for adding "just one more feature" starts to set in. For example, as you and I have both shown, building a basic recursive TOC is relatively simple (once you grasp the initial concepts of recursion in TiddlyWiki), but adding such commonly-desired features as selective opening/closing of branches, drag-and-drop reordering, and currentTiddler highlighting are much harder to achieve for most casual TiddlyWiki users and even for some of the more advanced TiddlyWiki developers. Of course, it is always satisfying when people can "follow my trail" to achieving their own complex solutions, but that is not something that should be required or even expected from most users. Providing the appropriate balance between complexity and customization is often a subtle (and time-consuming) endeavor. This is where the "art" of programming and the experience of many years of developing software meet, and fully tested, plug-and-play solutions such as my TOC code come into the picture. I don't expect (nor do I encourage) people to customize the internals of my TOC code. Even so, in anticipation of differing use-cases, I have factored some of my code to isolate certain key parts so that they can be more readily customized; e.g., TiddlyTools/TOC/Template, which controls the rendering of content for each individual TOC entry. -e -- 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/d865f8d8-e34b-468b-8dfe-d6aee0b24f0f%40googlegroups.com.

