Update of "Refdb"

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.


Artifact ID: 51aab786d82bb16d0434437a932712b88b9d75c1
Page Name:Refdb
Date: 2014-09-20 19:18:54
Original User: matt
Parent: 75e5170175962591a5dec0d725bf5d699f744b71


(note: this website is a fossil scm repository, learn more at

... is a tool for storing a three level deep hierarchical key store in flat text files while being able to edit the data with a spreadsheet. The flat files generated by refdb are quite resistant to conflicts on branch and merge.


Storing configuration data, test control data and so forth can be very convenient in a spreadsheet but spreadsheets cannot be easily modified in parallel and branched and merged in tools like fossil or git.



  1. Install chicken scheme from:
  2. Install the refdb egg: chicken-install refdb

Data format

Files with extension .dat contain the data for each sheet.

[column header]
rowlabel value

Run refdb for quick help

Run refdb from the commandline to get quick help:
> refdb
Usage: refdb action params ...

Note: refdbdir is a path to the directory containg sheet-names.cfg

  import filename.gnumeric refdbdir   : Import a gnumeric file into a txt db directory
  export refdbdir filename.gnumeric   : Export a refdb to a gnumeric file
  edit   refdbdir                     : Edit a refdbdir using gnumeric.
  ls refdbdir                         : List the keys for specified level 
  lookup refdbdir sheetname row col   : Look up a value in the text db   
  getrownames refdb sheetname         : Get a list of row titles
  getcolnames refdb sheetname         : Get a list of column titles

To export to other formats; first export to gnumeric then use ssconvert.


refdb export mydata mydata.gnumeric
ssconvert -T Gnumeric_html:html40 mydata.gnumeric mydata.html 
Part of the Megatest tool suite. Learn more at

Version: 1.0