"under <platform>" -> "on <platform>"; "X" -> "Unix"

I originally picked "under" as the preposition to go before
 a platform name, but obviously you should build "on" a
 platform, and "under" suddenly annoys me. The choice of "on"
 is now codified in the documentation style guide. Meanwhile,
 "Unix" insted of "X" seems more clear and consistent in the
 `racket/gui' docs.

 More usefully, this patch also fixes a few out-of-date
 platform-specific claims.
This commit is contained in:
Matthew Flatt 2011-06-17 18:43:11 -06:00
parent 5a5800d513
commit f34a31cac9
86 changed files with 404 additions and 404 deletions

View File

@ -578,7 +578,7 @@ The @litchar{MZSCHEME} forms are disabled unless the web page is a
@defmodule[browser/external] @defmodule[browser/external]
@defproc[(send-url [str null] [separate-window? void #t]) null]{ @defproc[(send-url [str null] [separate-window? void #t]) null]{
Like @net-send-url from @racket[net/sendurl], but under Unix, the user Like @net-send-url from @racket[net/sendurl], but on Unix, the user
is prompted for a browser to use if none is recorded in the is prompted for a browser to use if none is recorded in the
preferences file. preferences file.
} }
@ -588,7 +588,7 @@ The @litchar{MZSCHEME} forms are disabled unless the web page is a
} }
@defproc[(update-browser-preference [url (or/c string? false/c)]) void?]{ @defproc[(update-browser-preference [url (or/c string? false/c)]) void?]{
Under Unix, prompts the user for a browser preference and records the On Unix, prompts the user for a browser preference and records the
user choice as a framework preference (even if one is already user choice as a framework preference (even if one is already
recorded). If @racket[url] is not @racket[#f], it is used in the recorded). If @racket[url] is not @racket[#f], it is used in the
dialog to explain which URL is to be opened; if it is @racket[#f], the dialog to explain which URL is to be opened; if it is @racket[#f], the

View File

@ -50,9 +50,9 @@ A parameter that determines the executable for the compiler.
The default is set by searching for an executable using the The default is set by searching for an executable using the
@envvar{PATH} environment variable, or using the @envvar{CC} or @envvar{PATH} environment variable, or using the @envvar{CC} or
@envvar{MZSCHEME_DYNEXT_COMPILER} environment variable if either is @envvar{MZSCHEME_DYNEXT_COMPILER} environment variable if either is
defined (and the latter takes precedence). Under windows, the search defined (and the latter takes precedence). On Windows, the search
looks for @filepath{cl.exe}, then @filepath{gcc.exe}, then looks for @filepath{cl.exe}, then @filepath{gcc.exe}, then
@filepath{bcc32.exe} (Borland). Under Unix, it looks for @filepath{bcc32.exe} (Borland). On Unix, it looks for
@filepath{gcc}, then @filepath{cc}. A @scheme[#f] value indicates that @filepath{gcc}, then @filepath{cc}. A @scheme[#f] value indicates that
no compiler could be found.} no compiler could be found.}
@ -64,12 +64,12 @@ no compiler could be found.}
A parameter that determines strings passed to the compiler as flags. A parameter that determines strings passed to the compiler as flags.
See also @scheme[expand-for-compile-variant]. See also @scheme[expand-for-compile-variant].
Under Windows, the default is @scheme[(list "/c" "/O2" "/MT" On Windows, the default is @scheme[(list "/c" "/O2" "/MT"
_3m-flag-thunk)] for @filepath{cl.exe}, or @scheme[(list "-c" "-O2" _3m-flag-thunk)] for @filepath{cl.exe}, or @scheme[(list "-c" "-O2"
"-fPIC" _3m-flag-thunk)] for @filepath{gcc.exe} and "-fPIC" _3m-flag-thunk)] for @filepath{gcc.exe} and
@filepath{bcc32.exe}, where @scheme[_3m-flag-thunk] returns @filepath{bcc32.exe}, where @scheme[_3m-flag-thunk] returns
@scheme[(list "-DMZ_PRECISE_GC")] for the 3m variant and null for the @scheme[(list "-DMZ_PRECISE_GC")] for the 3m variant and null for the
CGC variant. Under Unix, the default is usually @scheme[(list "-c" CGC variant. On Unix, the default is usually @scheme[(list "-c"
"-O2" "-fPIC" _3m-flag-thunk)]. If the @envvar{CFLAGS} or "-O2" "-fPIC" _3m-flag-thunk)]. If the @envvar{CFLAGS} or
@envvar{MZSCHEME_DYNEXT_COMPILER_FLAGS} environment variable is @envvar{MZSCHEME_DYNEXT_COMPILER_FLAGS} environment variable is
defined (the latter takes precedence), then its value is parsed as a defined (the latter takes precedence), then its value is parsed as a
@ -84,9 +84,9 @@ A parameter the processes include-path inputs to the compiler; the
parameter values takes an include directory path and returns a list of parameter values takes an include directory path and returns a list of
strings for the command line. strings for the command line.
Under Windows, the default converts @scheme["dir"] to @scheme[(list On Windows, the default converts @scheme["dir"] to @scheme[(list
"/Idir")] for @filepath{cl.exe}, @scheme[(list "-Idir")] for "/Idir")] for @filepath{cl.exe}, @scheme[(list "-Idir")] for
@filepath{gcc.exe} and @filepath{bcc32.exe}. Under Unix, the default @filepath{gcc.exe} and @filepath{bcc32.exe}. On Unix, the default
converts @scheme["dir"] to @scheme[(list "-Idir")]. If the converts @scheme["dir"] to @scheme[(list "-Idir")]. If the
@envvar{CFLAGS} environment variable is defined, then its value is @envvar{CFLAGS} environment variable is defined, then its value is
parsed as a list of flags that is appended before the defaults.} parsed as a list of flags that is appended before the defaults.}
@ -109,9 +109,9 @@ A parameter that processes outputs specified for the compiler; the
parameter's value takes an output file path and returns a list of parameter's value takes an output file path and returns a list of
strings for the command line. strings for the command line.
Under Windows, the default converts @scheme["file"] to @scheme[(list On Windows, the default converts @scheme["file"] to @scheme[(list
"/Fofile")] for @filepath{cl.exe}, or to @scheme[(list "-o" "file")] "/Fofile")] for @filepath{cl.exe}, or to @scheme[(list "-o" "file")]
for @filepath{gcc.exe} and @filepath{bcc32.exe}. Under Unix, the for @filepath{gcc.exe} and @filepath{bcc32.exe}. On Unix, the
default converts @scheme["file"] to @scheme[(list "-o" "file")].} default converts @scheme["file"] to @scheme[(list "-o" "file")].}
@ -210,10 +210,10 @@ A parameter that determines the executable used as a linker.
The default is set by searching for an executable using the The default is set by searching for an executable using the
@envvar{PATH} environment variable, or by using the @envvar{LD} or @envvar{PATH} environment variable, or by using the @envvar{LD} or
@envvar{MZSCHEME_DYNEXT_LINKER} environment variable if it is defined @envvar{MZSCHEME_DYNEXT_LINKER} environment variable if it is defined
(and the latter takes precedence). Under Windows, it looks for (and the latter takes precedence). On Windows, it looks for
@filepath{cl.exe}, then @filepath{ld.exe} (gcc), then @filepath{cl.exe}, then @filepath{ld.exe} (gcc), then
@filepath{ilink32.exe} (Borland). Under Cygwin, Solaris, FreeBSD 2.x, @filepath{ilink32.exe} (Borland). On Cygwin, Solaris, FreeBSD 2.x,
or HP/UX, it looks for @filepath{ld}. Under other Unix variants, it or HP/UX, it looks for @filepath{ld}. On other Unix variants, it
looks for @filepath{cc}. @scheme[#f] indicates that no linker could be looks for @filepath{cc}. @scheme[#f] indicates that no linker could be
found.} found.}
@ -224,9 +224,9 @@ found.}
A parameter that determines flags provided to the linker. See also A parameter that determines flags provided to the linker. See also
@scheme[expand-for-link-variant]. @scheme[expand-for-link-variant].
Under Windows, default is @scheme[(list "/LD")] for @filepath{cl.exe}, On Windows, default is @scheme[(list "/LD")] for @filepath{cl.exe},
@scheme[(list "--dll")] for @filepath{ld.exe}, and @scheme[(list @scheme[(list "--dll")] for @filepath{ld.exe}, and @scheme[(list
"/Tpd" "/c")] for @filepath{ilink32.exe}. Under Unix, the default "/Tpd" "/c")] for @filepath{ilink32.exe}. On Unix, the default
varies greatly among platforms. If the @envvar{LDFLAGS} or varies greatly among platforms. If the @envvar{LDFLAGS} or
@envvar{MZSCHEME_DYNEXT_LINKER_FLAGS} (the latter takes precedence) @envvar{MZSCHEME_DYNEXT_LINKER_FLAGS} (the latter takes precedence)
environment variable is defined, then its value is parsed as a list of environment variable is defined, then its value is parsed as a list of
@ -248,10 +248,10 @@ A parameter that processes linker output arguments; the parameter
value takes an output file path and returns a list of strings for the value takes an output file path and returns a list of strings for the
command line. command line.
Under Windows, the default converts @scheme["file"] to @scheme[(list On Windows, the default converts @scheme["file"] to @scheme[(list
"/Fefile")] for @filepath{cl.exe}, something like @scheme[(list "-e" "/Fefile")] for @filepath{cl.exe}, something like @scheme[(list "-e"
"_dll_entry@12" "-o" "file")] for @filepath{ld.exe}, and something "_dll_entry@12" "-o" "file")] for @filepath{ld.exe}, and something
complex for @filepath{ilink32.exe}. Under Unix, the default converts complex for @filepath{ilink32.exe}. On Unix, the default converts
@scheme["file"] to @scheme[(list "-o" "file")].} @scheme["file"] to @scheme[(list "-o" "file")].}
@defparam[current-standard-link-libraries @defparam[current-standard-link-libraries

View File

@ -31,7 +31,7 @@ outputting the same format as the @exec{gzip} utility. The
the compressed stream. The @scheme[timestamp] number is also embedded the compressed stream. The @scheme[timestamp] number is also embedded
in the output stream, as the modification date of the original file in the output stream, as the modification date of the original file
(in Unix seconds, as @scheme[file-or-directory-modify-seconds] would (in Unix seconds, as @scheme[file-or-directory-modify-seconds] would
report under Unix).} report on Unix).}
@defproc[(deflate [in input-port?] @defproc[(deflate [in input-port?]

View File

@ -209,7 +209,7 @@ numeric keypad; the right paddle moves with the mouse. The 'r' key
resets the score. resets the score.
net-pong-*.ss : A networked version of the pong/air-hockey game. net-pong-*.ss : A networked version of the pong/air-hockey game.
Currently known to work under Linux. To play, open the client on one Currently known to work on Linux. To play, open the client on one
machine and the server on another. Execute both (and require if machine and the server on another. Execute both (and require if
necessary, depending on language level). Evaluate (self) on each. necessary, depending on language level). Evaluate (self) on each.
Results will be something like: Results will be something like:

View File

@ -7,7 +7,7 @@
@title{@bold{Games}: Fun Examples} @title{@bold{Games}: Fun Examples}
The @exec{PLT Games} executable (or @exec{plt-games} under Unix) lets The @exec{PLT Games} executable (or @exec{plt-games} on Unix) lets
you select one of the games distributed by PLT or other games you select one of the games distributed by PLT or other games
installed as sub-collections of the @filepath{games} collection (see installed as sub-collections of the @filepath{games} collection (see
@secref["new-games"]). @secref["new-games"]).

View File

@ -1110,7 +1110,7 @@
(opt-lambda (filename [type 'unknown/mask]) (opt-lambda (filename [type 'unknown/mask])
(check 'draw-pixmap-posn (check 'draw-pixmap-posn
(andp path-string? file-exists?) filename "filename" (andp path-string? file-exists?) filename "filename"
(lambda (x) (memq x '(gif xbm xpm bmp pict unknown unknown/mask gif/mask))) type "file type symbol") (lambda (x) (memq x '(gif xbm xpm bmp unknown unknown/mask gif/mask))) type "file type symbol")
(let* ([bitmap (make-object mred:bitmap% filename type)]) (let* ([bitmap (make-object mred:bitmap% filename type)])
(lambda (viewport) (lambda (viewport)
(check 'draw-pixmap-posn (check 'draw-pixmap-posn
@ -1155,7 +1155,7 @@
(opt-lambda (filename [kind 'xpm]) (opt-lambda (filename [kind 'xpm])
(check 'save-pixmap (check 'save-pixmap
(andp path-string? (orp relative-path? absolute-path?)) filename "filename" (andp path-string? (orp relative-path? absolute-path?)) filename "filename"
(lambda (x) (memq x '(xpm xbm bmp pict))) kind "file type symbol") (lambda (x) (memq x '(xpm xbm bmp))) kind "file type symbol")
(let ([bm (viewport-bitmap viewport)]) (let ([bm (viewport-bitmap viewport)])
(send bm save-file filename kind))))) (send bm save-file filename kind)))))

View File

@ -508,7 +508,7 @@ The lower left of the string begins at @racket[p].}
@defproc[(((draw-pixmap-posn [file path-string?] @defproc[(((draw-pixmap-posn [file path-string?]
[type (one-of/c 'unknown 'unknown/mask [type (one-of/c 'unknown 'unknown/mask
'gif 'gif/mask 'jpeg 'png 'png/mask 'gif 'gif/mask 'jpeg 'png 'png/mask
'xbm 'xpm 'bmp 'pict) 'xbm 'xpm 'bmp)
'unknown/mask]) 'unknown/mask])
[viewport viewport?]) [viewport viewport?])
[p posn?] [p posn?]
@ -521,8 +521,7 @@ The lower left of the string begins at @racket[p].}
Draws a pixmap into @racket[viewport] with its upper left corner at Draws a pixmap into @racket[viewport] with its upper left corner at
position @racket[p]. If @racket[type] is @racket['unknown] or position @racket[p]. If @racket[type] is @racket['unknown] or
@racket['unknown/mask], then the content of the file is examined to @racket['unknown/mask], then the content of the file is examined to
determine the type. All formats are supported on all platforms, determine the type. The
except @racket['pict] which is only supported under Mac OS X. The
@racket['gif/mask], @racket['png/mask], and @racket['unknown/mask] @racket['gif/mask], @racket['png/mask], and @racket['unknown/mask]
types draw the bitmap with a transparent background if types draw the bitmap with a transparent background if
@racket[filename] refers to a GIF/PNG file with a transparent @racket[filename] refers to a GIF/PNG file with a transparent

View File

@ -437,11 +437,8 @@ This directory contains the following files and sub-directories:
will be listed and accessible.} will be listed and accessible.}
] ]
The server can be run within either Racket or GRacket, but Remember that if you're not using the (default) 3m variant of Racket,
@racketmodname[handin-server/utils] requires GRacket (which means that you don't get memory accounting.
@racket[checker] modules will likely require the server to run under
GRacket). Remember that if you're not using the (default) 3m garbage
collector you don't get memory accounting.
The server currently provides no mechanism for a graceful shutdown, The server currently provides no mechanism for a graceful shutdown,
but terminating the server is no worse than a network outage. (In but terminating the server is no worse than a network outage. (In

View File

@ -358,7 +358,7 @@ The arguments are as follows:
is a thunk. This procedure should invoke the thunk to make the is a thunk. This procedure should invoke the thunk to make the
file, but it may add parameterizations before the final build. For file, but it may add parameterizations before the final build. For
example, the @filepath{readline} installer used to add an example, the @filepath{readline} installer used to add an
AIX-specific compile flag in this step when compiling under AIX.} AIX-specific compile flag in this step when compiling on AIX.}
@item{@scheme[3m-too?]--- a boolean. If true, when the 3m variant is @item{@scheme[3m-too?]--- a boolean. If true, when the 3m variant is
installed, use the equivalent to @exec{raco ctool --xform} to transform installed, use the equivalent to @exec{raco ctool --xform} to transform

View File

@ -45,8 +45,7 @@ images is collected and quantized at once, to produce a single
colortable; a drawback to this approach is that it uses more memory, colortable; a drawback to this approach is that it uses more memory,
and it allows less color variation among animation frames. Even when and it allows less color variation among animation frames. Even when
@scheme[one-at-a-time?] is @scheme[#f], the result of each thunk in @scheme[one-at-a-time?] is @scheme[#f], the result of each thunk in
@scheme[bitmaps] is converted to a byte-string one at a time @scheme[bitmaps] is converted to a byte-string one at a time.
(which helps avoid bitmap-count limits under Windows).
If @scheme[one-at-a-time?] is true, then the bitmaps are quantized and If @scheme[one-at-a-time?] is true, then the bitmaps are quantized and
written to the file one at a time; that is, for each thunk in written to the file one at a time; that is, for each thunk in

View File

@ -86,7 +86,7 @@ The @scheme[filters] argument is one of:
@item{@scheme[#f] --- no patterns and no filter input box.} @item{@scheme[#f] --- no patterns and no filter input box.}
@item{@scheme[#t] --- use a generic @scheme["All"] filter, which is @item{@scheme[#t] --- use a generic @scheme["All"] filter, which is
@scheme["*.*"] under Windows and @scheme["*"] on other @scheme["*.*"] on Windows and @scheme["*"] on other
platforms.} platforms.}
] ]

View File

@ -24,8 +24,8 @@ Truncates or extends the given @scheme[file] so that it is
does not have sufficient privilege to truncate the file, the does not have sufficient privilege to truncate the file, the
@scheme[exn:fail] exception is raised. @scheme[exn:fail] exception is raised.
@bold{WARNING:} under Unix, the implementation assumes that the @bold{WARNING:} on Unix, the implementation assumes that the
system's @scheme[ftruncate] function accepts a @tt{long long} second platform's @tt{ftruncate} function accepts a @tt{long long} second
argument.} argument.}

View File

@ -51,8 +51,8 @@ for @scheme["ollie.cs.rice.edu"] might be @scheme["cs.rice.edu"].}
@defproc[(dns-find-nameserver) (or/c string? false/c)]{ @defproc[(dns-find-nameserver) (or/c string? false/c)]{
Attempts to find the address of a nameserver on the present system. Attempts to find the address of a nameserver on the present system.
Under Unix, this procedure parses @filepath{/etc/resolv.conf} to On Unix and Mac OS X, this procedure parses @filepath{/etc/resolv.conf} to
extract the first nameserver address. Under Windows, it runs extract the first nameserver address. On Windows, it runs
@exec{nslookup.exe}.} @exec{nslookup.exe}.}
@; ---------------------------------------- @; ----------------------------------------

View File

@ -22,14 +22,14 @@ manner. For some platforms and configurations, the
@scheme[separate-window?] parameter determines if the browser creates @scheme[separate-window?] parameter determines if the browser creates
a new window to display the URL or not. a new window to display the URL or not.
Under Windows, @scheme[send-url] normally uses @scheme[shell-execute] On Windows, @scheme[send-url] normally uses @scheme[shell-execute]
to launch a browser. (If the URL appears to contain a fragment, it may to launch a browser. (If the URL appears to contain a fragment, it may
use an intermediate redirecting file due to a bug in IE7.) use an intermediate redirecting file due to a bug in IE7.)
Under Mac OS X, @scheme[send-url] runs @exec{osascript} to start the On Mac OS X, @scheme[send-url] runs @exec{osascript} to start the
user's chosen browser. user's chosen browser.
Under Unix, @scheme[send-url] uses a user-preference, or when none is On Unix, @scheme[send-url] uses a user-preference, or when none is
set, it will look for a known browser. See the description of set, it will look for a known browser. See the description of
@scheme[external-browser] for details. @scheme[external-browser] for details.
@ -76,7 +76,7 @@ old temporary files are still deleted as described above.}
A parameter that can hold a procedure to override how a browser is A parameter that can hold a procedure to override how a browser is
started, or @scheme[#f] to use the default platform-dependent command. started, or @scheme[#f] to use the default platform-dependent command.
Under Unix, the command that is used depends on the On Unix, the command that is used depends on the
@scheme['external-browser] preference. If the preference is unset, @scheme['external-browser] preference. If the preference is unset,
@scheme[send-url] uses the first of the browsers from @scheme[send-url] uses the first of the browsers from
@scheme[unix-browser-list] for which the executable is found. @scheme[unix-browser-list] for which the executable is found.

View File

@ -83,7 +83,7 @@ Before starting a read-eval-print loop, an initialization file is
loaded, if it exists. The file is the same as the file reported by loaded, if it exists. The file is the same as the file reported by
@racket[(find-system-path 'init-file)], but with the characters @racket[(find-system-path 'init-file)], but with the characters
@litchar{racket} in the filename replaced by @litchar{pltr5rs}. For @litchar{racket} in the filename replaced by @litchar{pltr5rs}. For
example, under Unix, the file is @filepath{~/.pltr5rsrc}. example, on Unix, the file is @filepath{~/.pltr5rsrc}.
By default, @exec{plt-r5rs} departs from @|r5rs| conformance in one By default, @exec{plt-r5rs} departs from @|r5rs| conformance in one
crucial way: the names of pre-defined functions cannot be redefined at crucial way: the names of pre-defined functions cannot be redefined at

View File

@ -82,7 +82,7 @@ prompt; otherwise, it displays a prompt as determined by
Adds @racket[(require readline/rep)] to the result of Adds @racket[(require readline/rep)] to the result of
@racket[(find-system-path 'init-file)], which is @racket[(find-system-path 'init-file)], which is
@filepath{~/.racketrc} under Unix. Consequently, @|readline| will be @filepath{~/.racketrc} on Unix. Consequently, @|readline| will be
loaded whenever Racket is started in interactive mode. The loaded whenever Racket is started in interactive mode. The
declaration is added only if it is not already present, as determined declaration is added only if it is not already present, as determined
by @racket[read]ing and checking all top-level expressions in the by @racket[read]ing and checking all top-level expressions in the

View File

@ -9,8 +9,8 @@ A @scheme[gl-context<%>] object represents a context for drawing with
the target drawing context. the target drawing context.
Only canvas @scheme[dc<%>] and @scheme[bitmap-dc%] objects containing Only canvas @scheme[dc<%>] and @scheme[bitmap-dc%] objects containing
a bitmap from @racket[make-gl-bitmap] support OpenGL (always under a bitmap from @racket[make-gl-bitmap] support OpenGL (always on
Windows and Mac OS X, sometimes under X). Normal @racket[dc<%>] Windows and Mac OS X, sometimes on Unix). Normal @racket[dc<%>]
drawing and OpenGL drawing can be mixed in a @scheme[bitmap-dc%], but drawing and OpenGL drawing can be mixed in a @scheme[bitmap-dc%], but
a canvas that uses the @racket['gl] style to support OpenGL does not a canvas that uses the @racket['gl] style to support OpenGL does not
reliably support normal @racket[dc<%>] drawing; use a bitmap if you reliably support normal @racket[dc<%>] drawing; use a bitmap if you

View File

@ -3,13 +3,13 @@
@title[#:tag "libs"]{Platform Dependencies} @title[#:tag "libs"]{Platform Dependencies}
Under Windows and Mac OS X, the Racket distribution includes all On Windows and Mac OS X, the Racket distribution includes all
necessary libraries that are not part of a stock installation of the necessary libraries that are not part of a stock installation of the
operating system, and the libraries are included in any distribution operating system, and the libraries are included in any distribution
created with @exec{raco distribute} (see @secref[#:doc '(lib created with @exec{raco distribute} (see @secref[#:doc '(lib
"scribblings/raco/raco.scrbl") "exe-dist"]). "scribblings/raco/raco.scrbl") "exe-dist"]).
Under Unix, the following system libraries must be installed. Numbers On Unix, the following system libraries must be installed. Numbers
in square brackets indicate a version that is tried first, and if that in square brackets indicate a version that is tried first, and if that
fails, the name without the version is tried. fails, the name without the version is tried.

View File

@ -24,7 +24,7 @@ If @scheme[interactive] is true, the user is given a dialog for
setting printing parameters (see @scheme[get-ps-setup-from-user]); setting printing parameters (see @scheme[get-ps-setup-from-user]);
the resulting configuration is installed as the current the resulting configuration is installed as the current
configuration). If the user chooses to print to a file (the only configuration). If the user chooses to print to a file (the only
possibility under Windows and Mac OS X), another dialog is given to possibility on Windows and Mac OS X), another dialog is given to
select the filename. If the user hits cancel in either of these select the filename. If the user hits cancel in either of these
dialogs, then @method[dc<%> ok?] returns @scheme[#f]. dialogs, then @method[dc<%> ok?] returns @scheme[#f].

View File

@ -34,8 +34,9 @@ filename unless @racket[copy-filename?] is true.
@defmethod[(get-command) @defmethod[(get-command)
string?]{ string?]{
Gets the printer command used to print a file in X. The default is Historically, gets the printer command used to print a file on
@scheme["lpr"]. This value is not used by other platforms. Unix. The default is @scheme["lpr"]. This value is not currently used
by any platforms.
} }
@ -164,8 +165,8 @@ The translation is not scaled by the numbers returned from
@defmethod[(set-command [command string?]) @defmethod[(set-command [command string?])
void?]{ void?]{
Sets the printer command used to print a file under X. See Historically, sets the printer command that was used to print a file
@method[ps-setup% get-command]. on Unix. See @method[ps-setup% get-command].
} }
@ -227,7 +228,7 @@ The margins are in unscaled @scheme[post-script-dc%] units, which
Sets the printing mode controlling where output is sent. See Sets the printing mode controlling where output is sent. See
@method[ps-setup% get-mode]. @method[ps-setup% get-mode].
Under Windows and Mac OS X, if @scheme['preview] or @scheme['printer] On Windows and Mac OS X, if @scheme['preview] or @scheme['printer]
is provided, @|MismatchExn|. is provided, @|MismatchExn|.
} }
@ -250,7 +251,7 @@ Sets the name of the current paper type. See @method[ps-setup%
@defmethod[(set-preview-command [command string?]) @defmethod[(set-preview-command [command string?])
void?]{ void?]{
Sets the command used to view a PostScript file under X. See Sets the command used to view a PostScript file on Unix. See
@method[ps-setup% get-preview-command]. @method[ps-setup% get-preview-command].
} }

View File

@ -49,10 +49,10 @@ original file's name:
@itemize[ @itemize[
@item{Under Unix and Mac OS X, a @filepath{~} is added to the end of @item{On Unix and Mac OS X, a @filepath{~} is added to the end of
the file's name.} the file's name.}
@item{Under Windows, the file's extension is replaced with @item{On Windows, the file's extension is replaced with
@filepath{.bak}.} @filepath{.bak}.}
] ]
@ -67,13 +67,13 @@ autosave file's name is generated from the original file's name:
@itemize[ @itemize[
@item{Under Unix and Mac OS X, a @filepath{#} is added to the start @item{On Unix and Mac OS X, a @filepath{#} is added to the start
and end of the file's name, then a number is added after the and end of the file's name, then a number is added after the
ending @filepath{#}, and then one more @filepath{#} is appended ending @filepath{#}, and then one more @filepath{#} is appended
after the number. The number is selected to make the autosave after the number. The number is selected to make the autosave
filename unique.} filename unique.}
@item{Under Windows, the file's extension is replaced with a number @item{On Windows, the file's extension is replaced with a number
to make the autosave filename unique.} to make the autosave filename unique.}
] ]
@ -96,27 +96,27 @@ depends on the platform and user:
@itemize[ @itemize[
@item{Under Unix, preferences are stored in a @item{On Unix, preferences are stored in a
@indexed-file{.racket} subdirectory in the user's home @indexed-file{.racket} subdirectory in the user's home
directory, in a file @indexed-file{racket-prefs.rktd}.} directory, in a file @indexed-file{racket-prefs.rktd}.}
@item{Under Windows, preferences are stored in a file @item{On Windows, preferences are stored in a file
@indexed-file{racket-prefs.rktd} in a sub-directory @indexed-file{racket-prefs.rktd} in a sub-directory
@indexed-file{Racket} in the user's application-data folder as @indexed-file{Racket} in the user's application-data folder as
specified by the Windows registry; the application-data folder is specified by the Windows registry; the application-data folder is
usually @indexed-file{Application Data} in the user's profile usually @indexed-file{Application Data} in the user's profile
directory, and that directory is usually hidden in the Windows GUI.} directory, and that directory is usually hidden in the Windows GUI.}
@item{Under Mac OS X, preferences are stored in @item{On Mac OS X, preferences are stored in
@indexed-file{org.racket-lang.prefs.rktd} in the user's preferences @indexed-file{org.racket-lang.prefs.rktd} in the user's preferences
folder.} folder.}
] ]
A lock file is used while modifying the preferences file, and it is A lock file is used while modifying the preferences file, and it is
created in the same directory as the preferences file. Under Windows, created in the same directory as the preferences file. On Windows,
the lock file is named @indexed-file{_LOCKracket-prefs.rktd}; under Unix, the lock file is named @indexed-file{_LOCKracket-prefs.rktd}; on Unix,
it is @indexed-file{.LOCK.racket-prefs.rktd}; under Mac OS X, it is it is @indexed-file{.LOCK.racket-prefs.rktd}; on Mac OS X, it is
@indexed-file{.LOCK.org.racket-lang.prefs.rktd}. @indexed-file{.LOCK.org.racket-lang.prefs.rktd}.
If the user-specific preferences file does not exist, and the file If the user-specific preferences file does not exist, and the file

View File

@ -118,7 +118,7 @@ annotations:
the context the macro is used in. the context the macro is used in.
@index['("alpha renaming")]{Additionally}, right-clicking (or @index['("alpha renaming")]{Additionally}, right-clicking (or
Control-clicking under Mac OS X) on a variable activates a Control-clicking on Mac OS X) on a variable activates a
pop-up menu that lets you jump from binding location to bound pop-up menu that lets you jump from binding location to bound
location and vice versa, @as-index{@"\u03B1"-rename} the location and vice versa, @as-index{@"\u03B1"-rename} the
variable, or tack the arrows so they do not disappear.} variable, or tack the arrows so they do not disappear.}
@ -130,7 +130,7 @@ annotations:
expression.} expression.}
@item{@bold{Require Annotations:} Right-clicking (or @item{@bold{Require Annotations:} Right-clicking (or
Control-clicking under Mac OS X) on the argument to Control-clicking on Mac OS X) on the argument to
@racket[require] activates a pop-up menu that lets you open the @racket[require] activates a pop-up menu that lets you open the
file that contains the @racket[require]d module. file that contains the @racket[require]d module.
@ -322,7 +322,7 @@ separate tabs} causes DrRacket to open files in new tabs in the
frontmost window, rather than opening a new window for the file. frontmost window, rather than opening a new window for the file.
The key bindings Control-Pageup and Control-Pagedown move between The key bindings Control-Pageup and Control-Pagedown move between
tabs. Under Mac OS X, Command-Shift-Left and Command-Shift-Right also tabs. On Mac OS X, Command-Shift-Left and Command-Shift-Right also
move between tabs. move between tabs.
@; ---------------------------------------------------------------------- @; ----------------------------------------------------------------------

View File

@ -38,7 +38,7 @@ key. Depending on your keyboard, Meta may be called ``Left,''
``Right,'' or have a diamond symbol, but it's usually on the bottom ``Right,'' or have a diamond symbol, but it's usually on the bottom
row next to the space bar. M-@nonterm{key} can also be performed as a row next to the space bar. M-@nonterm{key} can also be performed as a
two-character sequence: first, strike and release the Escape key, then two-character sequence: first, strike and release the Escape key, then
strike @nonterm{key}. Under Windows and Mac OS X, Meta is only strike @nonterm{key}. On Windows and Mac OS X, Meta is only
available through the Escape key. available through the Escape key.
DEL is the Delete key. DEL is the Delete key.
@ -49,7 +49,7 @@ On most keyboards, ``<'' and ``>'' are shifted characters. So, to
get M->, you actually have to type Meta-Shift->. That is, press and get M->, you actually have to type Meta-Shift->. That is, press and
hold down both the Meta and Shift keys, and then strike ``>''. hold down both the Meta and Shift keys, and then strike ``>''.
Under Windows, some of these keybindings are actually standard menu On Windows, some of these keybindings are actually standard menu
items. Those keybindings will behave according to the menus, unless items. Those keybindings will behave according to the menus, unless
the @onscreen{Enable keybindings in menus} preference is unchecked. the @onscreen{Enable keybindings in menus} preference is unchecked.

View File

@ -81,10 +81,10 @@
search are displayed in a separate window.} search are displayed in a separate window.}
@item{@defmenuitem{Close} Closes this DrRacket window. If this window @item{@defmenuitem{Close} Closes this DrRacket window. If this window
is the only open DrRacket window, then DrRacket quits, except under is the only open DrRacket window, then DrRacket quits, except on
Mac OS X.} Mac OS X.}
@item{{@onscreen{Quit} or @onscreen{Exit}} Exits DrRacket. (Under Mac @item{{@onscreen{Quit} or @onscreen{Exit}} Exits DrRacket. (On Mac
OS X, this menu item is in the Apple menu.)} OS X, this menu item is in the Apple menu.)}
] ]
@ -167,7 +167,7 @@ case-sensitive and case-insensitive search.}
insertion point, using the manuals as a source of completions.} insertion point, using the manuals as a source of completions.}
@item{@defmenuitem{Preferences...} Opens the preferences dialog. See @item{@defmenuitem{Preferences...} Opens the preferences dialog. See
@secref["prefs-explanation"]. (Under Mac OS X, this menu item is in @secref["prefs-explanation"]. (On Mac OS X, this menu item is in
the Apple menu.)} ] the Apple menu.)} ]
@; ---------------------------------------- @; ----------------------------------------

View File

@ -71,7 +71,7 @@ The @onscreen{Editing} panel consists of several sub-panels:
@item{@PrefItem{Treat command key as meta} --- If checked, @item{@PrefItem{Treat command key as meta} --- If checked,
DrRacket will use the command key for some Emacs-like DrRacket will use the command key for some Emacs-like
keybindings, instead of using it for menu shortcuts. This keybindings, instead of using it for menu shortcuts. This
option is only available under Mac OS X.} option is only available on Mac OS X.}
@item{@PrefItem{Color syntax interactively} --- If checked, @item{@PrefItem{Color syntax interactively} --- If checked,
DrRacket colors your syntax as you type.} DrRacket colors your syntax as you type.}
@item{@PrefItem{Search using anchors} --- If checked, DrRacket's @item{@PrefItem{Search using anchors} --- If checked, DrRacket's

View File

@ -460,7 +460,7 @@ accessible through @scheme[saved-errno]. If @scheme[save-errno] is
@scheme['windows], then the value of @scheme['windows], then the value of
@as-index{@tt{GetLastError}}@tt{()} is saved for later use via @as-index{@tt{GetLastError}}@tt{()} is saved for later use via
@scheme[saved-errno]; the @scheme['windows] option is available only @scheme[saved-errno]; the @scheme['windows] option is available only
under Windows (on other platforms @scheme[saved-errno] will return on Windows (on other platforms @scheme[saved-errno] will return
0). If @scheme[save-errno] is @scheme[#f], no error value is saved 0). If @scheme[save-errno] is @scheme[#f], no error value is saved
automatically. The error-recording support provided by automatically. The error-recording support provided by
@scheme[save-errno] is needed because the Racket runtime system @scheme[save-errno] is needed because the Racket runtime system

View File

@ -32,9 +32,9 @@ Creates a button with a string label, bitmap label, or both.
specifies the location of the image relative to the text on the button. specifies the location of the image relative to the text on the button.
If @litchar{&} occurs in @scheme[label] (when @scheme[label] includes a If @litchar{&} occurs in @scheme[label] (when @scheme[label] includes a
string), it is specially parsed; under Windows and X, the character string), it is specially parsed; on Windows and Unix, the character
following @litchar{&} is underlined in the displayed control to following @litchar{&} is underlined in the displayed control to
indicate a keyboard mnemonic. (Under Mac OS X, mnemonic underlines are indicate a keyboard mnemonic. (On Mac OS X, mnemonic underlines are
not shown.) The underlined mnemonic character must be a letter or a not shown.) The underlined mnemonic character must be a letter or a
digit. The user can effectively click the button by typing the digit. The user can effectively click the button by typing the
mnemonic when the control's top-level-window contains the keyboard mnemonic when the control's top-level-window contains the keyboard
@ -43,12 +43,12 @@ keyboard focus is currently in a control that handles normal
alphanumeric input. The @litchar{&} itself is removed from alphanumeric input. The @litchar{&} itself is removed from
@scheme[label] before it is displayed for the control; a @litchar{&&} @scheme[label] before it is displayed for the control; a @litchar{&&}
in @scheme[label] is converted to @litchar{&} (with no mnemonic in @scheme[label] is converted to @litchar{&} (with no mnemonic
underlining). Under Mac OS X, a parenthesized mnemonic character is underlining). On Mac OS X, a parenthesized mnemonic character is
removed (along with any surrounding space) before the label is removed (along with any surrounding space) before the label is
displayed, since a parenthesized mnemonic is often used for non-Roman displayed, since a parenthesized mnemonic is often used for non-Roman
languages. Finally, any text after a tab character is removed on all languages. Finally, any text after a tab character is removed on all
platforms. Mnemonic keyboard events are handled by platforms. Mnemonic keyboard events are handled by
@method[top-level-window<%> on-traverse-char] (but not under Mac OS @method[top-level-window<%> on-traverse-char] (but not on Mac OS
X). X).
The @scheme[callback] procedure is called (with the event type The @scheme[callback] procedure is called (with the event type

View File

@ -275,9 +275,9 @@ If the canvas was created with the @indexed-scheme['transparent] style,
@defmethod[(set-resize-corner [on? any/c]) @defmethod[(set-resize-corner [on? any/c])
void?]{ void?]{
Under Mac OS X, enables or disables space for a resize tab at the On Mac OS X, enables or disables space for a resize tab at the
canvas's lower-right corner when only one scrollbar is visible. This canvas's lower-right corner when only one scrollbar is visible. This
method has no effect under Windows or X, and it has no effect when method has no effect on Windows or Unix, and it has no effect when
both or no scrollbars are visible. The resize corner is disabled by both or no scrollbars are visible. The resize corner is disabled by
default, but it can be enabled when a canvas is created with the default, but it can be enabled when a canvas is created with the
@scheme['resize-corner] style. @scheme['resize-corner] style.

View File

@ -24,7 +24,7 @@ Creates a clipboard client that supports no data formats.
Adds a new data format name to the list supported by the clipboard Adds a new data format name to the list supported by the clipboard
client. client.
The @scheme[format] string is typically four capital letters. (Under The @scheme[format] string is typically four capital letters. (On
Mac OS X, only four characters for @scheme[format] are ever used.) Mac OS X, only four characters for @scheme[format] are ever used.)
For example, @scheme["TEXT"] is the name of the UTF-8-encoded string For example, @scheme["TEXT"] is the name of the UTF-8-encoded string
format. New format names can be used to communicate application- and format. New format names can be used to communicate application- and

View File

@ -6,15 +6,15 @@
A single @scheme[clipboard<%>] object, @indexed-scheme[the-clipboard], A single @scheme[clipboard<%>] object, @indexed-scheme[the-clipboard],
manages the content of the system-wide clipboard for cut and paste. manages the content of the system-wide clipboard for cut and paste.
Under X, a second @scheme[clipboard<%>] object, On Unix, a second @scheme[clipboard<%>] object,
@indexed-scheme[the-x-selection-clipboard], manages the content of the @indexed-scheme[the-x-selection-clipboard], manages the content of the
system-wide X selection. If the @ResourceFirst{selectionAsClipboard} system-wide X11 selection. If the @ResourceFirst{selectionAsClipboard}
preference (see @|mrprefsdiscuss|) is set to a non-zero true value, preference (see @|mrprefsdiscuss|) is set to a non-zero true value,
however, then @scheme[the-clipboard] is always the same as however, then @scheme[the-clipboard] is always the same as
@scheme[the-x-selection-clipboard], and the system-wide X clipboard @scheme[the-x-selection-clipboard], and the system-wide X11 clipboard
is not used. is not used.
Under Windows and Mac OS X, @scheme[the-x-selection-clipboard] is On Windows and Mac OS X, @scheme[the-x-selection-clipboard] is
always the same as @scheme[the-clipboard]. always the same as @scheme[the-clipboard].
Data can be entered into a clipboard in one of two ways: by setting Data can be entered into a clipboard in one of two ways: by setting

View File

@ -32,8 +32,8 @@ title bar. If the dialog's label is changed (see
@method[window<%> set-label]), the title bar is updated. @method[window<%> set-label]), the title bar is updated.
The @scheme[parent] argument can be @scheme[#f] or an existing The @scheme[parent] argument can be @scheme[#f] or an existing
frame. Under Windows, if @scheme[parent] is an existing frame, the frame. On Windows, if @scheme[parent] is an existing frame, the
new dialog is always on top of its parent. Under Windows and X, a new dialog is always on top of its parent. On Windows and Unix, a
dialog is iconized when its parent is iconized. dialog is iconized when its parent is iconized.
If @scheme[parent] is @scheme[#f], then the eventspace for the new If @scheme[parent] is @scheme[#f], then the eventspace for the new
@ -44,7 +44,7 @@ If @scheme[parent] is @scheme[#f], then the eventspace for the new
If the @scheme[width] or @scheme[height] argument is not @scheme[#f], If the @scheme[width] or @scheme[height] argument is not @scheme[#f],
it specifies an initial size for the dialog (in pixels) assuming that it specifies an initial size for the dialog (in pixels) assuming that
it is larger than the minimum size, otherwise the minimum size is it is larger than the minimum size, otherwise the minimum size is
used. Under Windows and Mac OS X (and with some X window managers) used. On Windows and Mac OS X (and with some Unix window managers)
dialogs are not resizeable. dialogs are not resizeable.
If the @scheme[x] or @scheme[y] argument is not @scheme[#f], it If the @scheme[x] or @scheme[y] argument is not @scheme[#f], it

View File

@ -45,7 +45,7 @@ Under Windows, if @scheme[extension] is not @scheme[#f], the returned path
The @scheme[style] list can contain @scheme['common], a The @scheme[style] list can contain @scheme['common], a
platform-independent version of the dialog is used instead of a platform-independent version of the dialog is used instead of a
native dialog. Under Mac OS X, if the @scheme[style] list native dialog. On Mac OS X, if the @scheme[style] list
contains @scheme['packages], a user is allowed to select a package contains @scheme['packages], a user is allowed to select a package
directory, which is a directory with a special suffix (e.g., directory, which is a directory with a special suffix (e.g.,
``.app'') that the Finder normally displays like a file. If the list ``.app'') that the Finder normally displays like a file. If the list
@ -53,14 +53,14 @@ The @scheme[style] list can contain @scheme['common], a
within a package directory. If the list contains both within a package directory. If the list contains both
@scheme['packages] and @scheme['enter-packages], the former is ignored. @scheme['packages] and @scheme['enter-packages], the former is ignored.
Under Windows and X, @scheme[filters] determines a set of filters from On Windows and Unix, @scheme[filters] determines a set of filters from
which the user can choose in the dialog. Each element of the which the user can choose in the dialog. Each element of the
@scheme[filters] list contains two strings: a description of the filter @scheme[filters] list contains two strings: a description of the filter
as seen by the user, and a filter pattern matched against file names. as seen by the user, and a filter pattern matched against file names.
Pattern strings can be a simple ``glob'' pattern, or a number of glob Pattern strings can be a simple ``glob'' pattern, or a number of glob
patterns separated by a @litchar[";"] character. patterns separated by a @litchar[";"] character.
Under X, a @racket["*.*"] pattern is implicitly replaced with @racket["*"]. On Unix, a @racket["*.*"] pattern is implicitly replaced with @racket["*"].
Under Mac OS X, suffix names are extracted from all globs that match a On Mac OS X, suffix names are extracted from all globs that match a
fixed suffix (e.g., two suffixes of @racket["foo"] and @racket["bar"] fixed suffix (e.g., two suffixes of @racket["foo"] and @racket["bar"]
are extracted from a @racket["*.foo;*.bar;*.baz*"] pattern), and files are extracted from a @racket["*.foo;*.bar;*.baz*"] pattern), and files
that have any of these suffixes in any filter are selectable; a that have any of these suffixes in any filter are selectable; a
@ -113,7 +113,7 @@ If @scheme[directory] is not @scheme[#f], it is used as the starting
when appropriate, and it should @italic{not} contain a directory path when appropriate, and it should @italic{not} contain a directory path
prefix. prefix.
Under Windows, if @scheme[extension] is not @scheme[#f], the returned path On Windows, if @scheme[extension] is not @scheme[#f], the returned path
will get a default extension if the user does not supply one. If will get a default extension if the user does not supply one. If
@scheme[extension] is the empty string, then the extension is derived @scheme[extension] is the empty string, then the extension is derived
from the user's @scheme[filters] choice if the corresponding pattern is from the user's @scheme[filters] choice if the corresponding pattern is
@ -127,7 +127,7 @@ Under Windows, if @scheme[extension] is not @scheme[#f], the returned path
is @scheme[(string-append "*." extension)], then the result pathname is guaranteed is @scheme[(string-append "*." extension)], then the result pathname is guaranteed
to have an extension mapping @scheme[extension]. to have an extension mapping @scheme[extension].
Under Mac OS X 10.5 and later, if @scheme[extension] is not On Mac OS X 10.5 and later, if @scheme[extension] is not
@scheme[#f] or @racket[""], the returned path will get a default extension if the @scheme[#f] or @racket[""], the returned path will get a default extension if the
user does not supply one. If @scheme[filters] contains as user does not supply one. If @scheme[filters] contains as
@scheme["*.*"] pattern, then the user can supply any extension that @scheme["*.*"] pattern, then the user can supply any extension that
@ -139,13 +139,13 @@ Under Mac OS X 10.5 and later, if @scheme[extension] is not
"*." extension)], then the result pathname is guaranteed to have an "*." extension)], then the result pathname is guaranteed to have an
extension mapping @scheme[extension]. extension mapping @scheme[extension].
Under Mac OS X versions before 10.5, the returned path will get a On Mac OS X versions before 10.5, the returned path will get a
default extension only if @scheme[extension] is not @scheme[#f], default extension only if @scheme[extension] is not @scheme[#f],
@scheme[extension] is not @racket[""], and @scheme[extension] is not @racket[""], and
@scheme[filters] contains only @scheme[(string-append "*." @scheme[filters] contains only @scheme[(string-append "*."
extension)]. extension)].
Under X, @racket[extension] is ignored, and @racket[filters] is used On Unix, @racket[extension] is ignored, and @racket[filters] is used
to filter the visible list of files as in @racket[get-file]. to filter the visible list of files as in @racket[get-file].
The @scheme[style] list is treated as for @scheme[get-file]. The @scheme[style] list is treated as for @scheme[get-file].
@ -174,7 +174,7 @@ If @scheme[directory] is not @scheme[#f], it is used on some platforms as
The @scheme[style] argument is treated as for The @scheme[style] argument is treated as for
@scheme[get-file], except that only @scheme['common] or @scheme['enter-packages] can be @scheme[get-file], except that only @scheme['common] or @scheme['enter-packages] can be
specified. The latter specified. The latter
matters only under Mac OS X, where @scheme['enter-packages] matters only on Mac OS X, where @scheme['enter-packages]
enables the user to select package directory or a directory within a enables the user to select package directory or a directory within a
package. A package is a directory with a special suffix (e.g., package. A package is a directory with a special suffix (e.g.,
``.app'') that the Finder normally displays like a file. ``.app'') that the Finder normally displays like a file.
@ -273,7 +273,7 @@ If @scheme[style] does not include @scheme['number-order], the order of
@item{Button 1 is the normal action, and it is usually the default @item{Button 1 is the normal action, and it is usually the default
button. For example, if the dialog has an @onscreen{OK} button, it is button. For example, if the dialog has an @onscreen{OK} button, it is
this one. Under Windows, this button is leftmost; under X and Mac OS this one. On Windows, this button is leftmost; on Unix and Mac OS
X, it is rightmost. (See also X, it is rightmost. (See also
@scheme[system-position-ok-before-cancel?].) Use this button for @scheme[system-position-ok-before-cancel?].) Use this button for
dialogs that contain only one button.} dialogs that contain only one button.}
@ -282,7 +282,7 @@ If @scheme[style] does not include @scheme['number-order], the order of
@onscreen{Cancel} (even when the default action is to cancel, such as @onscreen{Cancel} (even when the default action is to cancel, such as
when confirming a file replacement).} when confirming a file replacement).}
@item{Button 3 tends to be separated from the other two (under @item{Button 3 tends to be separated from the other two (on
Mac OS X, it is left-aligned in the dialog). Use this button only Mac OS X, it is left-aligned in the dialog). Use this button only
for three-button dialogs.} for three-button dialogs.}

View File

@ -134,7 +134,7 @@ The initializer takes a keymap object and returns nothing. The default
initializer chains the given keymap to an internal keymap that initializer chains the given keymap to an internal keymap that
implements standard text editor keyboard and mouse bindings for cut, implements standard text editor keyboard and mouse bindings for cut,
copy, paste, undo, and select-all. The right mouse button is mapped copy, paste, undo, and select-all. The right mouse button is mapped
to popup an edit menu when the button is released. Under X, to popup an edit menu when the button is released. On Unix,
start-of-line (Ctl-A) and end-of-line (Ctl-E) are also mapped. start-of-line (Ctl-A) and end-of-line (Ctl-E) are also mapped.
} }
@ -142,13 +142,11 @@ The initializer takes a keymap object and returns nothing. The default
@defproc[(editor-set-x-selection-mode [on any/c]) @defproc[(editor-set-x-selection-mode [on any/c])
void?]{ void?]{
Under X Windows, editor selections conform to the X Windows selection On Unix, editor selections conform to the X11 Windows selection
conventions instead of a clipboard-based convention. If @racket[on] is conventions. If @racket[on] is
@racket[#f], the behavior is switched to the clipboard-based convention @racket[#f], the behavior is switched exclusively to the clipboard-based convention
(where copy must be explicitly requested before a paste). (where copy must be explicitly requested before a paste).
} }
@defproc[(get-the-editor-data-class-list) @defproc[(get-the-editor-data-class-list)
@ -174,7 +172,7 @@ Gets the snip class list instance for the current eventspace.
[(map-command-as-meta-key) [(map-command-as-meta-key)
boolean?])]{ boolean?])]{
Determines the interpretation of @litchar{m:} for a @racket[keymap%] Determines the interpretation of @litchar{m:} for a @racket[keymap%]
mapping under Mac OS X. See also mapping on Mac OS X. See also
@xmethod[keymap% map-function]. @xmethod[keymap% map-function].
@ -182,7 +180,7 @@ First case:
If @racket[on?] is @racket[#t], @litchar{m:} corresponds to the Command key. If If @racket[on?] is @racket[#t], @litchar{m:} corresponds to the Command key. If
@racket[on?] is @racket[#f], then @litchar{m:} corresponds to no key under Mac OS @racket[on?] is @racket[#f], then @litchar{m:} corresponds to no key on Mac OS
X. X.

View File

@ -1087,7 +1087,7 @@ extension and/or contents; when saving a file, this is the same as
@item{@scheme['text] --- read/write a text file (@scheme[text%] only); @item{@scheme['text] --- read/write a text file (@scheme[text%] only);
file writing uses the platform's text-mode conventions file writing uses the platform's text-mode conventions
(e.g., newlines as return--linefeed combinations under Windows) when (e.g., newlines as return--linefeed combinations on Windows) when
not specifically disabled via @method[editor<%> use-file-text-mode]} not specifically disabled via @method[editor<%> use-file-text-mode]}
@item{@scheme['text-force-cr] --- read/write a text file @item{@scheme['text-force-cr] --- read/write a text file
@ -1673,8 +1673,8 @@ See also @method[editor<%> get-paste-text-only].
@defmethod[(paste-x-selection [time exact-integer? 0]) @defmethod[(paste-x-selection [time exact-integer? 0])
void?]{ void?]{
Like @method[editor<%> paste], but under X, uses the X selection Like @method[editor<%> paste], but on Unix, uses the X11 selection
instead of the X clipboard. instead of the clipboard.
See @|timediscuss| for a discussion of the @scheme[time] argument. If See @|timediscuss| for a discussion of the @scheme[time] argument. If
@scheme[time] is outside the platform-specific range of times, @scheme[time] is outside the platform-specific range of times,
@ -1978,7 +1978,7 @@ The filename and format used to save the file can be retrieved with
See also @method[editor<%> on-save-file], @method[editor<%> See also @method[editor<%> on-save-file], @method[editor<%>
after-save-file], and @method[editor<%> can-save-file?]. after-save-file], and @method[editor<%> can-save-file?].
Under Mac OS X, the file's type signature is set to @scheme["TEXT"] On Mac OS X, the file's type signature is set to @scheme["TEXT"]
for a text-format file or @scheme["WXME"] for a standard-format for a text-format file or @scheme["WXME"] for a standard-format
(binary) file. (binary) file.

View File

@ -503,7 +503,7 @@ The editor file format provides for adding extra global data in
conflict with any other header/footer record name in use, and no one conflict with any other header/footer record name in use, and no one
else should use these names. All names beginning with ``wx'' are else should use these names. All names beginning with ``wx'' are
reserved for internal use. By tagging extra header and footer records reserved for internal use. By tagging extra header and footer records
with a unique name, the file can be safely loaded under a system that with a unique name, the file can be safely loaded in an installation that
does not support the records.} does not support the records.}
@item{Derive a new class from the @scheme[text%] or @item{Derive a new class from the @scheme[text%] or
@ -577,8 +577,8 @@ Text can be extracted from an editor in either of two forms:
mapped to themselves, but more complicated @techlink{item}s can be mapped to themselves, but more complicated @techlink{item}s can be
represented with a useful string determined by the @techlink{item}'s represented with a useful string determined by the @techlink{item}'s
snip. Newlines are mapped to platform-specific character sequences snip. Newlines are mapped to platform-specific character sequences
(linefeed under X, carriage return under Mac OS X, and (linefeed on Unix and Mac OS X, and
linefeed-carriage return under Windows). This form is called linefeed--carriage return on Windows). This form is called
``flattened'' because the editor's @techlink{item}s have been reduced ``flattened'' because the editor's @techlink{item}s have been reduced
to a linear sequence of characters.} to a linear sequence of characters.}
@ -637,7 +637,7 @@ Methods of @scheme[editor<%>] that use the clipboard --- including
paste], and @method[editor<%> do-edit-operation] --- consume a time paste], and @method[editor<%> do-edit-operation] --- consume a time
stamp argument. This time stamp is generally extracted from the stamp argument. This time stamp is generally extracted from the
@scheme[mouse-event%] or @scheme[key-event%] object that triggered @scheme[mouse-event%] or @scheme[key-event%] object that triggered
the clipboard action. X uses the time stamp to synchronize clipboard the clipboard action. Unix uses the time stamp to synchronize clipboard
operations among the clipboard clients. operations among the clipboard clients.
All instances of @scheme[event%] include a time stamp, which can be All instances of @scheme[event%] include a time stamp, which can be
@ -645,7 +645,7 @@ All instances of @scheme[event%] include a time stamp, which can be
If the time stamp is 0, it defaults to the current time. Using 0 as the If the time stamp is 0, it defaults to the current time. Using 0 as the
time stamp almost always works fine, but it is considered bad manners time stamp almost always works fine, but it is considered bad manners
under X. on Unix.
@section[#:tag "editorclickback"]{Clickbacks} @section[#:tag "editorclickback"]{Clickbacks}

View File

@ -63,7 +63,7 @@ result event is ready when @racket[(yield)] for the eventspace
@defproc[(check-for-break) @defproc[(check-for-break)
boolean?]{ boolean?]{
Inspects the event queue of the current eventspace, searching for a Inspects the event queue of the current eventspace, searching for a
Shift-Ctl-C (X, Windows) or Cmd-. (Mac OS X) key combination. Returns Shift-Ctl-C (Unix, Windows) or Cmd-. (Mac OS X) key combination. Returns
@scheme[#t] if such an event was found (and the event is dequeued) or @scheme[#t] if such an event was found (and the event is dequeued) or
@scheme[#f] otherwise. @scheme[#f] otherwise.

View File

@ -7,8 +7,8 @@
This font is the default for @scheme[popup-menu%] objects. This font is the default for @scheme[popup-menu%] objects.
Under Mac OS X, this font is slightly larger than On Mac OS X, this font is slightly larger than
@scheme[normal-control-font]. Under Windows and X, it is the same @scheme[normal-control-font]. On Windows and Unix, it is the same
size as @scheme[normal-control-font]. size as @scheme[normal-control-font].
} }
@ -27,9 +27,9 @@ This font is the default for @scheme[group-box-panel%] objects, and it is
a suitable for controls in a floating window and other contexts that a suitable for controls in a floating window and other contexts that
need smaller controls. need smaller controls.
Under Windows, this font is the same size as On Windows, this font is the same size as
@scheme[normal-control-font], since the Windows control font is @scheme[normal-control-font], since the Windows control font is
already relatively small. Under X and Mac OS X, this font is slightly already relatively small. On Unix and Mac OS X, this font is slightly
smaller than @scheme[normal-control-font]. smaller than @scheme[normal-control-font].
@ -47,9 +47,9 @@ This font is for tiny controls, and it is smaller than
This font is the default for @scheme[list-box%] objects (but not This font is the default for @scheme[list-box%] objects (but not
list box labels, which use @scheme[normal-control-font]). list box labels, which use @scheme[normal-control-font]).
Under Mac OS X, this font is slightly smaller than On Mac OS X, this font is slightly smaller than
@scheme[normal-control-font], and slightly larger than @scheme[normal-control-font], and slightly larger than
@scheme[small-control-font]. Under Windows and X, it is the same size @scheme[small-control-font]. On Windows and Unix, it is the same size
as @scheme[normal-control-font]. as @scheme[normal-control-font].
} }

View File

@ -7,7 +7,7 @@ A frame is a top-level container window. It has a title bar (which
displays the frame's label), an optional menu bar, and an optional displays the frame's label), an optional menu bar, and an optional
status line. status line.
Under Windows, both Multiple Document Interface (MDI) and Single On Windows, both Multiple Document Interface (MDI) and Single
Document Interface (SDI) frames are supported. Document Interface (SDI) frames are supported.
@defconstructor[([label label-string?] @defconstructor[([label label-string?]
@ -36,10 +36,10 @@ bar. If the frame's label is changed (see @method[window<%>
set-label]), the title bar is updated. set-label]), the title bar is updated.
The @scheme[parent] argument can be @scheme[#f] or an existing The @scheme[parent] argument can be @scheme[#f] or an existing
frame. Under Windows, if @scheme[parent] is an existing frame, frame. On Windows, if @scheme[parent] is an existing frame,
the new frame is always on top of its parent. Also, the the new frame is always on top of its parent. Also, the
@scheme[parent] frame may be an MDI parent frame from a new MDI @scheme[parent] frame may be an MDI parent frame from a new MDI
child frame. Under Windows and X (for many window managers), a child frame. On Windows and Unix (for many window managers), a
frame is iconized when its parent is iconized. frame is iconized when its parent is iconized.
If @scheme[parent] is @scheme[#f], then the eventspace for the If @scheme[parent] is @scheme[#f], then the eventspace for the
@ -63,11 +63,11 @@ some platforms:
@itemize[ @itemize[
@item{@scheme['no-resize-border] --- omits the resizeable border @item{@scheme['no-resize-border] --- omits the resizeable border
around the window (Windows, X) or grow box in the bottom right around the window (Windows, Unix) or grow box in the bottom right
corner (Mac OS X)} corner (Mac OS X)}
@item{@scheme['no-caption] --- omits the title bar for the frame @item{@scheme['no-caption] --- omits the title bar for the frame
(Windows, Mac OS X, X)} (Windows, Mac OS X, Unix)}
@item{@scheme['no-system-menu] --- omits the system menu @item{@scheme['no-system-menu] --- omits the system menu
(Windows)} (Windows)}
@ -85,14 +85,14 @@ some platforms:
a call to @method[frame% on-toolbar-button-click]} a call to @method[frame% on-toolbar-button-click]}
@item{@scheme['hide-menu-bar] --- hides the menu bar and dock when @item{@scheme['hide-menu-bar] --- hides the menu bar and dock when
the frame is active (Mac OS X) or asks the window manager to make the frame is active (Mac OS X) or asks the window manager to make
the frame fullscreen (X)} the frame fullscreen (Unix)}
@item{@scheme['float] --- causes the frame to stay in front of all @item{@scheme['float] --- causes the frame to stay in front of all
other non-floating windows (Windows, Mac OS X, X); under Mac OS X, a floating frame other non-floating windows (Windows, Mac OS X, Unix); on Mac OS X, a floating frame
shares the focus with an active non-floating frame; when this style shares the focus with an active non-floating frame; when this style
is combined with @scheme['no-caption], then showing the frame does is combined with @scheme['no-caption], then showing the frame does
not cause the keyboard focus to shift to the window, and under X, not cause the keyboard focus to shift to the window, and on Unix,
clicking the frame does not move the focus; under Windows, a floating clicking the frame does not move the focus; on Windows, a floating
frame has no taskbar button} frame has no taskbar button}
@item{@scheme['metal] --- ignored (formerly supported for Mac OS X)} @item{@scheme['metal] --- ignored (formerly supported for Mac OS X)}
@ -161,8 +161,8 @@ otherwise.
@defmethod[(is-maximized?) @defmethod[(is-maximized?)
boolean?]{ boolean?]{
Under Windows and Mac OS X, returns @scheme[#t] if the frame is On Windows and Mac OS X, returns @scheme[#t] if the frame is
maximized, @scheme[#f] otherwise. Under X, the result is always maximized, @scheme[#f] otherwise. On Unix, the result is always
@scheme[#f]. @scheme[#f].
} }
@ -171,8 +171,8 @@ maximized, @scheme[#f] otherwise. Under X, the result is always
void?]{ void?]{
@methspec{ @methspec{
Maximizes or restores the frame under Windows and Mac OS X; the Maximizes or restores the frame on Windows and Mac OS X; the
frame's show state is not affected. Under Windows, an iconized frame frame's show state is not affected. On Windows, an iconized frame
cannot be maximized or restored. cannot be maximized or restored.
@MonitorMethod[@elem{A window's maximization} @elem{the user} @elem{@method[window<%> on-size]} @elem{size}] @MonitorMethod[@elem{A window's maximization} @elem{the user} @elem{@method[window<%> on-size]} @elem{size}]
@ -193,8 +193,8 @@ If @scheme[maximize?] is @scheme[#f], the window is restored, otherwise
void?])]{ void?])]{
Gets or sets the frame's modification state as reflected to the user. Gets or sets the frame's modification state as reflected to the user.
Under Mac OS X, the modification state is reflected as a dot in the On Mac OS X, the modification state is reflected as a dot in the
frame's close button. Under Windows and X, the modification state is frame's close button. On Windows and Unix, the modification state is
reflected by an asterisk at the end of the frame's displayed title. reflected by an asterisk at the end of the frame's displayed title.
} }
@ -202,7 +202,7 @@ Gets or sets the frame's modification state as reflected to the user.
@defmethod[(on-mdi-activate [active? any/c]) @defmethod[(on-mdi-activate [active? any/c])
void?]{ void?]{
Called under Windows when a MDI-child frame becomes the active frame Called on Windows when a MDI-child frame becomes the active frame
within its parent (in which case the argument is @scheme[#t]), or when within its parent (in which case the argument is @scheme[#t]), or when
the child frame ceases to be the active frame (in which case the the child frame ceases to be the active frame (in which case the
argument is @scheme[#f]). argument is @scheme[#f]).
@ -254,7 +254,7 @@ Returns the result of
@defmethod[(on-toolbar-button-click) @defmethod[(on-toolbar-button-click)
void?]{ void?]{
Under Mac OS X, called when the user clicks the toolbar button on a On Mac OS X, called when the user clicks the toolbar button on a
frame created with the @indexed-scheme['toolbar-button] style. frame created with the @indexed-scheme['toolbar-button] style.
} }
@ -277,7 +277,7 @@ The icon is used in a platform-specific way:
@item{Mac OS X --- both icons are ignored.} @item{Mac OS X --- both icons are ignored.}
@item{X --- many window managers use the small icon in the same way @item{Unix --- many window managers use the small icon in the same way
as Windows, and others use the small icon when iconifying the as Windows, and others use the small icon when iconifying the
frame; the large icon is ignored.} frame; the large icon is ignored.}

View File

@ -26,13 +26,13 @@ Returns the depth of the main display (a value of 1 denotes a monochrome display
When the optional argument is @scheme[#f] (the default), this function When the optional argument is @scheme[#f] (the default), this function
returns the offset of the main screen's origin from the returns the offset of the main screen's origin from the
top-left of the physical screen. Under X and Windows, the result is top-left of the physical screen. On Unix and Windows, the result is
always @scheme[0] and @scheme[0]; under Mac OS X, the result is always @scheme[0] and @scheme[0]; on Mac OS X, the result is
@scheme[0] and the height of the menu bar. @scheme[0] and the height of the menu bar.
When the optional argument is true, this function returns the amount When the optional argument is true, this function returns the amount
space at the left and top of the main screen that is occupied by the space at the left and top of the main screen that is occupied by the
task bar (Windows) or menu bar and dock (Mac OS X). Under X, the task bar (Windows) or menu bar and dock (Mac OS X). On Unix, the
result is always @scheme[0] and @scheme[0]. result is always @scheme[0] and @scheme[0].
} }
@ -41,11 +41,11 @@ When the optional argument is true, this function returns the amount
(values exact-nonnegative-integer? exact-nonnegative-integer?)]{ (values exact-nonnegative-integer? exact-nonnegative-integer?)]{
@index["screen resolution"]{Gets} the physical size of the display in @index["screen resolution"]{Gets} the physical size of the display in
pixels. Under Windows, this size does not include the task bar by pixels. On Windows, this size does not include the task bar by
default. Under Mac OS X, this size does not include the menu bar or default. On Mac OS X, this size does not include the menu bar or
dock area by default. dock area by default.
Under Windows and Mac OS X, if the optional argument is true, then On Windows and Mac OS X, if the optional argument is true, then
the task bar, menu bar, and dock area are included in the result. the task bar, menu bar, and dock area are included in the result.
Returns the screen's width and height. Returns the screen's width and height.

View File

@ -5,10 +5,10 @@
A @scheme[grow-box-spacer-pane%] object is intended for use as a A @scheme[grow-box-spacer-pane%] object is intended for use as a
lightweight spacer in the bottom-right corner of a frame, rather than lightweight spacer in the bottom-right corner of a frame, rather than
as a container. Under Mac OS X, a as a container. On Mac OS X, a
@scheme[grow-box-spacer-pane%] has the same width and height as the @scheme[grow-box-spacer-pane%] has the same width and height as the
grow box that is inset into the bottom-right corner of a frame. Under grow box that is inset into the bottom-right corner of a frame. On
Windows and X, a @scheme[grow-box-spacer-pane%] has zero width and Windows and Unix, a @scheme[grow-box-spacer-pane%] has zero width and
height. Unlike all other container types, a height. Unlike all other container types, a
@scheme[grow-box-spacer-pane%] is unstretchable by default. @scheme[grow-box-spacer-pane%] is unstretchable by default.

View File

@ -55,7 +55,7 @@ Returns @scheme[#t] if the Caps Lock key was on for the event.
boolean?]{ boolean?]{
Returns @scheme[#t] if the Control key was down for the event. Returns @scheme[#t] if the Control key was down for the event.
Under Mac OS X, if a control-key press is combined with a mouse button On Mac OS X, if a control-key press is combined with a mouse button
click, the event is reported as a right-button click and click, the event is reported as a right-button click and
@method[key-event% get-control-down] for the event reports @scheme[#f]. @method[key-event% get-control-down] for the event reports @scheme[#f].
@ -172,13 +172,13 @@ A @scheme['wheel-up], @scheme['wheel-down], @scheme['wheel-left], or
events based on the location of the mouse pointer instead of the events based on the location of the mouse pointer instead of the
keyboard focus. keyboard focus.
Under Windows, when the Control key is pressed without Alt, the key On Windows, when the Control key is pressed without Alt, the key
code for ASCII characters is downcased, roughly cancelling the effect code for ASCII characters is downcased, roughly cancelling the effect
of the Shift key. Under Mac OS X, the key code is computed without of the Shift key. On Mac OS X, the key code is computed without
Caps Lock effects when the Control or Command key is pressed; in the Caps Lock effects when the Control or Command key is pressed; in the
case of Control, Caps Lock is used normally if special handling is case of Control, Caps Lock is used normally if special handling is
disabled for the Control key via @scheme[special-control-key]. Under disabled for the Control key via @scheme[special-control-key]. On
X, the key code is computed with Caps Lock effects when the Control Unix, the key code is computed with Caps Lock effects when the Control
key is pressed without Alt. key is pressed without Alt.
See also @method[key-event% get-other-shift-key-code]. See also @method[key-event% get-other-shift-key-code].
@ -197,7 +197,7 @@ Gets the virtual key code for a key-release event; the result is
@defmethod[(get-meta-down) @defmethod[(get-meta-down)
boolean?]{ boolean?]{
Returns @scheme[#t] if the Meta (X), Alt (Windows), or Command (Mac OS Returns @scheme[#t] if the Meta (Unix), Alt (Windows), or Command (Mac OS
X) key was down for the event. X) key was down for the event.
} }
@ -236,7 +236,7 @@ Since keyboard mappings vary, it is sometimes useful in key mappings
The @method[key-event% get-other-altgr-key-code] method provides the The @method[key-event% get-other-altgr-key-code] method provides the
same information with respect to the AltGr key (i.e., Alt combined same information with respect to the AltGr key (i.e., Alt combined
with Control) under Windows and X, or the Option key under Mac OS with Control) on Windows and Unix, or the Option key on Mac OS
X. The @method[key-event% get-other-shift-altgr-key-code] method X. The @method[key-event% get-other-shift-altgr-key-code] method
reports a mapping for in tha case that both Shift and AltGr/Option reports a mapping for in tha case that both Shift and AltGr/Option
were different from the actual event. were different from the actual event.
@ -252,10 +252,10 @@ result. (Caps Lock normally has either no effect or the same effect as
Shift, so further combinations involving Caps Lock and other modifier Shift, so further combinations involving Caps Lock and other modifier
keys would not normally produce further alternatives.) keys would not normally produce further alternatives.)
Alternate mappings are not available for all events. Under Windows, Alternate mappings are not available for all events. On Windows,
alternate mappings are reported when they produce ASCII letters, alternate mappings are reported when they produce ASCII letters,
ASCII digits, and ASCII symbols. Under Mac OS X, alternate mappings are ASCII digits, and ASCII symbols. On Mac OS X, alternate mappings are
available only when the Command key is pressed. Under X, alternate available only when the Command key is pressed. On Unix, alternate
mappings are usually available. mappings are usually available.
} }
@ -304,7 +304,7 @@ Sets whether the Caps Lock key was on for the event.
Sets whether the Control key was down for the event. Sets whether the Control key was down for the event.
Under Mac OS X, if a control-key press is combined with a mouse button On Mac OS X, if a control-key press is combined with a mouse button
click, the event is reported as a right-button click and click, the event is reported as a right-button click and
@method[key-event% get-control-down] for the event reports @method[key-event% get-control-down] for the event reports
@scheme[#f]. @scheme[#f].
@ -331,7 +331,7 @@ Sets the virtual key code for a release event, either a character or
@defmethod[(set-meta-down [down? any/c]) @defmethod[(set-meta-down [down? any/c])
void?]{ void?]{
Sets whether the Meta (X), Alt (Windows), or Command (Mac OS X) key Sets whether the Meta (Unix), Alt (Windows), or Command (Mac OS X) key
was down for the event. was down for the event.
} }

View File

@ -171,7 +171,7 @@ The modifier identifiers are:
@item{@litchar{a:} --- Mac OS X: Option} @item{@litchar{a:} --- Mac OS X: Option}
@item{@litchar{m:} --- Windows: Alt; X: Meta; Mac OS X: Command, when @item{@litchar{m:} --- Windows: Alt; Unix: Meta; Mac OS X: Command, when
@scheme[map-command-as-meta-key] produces @scheme[#t]} @scheme[map-command-as-meta-key] produces @scheme[#t]}
@item{@litchar{d:} --- Mac OS X: Command} @item{@litchar{d:} --- Mac OS X: Command}
@ -278,11 +278,11 @@ For a special keyword, the capitalization does not matter. However,
capitalization is important for single-letter keynames. Furthermore, capitalization is important for single-letter keynames. Furthermore,
single-letter ASCII keynames are treated specially: @litchar{A} and single-letter ASCII keynames are treated specially: @litchar{A} and
@litchar{s:a} are both treated as @litchar{s:A}. However, when @litchar{s:a} are both treated as @litchar{s:A}. However, when
@litchar{c:} is included under Windows without @litchar{m:}, or when @litchar{c:} is included on Windows without @litchar{m:}, or when
@litchar{d:} is included under Mac OS X, then ASCII letters are not @litchar{d:} is included on Mac OS X, then ASCII letters are not
upcased with @litchar{s:}, since the upcasing behavior of the Shift key upcased with @litchar{s:}, since the upcasing behavior of the Shift key
is cancelled by Control without Alt (under Windows) or by Command is cancelled by Control without Alt (on Windows) or by Command
(under Mac OS X). (on Mac OS X).
A state can match multiple state strings mapped in a keymap (or keymap A state can match multiple state strings mapped in a keymap (or keymap
chain); when a state matches multiple state strings, a mapping is chain); when a state matches multiple state strings, a mapping is

View File

@ -101,15 +101,15 @@ Sets the menu item's label. If the item has a shortcut, the shortcut
is not affected. is not affected.
If the label contains @litchar{&} and the window is a control, the If the label contains @litchar{&} and the window is a control, the
label is parsed specially; under Windows and X, the character label is parsed specially; on Windows and Unix, the character
following a @litchar{&} is underlined in the displayed menu to following a @litchar{&} is underlined in the displayed menu to
indicate a keyboard mnemonic. Pressing the Alt key with an underlined indicate a keyboard mnemonic. Pressing the Alt key with an underlined
character from a menu's name in the menu bar causes the menu to be character from a menu's name in the menu bar causes the menu to be
selected (via @method[frame% on-menu-char]). When a menu has the selected (via @method[frame% on-menu-char]). When a menu has the
focus, the mnemonic characters are used for navigation without Alt. A focus, the mnemonic characters are used for navigation without Alt. A
@litchar{&&} in the label is replaced by a literal (non-navigation) @litchar{&&} in the label is replaced by a literal (non-navigation)
@litchar{&}. Under Mac OS X, @litchar{&}s in the label are parsed in @litchar{&}. On Mac OS X, @litchar{&}s in the label are parsed in
the same way as for X and Windows, but no mnemonic underline is the same way as for Unix and Windows, but no mnemonic underline is
displayed. displayed.
A @litchar{&} is always preserved in the label returned by A @litchar{&} is always preserved in the label returned by

View File

@ -7,7 +7,7 @@
See @secref[#:doc draw-doc "libs"] in @other-manual[draw-doc] for See @secref[#:doc draw-doc "libs"] in @other-manual[draw-doc] for
information on platform library dependencies for information on platform library dependencies for
@racketmodname[racket/draw]. Under Unix, the following additional @racketmodname[racket/draw]. On Unix, the following additional
system libraries must be installed for @racketmodname[racket/gui/base]: system libraries must be installed for @racketmodname[racket/gui/base]:
@itemlist[ @itemlist[

View File

@ -17,13 +17,13 @@ A @scheme[menu%] object is a submenu within a @scheme[menu%] or
Creates a new menu with the given label. Creates a new menu with the given label.
If @scheme[label] contains a @litchar{&}, it is handled specially; If @scheme[label] contains a @litchar{&}, it is handled specially;
under Windows, the character following a @litchar{&} is underlined in on Windows, the character following a @litchar{&} is underlined in
the displayed menu title to indicate a keyboard mnemonic. Pressing the displayed menu title to indicate a keyboard mnemonic. Pressing
and releasing the Alt key switches to menu-selection mode in the menu and releasing the Alt key switches to menu-selection mode in the menu
bar where mnemonic characters are used for navigation. An Alt bar where mnemonic characters are used for navigation. An Alt
combination might select a specific menu via @method[frame% combination might select a specific menu via @method[frame%
on-menu-char]. A @litchar{&&} in @scheme[label] is replaced by a on-menu-char]. A @litchar{&&} in @scheme[label] is replaced by a
literal (non-navigation) @litchar{&}ampersand. Under X and Mac OS X, literal (non-navigation) @litchar{&}ampersand. On Unix and Mac OS X,
@litchar{&}s in the label are parsed in the same way as for Windows, @litchar{&}s in the label are parsed in the same way as for Windows,
but no mnemonic underline is displayed. but no mnemonic underline is displayed.

View File

@ -52,7 +52,7 @@ See @racket[begin-busy-cursor].
Gets or sets the creator and type of a file in Mac OS X. Gets or sets the creator and type of a file in Mac OS X.
The get operation always returns @racket[#"????"] and @racket[#"????"] for The get operation always returns @racket[#"????"] and @racket[#"????"] for
Unix or Windows. The set operation has no effect under Unix or Unix or Windows. The set operation has no effect on Unix or
Windows. Windows.
} }
@ -80,8 +80,8 @@ The result depends on @racket[what], and a @racket[#f] result is only
]} ]}
@item{@racket['x-display] returns a ``path'' whose string identifies @item{@racket['x-display] returns a ``path'' whose string identifies
the X display if specified by either the @Flag{display} flag or the the X11 display if specified by either the @Flag{display} flag or the
@envvar{DISPLAY} environment variable when GRacket starts under X. For @envvar{DISPLAY} environment variable when GRacket starts on Unix. For
other platforms, or when neither @Flag{display} nor @envvar{DISPLAY} other platforms, or when neither @Flag{display} nor @envvar{DISPLAY}
was specified, the result is @racket[#f].} was specified, the result is @racket[#f].}
@ -98,8 +98,8 @@ Returns an immutable list specifying the default prefix for menu
shortcuts. See also shortcuts. See also
@xmethod[selectable-menu-item<%> get-shortcut-prefix]. @xmethod[selectable-menu-item<%> get-shortcut-prefix].
Under Windows, the default is @racket['(ctl)]. Under Mac OS X, the On Windows, the default is @racket['(ctl)]. On Mac OS X, the
default is @racket['(cmd)]. Under X, the default is normally default is @racket['(cmd)]. On Unix, the default is normally
@racket['(ctl)], but the default can be changed through the @racket['(ctl)], but the default can be changed through the
@Resource{defaultMenuPrefix} low-level preference (see @Resource{defaultMenuPrefix} low-level preference (see
@|mrprefsdiscuss|).} @|mrprefsdiscuss|).}
@ -258,7 +258,7 @@ Creates a bitmap that draws in a way that is the same as drawing to a
canvas in its default configuration. canvas in its default configuration.
A normal @racket[bitmap%] draws in a more platform-independent way and A normal @racket[bitmap%] draws in a more platform-independent way and
may use fewer constrained resources, particularly under Windows.} may use fewer constrained resources, particularly on Windows.}
@defproc[(play-sound [filename path-string?] @defproc[(play-sound [filename path-string?]
@ -270,9 +270,9 @@ Plays a sound file. If @racket[async?] is false, the function does not
The result is @racket[#t] if the sound plays successfully, @racket[#f] The result is @racket[#t] if the sound plays successfully, @racket[#f]
otherwise. otherwise.
Under Windows, only @filepath{.wav} files are supported. On Windows, only @filepath{.wav} files are supported.
Under X, the function invokes an external sound-playing program; On Unix, the function invokes an external sound-playing program;
looking for a few known programs (@exec{aplay}, @exec{play}, looking for a few known programs (@exec{aplay}, @exec{play},
@exec{esdplay}, @exec{sndfile-play}, @exec{audioplay}). In addition, a @exec{esdplay}, @exec{sndfile-play}, @exec{audioplay}). In addition, a
play command can be defined through the @ResourceFirst{playcmd} play command can be defined through the @ResourceFirst{playcmd}
@ -286,7 +286,7 @@ Under X, the function invokes an external sound-playing program;
error code---in this case the last part of the error output is error code---in this case the last part of the error output is
shown. shown.
Under Mac OS X, Quicktime is used to play sounds; most sound On Mac OS X, Quicktime is used to play sounds; most sound
formats (.wav, .aiff, .mp3) are supported in recent versions of formats (.wav, .aiff, .mp3) are supported in recent versions of
Quicktime. In order to play .wav files, Quicktime 3.0 (compatible Quicktime. In order to play .wav files, Quicktime 3.0 (compatible
with OS 7.5 and up) is required.} with OS 7.5 and up) is required.}
@ -351,10 +351,10 @@ Unregisters all blit requests installed for @racket[canvas] with
@defproc[(system-position-ok-before-cancel?) boolean?]{ @defproc[(system-position-ok-before-cancel?) boolean?]{
Returns @racket[#t] under Windows---indicating that a dialog with Returns @racket[#t] on Windows---indicating that a dialog with
@onscreen{OK} and @onscreen{Cancel} buttons should place the @onscreen{OK} and @onscreen{Cancel} buttons should place the
@onscreen{OK} button on to left of the @onscreen{Cancel} button---and @onscreen{OK} button on to left of the @onscreen{Cancel} button---and
returns @racket[#f] under Mac OS X and X.} returns @racket[#f] on Mac OS X and Unix.}
@defthing[the-clipboard (is-a?/c clipboard<%>)]{ @defthing[the-clipboard (is-a?/c clipboard<%>)]{

View File

@ -134,7 +134,7 @@ Returns @scheme[#t] if the Caps Lock key was on for the event.
Returns @scheme[#t] if the Control key was down for the event. Returns @scheme[#t] if the Control key was down for the event.
Under Mac OS X, if a control-key press is combined with a mouse button On Mac OS X, if a control-key press is combined with a mouse button
click, the event is reported as a right-button click and click, the event is reported as a right-button click and
@method[mouse-event% get-control-down] for the event reports @method[mouse-event% get-control-down] for the event reports
@scheme[#f]. @scheme[#f].
@ -161,7 +161,7 @@ Returns @scheme[#t] if the left mouse button was down (but not pressed) during t
@defmethod[(get-meta-down) @defmethod[(get-meta-down)
boolean?]{ boolean?]{
Returns @scheme[#t] if the Meta (X), Alt (Windows), or Command (Mac OS Returns @scheme[#t] if the Meta (Unix), Alt (Windows), or Command (Mac OS
X) key was down for the event. X) key was down for the event.
} }
@ -170,7 +170,7 @@ Returns @scheme[#t] if the Meta (X), Alt (Windows), or Command (Mac OS
boolean?]{ boolean?]{
Returns @scheme[#t] if the middle mouse button was down (but not Returns @scheme[#t] if the middle mouse button was down (but not
pressed) for the event. Under Mac OS X, a middle-button click is pressed) for the event. On Mac OS X, a middle-button click is
impossible. impossible.
} }
@ -179,7 +179,7 @@ Returns @scheme[#t] if the middle mouse button was down (but not
boolean?]{ boolean?]{
Returns @scheme[#t] if the right mouse button was down (but not Returns @scheme[#t] if the right mouse button was down (but not
pressed) for the event. Under Mac OS X, a control-click combination pressed) for the event. On Mac OS X, a control-click combination
is treated as a right-button click. is treated as a right-button click.
} }
@ -247,7 +247,7 @@ Sets whether the Caps Lock key was on for the event.
Sets whether the Control key was down for the event. Sets whether the Control key was down for the event.
Under Mac OS X, if a control-key press is combined with a mouse button On Mac OS X, if a control-key press is combined with a mouse button
click, the event is reported as a right-button click and click, the event is reported as a right-button click and
@method[mouse-event% get-control-down] for the event reports @method[mouse-event% get-control-down] for the event reports
@scheme[#f]. @scheme[#f].
@ -275,7 +275,7 @@ the event.
@defmethod[(set-meta-down [down? any/c]) @defmethod[(set-meta-down [down? any/c])
void?]{ void?]{
Sets whether the Meta (X), Alt (Windows), or Command (Mac OS X) key Sets whether the Meta (Unix), Alt (Windows), or Command (Mac OS X) key
was down for the event. was down for the event.
} }
@ -284,7 +284,7 @@ Sets whether the Meta (X), Alt (Windows), or Command (Mac OS X) key
void?]{ void?]{
Sets whether the middle mouse button was down (but not pressed) for Sets whether the middle mouse button was down (but not pressed) for
the event. Under Mac OS X, a middle-button click is impossible. the event. On Mac OS X, a middle-button click is impossible.
} }
@ -292,7 +292,7 @@ Sets whether the middle mouse button was down (but not pressed) for
void?]{ void?]{
Sets whether the right mouse button was down (but not pressed) for the Sets whether the right mouse button was down (but not pressed) for the
event. Under Mac OS X, a control-click combination by the user is event. On Mac OS X, a control-click combination by the user is
treated as a right-button click. treated as a right-button click.
} }

View File

@ -552,8 +552,8 @@ Pastes.
void?]{ void?]{
@methspec{ @methspec{
Called to paste the current contents of the X selection under X (or Called to paste the current contents of the X11 selection on Unix (or
the clipboard under Windows and Mac OS X) into the editor. This the clipboard on Windows and Mac OS X) into the editor. This
method is provided so that it can be overridden by subclasses. Do method is provided so that it can be overridden by subclasses. Do
not call this method directly; instead, call @method[editor<%> not call this method directly; instead, call @method[editor<%>
paste-x-selection]. paste-x-selection].

View File

@ -25,7 +25,7 @@ The following are the preference names used by GRacket:
an editor.} an editor.}
@item{@ResourceFirst{defaultMenuPrefix} --- sets the prefix used by @item{@ResourceFirst{defaultMenuPrefix} --- sets the prefix used by
default for menu item shortcuts under X, one of @scheme['ctl], default for menu item shortcuts on Unix, one of @scheme['ctl],
@scheme['meta], or @scheme['alt]. The default is @scheme['meta], or @scheme['alt]. The default is
@scheme['ctl]. When this preference is set to @scheme['meta] or @scheme['ctl]. When this preference is set to @scheme['meta] or
@scheme['alt], underlined mnemonics (introduced by @litchar{&} in menu @scheme['alt], underlined mnemonics (introduced by @litchar{&} in menu

View File

@ -51,13 +51,13 @@ Returns a list of symbols that indicates the keyboard prefix used for the menu
@itemize[ @itemize[
@item{@scheme['alt] --- Meta (Windows and X only)} @item{@scheme['alt] --- Meta (Windows and X only)}
@item{@scheme['cmd] --- Command (Mac OS X only)} @item{@scheme['cmd] --- Command (Mac OS X only)}
@item{@scheme['meta] --- Meta (X only)} @item{@scheme['meta] --- Meta (Unix only)}
@item{@scheme['ctl] --- Control} @item{@scheme['ctl] --- Control}
@item{@scheme['shift] --- Shift} @item{@scheme['shift] --- Shift}
@item{@scheme['option] --- Option (Mac OS X only)} @item{@scheme['option] --- Option (Mac OS X only)}
] ]
Under X, at most one of @scheme['alt] and @scheme['meta] can be On Unix, at most one of @scheme['alt] and @scheme['meta] can be
supplied; the only difference between @scheme['alt] and supplied; the only difference between @scheme['alt] and
@scheme['meta] is the key combination's display in a menu. @scheme['meta] is the key combination's display in a menu.
@ -74,7 +74,7 @@ The shortcut key, as determined by @method[selectable-menu-item<%>
letters and digits, however, then the shortcut prefix merely letters and digits, however, then the shortcut prefix merely
determines a minimum set of modifier keys, because additional determines a minimum set of modifier keys, because additional
modifiers may be needed to access the character; an exception is modifiers may be needed to access the character; an exception is
that, under Windows or X, the Alt/Meta key press must match the that, on Windows or Unix, the Alt/Meta key press must match the
prefix exactly (i.e., included or not). In all cases, the most prefix exactly (i.e., included or not). In all cases, the most
precise match takes precedence; see @xmethod[keymap% map-function] precise match takes precedence; see @xmethod[keymap% map-function]
for more information on match ranking. for more information on match ranking.

View File

@ -13,7 +13,7 @@ Returns @scheme[#t] for Mac OS X when the current eventspace is the
This procedure is intended for use in deciding whether to include a This procedure is intended for use in deciding whether to include a
@onscreen{Quit}, @onscreen{About}, and @onscreen{Preferences} menu @onscreen{Quit}, @onscreen{About}, and @onscreen{Preferences} menu
item in a frame's menu. Under Mac OS X, the application item in a frame's menu. On Mac OS X, the application
@onscreen{Quit} menu triggers a call to a frame's @onscreen{Quit} menu triggers a call to a frame's
@method[top-level-window<%> on-exit] method, the @onscreen{About} menu item is controlled by @method[top-level-window<%> on-exit] method, the @onscreen{About} menu item is controlled by
@scheme[application-about-handler], and the @scheme[application-about-handler], and the
@ -41,7 +41,7 @@ This procedure is intended for use in deciding whether to create a
When the current eventspace is the initial eventspace, this When the current eventspace is the initial eventspace, this
procedure retrieves or installs a thunk that is called when the procedure retrieves or installs a thunk that is called when the
user selects the application @onscreen{About} menu item in Mac OS user selects the application @onscreen{About} menu item on Mac OS
X. The thunk is always called in the initial eventspace's X. The thunk is always called in the initial eventspace's
handler thread (as a callback). handler thread (as a callback).
@ -59,7 +59,7 @@ or has no effect (when called with a handler).
void?])]{ void?])]{
When the current eventspace is the initial eventspace, this procedure When the current eventspace is the initial eventspace, this procedure
retrieves or installs a thunk that is called when the user selects retrieves or installs a thunk that is called when the user selects
the application @onscreen{Preferences} menu item in Mac OS X. The the application @onscreen{Preferences} menu item on Mac OS X. The
thunk is always called in the initial eventspace's handler thread (as thunk is always called in the initial eventspace's handler thread (as
a callback). If the handler is set to @scheme[#f], the a callback). If the handler is set to @scheme[#f], the
@onscreen{Preferences} item is disabled. @onscreen{Preferences} item is disabled.
@ -78,11 +78,11 @@ or has no effect (when called with a handler).
When the current eventspace is the initial eventspace, this procedure When the current eventspace is the initial eventspace, this procedure
retrieves or installs a thunk that is called when the user requests retrieves or installs a thunk that is called when the user requests
that the application quit (e.g., through the @onscreen{Quit} menu that the application quit (e.g., through the @onscreen{Quit} menu
item in Mac OS X, or when shutting down the machine in Windows). The item on Mac OS X, or when shutting down the machine in Windows). The
thunk is always called in the initial eventspace's handler thread (as thunk is always called in the initial eventspace's handler thread (as
a callback). If the result of the thunk is @scheme[#f], then the a callback). If the result of the thunk is @scheme[#f], then the
operating system is explicitly notified that the application does not operating system is explicitly notified that the application does not
intend to quit (under Windows). intend to quit (on Windows).
The default handler queues a call to the The default handler queues a call to the
@method[top-level-window<%> can-exit?] method of the most @method[top-level-window<%> can-exit?] method of the most
@ -104,7 +104,7 @@ or has no effect (when called with a handler).
[(application-file-handler [handler-proc (path? . -> . any)]) [(application-file-handler [handler-proc (path? . -> . any)])
void?])]{ void?])]{
When the current eventspace is the initial eventspace, this procedure When the current eventspace is the initial eventspace, this procedure
retrieves or installs a procedure that is called under Mac OS X retrieves or installs a procedure that is called on Mac OS X
and Windows when the application is running and user double-clicks an and Windows when the application is running and user double-clicks an
application-handled file or drags a file onto the application's application-handled file or drags a file onto the application's
icon. The procedure is always called in the initial eventspace's icon. The procedure is always called in the initial eventspace's

View File

@ -478,8 +478,8 @@ Pastes into the @techlink{position} @scheme[start].
void?]{ void?]{
@methspec{ @methspec{
Called to paste the current contents of X selection under X (or the Called to paste the current contents of the X11 selection on Unix (or the
clipboard under Windows or Mac OS X) into the editor. This method is clipboard on Windows or Mac OS X) into the editor. This method is
provided so that it can be overridden by subclasses. Do not call provided so that it can be overridden by subclasses. Do not call
this method directly; instead, call @method[text% paste-x-selection]. this method directly; instead, call @method[text% paste-x-selection].

View File

@ -125,7 +125,7 @@ Called when a window is @defterm{activated} or
@defterm{deactivated}. A top-level window is activated when the @defterm{deactivated}. A top-level window is activated when the
keyboard focus moves from outside the window to the window or one of keyboard focus moves from outside the window to the window or one of
its children. It is deactivated when the focus moves back out of the its children. It is deactivated when the focus moves back out of the
window. Under Mac OS X, a child of a floating frames can have the window. On Mac OS X, a child of a floating frames can have the
focus instead of a child of the active non-floating frame; in other focus instead of a child of the active non-floating frame; in other
words, floating frames act as an extension of the active non-frame words, floating frames act as an extension of the active non-frame
for keyboard focus. for keyboard focus.
@ -156,7 +156,7 @@ Called by the default application quit handler (as determined by the
@scheme[application-quit-handler] parameter) when the operating @scheme[application-quit-handler] parameter) when the operating
system requests that the application shut down (e.g., when the system requests that the application shut down (e.g., when the
@onscreen{Quit} menu item is selected in the main application menu @onscreen{Quit} menu item is selected in the main application menu
under Mac OS X). In that case, this method is called for the most on Mac OS X). In that case, this method is called for the most
recently active top-level window in the initial eventspace, but only recently active top-level window in the initial eventspace, but only
if the window's @method[top-level-window<%> can-exit?] method first if the window's @method[top-level-window<%> can-exit?] method first
returns true. returns true.
@ -218,29 +218,29 @@ If the window that currently owns the focus specifically handles the
@item{@scheme[editor-canvas%] --- tab-exit is disabled (see @item{@scheme[editor-canvas%] --- tab-exit is disabled (see
@method[editor-canvas% allow-tab-exit]): all keyboard events, except alphanumeric key events when the Meta @method[editor-canvas% allow-tab-exit]): all keyboard events, except alphanumeric key events when the Meta
(X) or Alt (Windows) key is pressed; when tab-exit is enabled: (Unix) or Alt (Windows) key is pressed; when tab-exit is enabled:
all keyboard events except Tab, Enter, Escape, and alphanumeric all keyboard events except Tab, Enter, Escape, and alphanumeric
Meta/Alt events.} Meta/Alt events.}
@item{@scheme[canvas%] --- when tab-focus is disabled (see @item{@scheme[canvas%] --- when tab-focus is disabled (see
@method[canvas<%> accept-tab-focus]): all keyboard events, except alphanumeric key events when the Meta @method[canvas<%> accept-tab-focus]): all keyboard events, except alphanumeric key events when the Meta
(X) or Alt (Windows) key is pressed; when tab-focus is enabled: (Unix) or Alt (Windows) key is pressed; when tab-focus is enabled:
no key events} no key events}
@item{@scheme[text-field%], @scheme['single] style --- arrow key @item{@scheme[text-field%], @scheme['single] style --- arrow key
events and alphanumeric key events when the Meta (X) or Alt events and alphanumeric key events when the Meta (Unix) or Alt
(Windows) key is not pressed (and all alphanumeric events under (Windows) key is not pressed (and all alphanumeric events on
Mac OS X)} Mac OS X)}
@item{@scheme[text-field%], @scheme['multiple] style --- all @item{@scheme[text-field%], @scheme['multiple] style --- all
keyboard events, except alphanumeric key events when the Meta (X) or keyboard events, except alphanumeric key events when the Meta (Unix) or
Alt (Windows) key is pressed} Alt (Windows) key is pressed}
@item{@scheme[choice%] --- arrow key events and alphanumeric key @item{@scheme[choice%] --- arrow key events and alphanumeric key
events when the Meta (X) or Alt (Windows) key is not pressed} events when the Meta (Unix) or Alt (Windows) key is not pressed}
@item{@scheme[list-box%] --- arrow key events and alphanumeric key @item{@scheme[list-box%] --- arrow key events and alphanumeric key
events when the Meta (X) or Alt (Windows) key is not pressed} events when the Meta (Unix) or Alt (Windows) key is not pressed}
]} ]}

View File

@ -736,10 +736,10 @@ Controls, such as buttons and list boxes, handle keyboard and mouse
focus-navigation events. See @xmethod[frame% on-subwindow-char] and focus-navigation events. See @xmethod[frame% on-subwindow-char] and
@xmethod[dialog% on-subwindow-char] for details. Certain OS-specific @xmethod[dialog% on-subwindow-char] for details. Certain OS-specific
key combinations are captured at a low level, and cannot be key combinations are captured at a low level, and cannot be
overridden. For example, under Windows and X, pressing and releasing overridden. For example, on Windows and Unix, pressing and releasing
Alt always moves the keyboard focus to the menu bar. Similarly, Alt always moves the keyboard focus to the menu bar. Similarly,
Alt-Tab switches to a different application under Windows. (Alt-Space Alt-Tab switches to a different application on Windows. (Alt-Space
invokes the system menu under Windows, but this shortcut is invokes the system menu on Windows, but this shortcut is
implemented by @method[top-level-window<%> on-system-menu-char], implemented by @method[top-level-window<%> on-system-menu-char],
which is called by @xmethod[frame% on-subwindow-char] and which is called by @xmethod[frame% on-subwindow-char] and
@xmethod[dialog% on-subwindow-char].) @xmethod[dialog% on-subwindow-char].)

View File

@ -37,7 +37,7 @@ All @scheme[window<%>] classes accept the following named instantiation
@index["global coordinates"]{Converts} local window coordinates to @index["global coordinates"]{Converts} local window coordinates to
screen coordinates. screen coordinates.
Under Mac OS X, the screen coordinates start with @math{(0, 0)} at the On Mac OS X, the screen coordinates start with @math{(0, 0)} at the
upper left of the menu bar. In contrast, @xmethod[top-level-window<%> upper left of the menu bar. In contrast, @xmethod[top-level-window<%>
move] considers @math{(0, 0)} to be below the menu bar. See also move] considers @math{(0, 0)} to be below the menu bar. See also
@scheme[get-display-left-top-inset]. @scheme[get-display-left-top-inset].
@ -73,7 +73,7 @@ If @scheme[enable?] is true, the window is enabled, otherwise it is
See also See also
@method[window<%> on-focus]. @method[window<%> on-focus].
Note that under X, keyboard focus can move to the menu bar Note that on Unix, keyboard focus can move to the menu bar
when the user is selecting a menu item. when the user is selecting a menu item.
@MonitorMethod[@elem{The current keyboard focus window} @elem{the user} @elem{@method[window<%> on-focus]} @elem{focus}] @MonitorMethod[@elem{The current keyboard focus window} @elem{the user} @elem{@method[window<%> on-focus]} @elem{focus}]
@ -93,7 +93,7 @@ on the platform:
@item{Mac OS X: @tt{NSView}} @item{Mac OS X: @tt{NSView}}
@item{X: @tt{GtkWidget}} @item{Unix: @tt{GtkWidget}}
] ]
@ -140,7 +140,7 @@ platform:
@item{Mac OS X: @tt{NSWindow} for a @scheme[top-level-window<%>] object, @item{Mac OS X: @tt{NSWindow} for a @scheme[top-level-window<%>] object,
@tt{NSView} for other windows} @tt{NSView} for other windows}
@item{X: @tt{GtkWidget}} @item{Unix: @tt{GtkWidget}}
] ]
@ -177,11 +177,11 @@ Gets a window's label, if any. Control windows generally display their
string label (along with a position for the bitmap). string label (along with a position for the bitmap).
A label string may contain @litchar{&}s, which serve as A label string may contain @litchar{&}s, which serve as
keyboard navigation annotations for controls under Windows and X. The keyboard navigation annotations for controls on Windows and Unix. The
ampersands are not part of the displayed label of a control; instead, ampersands are not part of the displayed label of a control; instead,
ampersands are removed in the displayed label (under all platforms), ampersands are removed in the displayed label (on all platforms),
and any character preceding an ampersand is underlined (Windows and and any character preceding an ampersand is underlined (Windows and
X) indicating that the character is a mnemonic for the Unix) indicating that the character is a mnemonic for the
control. Double ampersands are converted into a single ampersand control. Double ampersands are converted into a single ampersand
(with no displayed underline). See also (with no displayed underline). See also
@method[top-level-window<%> on-traverse-char]. @method[top-level-window<%> on-traverse-char].
@ -207,7 +207,7 @@ Like
(integer-in 0 10000))]{ (integer-in 0 10000))]{
Gets the current size of the entire window in pixels, not counting Gets the current size of the entire window in pixels, not counting
horizontal and vertical margins. (Under X, this size does not include horizontal and vertical margins. (On Unix, this size does not include
a title bar or borders for a frame/dialog.) See also a title bar or borders for a frame/dialog.) See also
@method[window<%> get-client-size]. @method[window<%> get-client-size].
@ -287,11 +287,11 @@ The result is @scheme[#t] if this window is shown when its ancestors are
void?]{ void?]{
@index["drag-and-drop"]{Called} when the user drags a file onto the @index["drag-and-drop"]{Called} when the user drags a file onto the
window. (Under X, drag-and-drop is supported via the XDND window. (On Unix, drag-and-drop is supported via the XDND
protocol.) Drag-and-drop must first be enabled for the window with protocol.) Drag-and-drop must first be enabled for the window with
@method[window<%> accept-drop-files]. @method[window<%> accept-drop-files].
Under Mac OS X, when the application is running and user On Mac OS X, when the application is running and user
double-clicks an application-handled file or drags a file onto the double-clicks an application-handled file or drags a file onto the
application's icon, the main thread's application file handler is application's icon, the main thread's application file handler is
called (see called (see
@ -312,7 +312,7 @@ Under Mac OS X, when the application is running and user
receives or loses the keyboard focus. If the argument is @scheme[#t], receives or loses the keyboard focus. If the argument is @scheme[#t],
the keyboard focus was received, otherwise it was lost. the keyboard focus was received, otherwise it was lost.
Note that under X, keyboard focus can move to the menu bar Note that on Unix, keyboard focus can move to the menu bar
when the user is selecting a menu item. when the user is selecting a menu item.
} }

View File

@ -37,12 +37,8 @@ values, instead of strings.
Although it's sometimes tempting to directly manipulate strings that Although it's sometimes tempting to directly manipulate strings that
represent filesystem paths, correctly manipulating a path can be represent filesystem paths, correctly manipulating a path can be
surprisingly difficult. For example, if you start under Unix with the surprisingly difficult. Windows path manipulation is especially
absolute path @filepath{/tmp/~} and take just the last part, you end up tricky, because path elements like @filepath{aux} can have special
with @filepath{~}---which looks like a reference to the current user's
home directory, instead of a relative path to a file of directory
named @filepath{~}. Windows path manipulation, furthermore, is far
trickier, because path elements like @filepath{aux} can have special
meanings. meanings.
@refdetails/gory["windows-path"]{Windows filesystem paths} @refdetails/gory["windows-path"]{Windows filesystem paths}

View File

@ -5,8 +5,8 @@
@title[#:tag "scripts"]{Scripts} @title[#:tag "scripts"]{Scripts}
Racket files can be turned into executable scripts under Unix and Mac Racket files can be turned into executable scripts on Unix and Mac
OS X. Under Windows, a compatibility layer like Cygwin support the OS X. On Windows, a compatibility layer like Cygwin support the
same kind of scripts, or scripts can be implemented as batch files. same kind of scripts, or scripts can be implemented as batch files.
@section{Unix Scripts} @section{Unix Scripts}

View File

@ -51,14 +51,14 @@ The basic collector allocation functions are:
@item{@cppi{scheme_malloc_tagged} --- Allocates collectable memory @item{@cppi{scheme_malloc_tagged} --- Allocates collectable memory
that contains a mixture of pointers and atomic data. With the that contains a mixture of pointers and atomic data. With the
conservative collector, this function is the same conservative collector, this function is the same
as @cppi{scheme_malloc}, but under 3m, the type tag stored at the as @cppi{scheme_malloc}, but on 3m, the type tag stored at the
start of the block is used to determine the size and shape of the start of the block is used to determine the size and shape of the
object for future garbage collection (as described object for future garbage collection (as described
in @secref["im:3m"]).} in @secref["im:3m"]).}
@item{@cppi{scheme_malloc_allow_interior} --- Allocates an array of @item{@cppi{scheme_malloc_allow_interior} --- Allocates an array of
pointers such that the array is never moved by the garbage collector pointers such that the array is never moved by the garbage collector
and references are allowed into the middle of the block under 3m (and and references are allowed into the middle of the block on 3m (and
pointers to the middle prevent the block from being collected). Use pointers to the middle prevent the block from being collected). Use
this procedure sparingly, because small, non-moving objects are this procedure sparingly, because small, non-moving objects are
handled less efficiently than movable objects by the 3m collector. handled less efficiently than movable objects by the 3m collector.
@ -101,7 +101,7 @@ function can be safely called even when it's not needed, but it must
not be called multiple times for a single memory address. not be called multiple times for a single memory address.
Collectable memory can be temporarily locked from collection by using Collectable memory can be temporarily locked from collection by using
the reference-counting function @cppi{scheme_dont_gc_ptr}. Under 3m, the reference-counting function @cppi{scheme_dont_gc_ptr}. On 3m,
such locking does not prevent the object from being moved. such locking does not prevent the object from being moved.
Garbage collection can occur during any call into Racket or its Garbage collection can occur during any call into Racket or its
@ -807,7 +807,7 @@ for CGC:
} }
} }
Under 3m, the above code does not quite work, because @var{stack_addr} On 3m, the above code does not quite work, because @var{stack_addr}
must be the beginning or end of a local-frame registration. Worse, in must be the beginning or end of a local-frame registration. Worse, in
CGC or 3m, if @cpp{real_main} is declared @cpp{static}, the compiler CGC or 3m, if @cpp{real_main} is declared @cpp{static}, the compiler
may inline it and place variables containing collectable values deeper may inline it and place variables containing collectable values deeper
@ -829,8 +829,8 @@ requires a few frames.
If @var{stack_end} is @cpp{NULL}, then the stack end is computed If @var{stack_end} is @cpp{NULL}, then the stack end is computed
automatically: the stack size assumed to be the limit reported by automatically: the stack size assumed to be the limit reported by
@cpp{getrlimit} under Unix and Mac OS X, or it is assumed to be 1 MB @cpp{getrlimit} on Unix and Mac OS X, or it is assumed to be 1 MB
under Windows; if this size is greater than 8 MB, then 8 MB is on Windows; if this size is greater than 8 MB, then 8 MB is
assumed, instead; the size is decremented by 50000 bytes to cover a assumed, instead; the size is decremented by 50000 bytes to cover a
large margin of error; finally, the size is subtracted from (for large margin of error; finally, the size is subtracted from (for
stacks that grow down) or added to (for stacks that grow up) the stack stacks that grow down) or added to (for stacks that grow up) the stack
@ -844,7 +844,7 @@ overflow.}
[void* ptr] [void* ptr]
[int tls_index])]{ [int tls_index])]{
Only available under Windows; registers @var{ptr} as the address of a Only available on Windows; registers @var{ptr} as the address of a
thread-local pointer variable that is declared in the main thread-local pointer variable that is declared in the main
executable. The variable's storage will be used to implement executable. The variable's storage will be used to implement
thread-local storage within the Racket run-time. See thread-local storage within the Racket run-time. See
@ -1106,16 +1106,16 @@ foreign function to be called. The following protocols are supported:
@item{@racket['osapi_ptr_int->void] corresponds to @cpp{void @item{@racket['osapi_ptr_int->void] corresponds to @cpp{void
(*)(void*, int)}, but using the stdcall calling convention (*)(void*, int)}, but using the stdcall calling convention
under Windows.} on Windows.}
@item{@racket['osapi_ptr_ptr->void] corresponds to @cpp{void @item{@racket['osapi_ptr_ptr->void] corresponds to @cpp{void
(*)(void*, void*)}, but using the stdcall calling convention (*)(void*, void*)}, but using the stdcall calling convention
under Windows.} on Windows.}
@item{@racket['osapi_ptr_int_int_int_int_ptr_int_int_long->void] @item{@racket['osapi_ptr_int_int_int_int_ptr_int_int_long->void]
corresponds to @cpp{void (*)(void*, int, int, int, int, void*, corresponds to @cpp{void (*)(void*, int, int, int, int, void*,
int, int, long)}, but using the stdcall calling convention int, int, long)}, but using the stdcall calling convention
under Windows.} on Windows.}
] ]

View File

@ -186,7 +186,7 @@ As an example, the following C code defines an extension that returns
} }
Assuming that this code is in the file @filepath{hw.c}, the extension Assuming that this code is in the file @filepath{hw.c}, the extension
is compiled under Unix with the following two commands: is compiled on Unix with the following two commands:
@commandline{raco ctool --cgc --cc hw.c} @commandline{raco ctool --cgc --cc hw.c}
@commandline{raco ctool --cgc --ld hw.so hw.o} @commandline{raco ctool --cgc --ld hw.so hw.o}
@ -223,7 +223,7 @@ must be extended as follows:
] ]
For a relatively simple extension @filepath{hw.c}, the extension is For a relatively simple extension @filepath{hw.c}, the extension is
compiled under Unix for 3m with the following three commands: compiled on Unix for 3m with the following three commands:
@commandline{raco ctool --xform hw.c} @commandline{raco ctool --xform hw.c}
@commandline{raco ctool --3m --cc hw.3m.c} @commandline{raco ctool --3m --cc hw.3m.c}
@ -298,7 +298,7 @@ To embed Racket CGC in a program, follow these steps:
standard distribution provides 3m libraries, only, you will most standard distribution provides 3m libraries, only, you will most
likely have to build from source. likely have to build from source.
Under Unix, the libraries are @as-index{@filepath{libracket.a}} On Unix, the libraries are @as-index{@filepath{libracket.a}}
and @as-index{@filepath{libmzgc.a}} (or and @as-index{@filepath{libmzgc.a}} (or
@as-index{@filepath{libracket.so}} and @as-index{@filepath{libracket.so}} and
@as-index{@filepath{libmzgc.so}} for a dynamic-library build, with @as-index{@filepath{libmzgc.so}} for a dynamic-library build, with
@ -308,7 +308,7 @@ To embed Racket CGC in a program, follow these steps:
libraries into the installation's @filepath{lib} directory. Be sure libraries into the installation's @filepath{lib} directory. Be sure
to build the CGC variant, since the default is 3m. to build the CGC variant, since the default is 3m.
Under Windows, stub libraries for use with Microsoft tools are On Windows, stub libraries for use with Microsoft tools are
@filepath{libracket@italic{x}.lib} and @filepath{libracket@italic{x}.lib} and
@filepath{libmzgc@italic{x}.lib} (where @italic{x} represents the @filepath{libmzgc@italic{x}.lib} (where @italic{x} represents the
version number) are in a compiler-specific directory in version number) are in a compiler-specific directory in
@ -325,7 +325,7 @@ To embed Racket CGC in a program, follow these steps:
use. (@filepath{Racket.exe} and @filepath{GRacket.exe} use the latter use. (@filepath{Racket.exe} and @filepath{GRacket.exe} use the latter
strategy.) strategy.)
Under Mac OS X, dynamic libraries are provided by the On Mac OS X, dynamic libraries are provided by the
@filepath{Racket} framework, which is typically installed in @filepath{Racket} framework, which is typically installed in
@filepath{lib} sub-directory of the installation. Supply @filepath{lib} sub-directory of the installation. Supply
@exec{-framework Racket} to @exec{gcc} when linking, along @exec{-framework Racket} to @exec{gcc} when linking, along
@ -363,7 +363,7 @@ To embed Racket CGC in a program, follow these steps:
@cpp{scheme_main_stack_setup} trampoline registers the C stack with @cpp{scheme_main_stack_setup} trampoline registers the C stack with
the memory manager without creating a namespace.) the memory manager without creating a namespace.)
Under 32-bit Windows, when support for parallelism is enabled in the Racket On 32-bit Windows, when support for parallelism is enabled in the Racket
build (as is the default), then before calling build (as is the default), then before calling
@cpp{scheme_main_setup}, your embedding application must first call @cpp{scheme_main_setup}, your embedding application must first call
@cppi{scheme_register_tls_space}: @cppi{scheme_register_tls_space}:
@ -476,12 +476,12 @@ int main(int argc, char *argv[])
} }
} }
Under Mac OS X, or under Windows when Racket is compiled to a DLL On Mac OS X, or on Windows when Racket is compiled to a DLL
using Cygwin, the garbage collector cannot find static variables using Cygwin, the garbage collector cannot find static variables
automatically. In that case, @cppi{scheme_main_setup} must be called with a automatically. In that case, @cppi{scheme_main_setup} must be called with a
non-zero first argument. non-zero first argument.
Under Windows (for any other build mode), the garbage collector finds On Windows (for any other build mode), the garbage collector finds
static variables in an embedding program by examining all memory static variables in an embedding program by examining all memory
pages. This strategy fails if a program contains multiple Windows pages. This strategy fails if a program contains multiple Windows
threads; a page may get unmapped by a thread while the collector is threads; a page may get unmapped by a thread while the collector is
@ -516,21 +516,21 @@ In addition, some library details are different:
@itemize[ @itemize[
@item{Under Unix, the library is just @item{On Unix, the library is just
@as-index{@filepath{libracket3m.a}} (or @as-index{@filepath{libracket3m.a}} (or
@as-index{@filepath{libracket3m.so}} for a dynamic-library build, @as-index{@filepath{libracket3m.so}} for a dynamic-library build,
with @as-index{@filepath{libracket3m.la}} for use with with @as-index{@filepath{libracket3m.la}} for use with
@exec{libtool}). There is no separate library for 3m analogous to @exec{libtool}). There is no separate library for 3m analogous to
CGC's @filepath{libmzgc.a}.} CGC's @filepath{libmzgc.a}.}
@item{Under Windows, the stub library for use with Microsoft tools is @item{On Windows, the stub library for use with Microsoft tools is
@filepath{libracket3m@italic{x}.lib} (where @italic{x} represents the @filepath{libracket3m@italic{x}.lib} (where @italic{x} represents the
version number). This library identifies the bindings that are version number). This library identifies the bindings that are
provided by @filepath{libracket3m@italic{x}.dll}. There is no provided by @filepath{libracket3m@italic{x}.dll}. There is no
separate library for 3m analogous to CGC's separate library for 3m analogous to CGC's
@filepath{libmzgc@italic{x}.lib}.} @filepath{libmzgc@italic{x}.lib}.}
@item{Under Mac OS X, 3m dynamic libraries are provided by the @item{On Mac OS X, 3m dynamic libraries are provided by the
@filepath{Racket} framework, just as for CGC, but as a version @filepath{Racket} framework, just as for CGC, but as a version
suffixed with @filepath{_3m}.} suffixed with @filepath{_3m}.}
@ -642,8 +642,8 @@ for the original place.
Racket implements threads for Racket programs without aid from the Racket implements threads for Racket programs without aid from the
operating system, so that Racket threads are cooperative from the operating system, so that Racket threads are cooperative from the
perspective of C code. Under Unix, stand-alone Racket uses a single perspective of C code. On Unix, stand-alone Racket uses a single
OS-implemented thread. Under Windows and Mac OS X, stand-alone OS-implemented thread. On Windows and Mac OS X, stand-alone
Racket uses a few private OS-implemented threads for background Racket uses a few private OS-implemented threads for background
tasks, but these OS-implemented threads are never exposed by the tasks, but these OS-implemented threads are never exposed by the
Racket API. Racket API.

View File

@ -335,7 +335,7 @@ Closes the given output port.}
Fills @cpp{*@var{fd}} with a file-descriptor value for @var{port} if Fills @cpp{*@var{fd}} with a file-descriptor value for @var{port} if
one is available (i.e., the port is a file-stream port and it is not one is available (i.e., the port is a file-stream port and it is not
closed). The result is non-zero if the file-descriptor value is closed). The result is non-zero if the file-descriptor value is
available, zero otherwise. Under Windows, a ``file dscriptor'' is a available, zero otherwise. On Windows, a ``file dscriptor'' is a
file @cpp{HANDLE}.} file @cpp{HANDLE}.}
@function[(intptr_t scheme_get_port_fd @function[(intptr_t scheme_get_port_fd
@ -352,7 +352,7 @@ Like @cpp{scheme_get_port_file_descriptor}, but a file
Fills @cpp{*@var{s}} with a socket value for @var{port} if one is Fills @cpp{*@var{s}} with a socket value for @var{port} if one is
available (i.e., the port is a TCP port and it is not closed). The available (i.e., the port is a TCP port and it is not closed). The
result is non-zero if the socket value is available, zero result is non-zero if the socket value is available, zero
otherwise. Under Windows, a socket value has type @cpp{SOCKET}.} otherwise. On Windows, a socket value has type @cpp{SOCKET}.}
@function[(Scheme_Object* scheme_make_port_type @function[(Scheme_Object* scheme_make_port_type
[char* name])]{ [char* name])]{
@ -512,7 +512,7 @@ The functions are as follows.
read, one for write, one for exceptions), but manipulate this read, one for write, one for exceptions), but manipulate this
array using @cppi{scheme_get_fdset} to get a particular element of array using @cppi{scheme_get_fdset} to get a particular element of
the array, and use @cppi{MZ_FD_XXX} instead of @cpp{FD_XXX} to the array, and use @cppi{MZ_FD_XXX} instead of @cpp{FD_XXX} to
manipulate a single ``@cpp{fd_set}''. Under Windows, the first manipulate a single ``@cpp{fd_set}''. On Windows, the first
``@cpp{fd_set}'' can also contain OS-level semaphores or other ``@cpp{fd_set}'' can also contain OS-level semaphores or other
handles via @cpp{scheme_add_fd_handle}.} handles via @cpp{scheme_add_fd_handle}.}
} }
@ -613,7 +613,7 @@ The functions are as follows.
read, one for write, one for exceptions), but manipulate this read, one for write, one for exceptions), but manipulate this
array using @cppi{scheme_get_fdset} to get a particular element of array using @cppi{scheme_get_fdset} to get a particular element of
the array, and use @cppi{MZ_FD_XXX} instead of @cpp{FD_XXX} to the array, and use @cppi{MZ_FD_XXX} instead of @cpp{FD_XXX} to
manipulate a single ``@cpp{fd_set}''. Under Windows, the first manipulate a single ``@cpp{fd_set}''. On Windows, the first
``@cpp{fd_set}'' can also contain OS-level semaphores or other ``@cpp{fd_set}'' can also contain OS-level semaphores or other
handles via @cpp{scheme_add_fd_handle}.} handles via @cpp{scheme_add_fd_handle}.}
@ -730,7 +730,7 @@ Creates a Racket output file port from an ANSI C file pointer. The
[int regfile] [int regfile]
[int win_textmode])]{ [int win_textmode])]{
Creates a Racket input port for a file descriptor @var{fd}. Under Creates a Racket input port for a file descriptor @var{fd}. On
Windows, @var{fd} can be a @cpp{HANDLE} for a stream, and it should Windows, @var{fd} can be a @cpp{HANDLE} for a stream, and it should
never be a file descriptor from the C library or a WinSock socket. never be a file descriptor from the C library or a WinSock socket.
@ -738,7 +738,7 @@ The @var{name} object is used for the port's name. Specify a non-zero
value for @var{regfile} only if the file descriptor corresponds to a value for @var{regfile} only if the file descriptor corresponds to a
regular file (which implies that reading never blocks, for example). regular file (which implies that reading never blocks, for example).
Under Windows, @var{win_textmode} can be non-zero to make trigger On Windows, @var{win_textmode} can be non-zero to make trigger
auto-conversion (at the byte level) of CRLF combinations to LF. auto-conversion (at the byte level) of CRLF combinations to LF.
Closing the resulting port closes the file descriptor. Closing the resulting port closes the file descriptor.
@ -756,7 +756,7 @@ Instead of calling both @cpp{scheme_make_fd_input_port} and
[int win_textmode] [int win_textmode]
[int read_too])]{ [int read_too])]{
Creates a Racket output port for a file descriptor @var{fd}. Under Creates a Racket output port for a file descriptor @var{fd}. On
Windows, @var{fd} can be a @cpp{HANDLE} for a stream, and it should Windows, @var{fd} can be a @cpp{HANDLE} for a stream, and it should
never be a file descriptor from the C library or a WinSock socket. never be a file descriptor from the C library or a WinSock socket.
@ -764,7 +764,7 @@ The @var{name} object is used for the port's name. Specify a non-zero
value for @var{regfile} only if the file descriptor corresponds to a value for @var{regfile} only if the file descriptor corresponds to a
regular file (which implies that reading never blocks, for example). regular file (which implies that reading never blocks, for example).
Under Windows, @var{win_textmode} can be non-zero to make trigger On Windows, @var{win_textmode} can be non-zero to make trigger
auto-conversion (at the byte level) of CRLF combinations to LF. auto-conversion (at the byte level) of CRLF combinations to LF.
Closing the resulting port closes the file descriptor. Closing the resulting port closes the file descriptor.

View File

@ -115,7 +115,7 @@ to run, block using @cppi{scheme_block_until}. This procedure takes
two functions: a polling function that tests whether the blocking two functions: a polling function that tests whether the blocking
operation can be completed, and a prepare-to-sleep function that sets operation can be completed, and a prepare-to-sleep function that sets
bits in @cpp{fd_set}s when Racket decides to sleep (because all Racket bits in @cpp{fd_set}s when Racket decides to sleep (because all Racket
threads are blocked). Under Windows, an ``@cpp{fd_set}'' can also threads are blocked). On Windows, an ``@cpp{fd_set}'' can also
accommodate OS-level semaphores or other handles via accommodate OS-level semaphores or other handles via
@cpp{scheme_add_fd_handle}. @cpp{scheme_add_fd_handle}.
@ -495,7 +495,7 @@ If Racket decides to sleep, then the @var{fdf} function is called to
@cpp{fd_set}s: one or reading, one for writing, and one for @cpp{fd_set}s: one or reading, one for writing, and one for
exceptions. Use @cpp{scheme_get_fdset} to get elements of this exceptions. Use @cpp{scheme_get_fdset} to get elements of this
array, and manipulate an ``@cpp{fd_set}'' with @cpp{MZ_FD_SET} array, and manipulate an ``@cpp{fd_set}'' with @cpp{MZ_FD_SET}
instead of @cpp{FD_SET}, etc. Under Windows, an ``@cpp{fd_set}'' can instead of @cpp{FD_SET}, etc. On Windows, an ``@cpp{fd_set}'' can
also accommodate OS-level semaphores or other handles via also accommodate OS-level semaphores or other handles via
@cpp{scheme_add_fd_handle}. @cpp{scheme_add_fd_handle}.
@ -595,7 +595,7 @@ The @cpp{scheme_add_fd_handle} function is useful for implementing
the second procedure passed to @cpp{scheme_wait_until}, or for the second procedure passed to @cpp{scheme_wait_until}, or for
implementing a custom input port. implementing a custom input port.
Under Unix and Mac OS X, this function has no effect.} On Unix and Mac OS X, this function has no effect.}
@function[(void scheme_add_fd_eventmask @function[(void scheme_add_fd_eventmask
@ -612,7 +612,7 @@ The event mask is only used when some handle is installed with
@cpp{scheme_add_fd_handle}. This awkward restriction may force you @cpp{scheme_add_fd_handle}. This awkward restriction may force you
to create a dummy semaphore that is never posted. to create a dummy semaphore that is never posted.
Under Unix, and Mac OS X, this function has no effect.} On Unix, and Mac OS X, this function has no effect.}
@function[(void scheme_add_evt @function[(void scheme_add_evt
[Scheme_Type type] [Scheme_Type type]

View File

@ -10,7 +10,7 @@
@margin-note{ @margin-note{
@not-on-the-web{ @not-on-the-web{
This is an installation-specific listing. Running @exec{raco docs} This is an installation-specific listing. Running @exec{raco docs}
(or @exec{Racket Documentation} under Windows or Mac OS X) (or @exec{Racket Documentation} on Windows or Mac OS X)
may open a different page with local and user-specific may open a different page with local and user-specific
documentation, including documentation for installed documentation, including documentation for installed
@link["http://planet.racket-lang.org/"]{@|PLaneT|} packages.}} @link["http://planet.racket-lang.org/"]{@|PLaneT|} packages.}}

View File

@ -11,9 +11,9 @@
The @racketmodname[compiler/bundle-dist] library provides a function The @racketmodname[compiler/bundle-dist] library provides a function
to pack a directory (usually assembled by to pack a directory (usually assembled by
@racket[assemble-distribution]) into a distribution file. Under @racket[assemble-distribution]) into a distribution file. On
Windows, the result is a @filepath{.zip} archive; under Mac OS X, it's Windows, the result is a @filepath{.zip} archive; on Mac OS X, it's
a @filepath{.dmg} disk image; under Unix, it's a @filepath{.tgz} a @filepath{.dmg} disk image; on Unix, it's a @filepath{.tgz}
archive.} archive.}
@ -27,7 +27,7 @@ has no extension, a file extension is added automatcially (using the
first result of @racket[bundle-put-file-extension+style+filters]). first result of @racket[bundle-put-file-extension+style+filters]).
The created archive contains a directory with the same name as The created archive contains a directory with the same name as
@racket[dir]---except under Mac OS X when @racket[for-exe?] is true @racket[dir]---except on Mac OS X when @racket[for-exe?] is true
and @racket[dir] contains a single a single file or directory, in and @racket[dir] contains a single a single file or directory, in
which case the created disk image contains just the file or which case the created disk image contains just the file or
directory. The default for @racket[for-exe?] is @racket[#f]. directory. The default for @racket[for-exe?] is @racket[#f].

View File

@ -15,7 +15,7 @@ system.
After the @exec{raco distribute} command, supply a directory to After the @exec{raco distribute} command, supply a directory to
contain the combined files for a distribution. Each command-line contain the combined files for a distribution. Each command-line
argument is an executable to include in the distribution, so multiple argument is an executable to include in the distribution, so multiple
executables can be packaged together. For example, under Windows, executables can be packaged together. For example, on Windows,
@commandline{raco distribute greetings hello.exe goodbye.exe} @commandline{raco distribute greetings hello.exe goodbye.exe}
@ -31,11 +31,11 @@ platform-specific:
@itemize[ @itemize[
@item{Under Windows, executables are put directly into the @item{On Windows, executables are put directly into the
distribution directory, and DLLs and other run-time files go distribution directory, and DLLs and other run-time files go
into a @filepath{lib} sub-directory.} into a @filepath{lib} sub-directory.}
@item{Under Mac OS X, GUI executables go into the distribution @item{On Mac OS X, GUI executables go into the distribution
directory, other executables go into a @filepath{bin} directory, other executables go into a @filepath{bin}
subdirectory, and frameworks (i.e., shared libraries) go into a subdirectory, and frameworks (i.e., shared libraries) go into a
@filepath{lib} sub-directory along with other run-time files. As @filepath{lib} sub-directory along with other run-time files. As
@ -43,7 +43,7 @@ platform-specific:
executable, then the @filepath{lib} directory is hidden inside executable, then the @filepath{lib} directory is hidden inside
the application bundle.} the application bundle.}
@item{Under Unix, executables go into a @filepath{bin} subdirectory, @item{On Unix, executables go into a @filepath{bin} subdirectory,
shared libraries (if any) go into a @filepath{lib} subdirectory shared libraries (if any) go into a @filepath{lib} subdirectory
along with other run-time files, and wrapped executables are along with other run-time files, and wrapped executables are
placed into a @filepath{lib/plt} subdirectory with placed into a @filepath{lib/plt} subdirectory with

View File

@ -95,7 +95,7 @@ parameter is true.
Copies the Racket (if @racket[gracket?] and @racket[mred?] are Copies the Racket (if @racket[gracket?] and @racket[mred?] are
@racket[#f]) or GRacket (otherwise) binary, embedding code into the @racket[#f]) or GRacket (otherwise) binary, embedding code into the
copied executable to be loaded on startup. Under Unix, the binary is copied executable to be loaded on startup. On Unix, the binary is
actually a wrapper executable that execs the original; see also the actually a wrapper executable that execs the original; see also the
@racket['original-exe?] tag for @racket[aux]. @racket['original-exe?] tag for @racket[aux].
@ -381,7 +381,7 @@ currently @racket[#f] for all platforms.}
boolean?]{ boolean?]{
Indicates whether Racket/GRacket executables for the current platform Indicates whether Racket/GRacket executables for the current platform
actually correspond to directories. The result is @racket[#t] under actually correspond to directories. The result is @racket[#t] on
Mac OS X when @racket[mred?] is @racket[#t], @racket[#f] otherwise.} Mac OS X when @racket[mred?] is @racket[#t], @racket[#f] otherwise.}

View File

@ -19,7 +19,7 @@ an executable produced by @exec{raco exe} will not improve performance
over @exec{raco make}. over @exec{raco make}.
The @exec{raco exe} command embeds a module, from source or byte The @exec{raco exe} command embeds a module, from source or byte
code, into a copy of the @exec{racket} executable. (Under Unix, the code, into a copy of the @exec{racket} executable. (On Unix, the
embedding executable is actually a copy of a wrapper executable.) The embedding executable is actually a copy of a wrapper executable.) The
created executable invokes the embedded module on startup. The created executable invokes the embedded module on startup. The
@DFlag{gui} flag causes the program to be embedded in a copy of the @DFlag{gui} flag causes the program to be embedded in a copy of the

View File

@ -40,7 +40,7 @@ platform-specific options (i.e., it is a list of pairs where the first
element of the pair is a key symbol and the second element is the element of the pair is a key symbol and the second element is the
value for that key). See also @racket[build-aux-from-path]. See value for that key). See also @racket[build-aux-from-path]. See
@racket[create-embedding-executable] for a list that applies to both @racket[create-embedding-executable] for a list that applies to both
stand-alone executables and launchers under Windows and Mac OS X GRacket; stand-alone executables and launchers on Windows and Mac OS X GRacket;
the following additional associations apply to launchers: the following additional associations apply to launchers:
@itemize[ @itemize[
@ -76,7 +76,7 @@ argument) are then appended after the spliced @racket[args].}
[aux (listof (cons/c symbol? any/c)) null]) [aux (listof (cons/c symbol? any/c)) null])
void?]{ void?]{
Like @racket[make-gracket-launcher], but for starting Racket. Under Mac Like @racket[make-gracket-launcher], but for starting Racket. On Mac
OS X, the @racket['exe-name] @racket[aux] association is ignored.} OS X, the @racket['exe-name] @racket[aux] association is ignored.}
@ -309,26 +309,26 @@ The recognized suffixes are as follows:
@itemize[ @itemize[
@item{@filepath{.icns} @'rarr @racket['icns] file for use under Mac @item{@filepath{.icns} @'rarr @racket['icns] file for use on Mac
OS X} OS X}
@item{@filepath{.ico} @'rarr @racket['ico] file for use under @item{@filepath{.ico} @'rarr @racket['ico] file for use on
Windows} Windows}
@item{@filepath{.lch} @'rarr @racket['independent?] as @racket[#t] @item{@filepath{.lch} @'rarr @racket['independent?] as @racket[#t]
(the file content is ignored) for use under Windows} (the file content is ignored) for use on Windows}
@item{@filepath{.creator} @'rarr @racket['creator] as the initial @item{@filepath{.creator} @'rarr @racket['creator] as the initial
four characters in the file for use under Mac OS X} four characters in the file for use on Mac OS X}
@item{@filepath{.filetypes} @'rarr @racket['file-types] as @item{@filepath{.filetypes} @'rarr @racket['file-types] as
@racket[read] content (a single S-expression), and @racket[read] content (a single S-expression), and
@racket['resource-files] as a list constructed by finding @racket['resource-files] as a list constructed by finding
@racket["CFBundleTypeIconFile"] entries in @racket['file-types] @racket["CFBundleTypeIconFile"] entries in @racket['file-types]
(and filtering duplicates); for use under Mac OS X} (and filtering duplicates); for use on Mac OS X}
@item{@filepath{.utiexports} @'rarr @racket['uti-exports] as @item{@filepath{.utiexports} @'rarr @racket['uti-exports] as
@racket[read] content (a single S-expression); for use under @racket[read] content (a single S-expression); for use on
Mac OS X} Mac OS X}
]} ]}
@ -337,8 +337,8 @@ The recognized suffixes are as follows:
A parameter that indicates a variant of Racket or GRacket to use for A parameter that indicates a variant of Racket or GRacket to use for
launcher creation and for generating launcher names. The default is launcher creation and for generating launcher names. The default is
the result of @racket[(system-type 'gc)]. Under Unix and Windows, the the result of @racket[(system-type 'gc)]. On Unix and Windows, the
possibilities are @racket['cgc] and @racket['3m]. Under Mac OS X, the possibilities are @racket['cgc] and @racket['3m]. On Mac OS X, the
@racket['script-3m] and @racket['script-cgc] variants are also @racket['script-3m] and @racket['script-cgc] variants are also
available for GRacket launchers.} available for GRacket launchers.}
@ -348,7 +348,7 @@ Returns a list of symbols corresponding to available variants of GRacket
in the current Racket installation. The list normally includes at in the current Racket installation. The list normally includes at
least one of @racket['3m] or @racket['cgc]--- whichever is the result least one of @racket['3m] or @racket['cgc]--- whichever is the result
of @racket[(system-type 'gc)]---and may include the other, as well as of @racket[(system-type 'gc)]---and may include the other, as well as
@racket['script-3m] and/or @racket['script-cgc] under Mac OS X.} @racket['script-3m] and/or @racket['script-cgc] on Mac OS X.}
@defproc[(available-racket-variants) (listof symbol?)]{ @defproc[(available-racket-variants) (listof symbol?)]{

View File

@ -985,7 +985,7 @@ An @deftech{unpackable} is one of the following:
@defproc[(find-dll-dir) (or/c path? false/c)]{ @defproc[(find-dll-dir) (or/c path? false/c)]{
Returns a path to the directory that contains DLLs for use with the Returns a path to the directory that contains DLLs for use with the
current executable (e.g., @filepath{libmzsch.dll} under Windows). current executable (e.g., @filepath{libmzsch.dll} on Windows).
The result is @racket[#f] if no such directory is available, or if no The result is @racket[#f] if no such directory is available, or if no
specific directory is available (i.e., other than the platform's normal specific directory is available (i.e., other than the platform's normal
search path).} search path).}

View File

@ -439,9 +439,9 @@ Certain encoding combinations are always available:
@secref["encodings"]).} @secref["encodings"]).}
@item{@scheme[(bytes-open-converter "platform-UTF-8" "platform-UTF-16")] @item{@scheme[(bytes-open-converter "platform-UTF-8" "platform-UTF-16")]
--- converts UTF-8 to UTF-16 under @|AllUnix|, where each UTF-16 --- converts UTF-8 to UTF-16 on @|AllUnix|, where each UTF-16
code unit is a sequence of two bytes ordered by the current code unit is a sequence of two bytes ordered by the current
platform's endianness. Under Windows, the input can include platform's endianness. On Windows, the input can include
encodings that are not valid UTF-8, but which naturally extend the encodings that are not valid UTF-8, but which naturally extend the
UTF-8 encoding to support unpaired surrogate code units, and the UTF-8 encoding to support unpaired surrogate code units, and the
output is a sequence of UTF-16 code units (as little-endian byte output is a sequence of UTF-16 code units (as little-endian byte
@ -450,15 +450,15 @@ Certain encoding combinations are always available:
@item{@scheme[(bytes-open-converter "platform-UTF-8-permissive" "platform-UTF-16")] @item{@scheme[(bytes-open-converter "platform-UTF-8-permissive" "platform-UTF-16")]
--- like @scheme[(bytes-open-converter "platform-UTF-8" "platform-UTF-16")], --- like @scheme[(bytes-open-converter "platform-UTF-8" "platform-UTF-16")],
but an input byte that is not part of a valid UTF-8 encoding but an input byte that is not part of a valid UTF-8 encoding
sequence (or valid for the unpaired-surrogate extension under sequence (or valid for the unpaired-surrogate extension on
Windows) is effectively replaced with @scheme[(char->integer #\?)].} Windows) is effectively replaced with @scheme[(char->integer #\?)].}
@item{@scheme[(bytes-open-converter "platform-UTF-16" "platform-UTF-8")] @item{@scheme[(bytes-open-converter "platform-UTF-16" "platform-UTF-8")]
--- converts UTF-16 (bytes orderd by the current platform's --- converts UTF-16 (bytes orderd by the current platform's
endianness) to UTF-8 under @|AllUnix|. Under Windows, the input can endianness) to UTF-8 on @|AllUnix|. On Windows, the input can
include UTF-16 code units that are unpaired surrogates, and the include UTF-16 code units that are unpaired surrogates, and the
corresponding output includes an encoding of each surrogate in a corresponding output includes an encoding of each surrogate in a
natural extension of UTF-8. Under @|AllUnix|, surrogates are natural extension of UTF-8. On @|AllUnix|, surrogates are
assumed to be paired: a pair of bytes with the bits @scheme[#xD800] assumed to be paired: a pair of bytes with the bits @scheme[#xD800]
starts a surrogate pair, and the @scheme[#x03FF] bits are used from starts a surrogate pair, and the @scheme[#x03FF] bits are used from
the pair and following pair (independent of the value of the the pair and following pair (independent of the value of the
@ -471,8 +471,8 @@ A newly opened byte converter is registered with the current custodian
(see @secref["custodians"]), so that the converter is closed when (see @secref["custodians"]), so that the converter is closed when
the custodian is shut down. A converter is not registered with a the custodian is shut down. A converter is not registered with a
custodian (and does not need to be closed) if it is one of the custodian (and does not need to be closed) if it is one of the
guaranteed combinations not involving @scheme[""] under Unix, or if it guaranteed combinations not involving @scheme[""] on Unix, or if it
is any of the guaranteed combinations (including @scheme[""]) under is any of the guaranteed combinations (including @scheme[""]) on
Windows and Mac OS X. Windows and Mac OS X.
@margin-note{In the Racket software distributions for Windows, a suitable @margin-note{In the Racket software distributions for Windows, a suitable
@ -481,7 +481,7 @@ Windows and Mac OS X.
The set of available encodings and combinations varies by platform, The set of available encodings and combinations varies by platform,
depending on the @exec{iconv} library that is installed; the depending on the @exec{iconv} library that is installed; the
@scheme[from-name] and @scheme[to-name] arguments are passed on to @scheme[from-name] and @scheme[to-name] arguments are passed on to
@tt{iconv_open}. Under Windows, @filepath{iconv.dll} or @tt{iconv_open}. On Windows, @filepath{iconv.dll} or
@filepath{libiconv.dll} must be in the same directory as @filepath{libiconv.dll} must be in the same directory as
@filepath{libmzsch@italic{VERS}.dll} (where @italic{VERS} is a version @filepath{libmzsch@italic{VERS}.dll} (where @italic{VERS} is a version
number), in the user's path, in the system directory, or in the number), in the user's path, in the system directory, or in the

View File

@ -108,8 +108,8 @@ Produces a list of paths as follows:
default collection path list (as constructed by the first three default collection path list (as constructed by the first three
bullets above) is used directly. bullets above) is used directly.
Note that under @|AllUnix|, paths are separated by @litchar{:}, and Note that on @|AllUnix|, paths are separated by @litchar{:}, and
under Windows by @litchar{;}. Also, on Windows by @litchar{;}. Also,
@racket[path-list-string->path-list] splices the default paths at an @racket[path-list-string->path-list] splices the default paths at an
empty path, for example, with many Unix shells you can set empty path, for example, with many Unix shells you can set
@envvar{PLTCOLLECTS} to @tt{":`pwd`"}, @tt{"`pwd`:"}, or @envvar{PLTCOLLECTS} to @tt{":`pwd`"}, @tt{"`pwd`:"}, or

View File

@ -58,17 +58,17 @@ the locale's encoding; and, finally, Racket provides functions such as
encoding. encoding.
A Unix user selects a locale by setting environment variables, such as A Unix user selects a locale by setting environment variables, such as
@envvar{LC_ALL}. Under Windows and Mac OS X, the operating system @envvar{LC_ALL}. On Windows and Mac OS X, the operating system
provides other mechanisms for setting the locale. Within Racket, the provides other mechanisms for setting the locale. Within Racket, the
current locale can be changed by setting the @racket[current-locale] current locale can be changed by setting the @racket[current-locale]
parameter. The locale name within Racket is a string, and the parameter. The locale name within Racket is a string, and the
available locale names depend on the platform and its configuration, available locale names depend on the platform and its configuration,
but the @racket[""] locale means the current user's default locale; but the @racket[""] locale means the current user's default locale;
under Windows and Mac OS X, the encoding for @racket[""] is always on Windows and Mac OS X, the encoding for @racket[""] is always
UTF-8, and locale-sensitive operations use the operating system's UTF-8, and locale-sensitive operations use the operating system's
native interface. (In particular, setting the @envvar{LC_ALL} and native interface. (In particular, setting the @envvar{LC_ALL} and
@envvar{LC_CTYPE} environment variables does not affect the locale @envvar{LC_CTYPE} environment variables does not affect the locale
@racket[""] under Mac OS X. Use @racket[getenv] and @racket[""] on Mac OS X. Use @racket[getenv] and
@racket[current-locale] to explicitly install the @racket[current-locale] to explicitly install the
environment-specified locale, if desired.) Setting the current locale environment-specified locale, if desired.) Setting the current locale
to @racket[#f] makes locale-sensitive operations locale-insensitive, to @racket[#f] makes locale-sensitive operations locale-insensitive,

View File

@ -74,13 +74,13 @@ translated on input:
]} ]}
] ]
Under Windows, @racket['text] mode works only with regular files; On Windows, @racket['text] mode works only with regular files;
attempting to use @racket['text] with other kinds of files triggers an attempting to use @racket['text] with other kinds of files triggers an
@racket[exn:fail:filesystem] exception. @racket[exn:fail:filesystem] exception.
Otherwise, the file specified by @racket[path] need not be a regular Otherwise, the file specified by @racket[path] need not be a regular
file. It might be a device that is connected through the filesystem, such file. It might be a device that is connected through the filesystem, such
as @filepath{aux} under Windows or @filepath{/dev/null} under Unix. In all as @filepath{aux} on Windows or @filepath{/dev/null} on Unix. In all
cases, the port is buffered by default. cases, the port is buffered by default.
The port produced by @racket[open-input-file] should be explicitly The port produced by @racket[open-input-file] should be explicitly
@ -119,13 +119,13 @@ are translated when written to the file:
@item{@racket['binary] --- bytes are written to the file exactly @item{@racket['binary] --- bytes are written to the file exactly
as written to the port.} as written to the port.}
@item{@racket['text] --- under Windows, a linefeed byte (10) written @item{@racket['text] --- on Windows, a linefeed byte (10) written
to the port is translated to a return-linefeed combination in the to the port is translated to a return-linefeed combination in the
file; no filtering occurs for returns.} file; no filtering occurs for returns.}
] ]
Under Windows, @racket['text] mode works only with regular files; On Windows, @racket['text] mode works only with regular files;
attempting to use @racket['text] with other kinds of files triggers an attempting to use @racket['text] with other kinds of files triggers an
@racket[exn:fail:filesystem] exception. @racket[exn:fail:filesystem] exception.
@ -160,7 +160,7 @@ files that already exist:
truncating it, or create the file if it does not exist.} truncating it, or create the file if it does not exist.}
@item{@indexed-racket['append] --- append to the end of the file, @item{@indexed-racket['append] --- append to the end of the file,
whether it already exists or not; under Windows, whether it already exists or not; on Windows,
@racket['append] is equivalent to @racket['update], except that @racket['append] is equivalent to @racket['update], except that
the file is not required to exist, and the file position is the file is not required to exist, and the file position is
immediately set to the end of the file after opening it.} immediately set to the end of the file after opening it.}
@ -169,7 +169,7 @@ files that already exist:
The file specified by @racket[path] need not be a regular file. It The file specified by @racket[path] need not be a regular file. It
might be a device that is connected through the filesystem, such as might be a device that is connected through the filesystem, such as
@filepath{aux} under Windows or @filepath{/dev/null} under Unix. The output @filepath{aux} on Windows or @filepath{/dev/null} on Unix. The output
port is block-buffered by default, unless the file corresponds to a port is block-buffered by default, unless the file corresponds to a
terminal, in which case it is line-buffered by default. terminal, in which case it is line-buffered by default.
@ -316,12 +316,12 @@ either it is released with @racket[port-file-unlock] or the port is closed
Depending on the platform, locks may be merely advisory (i.e., locks Depending on the platform, locks may be merely advisory (i.e., locks
affect only the ability of processes to acquire locks) or they may affect only the ability of processes to acquire locks) or they may
correspond to mandatory locks that prevent reads and writes to the correspond to mandatory locks that prevent reads and writes to the
locked file. Specifically, locks are mandatory under Windows and locked file. Specifically, locks are mandatory on Windows and
advisory on other platforms. advisory on other platforms.
Typically, locking is supported only for file ports, and attempting to Typically, locking is supported only for file ports, and attempting to
acquire a lock with other kinds of file-stream ports raises an acquire a lock with other kinds of file-stream ports raises an
@racket[exn:fail:filesystem] exception. Locking is not supported under Solaris, @racket[exn:fail:filesystem] exception. Locking is not supported on Solaris,
where the @racket[exn:fail:unsupported] exception is raised.} where the @racket[exn:fail:unsupported] exception is raised.}
@ -342,7 +342,7 @@ and only if the ports access the same device and file. For ports whose
open times do not overlap, no guarantee can be provided for the port open times do not overlap, no guarantee can be provided for the port
identities (even if the ports actually access the same file)---except identities (even if the ports actually access the same file)---except
as can be inferred through relationships with other ports. If as can be inferred through relationships with other ports. If
@racket[port] is closed, the @exnraise[exn:fail]. Under @racket[port] is closed, the @exnraise[exn:fail]. On
Windows 95, 98, and Me, if @racket[port] is connected to a Windows 95, 98, and Me, if @racket[port] is connected to a
pipe instead of a file, the @exnraise[exn:fail:filesystem]. pipe instead of a file, the @exnraise[exn:fail:filesystem].

View File

@ -24,14 +24,14 @@ by @racket[kind], which must be one of the following:
@item{@indexed-racket['home-dir] --- the current user's home @item{@indexed-racket['home-dir] --- the current user's home
directory. directory.
Under Unix and Mac OS X, this directory is determined by expanding On Unix and Mac OS X, this directory is determined by expanding
the path @filepath{~}, which is expanded by first checking for a the path @filepath{~}, which is expanded by first checking for a
@indexed-envvar{HOME} environment variable. If none is defined, the @indexed-envvar{HOME} environment variable. If none is defined, the
@indexed-envvar{USER} and @indexed-envvar{LOGNAME} environment @indexed-envvar{USER} and @indexed-envvar{LOGNAME} environment
variables are consulted (in that order) to find a user name, and then variables are consulted (in that order) to find a user name, and then
system files are consulted to locate the user's home directory. system files are consulted to locate the user's home directory.
Under Windows, the user's home directory is the user-specific profile On Windows, the user's home directory is the user-specific profile
directory as determined by the Windows registry. If the registry directory as determined by the Windows registry. If the registry
cannot provide a directory for some reason, the value of the cannot provide a directory for some reason, the value of the
@indexed-envvar{USERPROFILE} environment variable is used instead, as @indexed-envvar{USERPROFILE} environment variable is used instead, as
@ -43,27 +43,27 @@ by @racket[kind], which must be one of the following:
the current executable is used as the home directory.} the current executable is used as the home directory.}
@item{@indexed-racket['pref-dir] --- the standard directory for @item{@indexed-racket['pref-dir] --- the standard directory for
storing the current user's preferences. Under Unix, the directory is storing the current user's preferences. On Unix, the directory is
@filepath{.racket} in the user's home directory. Under Windows, it @filepath{.racket} in the user's home directory. On Windows, it
is @filepath{Racket} in the user's application-data folder as is @filepath{Racket} in the user's application-data folder as
specified by the Windows registry; the application-data folder is specified by the Windows registry; the application-data folder is
usually @filepath{Application Data} in the user's profile usually @filepath{Application Data} in the user's profile
directory. Under Mac OS X, it is @filepath{Library/Preferences} in the directory. On Mac OS X, it is @filepath{Library/Preferences} in the
user's home directory. This directory might not exist.} user's home directory. This directory might not exist.}
@item{@indexed-racket['pref-file] --- a file that contains a @item{@indexed-racket['pref-file] --- a file that contains a
symbol-keyed association list of preference values. The file's symbol-keyed association list of preference values. The file's
directory path always matches the result returned for directory path always matches the result returned for
@racket['pref-dir]. The file name is @filepath{racket-prefs.rktd} under Unix @racket['pref-dir]. The file name is @filepath{racket-prefs.rktd} on Unix
and Windows, and it is @filepath{org.racket-lang.prefs.rktd} under Mac OS and Windows, and it is @filepath{org.racket-lang.prefs.rktd} on Mac OS
X. The file's directory might not exist. See also X. The file's directory might not exist. See also
@racket[get-preference].} @racket[get-preference].}
@item{@indexed-racket['temp-dir] --- the standard directory for @item{@indexed-racket['temp-dir] --- the standard directory for
storing temporary files. Under @|AllUnix|, this is the directory storing temporary files. On @|AllUnix|, this is the directory
specified by the @indexed-envvar{TMPDIR} environment variable, if it specified by the @indexed-envvar{TMPDIR} environment variable, if it
is defined, otherwise it is the first path that exists among is defined, otherwise it is the first path that exists among
@filepath{/var/tmp}, @filepath{/usr/tmp}, and @filepath{/tmp}. Under @filepath{/var/tmp}, @filepath{/usr/tmp}, and @filepath{/tmp}. On
Windows, the result is the directory specified by the Windows, the result is the directory specified by the
@indexed-envvar{TMP} or @indexed-envvar{TEMP} environment variable, @indexed-envvar{TMP} or @indexed-envvar{TEMP} environment variable,
if it is defined, otherwise it is the current directory.} if it is defined, otherwise it is the current directory.}
@ -91,27 +91,27 @@ by @racket[kind], which must be one of the following:
overridden by the @DFlag{addon} or @Flag{A} command-line flag. If no overridden by the @DFlag{addon} or @Flag{A} command-line flag. If no
environment variable or flag is specified, or if the value is not a environment variable or flag is specified, or if the value is not a
legal path name, then this directory defaults to legal path name, then this directory defaults to
@filepath{Library/Racket} in the user's home directory under Mac @filepath{Library/Racket} in the user's home directory on Mac
OS X and @racket['pref-dir] otherwise. This directory might not OS X and @racket['pref-dir] otherwise. This directory might not
exist.} exist.}
@item{@indexed-racket['doc-dir] --- the standard directory for @item{@indexed-racket['doc-dir] --- the standard directory for
storing the current user's documents. Under Unix, it's the same as storing the current user's documents. On Unix, it's the same as
@racket['home-dir]. Under Mac OS X, it's the @racket['home-dir]. On Mac OS X, it's the
@filepath{Documents} directory in the user's home directory. Under @filepath{Documents} directory in the user's home directory. On
Windows, it is the user's documents folder as specified by the Windows, it is the user's documents folder as specified by the
Windows registry; the documents folder is usually @filepath{My Documents} Windows registry; the documents folder is usually @filepath{My Documents}
in the user's home directory.} in the user's home directory.}
@item{@indexed-racket['desk-dir] --- the directory for the current user's @item{@indexed-racket['desk-dir] --- the directory for the current user's
desktop. Under Unix, it's the same as @racket['home-dir]. Under desktop. On Unix, it's the same as @racket['home-dir]. On
Windows, it is the user's desktop folder as specified by the Windows Windows, it is the user's desktop folder as specified by the Windows
registry; the documents folder is usually @filepath{Desktop} in the registry; the documents folder is usually @filepath{Desktop} in the
user's home directory. Under Mac OS X, it is the desktop directory, user's home directory. On Mac OS X, it is the desktop directory,
which is specifically @filepath{~/Desktop} under Mac OS X.} which is specifically @filepath{~/Desktop} on Mac OS X.}
@item{@indexed-racket['sys-dir] --- the directory containing the @item{@indexed-racket['sys-dir] --- the directory containing the
operating system for Windows. Under @|AllUnix|, the operating system for Windows. On @|AllUnix|, the
result is @racket["/"].} result is @racket["/"].}
@item{@indexed-racket['exec-file] --- the path of the Racket @item{@indexed-racket['exec-file] --- the path of the Racket
@ -152,8 +152,8 @@ by @racket[kind], which must be one of the following:
(listof path?)]{ (listof path?)]{
Parses a string or byte string containing a list of paths, and returns Parses a string or byte string containing a list of paths, and returns
a list of path strings. Under @|AllUnix|, paths in a path list are a list of path strings. On @|AllUnix|, paths in a path list are
separated by a @litchar{:}; under Windows, paths are separated by a separated by a @litchar{:}; on Windows, paths are separated by a
@litchar{;}, and all @litchar{"}s in the string are discarded. Whenever the path @litchar{;}, and all @litchar{"}s in the string are discarded. Whenever the path
list contains an empty path, the list list contains an empty path, the list
@racket[default-path-list] is spliced into the returned list of @racket[default-path-list] is spliced into the returned list of
@ -179,7 +179,7 @@ This procedure is used by the Racket executable to find the
standard library collection directory (see @secref["collects"]). In standard library collection directory (see @secref["collects"]). In
this case, @racket[program] is the name used to start Racket and this case, @racket[program] is the name used to start Racket and
@racket[related] is @racket["collects"]. The @racket[related-sub] @racket[related] is @racket["collects"]. The @racket[related-sub]
argument is used because, under @|AllUnix|, @racket[program-sub] may argument is used because, on @|AllUnix|, @racket[program-sub] may
involve to a sequence of soft links; in this case, involve to a sequence of soft links; in this case,
@racket[related-sub] determines which link in the chain is relevant. @racket[related-sub] determines which link in the chain is relevant.
@ -202,10 +202,10 @@ variable is defined, @racket[find-executable-path] tries each path in
algorithm described above for path-containing algorithm described above for path-containing
@racket[program-sub]s. If the @envvar{PATH} environment variable is @racket[program-sub]s. If the @envvar{PATH} environment variable is
not defined, @racket[program-sub] is prefixed with the current not defined, @racket[program-sub] is prefixed with the current
directory and used in the search algorithm above. (Under Windows, the directory and used in the search algorithm above. (On Windows, the
current directory is always implicitly the first item in current directory is always implicitly the first item in
@envvar{PATH}, so @racket[find-executable-path] checks the current @envvar{PATH}, so @racket[find-executable-path] checks the current
directory first under Windows.)} directory first on Windows.)}
@;------------------------------------------------------------------------ @;------------------------------------------------------------------------
@section[#:tag "fileutils"]{Files} @section[#:tag "fileutils"]{Files}
@ -215,7 +215,7 @@ directory first under Windows.)}
Returns @racket[#t] if a file (not a directory) @racket[path] exists, Returns @racket[#t] if a file (not a directory) @racket[path] exists,
@racket[#f] otherwise. @racket[#f] otherwise.
Under Windows, @racket[file-exists?] reports @racket[#t] for all On Windows, @racket[file-exists?] reports @racket[#t] for all
variations of the special filenames (e.g., @racket["LPT1"], variations of the special filenames (e.g., @racket["LPT1"],
@racket["x:/baddir/LPT1"]).} @racket["x:/baddir/LPT1"]).}
@ -257,10 +257,10 @@ a directory. Unless @racket[exists-ok?] is provided as a true value,
file when @racket[old] is a directory, and vice versa. file when @racket[old] is a directory, and vice versa.
If @racket[new] exists and is replaced, the replacement is atomic If @racket[new] exists and is replaced, the replacement is atomic
under Unix and Mac OS X, but it is not guaranteed to be atomic under on Unix and Mac OS X, but it is not guaranteed to be atomic on
Windows. Furthermore, if @racket[new] exists and is opened by any Windows. Furthermore, if @racket[new] exists and is opened by any
process for reading or writing, then attempting to replace it will process for reading or writing, then attempting to replace it will
typically fail under Windows. typically fail on Windows.
If @racket[old] is a link, the link is renamed rather than the If @racket[old] is a link, the link is renamed rather than the
destination of the link, and it counts as a file for replacing any destination of the link, and it counts as a file for replacing any
@ -275,7 +275,7 @@ existing @racket[new].}
Returns the file or directory's last modification date as Returns the file or directory's last modification date as
platform-specific seconds (see also @secref["time"]) when platform-specific seconds (see also @secref["time"]) when
@racket[secs-n] is not provided or is @racket[#f]. (For FAT @racket[secs-n] is not provided or is @racket[#f]. (For FAT
filesystems under Windows, directories do not have modification filesystems on Windows, directories do not have modification
dates. Therefore, the creation date is returned for a directory, but dates. Therefore, the creation date is returned for a directory, but
the modification date is returned for a file.) the modification date is returned for a file.)
@ -294,7 +294,7 @@ called, and the default @racket[fail-thunk] raises
When given one argument or @racket[#f] as the second argument, returns When given one argument or @racket[#f] as the second argument, returns
a list containing @indexed-racket['read], @indexed-racket['write], a list containing @indexed-racket['read], @indexed-racket['write],
and/or @indexed-racket['execute] to indicate permission the given file and/or @indexed-racket['execute] to indicate permission the given file
or directory path by the current user and group. Under @|AllUnix|, or directory path by the current user and group. On @|AllUnix|,
permissions are checked for the current effective user instead of the permissions are checked for the current effective user instead of the
real user. real user.
@ -317,9 +317,9 @@ members of the file or directory's group, or other users:
@item{@racketvalfont{#o004} : others have execute permission} @item{@racketvalfont{#o004} : others have execute permission}
] ]
See also @racket[user-read-bit], etc. Under Windows, permissions from See also @racket[user-read-bit], etc. On Windows, permissions from
all three (owner, group, and others) are always the same, and read and all three (owner, group, and others) are always the same, and read and
execute permission are always available. Under @|AllUnix|, execute permission are always available. On @|AllUnix|,
higher bits have a platform-specific meaning. higher bits have a platform-specific meaning.
If an integer is supplied as the second argument, its is used as an If an integer is supplied as the second argument, its is used as an
@ -346,7 +346,7 @@ identity of the referenced file or directory (if any).}
@defproc[(file-size [path path-string?]) exact-nonnegative-integer?]{ @defproc[(file-size [path path-string?]) exact-nonnegative-integer?]{
Returns the (logical) size of the specified file in bytes. Under Mac Returns the (logical) size of the specified file in bytes. On Mac
OS X, this size excludes the resource-fork size. On error (e.g., if no OS X, this size excludes the resource-fork size. On error (e.g., if no
such file exists), the @exnraise[exn:fail:filesystem].} such file exists), the @exnraise[exn:fail:filesystem].}
@ -356,18 +356,18 @@ such file exists), the @exnraise[exn:fail:filesystem].}
Creates the file @racket[dest] as a copy of @racket[src]. If the file Creates the file @racket[dest] as a copy of @racket[src]. If the file
is not successfully copied, the @exnraise[exn:fail:filesystem]. If is not successfully copied, the @exnraise[exn:fail:filesystem]. If
@racket[dest] already exists, the copy will fail. File permissions are @racket[dest] already exists, the copy will fail. File permissions are
preserved in the copy. Under Mac OS X, the resource fork is also preserved in the copy. On Mac OS X, the resource fork is also
preserved in the copy. If @racket[src] refers to a link, the target of preserved in the copy. If @racket[src] refers to a link, the target of
the link is copied, rather than the link itself.} the link is copied, rather than the link itself.}
@defproc[(make-file-or-directory-link [to path-string?] [path path-string?]) @defproc[(make-file-or-directory-link [to path-string?] [path path-string?])
void?]{ void?]{
Creates a link @racket[path] to @racket[to] under @|AllUnix|. The Creates a link @racket[path] to @racket[to] on @|AllUnix|. The
creation will fail if @racket[path] already exists. The @racket[to] creation will fail if @racket[path] already exists. The @racket[to]
need not refer to an existing file or directory, and @racket[to] is need not refer to an existing file or directory, and @racket[to] is
not expanded before writing the link. If the link is not created not expanded before writing the link. If the link is not created
successfully,the @exnraise[exn:fail:filesystem]. Under Windows, the successfully,the @exnraise[exn:fail:filesystem]. On Windows, the
@exnraise[exn:fail:unsupported] always.} @exnraise[exn:fail:unsupported] always.}
@;------------------------------------------------------------------------ @;------------------------------------------------------------------------
@ -424,14 +424,14 @@ directory is not deleted successfully, the
@margin-note{See also the @scheme[in-directory] sequence constructor.} @margin-note{See also the @scheme[in-directory] sequence constructor.}
Returns a list of all files and directories in the directory specified Returns a list of all files and directories in the directory specified
by @racket[path]. Under Windows, an element of the list may start with by @racket[path]. On Windows, an element of the list may start with
@litchar{\\?\REL\\}.} @litchar{\\?\REL\\}.}
@defproc[(filesystem-root-list) (listof path?)]{ @defproc[(filesystem-root-list) (listof path?)]{
Returns a list of all current root directories. Obtaining this list Returns a list of all current root directories. Obtaining this list
can be particularly slow under Windows.} can be particularly slow on Windows.}
@;------------------------------------------------------------------------ @;------------------------------------------------------------------------
@section[#:tag "runtime-path"]{Declaring Paths Needed at Run Time} @section[#:tag "runtime-path"]{Declaring Paths Needed at Run Time}
@ -937,7 +937,7 @@ then the cache is used only if the file has a timestamp that is the
same as the last time the file was read. Otherwise, the file is same as the last time the file was read. Otherwise, the file is
re-consulted. re-consulted.
Under platforms for which @racket[preferences-lock-file-mode] returns On platforms for which @racket[preferences-lock-file-mode] returns
@racket['file-lock] and when @racket[use-lock?] is true, @racket['file-lock] and when @racket[use-lock?] is true,
preference-file reading is guarded by a lock; multiple readers can preference-file reading is guarded by a lock; multiple readers can
share the lock, but writers take the lock exclusively. If the share the lock, but writers take the lock exclusively. If the
@ -1017,7 +1017,7 @@ indicates that a write lock is held, and readers need no lock (because
the preferences file is atomically updated via the preferences file is atomically updated via
@racket[rename-file-or-directory]). @racket[rename-file-or-directory]).
The @racket['file-lock] mode is currently used under Windows. In The @racket['file-lock] mode is currently used on Windows. In
@racket['file-lock] mode, shared and exclusive locks (in the sense of @racket['file-lock] mode, shared and exclusive locks (in the sense of
@racket[port-try-file-lock?]) on the lock file reflect reader and @racket[port-try-file-lock?]) on the lock file reflect reader and
writer locks on the preference-file content. (The preference file writer locks on the preference-file content. (The preference file

View File

@ -45,7 +45,7 @@ accepts only connections to @racket["127.0.0.1"] (the loopback
interface) from the local machine. interface) from the local machine.
(Racket implements a listener with multiple sockets, if necessary, to (Racket implements a listener with multiple sockets, if necessary, to
accommodate multiple addresses with different protocol families. Under accommodate multiple addresses with different protocol families. On
Linux, if @racket[hostname] maps to both IPv4 and IPv6 addresses, then Linux, if @racket[hostname] maps to both IPv4 and IPv6 addresses, then
the behavior depends on whether IPv6 is supported and IPv6 sockets can the behavior depends on whether IPv6 is supported and IPv6 sockets can
be configured to listen to only IPv6 connections: if IPv6 is not be configured to listen to only IPv6 connections: if IPv6 is not

View File

@ -129,7 +129,7 @@ Windows paths.
If @racket[str] does not correspond to any path element If @racket[str] does not correspond to any path element
(e.g., it is an absolute path, or it can be split), or if it (e.g., it is an absolute path, or it can be split), or if it
corresponds to an up-directory or same-directory indicator under corresponds to an up-directory or same-directory indicator on
@|AllUnix|, then @exnraise[exn:fail:contract]. @|AllUnix|, then @exnraise[exn:fail:contract].
As for @racket[path->string], information can be lost from As for @racket[path->string], information can be lost from
@ -155,7 +155,7 @@ elements is necessary.}
@defproc[(path-element->string [path path?]) string?]{ @defproc[(path-element->string [path path?]) string?]{
Like @racket[path->string], except that trailing path separators are Like @racket[path->string], except that trailing path separators are
removed (as by @racket[split-path]). Under Windows, any removed (as by @racket[split-path]). On Windows, any
@litchar{\\?\REL} encoding prefix is also removed; see @litchar{\\?\REL} encoding prefix is also removed; see
@secref["windowspaths"] for more information on Windows paths. @secref["windowspaths"] for more information on Windows paths.
@ -326,7 +326,7 @@ This procedure does not access the filesystem.}
Returns @racket[path] if @racket[path] syntactically refers to a Returns @racket[path] if @racket[path] syntactically refers to a
directory and ends in a separator, otherwise it returns an extended directory and ends in a separator, otherwise it returns an extended
version of @racket[path] that specifies a directory and ends with a version of @racket[path] that specifies a directory and ends with a
separator. For example, under @|AllUnix|, the path @filepath{x/y/} separator. For example, on @|AllUnix|, the path @filepath{x/y/}
syntactically refers to a directory and ends in a separator, but syntactically refers to a directory and ends in a separator, but
@filepath{x/y} would be extended to @filepath{x/y/}, and @filepath{x/..} would be @filepath{x/y} would be extended to @filepath{x/y/}, and @filepath{x/..} would be
extended to @filepath{x/../}. The @racket[path] argument can be a path for extended to @filepath{x/../}. The @racket[path] argument can be a path for
@ -338,7 +338,7 @@ This procedure does not access the filesystem.}
@defproc[(resolve-path [path path-string?]) path?]{ @defproc[(resolve-path [path path-string?]) path?]{
@tech{Cleanse}s @racket[path] and returns a path that references the @tech{Cleanse}s @racket[path] and returns a path that references the
same file or directory as @racket[path]. Under @|AllUnix|, if same file or directory as @racket[path]. On @|AllUnix|, if
@racket[path] is a soft link to another path, then the referenced path @racket[path] is a soft link to another path, then the referenced path
is returned (this may be a relative path with respect to the directory is returned (this may be a relative path with respect to the directory
owning @racket[path]), otherwise @racket[path] is returned (after owning @racket[path]), otherwise @racket[path] is returned (after
@ -354,7 +354,7 @@ this chapter) without consulting the filesystem.}
@defproc[(expand-user-path [path path-string?]) path?]{ @defproc[(expand-user-path [path path-string?]) path?]{
@techlink{Cleanse}s @racket[path]. In addition, under @|AllUnix|, a @techlink{Cleanse}s @racket[path]. In addition, on @|AllUnix|, a
leading @litchar{~} is treated as user's home directory and expanded; leading @litchar{~} is treated as user's home directory and expanded;
the username follows the @litchar{~} (before a @litchar{/} or the end the username follows the @litchar{~} (before a @litchar{/} or the end
of the path), where @litchar{~} by itself indicates the home directory of the path), where @litchar{~} by itself indicates the home directory
@ -373,7 +373,7 @@ accesses the same file or directory (if it exists) as @racket[path].
In general, the pathname is normalized as much as possible---without In general, the pathname is normalized as much as possible---without
consulting the filesystem if @racket[use-filesystem?] is @racket[#f], consulting the filesystem if @racket[use-filesystem?] is @racket[#f],
and (under Windows) without changing the case of letters within the and (on Windows) without changing the case of letters within the
path. If @racket[path] syntactically refers to a directory, the path. If @racket[path] syntactically refers to a directory, the
result ends with a directory separator. result ends with a directory separator.
@ -451,9 +451,9 @@ directory or file name. Three values are returned:
@item{a directory-name path,} @item{a directory-name path,}
@item{a filename,} @item{a filename,}
@item{@racket['up] if the last part of @racket[path] specifies the parent @item{@racket['up] if the last part of @racket[path] specifies the parent
directory of the preceding path (e.g., @litchar{..} under Unix), or} directory of the preceding path (e.g., @litchar{..} on Unix), or}
@item{@racket['same] if the last part of @racket[path] specifies the @item{@racket['same] if the last part of @racket[path] specifies the
same directory as the preceding path (e.g., @litchar{.} under Unix).} same directory as the preceding path (e.g., @litchar{.} on Unix).}
]} ]}
@item{@racket[must-be-dir?] is @racket[#t] if @racket[path] explicitly @item{@racket[must-be-dir?] is @racket[#t] if @racket[path] explicitly

View File

@ -69,18 +69,18 @@ platform-specific format.}
Returns a string to identify the current user's language and Returns a string to identify the current user's language and
country. country.
Under Unix and Mac OS X, the string is five characters: two lowercase On Unix and Mac OS X, the string is five characters: two lowercase
ASCII letters for the language, an underscore, and two uppercase ASCII ASCII letters for the language, an underscore, and two uppercase ASCII
letters for the country. Under Windows, the string can be arbitrarily letters for the country. On Windows, the string can be arbitrarily
long, but the language and country are in English (all ASCII letters long, but the language and country are in English (all ASCII letters
or spaces) separated by an underscore. or spaces) separated by an underscore.
Under Unix, the result is determined by checking the On Unix, the result is determined by checking the
@indexed-envvar{LC_ALL}, @indexed-envvar{LC_TYPE}, and @indexed-envvar{LC_ALL}, @indexed-envvar{LC_TYPE}, and
@indexed-envvar{LANG} environment variables, in that order (and the @indexed-envvar{LANG} environment variables, in that order (and the
result is used if the environment variable's value starts with two result is used if the environment variable's value starts with two
lowercase ASCII letters, an underscore, and two uppercase ASCII lowercase ASCII letters, an underscore, and two uppercase ASCII
letters, followed by either nothing or a period). Under Windows and letters, followed by either nothing or a period). On Windows and
Mac OS X, the result is determined by system calls.} Mac OS X, the result is determined by system calls.}
@ -90,7 +90,7 @@ Mac OS X, the result is determined by system calls.}
Returns a relative directory path. This string can be used to build Returns a relative directory path. This string can be used to build
paths to system-specific files. For example, when Racket is running paths to system-specific files. For example, when Racket is running
under Solaris on a Sparc architecture, the subpath starts on Solaris on a Sparc architecture, the subpath starts
@racket["sparc-solaris"], while the subpath for Windows on an i386 @racket["sparc-solaris"], while the subpath for Windows on an i386
architecture starts @racket["win32\\i386"]. architecture starts @racket["win32\\i386"].

View File

@ -21,19 +21,19 @@ The core Racket run-time system is available in two main variants:
@itemize[ @itemize[
@item{Racket, which provides the primitives libraries on which @item{Racket, which provides the primitives libraries on which
@racketmodname[racket/base] is implemented. Under Unix and Mac @racketmodname[racket/base] is implemented. On Unix and Mac
OS X, the executable is called OS X, the executable is called
@as-index{@exec{racket}}. Under Windows, the executable is @as-index{@exec{racket}}. On Windows, the executable is
called @as-index{@exec{Racket.exe}}.} called @as-index{@exec{Racket.exe}}.}
@item{GRacket, which is a GUI variant of @exec{racket} to the degree @item{GRacket, which is a GUI variant of @exec{racket} to the degree
that the system distinguishes them. Under Unix, the executable that the system distinguishes them. On Unix, the executable
is called @as-index{@exec{gracket}}, and single-instance flags is called @as-index{@exec{gracket}}, and single-instance flags
and X11-related flags are handled and communicated specially to and X11-related flags are handled and communicated specially to
the @racket[racket/gui/base] library. Under Windows, the the @racket[racket/gui/base] library. On Windows, the
executable is called @as-index{@exec{GRacket.exe}}, and it is a executable is called @as-index{@exec{GRacket.exe}}, and it is a
GUI application (as opposed to a console application) that GUI application (as opposed to a console application) that
implements singe-instance support. Under Mac OS X, the implements singe-instance support. On Mac OS X, the
@exec{gracket} script launches @as-index{@exec{GRacket.app}}.} @exec{gracket} script launches @as-index{@exec{GRacket.app}}.}
] ]
@ -316,7 +316,7 @@ If no command-line arguments are supplied other than
@tech{configuration options}, then the @Flag{i}/@DFlag{repl} flag is @tech{configuration options}, then the @Flag{i}/@DFlag{repl} flag is
effectively added. effectively added.
For GRacket under X11, the follow flags are recognized when they appear For GRacket on Unix, the follow flags are recognized when they appear
at the beginning of the command line, and they count as configuration at the beginning of the command line, and they count as configuration
options (i.e., they do not disable the read-eval-print loop or prevent options (i.e., they do not disable the read-eval-print loop or prevent
the insertion of @Flag{u}/@DFlag{require-script}): the insertion of @Flag{u}/@DFlag{require-script}):
@ -352,7 +352,7 @@ the insertion of @Flag{u}/@DFlag{require-script}):
] ]
Similarly, under Mac OS X, a leading switch starting with Similarly, on Mac OS X, a leading switch starting with
@FlagFirst{psn_} is treated as a special configuration option. It @FlagFirst{psn_} is treated as a special configuration option. It
indicates that Finder started the application, so the current input, indicates that Finder started the application, so the current input,
output, and error output are redirected to a GUI window. output, and error output are redirected to a GUI window.

View File

@ -60,7 +60,7 @@ must be one of the following symbols:
Return and linefeed characters are detected after the conversions that Return and linefeed characters are detected after the conversions that
are automatically performed when reading a file in text mode. For are automatically performed when reading a file in text mode. For
example, reading a file in text mode under Windows automatically example, reading a file in text mode on Windows automatically
changes return-linefeed combinations to a linefeed. Thus, when a file changes return-linefeed combinations to a linefeed. Thus, when a file
is opened in text mode, @scheme['linefeed] is usually the appropriate is opened in text mode, @scheme['linefeed] is usually the appropriate
@scheme[read-line] mode.} @scheme[read-line] mode.}

View File

@ -29,17 +29,17 @@ Creates a new process in the underlying operating system to execute
@racket[process] from @racketmodname[racket/system]. @racket[process] from @racketmodname[racket/system].
The @racket[command] argument is a path to a program executable, and The @racket[command] argument is a path to a program executable, and
the @racket[arg]s are command-line arguments for the program. Under the @racket[arg]s are command-line arguments for the program. On
Unix and Mac OS X, command-line arguments are passed as byte strings, Unix and Mac OS X, command-line arguments are passed as byte strings,
and string @racket[args] are converted using the current locale's and string @racket[args] are converted using the current locale's
encoding (see @secref["encodings"]). Under Windows, command-line encoding (see @secref["encodings"]). On Windows, command-line
arguments are passed as strings, and bytes strings are converted using arguments are passed as strings, and bytes strings are converted using
UTF-8. UTF-8.
Under Windows, the first @racket[arg] can be replaced with On Windows, the first @racket[arg] can be replaced with
@indexed-racket['exact], which triggers a Windows-specific behavior: @indexed-racket['exact], which triggers a Windows-specific behavior:
the sole @racket[arg] is used exactly as the command-line for the the sole @racket[arg] is used exactly as the command-line for the
subprocess. Otherwise, under Windows, a command-line string is subprocess. Otherwise, on Windows, a command-line string is
constructed from @racket[command] and @racket[arg] so that a typical constructed from @racket[command] and @racket[arg] so that a typical
Windows console application can parse it back to an array of Windows console application can parse it back to an array of
arguments. If @racket['exact] is provided on a non-Windows platform, arguments. If @racket['exact] is provided on a non-Windows platform,
@ -132,14 +132,14 @@ current platform:
@item{@racket[force?] is true, not a group, all platforms: Terminates @item{@racket[force?] is true, not a group, all platforms: Terminates
the process if the process still running.} the process if the process still running.}
@item{@racket[force?] is false, not a group, under Unix or Mac OS X: @item{@racket[force?] is false, not a group, on Unix or Mac OS X:
Sends the process an interrupt signal instead of a kill Sends the process an interrupt signal instead of a kill
signal.} signal.}
@item{@racket[force?] is false, not a group, under Windows: No action @item{@racket[force?] is false, not a group, on Windows: No action
is taken.} is taken.}
@item{@racket[force?] is true, a group, under Unix or Mac OS X: @item{@racket[force?] is true, a group, on Unix or Mac OS X:
Terminates all processes in the group, but only if Terminates all processes in the group, but only if
@racket[subprocess-status] has never produced a @racket[subprocess-status] has never produced a
non-@racket['running] result for the subprocess and only if non-@racket['running] result for the subprocess and only if
@ -149,15 +149,15 @@ current platform:
terminated while the continued existence of the group is terminated while the continued existence of the group is
unknown).} unknown).}
@item{@racket[force?] is true, a group, under Windows: Terminates @item{@racket[force?] is true, a group, on Windows: Terminates
the process if the process still running.} the process if the process still running.}
@item{@racket[force?] is false, a group, under Unix or Mac OS X: The @item{@racket[force?] is false, a group, on Unix or Mac OS X: The
same as when @racket[force?] is @scheme[#t], but when the group same as when @racket[force?] is @scheme[#t], but when the group
is sent a signal, it is an interrupt signal instead of a kill is sent a signal, it is an interrupt signal instead of a kill
signal.} signal.}
@item{@racket[force?] is false, a group, under Windows: All processes @item{@racket[force?] is false, a group, on Windows: All processes
in the group receive a CTRL-BREAK signal (independent of in the group receive a CTRL-BREAK signal (independent of
whether the immediate subprocess has terminated).} whether the immediate subprocess has terminated).}
@ -339,7 +339,7 @@ is executed directly (instead of through a shell command), and the
specified string arguments (which must contain no nul specified string arguments (which must contain no nul
characters). characters).
Under Windows, the first argument after @racket[command] can be On Windows, the first argument after @racket[command] can be
@racket['exact], and the final @racket[arg] is a complete command @racket['exact], and the final @racket[arg] is a complete command
line. See @racket[subprocess] for details.} line. See @racket[subprocess] for details.}
@ -364,8 +364,8 @@ Like @racket[system*], but returns the exit code like
input-port? input-port?
((or/c 'status 'wait 'interrupt 'kill) . -> . any))]{ ((or/c 'status 'wait 'interrupt 'kill) . -> . any))]{
Executes a shell command asynchronously (using @exec{sh} under Unix Executes a shell command asynchronously (using @exec{sh} on Unix
and Mac OS X, @exec{cmd} under Windows). The result is a list of five and Mac OS X, @exec{cmd} on Windows). The result is a list of five
values: values:
@itemize[ @itemize[
@ -395,10 +395,10 @@ values:
the subprocess has completed.} the subprocess has completed.}
@item{@racket['interrupt] sends the subprocess an interrupt signal @item{@racket['interrupt] sends the subprocess an interrupt signal
under @|AllUnix|, and takes no action under Windows. The result is on @|AllUnix|, and takes no action on Windows. The result is
@|void-const|. @|void-const|.
@margin-note{Under Unix and Mac OS X, if @racket[command] runs a @margin-note{On Unix and Mac OS X, if @racket[command] runs a
single program, then @exec{sh} typically runs the program in single program, then @exec{sh} typically runs the program in
such a way that it replaces @exec{sh} in the same process. For such a way that it replaces @exec{sh} in the same process. For
reliable and precise control over process creation, however, use reliable and precise control over process creation, however, use
@ -408,7 +408,7 @@ values:
@|void-const|. Note that the immediate process created by @|void-const|. Note that the immediate process created by
@racket[process] is a shell process that may run another program; @racket[process] is a shell process that may run another program;
terminating the shell process may not terminate processes that terminating the shell process may not terminate processes that
the shell starts, particularly under Windows.} the shell starts, particularly on Windows.}
]} ]}
@ -430,7 +430,7 @@ of a single process.}
[(process* [command path-string?] [exact 'exact] [arg string?]) list?])]{ [(process* [command path-string?] [exact 'exact] [arg string?]) list?])]{
Like @racket[process], except that @racket[command] is a filename that Like @racket[process], except that @racket[command] is a filename that
is executed directly, and the @racket[arg]s are the arguments. Under is executed directly, and the @racket[arg]s are the arguments. On
Windows, as for @racket[system*], the first @racket[arg] can be Windows, as for @racket[system*], the first @racket[arg] can be
replaced with @racket['exact].} replaced with @racket['exact].}

View File

@ -96,7 +96,7 @@ is in microseconds.}
Returns an amount of processor time in @tech{fixnum} milliseconds Returns an amount of processor time in @tech{fixnum} milliseconds
that has been consumed by the Racket process on the underlying that has been consumed by the Racket process on the underlying
operating system. (Under @|AllUnix|, this includes both user and operating system. (On @|AllUnix|, this includes both user and
system time.) If @racket[thread] is @racket[#f], the reported time system time.) If @racket[thread] is @racket[#f], the reported time
is for all Racket threads, otherwise the result is specific to the is for all Racket threads, otherwise the result is specific to the
time while @racket[thread] ran. time while @racket[thread] ran.

View File

@ -35,4 +35,4 @@ _path)]. Since that is not the case for other platforms, however,
@racket[path-element->bytes] and @racket[path-element->string] should @racket[path-element->bytes] and @racket[path-element->string] should
be used when converting individual path elements. be used when converting individual path elements.
Under Mac OS X, Finder aliases are zero-length files. On Mac OS X, Finder aliases are zero-length files.

View File

@ -58,6 +58,15 @@ than a hidden abstraction in the document implementation.
Hyphenate the words ``sub-form'' and ``sub-expression.'' Hyphenate the words ``sub-form'' and ``sub-expression.''
Use ``Windows,'' ``Mac OS X,'' and ``Unix'' for the three
``platforms'' (as opposed to ``systems'') on which Racket runs. Use
``Unix'' as a generic term for Unix-like operating systems---notably
including Linux---other than Mac OS X. Use ``Unix'' even when ``Gtk''
or ``the X11 windowing system'' would be more precisely correct, but
use ``X11'' as adjective when necessary, such as ``X11 display.''
Racket runs ``on'' a platform, as opposed to ``under'' a platform.
@section{Typesetting Code} @section{Typesetting Code}
Use @racketidfont{id} or a name that ends @racketidfont{-id} in Use @racketidfont{id} or a name that ends @racketidfont{-id} in

View File

@ -243,10 +243,11 @@ flags.
@section{Printing} @section{Printing}
The @Flag{p} or @DFlag{print} command-line flag causes Slideshow The @Flag{p} or @DFlag{print} command-line flag causes Slideshow to
to print slides instead of showing them on the screen. Under print slides instead of showing them on the screen using the current
Unix, the result is always PostScript. For all platforms, platform's printing system. The @Flag{P} or @DFlag{ps} generates
@Flag{P} or @DFlag{ps} generates PostScript. PostScript directly, while @Flag{D} or @DFlag{pdf} generates
PDF directly.
PS-to-PDF converters vary on how well they handle landscape PS-to-PDF converters vary on how well they handle landscape
mode. Here's a Ghostscript command that converts slides reliably mode. Here's a Ghostscript command that converts slides reliably

View File

@ -12,7 +12,7 @@
@defmodule[slatex/slatex-wrapper] @defmodule[slatex/slatex-wrapper]
To use SLaTeX as a standalone program, either drag your To use SLaTeX as a standalone program, either drag your
@filepath{.tex} file onto SLaTeX (under Windows or MacOS X), or type @filepath{.tex} file onto SLaTeX (on Windows or MacOS X), or type
@exec{slatex file} in a command shell. @exec{slatex file} in a command shell.
@emph{NOTE:} If you compile your @filepath{.tex} file without using @emph{NOTE:} If you compile your @filepath{.tex} file without using

View File

@ -289,7 +289,7 @@ Printing
======== ========
The -p or --print command-line flag causes slideshow to print slides The -p or --print command-line flag causes slideshow to print slides
instead of showing them on the screen. Under Unix, the result is instead of showing them on the screen. On Unix, the result is
always PostScript. For all platforms, -P or --ps generates PostScript. always PostScript. For all platforms, -P or --ps generates PostScript.
PS-to-PDF converters vary on how well they handle landscape PS-to-PDF converters vary on how well they handle landscape

View File

@ -175,7 +175,7 @@ Unlike @racket[scene+curve], if the line passes outside of @racket[image], the i
The @racket[face] and the @racket[family] combine to give the complete typeface. If The @racket[face] and the @racket[family] combine to give the complete typeface. If
@racket[face] is available on the system, it is used, but if not then a default typeface @racket[face] is available on the system, it is used, but if not then a default typeface
based on the @racket[family] is chosen. The @racket[style] controls if the face is italic based on the @racket[family] is chosen. The @racket[style] controls if the face is italic
or not (under Windows and Mac OS X, @racket['slant] and @racket['italic] are the same), or not (on Windows and Mac OS X, @racket['slant] and @racket['italic] are the same),
the @racket[weight] controls if it is boldface (or light), and @racket[underline?] the @racket[weight] controls if it is boldface (or light), and @racket[underline?]
determines if the face is underlined. For more details on these arguments, see @racket[font%], determines if the face is underlined. For more details on these arguments, see @racket[font%],
which ultimately is what this code uses to draw the font. which ultimately is what this code uses to draw the font.