+++ Tuesday 5 August 2025 +++ One Big Org Text File ===================== Occasionally, blog entries note degraded performance when org files grow to a big number of lines. One of the outcomes of the Old Computer Challenge is that I have dropped Emacs denote for writing phlog posts, and replaced it with a simplified Elisp script. I am thinking about also dropping denote for my notes, excluding another dependency. As an alternative I am thinking of moving towards "One Big Text File" (OBTF), of course in the format of One Big Org Text File. One Big Org Test file --------------------- To address the performance concerns, I created a big org file, using my home-made kind-of Markov-generator, that I fed with the text of Thoreau's Walden. The generated test file is over 65k lines, has 3k level-2 headers, grouped by 8 level-1 headers. Each level-2 header has a level-3 header and in total 220 words. There are about 340 local links sprinkled over the file, randomly pointing to either a level-2 header or a level-3 header. Each level-2 header has two random tags, ranging from :zero: to :seventeen: (using the brilliant `~R' option in the Common Lisp format function). I keep my todo's in a separate file, and I didn't generate todo's in this test file. To put some strain on Emacs, the file has a header line #+STARTUP: overview which let Emacs fold the file on the level-1 headers. No need for performance anxiety ------------------------------- It turns out that using an org file like this test file, there are no reasons to fear any performance issues. The file opens snappy, and opening and closing folds works fast. Also, selecting all the headers with a specific tag, using the org `sparse-tree' method, is quick. Migration --------- The next step is to come up with a method to move my current denote note files into a single One Big Org Text File. This looks like a fun Elisp project :) Last edited: $Date: 2025/08/05 09:44:31 $