summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorMika Havela <mika.havela@gmail.com>2008-02-14 15:43:03 +0000
committerMika Havela <mika.havela@gmail.com>2008-02-14 15:43:03 +0000
commit71a6579a6e5337f8148d0da83d40256639169e3c (patch)
treec343197c145536a2dff0347c778c9ee2fd6acfab /lib
parenta6e8de56a0b24f2083347ed68662b90de0fa6dbf (diff)
downloadacf-core-71a6579a6e5337f8148d0da83d40256639169e3c.tar.bz2
acf-core-71a6579a6e5337f8148d0da83d40256639169e3c.tar.xz
Added modified functionallity.
git-svn-id: svn://svn.alpinelinux.org/acf/core/trunk@722 ab2d0c66-481e-0410-8bed-d214d4d58bed
Diffstat (limited to 'lib')
-rw-r--r--lib/getopts.lua24
1 files changed, 24 insertions, 0 deletions
diff --git a/lib/getopts.lua b/lib/getopts.lua
index 1c8b7bf..ef74b49 100644
--- a/lib/getopts.lua
+++ b/lib/getopts.lua
@@ -97,3 +97,27 @@ function opts_to_table ( optstring, filter )
end
return optsparams
end
+function getoptsfromfile_onperline (file, search, filter)
+ local opts = nil
+ if not (fs.is_file(file)) then return nil end
+ local conf_file = fs.read_file_as_array ( file )
+ for i=1,table.maxn(conf_file) do
+ local l = conf_file[i]
+ if not string.find ( l, "^[;#].*" ) then
+ local a = string.match ( l, "^%s*(%S*)=" )
+ if (a) then
+ if not (search) or (search == a) then
+ local b = string.match ( l, '^%s*%S*%s*%=%s*%"?(.-)%s*%"?%s*$' )
+-- local optstable = getopts.opts_to_table(b,filter)
+ if not (filter) then
+ if not (opts) then
+ opts = {}
+ end
+ opts[a] = b
+ end
+ end
+ end
+ end
+ end
+ return opts
+end