134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
|
(begin
(close-input-port inp)
res)
(regex-case
inl
(configf:comment-rx _ (loop (configf:read-line inp res) curr-section-name #f #f))
(configf:blank-l-rx _ (loop (configf:read-line inp res) curr-section-name #f #f))
(configf:include-rx ( x include-file ) (let ((curr-dir (current-directory)))
(change-directory (pathname-directory path))
(read-config include-file res allow-system environ-patt: environ-patt curr-section: curr-section-name)
(change-directory curr-dir)
(loop (configf:read-line inp res) curr-section-name #f #f)))
(configf:section-rx ( x section-name ) (loop (configf:read-line inp res) section-name #f #f))
(configf:key-sys-pr ( x key cmd ) (if allow-system
(let ((alist (hash-table-ref/default res curr-section-name '()))
(val-proc (lambda ()
(let* ((cmdres (cmd-run->list cmd))
(status (cadr cmdres))
|
|
>
>
>
|
|
|
|
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
|
(begin
(close-input-port inp)
res)
(regex-case
inl
(configf:comment-rx _ (loop (configf:read-line inp res) curr-section-name #f #f))
(configf:blank-l-rx _ (loop (configf:read-line inp res) curr-section-name #f #f))
(configf:include-rx ( x include-file ) (let ((curr-dir (current-directory))
(conf-dir (pathname-directory path)))
(if conf-dir
(begin
(change-directory conf-dir)
(read-config include-file res allow-system environ-patt: environ-patt curr-section: curr-section-name)
(change-directory curr-dir)))
(loop (configf:read-line inp res) curr-section-name #f #f)))
(configf:section-rx ( x section-name ) (loop (configf:read-line inp res) section-name #f #f))
(configf:key-sys-pr ( x key cmd ) (if allow-system
(let ((alist (hash-table-ref/default res curr-section-name '()))
(val-proc (lambda ()
(let* ((cmdres (cmd-run->list cmd))
(status (cadr cmdres))
|