SPREFS - Preferences for a user for an application
Uses SCFG to provide preferences for a given user for a given application.
This keeps a global module variable PREFERENCES
. This module uses the
scfg-mult-get/set!
functions for accessing its configuration files.
Configuration files will be stored in $HOME/.scm_settings
. Filename:
$HOME/.scm_settings/<application>.scfg
. Where <application>
is given
with sprefs-new
.
Synopsis
>(require (planet "scfg.scm" ("oesterholt" "ho-utils.plt" 1 0))) >(sprefs-get 'a) Call sprefs-new first >(sprefs-new "my-application") >(sprefs-set! '(a b c) "abc") >(sprefs-get '(a b c)) "abc" >(sprefs-get '(a b c d)) undef >(sprefs-get '(a b c d) "HI") "HI" >(sprefs-cond-set!-get '(a b c d) "HI") "HI" >(sprefs-cond-set!-get '(a b c d) "HI" "OK!") "OK!" >(sprefs-get '(a b c d) "HI") "OK!"
API
(sprefs-new <application>) : boolean
Initializes the global preferences configuration file. Returns #t.
(sprefs-lambda-new setter getter) : <unspecified>
Initializes the global preferences from a getter and a setter function.
The getter must be of type (getter key . default-value) : value
, the
setter of type (setter key value) : <unspecified>
.
(sprefs-get <key> . <default-value>) : <value>
Performs scfg-get
on the given configuration file.
(sprefs-set! <key> <value>) : <unspecified>
Performs scfg-set!
on the application configuration file.
(sprefs-cond-set!-get <key> <default-value> . <set-value>) : <value>
Performs scfg-cond-set!-get
on the application configuration file.
Info
(c) 2005 Hans Oesterholt-Dijkema. Distributed undef LGPL. Contact: send email to hans in domain elemental-programming.org. Homepage: http://www.elemental-programming.org.