[augeas-devel] Sysctl and slashes
Raphaël Pinson
raphink at gmail.com
Fri Nov 18 09:30:01 UTC 2011
Here is the proposed lens :
module Sysctl =
autoload xfm
let filter = incl "/etc/sysctl.conf"
let eol = Util.eol
let indent = Util.indent
let key_re = /[A-Za-z0-9_-]+/
let eq = del /[ \t]*=[ \t]*/ " = "
let sep_kv = del /[\/.]/ "."
let value_re = /[^ \t\n](.*[^ \t\n])?/
let comment = [ indent . label "#comment" . del /[#;][ \t]*/ "# "
. store /([^ \t\n].*[^ \t\n]|[^ \t\n])/ . eol ]
let empty = Util.empty
let fix_kv (lns:lens) = [ key key_re . sep_kv . lns ]
| [ key key_re . eq . store value_re . eol ]
let rec kv_rec = fix_kv kv_rec
(* Typecheck <fix_kv> *)
let kv0 = [ key key_re ]
let kv1 = fix_kv kv0
let kv = indent . kv_rec
let lns = (empty | comment | kv) *
let xfm = transform lns filter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/augeas-devel/attachments/20111118/7d518ec0/attachment.htm>
More information about the augeas-devel
mailing list