1 line
3.1 KiB
Plaintext
1 line
3.1 KiB
Plaintext
<!-- SC_OFF --><div class="md"><p>During the last months, me and my girlfriend moved our note taking, planning etc. from TiddlyWiki to Emacs OrgMode and so far we both like it. But there is one big thing I'm missing: "dynamic aggregation".</p> <p>In TiddlyWiki I can automatically query and format many information throughout the Wiki. Easy tasks like displaying a table of all D&D sessions is achievable with the column mode, but how about more complex aggregations? For my studies, I created tiddlers for every subject including information for CP, semester, and category. In my overview, each semester is listed as separate heading with the subjects being displayed by category as description lists and the CP summed up for each category. Please refer to the screenshot.</p> <p>​</p> <p><a href="https://preview.redd.it/mqplroq099881.png?width=526&format=png&auto=webp&s=60ee21d430e1b32611ad1963569c9d58c645b882">https://preview.redd.it/mqplroq099881.png?width=526&format=png&auto=webp&s=60ee21d430e1b32611ad1963569c9d58c645b882</a></p> <p>In TiddlyWiki I can use filter expressions to select any tiddler (entry) from the wiki and extract data from it. This data can be transformed into arbitrary HTML, which is rendered when the article is visited. This query and transformation is done in the Wiki's own syntax, which is a part of the reason I wanted to switch to Emacs.</p> <p>How would I recreate this in OrgMode? I'm okay with having all information in one file and don't mind to learn elisp. What I would like to have is the information to be displayed inline (not in another buffer) and being able to use all or most of org Mode's usual formatting options.</p> <p><strong>Results:</strong></p> <p>It seems like the rendering part of my desired solution is already included in org babel. When using a code block with <code>:results raw</code> I can output any content which is then regularly parsed as org content. This has the additional advantage that I can just use any language integrated with babel, and thus can use any code I have lying around. A small problem is, that each execution of the block adds the output again and the <code>replace</code> directive does not work as org cannot determine which part of the output was created by the block. As a make-shift solution, I added a second block with elisp code that searches for the created output by an ID and kills it.</p> <p>Querying the information is now the remaining problem, but you gave me a few interesting options which I will look into.</p> <p><strong>Edits:</strong></p> <ul> <li>I added the missing screenshot, thanks to <a href="/u/qZeta">u/qZeta</a> for pointing this out.</li> <li>Added first results</li> <li>And typos, always typos</li> </ul> </div><!-- SC_ON -->   submitted by   <a href="https://www.reddit.com/user/neunzehnhundert97"> /u/neunzehnhundert97 </a> <br/> <span><a href="https://www.reddit.com/r/orgmode/comments/rpmeyt/dynamic_aggreagations_like_in_tiddlywiki/">[link]</a></span>   <span><a href="https://www.reddit.com/r/orgmode/comments/rpmeyt/dynamic_aggreagations_like_in_tiddlywiki/">[comments]</a></span> |