The Racket repository
![]() (used `put-preference' not the plural form). * Added `preferences:low-level-get-preference' that is set by default to the `get-preference'. (Together with the previous one it is possible to setup things so preferences are kept in a hash table instead of on disk.) * The `preferences:get' function will try to read a (marshalled) value from the preferences if there is no value set, and the `marshalled' hash table is gone (it was used only for initial values of preferences). This means that the preference file is not consulted until the preference value is needed, which makes reading the file more lazy. More importantly, if some user application sets the `preferences:low-level-get-preference' hook, then the newly installed hook will be used to read the initial values. This is important since just registering a preference (via `preferences:set-default') would already read the preference to the `marshalled' hash table -- and many such preferences are registered at various module top-levels, so this would happen before the user code had any chance of changing the low-level get function. The only visible effect of this change outside of this module is that preferences are read more lazily from the file. For example, if you start DrScheme and then remove the preference file and then search, you will not see your saved search string because. (Before this change, the saved search string would have been read on startup, so its value was read before you removed the file.) * Delayed reading of the old-preferences until needed for similar reasons. * Reformatted some of the documentation strings. svn: r14716 |
||
---|---|---|
collects | ||
doc | ||
man/man1 | ||
src |