diff options
author | Andy Wingo <wingo@pobox.com> | 2010-10-01 11:09:28 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2010-10-01 11:09:28 +0200 |
commit | 1518f6494873c4bc4bced49d3e0e903f37c644c6 (patch) | |
tree | 359a99673197fc07d9399e4b4bb8b8358046ba0f /doc/ref/api-options.texi | |
parent | 24259edb8b1d70dfa968d9182e835013ec1cdb9f (diff) | |
download | guile-1518f6494873c4bc4bced49d3e0e903f37c644c6.tar.gz |
move read and print options docs to the procedures they parameterize
* doc/ref/api-evaluation.texi (Scheme Read): Fold all reader options
docs into this section. Undocument read-options-interface.
(Scheme Write): New section for `write' and `display', and the print
options. print-enable/print-disable are not documented, as there are
no boolean print options. print-options-interface is likewise
undocumented.
* doc/ref/api-options.texi: Remove discussion of options in
general. Move read options to Scheme Read, and print options to Scheme
Write.
* doc/ref/api-io.texi (Reading): Link to Scheme Read.
(Writing): Move write and display to Scheme Write, and link there.
* doc/ref/srfi-modules.texi:
* doc/ref/api-debug.texi:
* doc/ref/api-data.texi: Update xrefs.
Diffstat (limited to 'doc/ref/api-options.texi')
-rw-r--r-- | doc/ref/api-options.texi | 150 |
1 files changed, 1 insertions, 149 deletions
diff --git a/doc/ref/api-options.texi b/doc/ref/api-options.texi index 3c25b196d..fdc8e85f7 100644 --- a/doc/ref/api-options.texi +++ b/doc/ref/api-options.texi @@ -383,162 +383,14 @@ control interface, and a user-level interface which allows the enabling or disabling of options. Moreover, the options are classified in groups according to whether they -configure @emph{reading}, @emph{printing}, @emph{debugging} or -@emph{evaluating}. +configure @emph{reading}, @emph{printing}, or @emph{debugging}. @menu -* Low level options interfaces:: -* User level options interfaces:: -* Reader options:: -* Printing options:: * Debugger options:: * Examples of option use:: @end menu -@node Low level options interfaces -@subsubsection Low Level Options Interfaces - -@deffn {Scheme Procedure} read-options-interface [setting] -@deffnx {Scheme Procedure} print-options-interface [setting] -@deffnx {Scheme Procedure} debug-options-interface [setting] -@deffnx {C Function} scm_read_options (setting) -@deffnx {C Function} scm_print_options (setting) -@deffnx {C Function} scm_debug_options (setting) -If one of these procedures is called with no arguments (or with -@code{setting == SCM_UNDEFINED} in C code), it returns a list describing -the current setting of the read, eval, print, debug or evaluator traps -options respectively. The setting of a boolean option is indicated -simply by the presence or absence of the option symbol in the list. The -setting of a non-boolean option is indicated by the presence of the -option symbol immediately followed by the option's current value. - -If called with a list argument, these procedures interpret the list as -an option setting and modify the relevant options accordingly. [FIXME ---- this glosses over a lot of details!] - -If called with any other argument, such as @code{'help}, these -procedures return a list of entries like @code{(@var{OPTION-SYMBOL} -@var{DEFAULT-VALUE} @var{DOC-STRING})}, with each entry giving the -default value and documentation for each option symbol in the relevant -set of options. -@end deffn - - -@node User level options interfaces -@subsubsection User Level Options Interfaces - -@c @deftp {Data type} scm_option -@c @code{scm_option} is used to represent run time options. It can be a -@c @emph{boolean} type, in which case the option will be set by the strings -@c @code{"yes"} and @code{"no"}. It can be a -@c @end deftp - -@c NJFIXME -@deffn {Scheme Procedure} <group>-options [arg] -@deffnx {Scheme Procedure} read-options [arg] -@deffnx {Scheme Procedure} print-options [arg] -@deffnx {Scheme Procedure} debug-options [arg] -These functions list the options in their group. The optional argument -@var{arg} is a symbol which modifies the form in which the options are -presented. - -With no arguments, @code{<group>-options} returns the values of the -options in that particular group. If @var{arg} is @code{'help}, a -description of each option is given. If @var{arg} is @code{'full}, -programmers' options are also shown. - -@var{arg} can also be a list representing the state of all options. In -this case, the list contains single symbols (for enabled boolean -options) and symbols followed by values. -@end deffn -[FIXME: I don't think 'full is ever any different from 'help. What's -up?] - -@c NJFIXME -@deffn {Scheme Procedure} <group>-enable option-symbol -@deffnx {Scheme Procedure} read-enable option-symbol -@deffnx {Scheme Procedure} print-enable option-symbol -@deffnx {Scheme Procedure} debug-enable option-symbol -These functions set the specified @var{option-symbol} in their options -group. They only work if the option is boolean, and throw an error -otherwise. -@end deffn - -@c NJFIXME -@deffn {Scheme Procedure} <group>-disable option-symbol -@deffnx {Scheme Procedure} read-disable option-symbol -@deffnx {Scheme Procedure} print-disable option-symbol -@deffnx {Scheme Procedure} debug-disable option-symbol -These functions turn off the specified @var{option-symbol} in their -options group. They only work if the option is boolean, and throw an -error otherwise. -@end deffn - -@c NJFIXME -@deffn syntax <group>-set! option-symbol value -@deffnx syntax read-set! option-symbol value -@deffnx syntax print-set! option-symbol value -@deffnx syntax debug-set! option-symbol value -These functions set a non-boolean @var{option-symbol} to the specified -@var{value}. -@end deffn - - -@node Reader options -@subsubsection Reader options -@cindex options - read -@cindex read options - -Here is the list of reader options generated by typing -@code{(read-options 'full)} in Guile. You can also see the default -values. - -@smalllisp -copy no Copy source code expressions. -positions yes Record positions of source code expressions. -case-insensitive no Convert symbols to lower case. -keywords #f Style of keyword recognition: #f, 'prefix or 'postfix. -r6rs-hex-escapes no Use R6RS variable-length character and string hex escapes. -square-brackets yes Treat `[' and `]' as parentheses, for R6RS compatibility. -@end smalllisp - -Historically, many Scheme implementations have been case-insensitive, -treating @code{foo} and @code{FOO} as the same symbol. Guile has always -defaulted to case-sensitivity, as allowed since the R4RS and codified in -the R6RS. - -Guile also has a reader option to fold all symbols to their lower -case. To enable this option, perhaps for compatibility with older Scheme -code, you can enter - -@lisp -(read-enable 'case-insensitive) -@end lisp - -For more information on the effect of the @code{r6rs-hex-escapes} option, see -(@pxref{String Syntax}). - -@node Printing options -@subsubsection Printing options - -Here is the list of print options generated by typing -@code{(print-options 'full)} in Guile. You can also see the default -values. - -@smallexample -quote-keywordish-symbols reader How to print symbols that have a colon - as their first or last character. The - value '#f' does not quote the colons; - '#t' quotes them; 'reader' quotes - them when the reader option - 'keywords' is not '#f'. - -highlight-prefix @{ The string to print before highlighted values. -highlight-suffix @} The string to print after highlighted values. -@end smallexample - - @node Debugger options @subsubsection Debugger options |