diff options
author | Marc Fournier <marc.fournier@camptocamp.com> | 2009-06-08 21:30:23 +0200 |
---|---|---|
committer | Marc Fournier <marc.fournier@camptocamp.com> | 2009-06-08 21:30:23 +0200 |
commit | 667eead5e202438898bdaf4c616835ffc9af0678 (patch) | |
tree | 6df5ea5d91ac1b966b18d31fe857d16540e24e53 /files | |
parent | 2ef5a4811acbca363eaa0dd1aa8959cd1d28f05c (diff) |
backport fix 1a6042, remove after 0.5.1 release
Diffstat (limited to 'files')
-rw-r--r-- | files/php.aug | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/files/php.aug b/files/php.aug new file mode 100644 index 0000000..5d44363 --- /dev/null +++ b/files/php.aug @@ -0,0 +1,52 @@ +(* PHP module for Augeas *) +(* Author: Raphael Pinson <raphink@gmail.com> *) +(* *) + +module PHP = + autoload xfm + +(************************************************************************ + * INI File settings + *************************************************************************) + +let comment = IniFile.comment IniFile.comment_re IniFile.comment_default +let sep = IniFile.sep IniFile.sep_re IniFile.sep_default +let empty = IniFile.empty + + +(************************************************************************ + * ENTRY + * + * We have to remove the keyword "section" from possible entry keywords + * otherwise it would lead to an ambiguity with the "section" label + * since PHP allows entries outside of sections. + *************************************************************************) +let entry = IniFile.entry IniFile.entry_re sep comment + + +(************************************************************************ + * TITLE + * + * We use IniFile.title_label because there can be entries + * outside of sections whose labels would conflict with section names + *************************************************************************) +let title = IniFile.title ( IniFile.record_re - ".anon" ) +let record = IniFile.record title entry + +let record_anon = [ label ".anon" . ( entry | empty )+ ] + + +(************************************************************************ + * LENS & FILTER + * There can be entries before any section + * IniFile.entry includes comment management, so we just pass entry to lns + *************************************************************************) +let lns = record_anon? . record* + +let filter = (incl "/etc/php*/*/*.ini") + . (incl "/etc/php.ini") + . (incl "/etc/php.d/*.ini") + . Util.stdexcl + +let xfm = transform lns filter + |