[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] Using Org-mode file format for storing configuration data
From: |
Karl Voit |
Subject: |
[O] Using Org-mode file format for storing configuration data |
Date: |
Sun, 30 Dec 2012 19:04:25 +0100 |
User-agent: |
slrn/0.9.9 (Linux) |
Hi!
I plan to implement a new weblog system that parses Org-mode files
and generates (static) HTML output. Yes, I am aware that there are
other solutions out there but I do not like them for various
reasons.[1]
So for my new system, I am thinking of using Org-mode files for
writing (and parsing) the user-defined preferences.
- why not using elisp-methods like "setq" or "defvar" or "defcustom"?
- this weblog will be implemented in Python
- Sorry, I do not have any elisp knowledge and it seems to be the
case that this is not going to change within the next months.
- In Python I have to parse a basic sub-set of Org-mode format
anyhow. An additional parser would be more work to do.
- Why not using Org-mode for end-user configuration as well?
- It's more user-friendly for non elisp users like me.
- Possible methods to store configuration/settings of a weblog system
that scans Org-mode files to generate HTML:
- in drawers: see below
- in tables: see below
- in tags: see below
- other possibilities?
What do you think of this?
Can you imagine a better way of storing key-value-pairs in Org-mode?
My focus is user friendly maintenance and overview including in-line
documentation of the preferences.
* Configuring Paths (in Drawers)
:PROPERTIES:
:COLUMNS: %25ITEM %PATH
:END:
- advantages
- usage of column view
- easy to add comments for each setting
- disadvantages
- Properties have to be the same
- not that flexible in naming Properties
- possible name for property "VALUE" which makes it more general.
** Image-Path
:PROPERTIES:
:PATH: ~/images
:END:
In this folder, the Web log image files are placed after being
processed (resizing, ...).
** HTML-Path
:PROPERTIES:
:PATH: ~/blog/html
:END:
* Configuring Paths (in Tables)
| *Variable* | *Value* | *Comments*
|
|-----------------+---------------+-----------------------------------------------------|
| Image Path | ~/images | The path where the images should be placed
in. |
| HTML Path | ~/blog/html | Destination path for the HTML file folder
structure |
| Another Setting | another value | This has to be very short.
|
- advantages
- easy to write and maintain
- quick overview
- disadvantages
- hard to add (long) comments for each setting
* Configuring Paths (with Tags)
- advantages
- same settings can be shared through multiple tags on same value
- easy to add comments for each setting
- disadvantages
- seems strange at first glance; not sure if this really makes any
sense at all
- multiple word preference name has to be written in CamelCase or
separated with dashes
** ~/images :ImagePath:
** ~/blog/html :HtmlPath:
1. http://article.gmane.org/gmane.emacs.orgmode/49747/
--
Karl Voit
- [O] Using Org-mode file format for storing configuration data,
Karl Voit <=