This Python 3 script parses parses a list of Org-mode files and generates output similar to du (disk usage) but with lines of Org-mode instead of kilobytes.
The purpose of this script is to use its output as the input for xdu in order to get an interactive graphical visualization:
org-du.py my_org_file.org another_org_file.org | xdu
The script accepts an arbitrary number of files (see your shell for possible length limitations).
GNU/Emacs Org-mode does a great job for outlining (collapsing and expanding). However, when you want to get a brief overview on the amount of content of each heading (e.g., to locate performance optimization possibilities), you need a different tool: org-du
Get it via GitHub or install it via pip: pip install org-du
org-du.py --help
usage: org-du.py [-h] [-v | --quiet | --version] file [file ...] org-du parses a list of Org-mode files and generates output similar to "du" (disk usage) but with lines of Org-mode instead of kilobytes. positional arguments: file a list of file names optional arguments: -h, --help show this help message and exit -v, --verbose --quiet --version show program's version number and exit Verbose description: http://Karl-Voit.at/2017/03/27/org-du/ :copyright: (c) by Karl Voit <tools@Karl-Voit.at> :license: GPL v3 or any later version :URL: https://github.com/novoid/org-du :bugreports: via github or <tools@Karl-Voit.at> :version: 2017-03-26
If you apply org-du
to this README.org
file, you will see
following visualization:
org-du.py README.org
You can interactively navigate through sub-headings using your mouse.
Navigate back by clicking on the leftmost item of the visual tree.
Exit with q
.
Another cool usage scenario is when you invoke org-du
on one host
(Windows) and visualizing is done on a different host. This can easily
be accomplished by re-directing the output of the script:
Host A (Windows):
org-du.py *.org > org-du-output.txt
Then copying the file org-du-output.txt
from host A to host B.
Host B (GNU/Linux):
xdu < org-du-output.txt
- <2017-03-26 Sun>: first version on GitHub and pip
- https://github.com/mtekman/org-treeusage.el via reddit
- an in-place visualization as minor mode
I’m glad you like my tools. If you want to support me:
- Send old-fashioned postcard per snailmail - I love personal feedback!
- see my address
- Send feature wishes or improvements as an issue on GitHub
- Create issues on GitHub for bugs
- Contribute merge requests for bug fixes
- Check out my other cool projects on GitHub