diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/garret/README.simpleconf.md | 51 | ||||
-rw-r--r-- | modules/garret/simpleconf.lua | 46 |
2 files changed, 0 insertions, 97 deletions
diff --git a/modules/garret/README.simpleconf.md b/modules/garret/README.simpleconf.md deleted file mode 100644 index 8e0569c..0000000 --- a/modules/garret/README.simpleconf.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -title: simpleconf.lua's Fine Manual -lang: en-GB -... - -# simpleconf.lua's Fine Manual - -read it -## Usage -### Loading config files - -Synopsis: `config = simpleconf.get_config([config_file, defaults])` - -`@config_file` (`string`) - - Path of the file to load. - -`@defaults` (`table`) - - A table containing your default settings. - -`config` (table) - - Contains config values. - -Both values are optional. - -If the file and the defaults are present, it loads the defaults, then overwrites their values with those of the file. - -If the file is present, but not the defaults, it just loads the contents of the file. - -If the file isn't present, but the defaults are, it just loads the defaults, and you're using it wrong. - -If nothing is present, it returns an empty table. - -| File | Defaults | Result | -| ---- | -------- | ------ | -| 1 | 1 | file overwrites defaults | -| 1 | 0 | just the file | -| 0 | 1 | just the defaults | -| 0 | 0 | nothing | - -## Config file format - -``` -bool = true -number = 123 -string = the quick brown fox jumps over the lazy dog -I am a comment! -``` -(don't tell anyone, but it's all just a pattern nicked from Programming in Lua (page 82, 4th edition)) diff --git a/modules/garret/simpleconf.lua b/modules/garret/simpleconf.lua deleted file mode 100644 index 6d5f1a8..0000000 --- a/modules/garret/simpleconf.lua +++ /dev/null @@ -1,46 +0,0 @@ --- primitive config handler - -local function tobool(value) - if value == "true" then - return true - elseif value == "false" then - return false - else - return nil - end -end - -local function cast(value) - return tonumber(value) or tobool(value) or value -end - -local function get_config(config_file, defaults) - local conf = defaults or {} - local ok, lines = pcall(io.lines, config_file) - if ok then - for line in lines do - local key, value = string.match(line, "(%a+)%s*=%s*(.+)") - conf[key] = cast(value) - end - end - return conf -end - -local simpleconf = {get_config = get_config} - - -local have_depctrl, depctrl = pcall(require, "l0.DependencyControl") - -if have_depctrl then - local version = depctrl{ - name = "Simple (bad) Config", - version = "0.1.0", - description = "primitive config handler", - author = "garret", - url = "http://github.com/garret1317/aegisub-scripts", - moduleName = "garret.simpleconf"} - simpleconf.version = version - return version:register(simpleconf) -else - return simpleconf -end |