--- scm-5e5.orig/.pc/.quilt_patches +++ scm-5e5/.pc/.quilt_patches @@ -0,0 +1 @@ +debian/patches --- scm-5e5.orig/.pc/.quilt_series +++ scm-5e5/.pc/.quilt_series @@ -0,0 +1 @@ +series --- scm-5e5.orig/.pc/.version +++ scm-5e5/.pc/.version @@ -0,0 +1 @@ +2 --- scm-5e5.orig/Makefile +++ scm-5e5/Makefile @@ -89,7 +89,9 @@ # unexnext.c unexnt.c unexsgi.c unexsni.c unexsunos4.c ofiles = scm.o time.o repl.o scl.o sys.o eval.o subr.o unif.o rope.o \ continue.o findexec.o script.o debug.o -# continue-ia64.o +ifeq ($(ARCH),ia64) +ofiles += continue-ia64.o +endif ifiles = Init$(VERSION).scm Transcen.scm Link.scm Macro.scm Macexp.scm \ Tscript.scm compile.scm Iedline.scm Idiffer.scm hobfiles = hobbit.scm scmhob.scm scmhob.h @@ -446,7 +448,7 @@ > platform.txi features.txi: build build.scm $(SCMLIT) -l build -e"(make-features-txi)" -scm.info: $(texifiles) +scm.info: $(texifiles) features.txi platform.txi makeinfo scm.texi --no-split -o scm.info mv scm.info scm-$(VERSION).info if [ -f $(PREVDOCS)scm.info ]; \ --- scm-5e5.orig/Xlibscm.html +++ scm-5e5/Xlibscm.html @@ -0,0 +1,2874 @@ + + + + + +XlibScm + + + + + + + + + + + + + + + + + + + + +
[Top][Contents][Index][ ? ]
+ +

XlibScm

+ +

This manual documents the X Interface for SCM Language (version +5e5, February 2008). +

+

Copyright © 1999 Free Software Foundation, Inc. +

+

Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. +

+

Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided that the entire +resulting derived work is distributed under the terms of a permission +notice identical to this one. +

+

Permission is granted to copy and distribute translations of this manual +into another language, under the above conditions for modified versions, +except that this permission notice may be stated in a translation approved +by the author. +

+ + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

1. XlibScm

+ +

XlibScm is a SCM interface to X. + +The +<A HREF="http://www.x.org/"> +X Window System +</A> +is a network-transparent window system that was +designed at MIT. +<A HREF="scm_toc.html"> +SCM +</A> +is a portable Scheme implementation written in C. +The interface can be compiled into SCM or, on those platforms supporting +dynamic linking, compiled separately and loaded with (require +'Xlib). + +

+ +

Much of this X documentation is dervied from: +

+

Xlib - C Language X Interface +

X Consortium Standard +

X Version 11, Release 6.3 +

+

The X Window System is a trademark of X Consortium, Inc. +

+

TekHVC is a trademark of Tektronix, Inc. +

+ + +

Copyright (C) 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X +Consortium +

+

Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: +

+

The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. +

+

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. +

+

Except as contained in this notice, the name of the X Consortium shall +not be used in advertising or otherwise to promote the sale, use or +other dealings in this Software without prior written authorization from +the X Consortium. +

+ + + +

Copyright (C) 1985, 1986, 1987, 1988, 1989, 1990, 1991 by +Digital Equipment Corporation +

+

Portions Copyright (C) 1990, 1991 by Tektronix, Inc. +

+

Permission to use, copy, modify and distribute this documentation for +any purpose and without fee is hereby granted, provided that the above +copyright notice appears in all copies and that both that copyright +notice and this permission notice appear in all copies, and that the +names of Digital and Tektronix not be used in in advertising or +publicity pertaining to this documentation without specific, written +prior permission. Digital and Tektronix makes no representations about +the suitability of this documentation for any purpose. It is provided +“as is” without express or implied warranty. +

+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

2. Display and Screens

+ +
+
Function: x:open-display display-name
+

display-name Specifies the hardware display name, which determines +the display and communications domain to be used. On a POSIX-conformant +system, if the display-name is #f, it defaults to the value of the +DISPLAY environment variable. +

+

The encoding and interpretation of display-name is +implementation-dependent. On POSIX-conformant systems, the +display-name or DISPLAY environment variable can be a string +in the format: +

+
+
Special Form: hostname:number.screen-number
+
+

hostname specifies the name of the host machine on which the +display is physically attached. Follow the hostname with either a +single colon (:) or a double colon (::). +

+

number specifies the number of the display server on that host +machine. You may optionally follow this display number with a period +(.). A single CPU can have more than one display. Multiple displays +are usually numbered starting with zero. +

+

screen-number specifies the screen to be used on that server. +Multiple screens can be controlled by a single X server. The +screen-number sets an internal variable that can be accessed by +using the x:default-screen procedure. +

+
+ +
+
Function: x:close display
+

display specifies the connection to the X server. +

+

The x:close function closes the connection to the X server for +the display specified and destroys all windows, resource IDs +(Window, Font, Pixmap, Colormap, Cursor, and GContext), or other +resources that the client has created on this display, unless the +close-down mode of the resource has been changed (see +x:set-close-down-mode). Therefore, these windows, resource IDs, +and other resources should not be used again or an error will be +generated. Before exiting, you should call x:close-display or +x:flush explicitly so that any pending errors are reported. +

+ +
+
Function: x:protocol-version display
+

Returns cons of the major version number (11) of the X protocol +associated with the connected display and the minor protocol +revision number of the X server. +

+ +
+
Function: x:server-vendor display
+

Returns a string that provides some identification of the owner of the X +server implementation. The contents of the string are +implementation-dependent. +

+ +
+
Function: x:vendor-release display
+

Returns a number related to a vendor’s release of the X server. +

+ + +

A display consists of one or more Screens. Each screen has a +root-window, default-graphics-context, and colormap. +

+
+
Function: x:screen-count display
+

Returns the number of available screens. +

+ +
+
Function: x:default-screen display
+

Returns the default screen number specified by the x:open-display +function. Use this screen number in applications which will use only a +single screen. +

+ +
+
Function: x:root-window display screen-number
+
Function: x:root-window display
+

screen-number, if givien, specifies the appropriate screen number +on the host server. Otherwise the default-screen for display is +used. +

+

Returns the root window for the specified screen-number. Use +x:root-window for functions that need a drawable of a particular +screen or for creating top-level windows. +

+
Function: x:root-window window
+

Returns the root window for the specified window’s screen. +

+ +
+
Function: x:default-colormap display screen-number
+
Function: x:default-colormap display
+
Function: x:default-colormap window
+

Returns the default colormap of the specified screen. +

+ +
+
Function: x:default-ccc display screen-number
+
Function: x:default-ccc display
+
Function: x:default-ccc window
+

Returns the default Color-Conversion-Context (ccc) of the specified +screen. +

+ +
+
Function: x:default-gc display screen-number
+
Function: x:default-gc display
+
Function: x:default-gc window
+

Returns the default graphics-context of the specified screen. +

+ +
+
Function: x:screen-depths display screen-number
+
Function: x:screen-depths display
+
Function: x:screen-depths window
+

Returns an array of depths supported by the specified screen. +

+ +

The Visual type describes possible colormap depths and +arrangements. +

+
+
Function: x:default-visual display screen-number
+
Function: x:default-visual display
+
Function: x:default-visual window
+

Returns the default Visual type for the specified screen. +

+ + +
+ +
+
Function: x:make-visual display depth class
+
Function: x:make-visual window depth class
+
+

The integer depth specifies the number of bits per pixel. +The class argument specifies one of the possible +visual classes for a screen: +

+ +

X:make-visual returns a visual type for the screen specified by +display or window if successful; #f if not. +

+ +
+
Function: x:visual-class visual
+
Function: x:visual-class screen
+
Function: x:visual-class display
+

Returns the (integer) visual class of its argument. +

+ +
+
Function: x:visual-geometry visual
+
Function: x:visual-geometry screen
+
Function: x:visual-geometry display
+

Returns a list of the: +

+
+ + +
+
Function: x:screen-cells display screen-number
+
Function: x:screen-cells display
+
Function: x:screen-cells window
+

Returns the number of entries in the default colormap. +

+ +
+
Function: x:screen-depth display screen-number
+

Returns the depth of the root window of the specified screen. +

Function: x:screen-depth display
+
Function: x:screen-depth window
+
Function: x:screen-depth visual
+

Returns the depth of argument. +

+ +

The depth of a window or pixmap is the number of bits per pixel it has. +The depth of a graphics context is the depth of the drawables it can be +used in conjunction with graphics output. +

+ +
+
Function: x:screen-size display screen-number
+
Function: x:screen-size display
+
Function: x:screen-size window
+

Returns a list of integer height and width of the screen in pixels. +

+ +
+
Function: x:screen-dimensions display screen-number
+
Function: x:screen-dimensions display
+
Function: x:screen-dimensions window
+

Returns a list of integer height and width of the screen in millimeters. +

+ +
+
Function: x:screen-white display screen-number
+
Function: x:screen-white display
+
Function: x:screen-white window
+

Returns the white pixel value of the specified screen. +

+ +
+
Function: x:screen-black display screen-number
+
Function: x:screen-black display
+
Function: x:screen-black window
+

Returns the black pixel value of the specified screen. +

+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

3. Drawables

+ + + +

A Drawable is either a window or pixmap. +

+ + + + + + + +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

3.1 Windows and Pixmaps

+ +
+
Function: x:create-window window position size border-width depth class visual field-name value …
+

Creates and returns an unmapped Input-Output subwindow for a specified +parent window and causes the X server to generate a CreateNotify +event. The created window is placed on top in the stacking order with +respect to siblings. Any part of the window that extends outside its +parent window is clipped. The border-width for an +x:Input-Only window must be zero. +

+

The coordinate system has the X axis horizontal and the Y axis vertical +with the origin [0, 0] at the upper-left corner. Coordinates are +integral, in terms of pixels, and coincide with pixel centers. Each +window and pixmap has its own coordinate system. For a window, the +origin is inside the border at the inside, upper-left corner. +

+

Class can be x:Input-Output, x:Input-Only, or x:Copy-From-Parent. +For class x:Input-Output, the visual type and depth must be +a combination supported for the screen. The depth need not be the +same as the parent, but the parent must not be a window of class +x:Input-Only. For an x:Input-Only window, the depth must be zero, +and the visual must be one supported by the screen. +

+

The returned window will have the attributes specified by +field-names and value. +

+
Function: x:create-window window position size border-width border background
+

The returned window inherits its depth, class, and visual from its +parent. All other window attributes, except background and +border, have their default values. +

+ +
+
Function: x:create-pixmap drawable size depth
+
Function: x:create-pixmap display size depth
+
+

size is a list, vector, or pair of nonzero integers specifying the width +and height desired in the new pixmap. +

+

x:create-pixmap returns a new pixmap of the width, height, and +depth specified. It is valid to pass an x:Input-Only window to the +drawable argument. The depth argument must be one of the depths +supported by the screen of the specified drawable. +

+ +
+
Function: x:close window
+

Destroys the specified window as well as all of its subwindows and +causes the X server to generate a DestroyNotify event for each window. +The window should not be used again. If the window specified by the +window argument is mapped, it is unmapped automatically. The +ordering of the DestroyNotify events is such that for any given window +being destroyed, DestroyNotify is generated on any inferiors of the +window before being generated on the window itself. The ordering among +siblings and across subhierarchies is not otherwise constrained. If the +window you specified is a root window, an error is signaled. +Destroying a mapped window will generate x:Expose events on other +windows that were obscured by the window being destroyed. +

+ +
+
Function: x:close pixmap
+

Deletes the association between the pixmap and its storage. The X +server frees the pixmap storage when there are no references to it. +

+ +
+
Function: x:window-geometry drawable
+

Returns a list of: +

+
+
coordinates
+

list of x and y coordinates that define the location of the +drawable. For a window, these coordinates specify the upper-left +outer corner relative to its parent’s origin. For pixmaps, these +coordinates are always zero. +

+
size
+

list of the drawable’s dimensions (width and height). For +a window, these dimensions specify the inside size, not including the +border. +

+
border-width
+

The border width in pixels. If the drawable is a pixmap, this is +zero. +

+
depth
+

The depth of the drawable (bits per pixel for the object). +

+
+
+ + +
+
Function: x:window-geometry-set! window field-name value …
+

Changes the Configuration components specified by +field-names for the specified window. +

+ +

These are the attributes settable by x:window-geometry-set!. +That these attributes are encoded by small integers – just like those +of the next section. Be warned therefore that confusion of attribute +names will likely not signal errors, just cause mysterious behavior. +

+
+
Attribute: x:CWX
+
Attribute: x:CWY
+
Attribute: x:CW-Width
+
Attribute: x:CW-Height
+

The x:CWX and x:CYY members are used to set the window’s x and y +coordinates, which are relative to the parent’s origin and indicate the +position of the upper-left outer corner of the window. The x:CW-Width +and x:CW-Height members are used to set the inside size of the window, +not including the border, and must be nonzero. Attempts to configure a +root window have no effect. +

+

If a window’s size actually changes, the window’s subwindows move +according to their window gravity. Depending on the window’s bit +gravity, the contents of the window also may be moved +

+ +
+
Attribute: x:CW-Border-Width
+

The integer x:CW-Border-Width is used to set the width of the border in +pixels. Note that setting just the border width leaves the outer-left +corner of the window in a fixed position but moves the absolute position +of the window’s origin. It is an error to set the border-width +attribute of an InputOnly window nonzero. +

+ +
+
Attribute: x:CW-Sibling
+

The sibling member is used to set the sibling window for stacking +operations. +

+ +
+
Attribute: x:CW-Stack-Mode
+

The x:CW-Stack-Mode member is used to set how the window is to be +restacked and can be set to x:Above, x:Below, x:Top-If, x:Bottom-If, or +x:Opposite. +

+ +

If a sibling and a stack-mode are specified, the window is restacked as +follows: +

+
+
x:Above
+

The window is placed just above the sibling. +

+
x:Below
+

The window is placed just below the sibling. +

+
x:Top-If
+

If the sibling occludes the window, the window is placed at the top of +the stack. +

+
x:Bottom-If
+

If the window occludes the sibling, the window is placed at the bottom +of the stack. +

+
x:Opposite
+

If the sibling occludes the window, the window is placed at the top of +the stack. If the window occludes the sibling, the window is placed at +the bottom of the stack. +

+
+ +

If a stack-mode is specified but no sibling is specified, the window +is restacked as follows: +

+
+
x:Above
+

The window is placed at the top of the stack. +

+
x:Below
+

The window is placed at the bottom of the stack. +

+
x:Top-If
+

If any sibling occludes the window, the window is placed at the top of +the stack. +

+
x:Bottom-If
+

If the window occludes any sibling, the window is placed at the bottom +of the stack. +

+
x:Opposite
+

If any sibling occludes the window, the window is placed at the top of +the stack. If the window occludes any sibling, the window is placed at +the bottom of the stack. +

+
+ + + + +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

3.2 Window Attributes

+ +
+
Function: x:window-set! window field-name value …
+

Changes the components specified by field-names for the specified +window. The restrictions are the same as for +x:create-window. The order in which components are verified and +altered is server dependent. If an error occurs, a subset of the +components may have been altered. +

+ +

The x:create-window and x:window-set! procedures take five +and one argument (respectively) followed by pairs of arguments, where +the first is one of the property-name symbols (or its top-level value) +listed below; and the second is the value to associate with that +property. +

+
+
Attribute: x:CW-Back-Pixmap
+

Sets the background pixmap of the window to the specified pixmap. +The background pixmap can immediately be freed if no further explicit +references to it are to be made. If x:Parent-Relative is specified, the +background pixmap of the window’s parent is used, or on the root window, +the default background is restored. It is an error to perform this +operation on an x:Input-Only window. If the background is set to #f or +None, the window has no defined background. +

+ +
+
Attribute: x:CW-Back-Pixel
+

Sets the background of the window to the specified pixel value. +Changing the background does not cause the window contents to be +changed. It is an error to perform this operation on an x:Input-Only +window. +

+ +
+
Attribute: x:CW-Border-Pixmap
+

Sets the border pixmap of the window to the pixmap you specify. +The border pixmap can be freed if no further explicit references to it +are to be made. If you specify x:Copy-From-Parent, a copy of the parent +window’s border pixmap is used. It is an error to perform this +operation on an x:Input-Only window. +

+ +
+
Attribute: x:CW-Border-Pixel
+

Sets the border of the window to the pixel value. It is an +error to perform this operation on an x:Input-Only window. +

+ +
+
Attribute: x:CW-Bit-Gravity
+
Attribute: x:CW-Win-Gravity
+

The bit gravity of a window defines which region of the window should be +retained when an x:Input-Output window is resized. The default value +for the bit-gravity attribute is x:Forget-Gravity. The window gravity +of a window allows you to define how the x:Input-Output or x:Input-Only +window should be repositioned if its parent is resized. The default +value for the win-gravity attribute is x:North-West-Gravity. +

+

If the inside width or height of a window is not changed and if the +window is moved or its border is changed, then the contents of the +window are not lost but move with the window. Changing the inside width +or height of the window causes its contents to be moved or lost +(depending on the bit-gravity of the window) and causes children to be +reconfigured (depending on their win-gravity). For a change of width +and height, the (x, y) pairs are defined: +

+ + + + + + + + + + + +
Gravity DirectionCoordinates
x:North-West-Gravity(0, 0)
x:North-Gravity(Width/2, 0)
x:North-East-Gravity(Width, 0)
x:West-Gravity(0, Height/2)
x:Center-Gravity(Width/2, Height/2)
x:East-Gravity(Width, Height/2)
x:South-West-Gravity(0, Height)
x:South-Gravity(Width/2, Height)
x:South-East-Gravity(Width, Height)
+ +

When a window with one of these bit-gravity values is resized, the +corresponding pair defines the change in position of each pixel in the +window. When a window with one of these win-gravities has its parent +window resized, the corresponding pair defines the change in position of +the window within the parent. When a window is so repositioned, a +x:Gravity-Notify event is generated (see section 10.10.5). +

+

A bit-gravity of x:Static-Gravity indicates that the contents or origin +should not move relative to the origin of the root window. If the +change in size of the window is coupled with a change in position (x, +y), then for bit-gravity the change in position of each pixel is (-x, +-y), and for win-gravity the change in position of a child when its +parent is so resized is (-x, -y). Note that x:Static-Gravity still only +takes effect when the width or height of the window is changed, not when +the window is moved. +

+

A bit-gravity of x:Forget-Gravity indicates that the window’s contents +are always discarded after a size change, even if a backing store or +save under has been requested. The window is tiled with its background +and zero or more x:Expose events are generated. If no background is +defined, the existing screen contents are not altered. Some X servers +may also ignore the specified bit-gravity and always generate x:Expose +events. +

+

The contents and borders of inferiors are not affected by their parent’s +bit-gravity. A server is permitted to ignore the specified bit-gravity +and use x:Forget-Gravity instead. +

+

A win-gravity of x:Unmap-Gravity is like x:North-West-Gravity (the +window is not moved), except the child is also unmapped when the parent +is resized, and an x:Unmap-Notify event is generated. +

+ +
+
Attribute: x:CW-Backing-Store
+

Some implementations of the X server may choose to maintain the contents +of x:Input-Output windows. If the X server maintains the contents of a +window, the off-screen saved pixels are known as backing store. The +backing store advises the X server on what to do with the contents of a +window. The backing-store attribute can be set to x:Not-Useful +(default), x:When-Mapped, or x:Always. A backing-store attribute of +x:Not-Useful advises the X server that maintaining contents is +unnecessary, although some X implementations may still choose to +maintain contents and, therefore, not generate x:Expose events. A +backing-store attribute of x:When-Mapped advises the X server that +maintaining contents of obscured regions when the window is mapped would +be beneficial. In this case, the server may generate an x:Expose event +when the window is created. A backing-store attribute of x:Always +advises the X server that maintaining contents even when the window is +unmapped would be beneficial. Even if the window is larger than its +parent, this is a request to the X server to maintain complete contents, +not just the region within the parent window boundaries. While the X +server maintains the window’s contents, x:Expose events normally are not +generated, but the X server may stop maintaining contents at any time. +

+

When the contents of obscured regions of a window are being maintained, +regions obscured by noninferior windows are included in the destination +of graphics requests (and source, when the window is the source). +However, regions obscured by inferior windows are not included. +

+ +
+
Attribute: x:CW-Backing-Planes
+
Attribute: x:CW-Backing-Pixel
+

You can set backing planes to indicate (with bits set to 1) which bit +planes of an x:Input-Output window hold dynamic data that must be +preserved in backing store and during save unders. The default value +for the backing-planes attribute is all bits set to 1. You can set +backing pixel to specify what bits to use in planes not covered by +backing planes. The default value for the backing-pixel attribute is +all bits set to 0. The X server is free to save only the specified bit +planes in the backing store or the save under and is free to regenerate +the remaining planes with the specified pixel value. Any extraneous +bits in these values (that is, those bits beyond the specified depth of +the window) may be simply ignored. If you request backing store or save +unders, you should use these members to minimize the amount of +off-screen memory required to store your window. +

+ +
+
Attribute: x:CW-Override-Redirect
+

To control window placement or to add decoration, a window manager often +needs to intercept (redirect) any map or configure request. Pop-up +windows, however, often need to be mapped without a window manager +getting in the way. To control whether an x:Input-Output or +x:Input-Only window is to ignore these structure control facilities, use +the override-redirect flag. +

+

The override-redirect flag specifies whether map and configure requests +on this window should override a x:Substructure-Redirect-Mask on the +parent. You can set the override-redirect flag to #t or #f (default). +Window managers use this information to avoid tampering with pop-up +windows. +

+ +
+
Attribute: x:CW-Save-Under
+

Some server implementations may preserve contents of x:Input-Output windows +under other x:Input-Output windows. This is not the same as preserving the +contents of a window for you. You may get better visual appeal if +transient windows (for example, pop-up menus) request that the system +preserve the screen contents under them, so the temporarily obscured +applications do not have to repaint. +

+

You can set the save-under flag to True or False (default). If +save-under is True, the X server is advised that, when this window is +mapped, saving the contents of windows it obscures would be beneficial. +

+ +
+
Attribute: x:CW-Event-Mask
+

The event mask defines which events the client is interested in for this +x:Input-Output or x:Input-Only window (or, for some event types, +inferiors of this window). The event mask is the bitwise inclusive OR +of zero or more of the valid event mask bits. You can specify that no +maskable events are reported by setting x:No-Event-Mask (default). +

+

The following table lists the event mask constants you can pass to the +event-mask argument and the circumstances in which you would want to +specify the event mask: +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Event MaskCircumstances
x:No-Event-MaskNo events wanted
x:Key-Press-MaskKeyboard down events wanted
x:Key-Release-MaskKeyboard up events wanted
x:Button-Press-MaskPointer button down events wanted
x:Button-Release-MaskPointer button up events wanted
x:Enter-Window-MaskPointer window entry events wanted
x:Leave-Window-MaskPointer window leave events wanted
x:Pointer-Motion-MaskPointer motion events wanted
x:Pointer-Motion-Hint-MaskIf x:Pointer-Motion-Hint-Mask is selected in combination with one or +more motion-masks, the X server is free to send only one x:Motion-Notify +event (with the is_hint member of the X:Pointer-Moved-Event structure +set to x:Notify-Hint) to the client for the event window, until either +the key or button state changes, the pointer leaves the event window, or +the client calls X:Query-Pointer or X:Get-Motion-Events. The server +still may send x:Motion-Notify events without is_hint set to +x:Notify-Hint.
x:Button1-Motion-MaskPointer motion while button 1 down
x:Button2-Motion-MaskPointer motion while button 2 down
x:Button3-Motion-MaskPointer motion while button 3 down
x:Button4-Motion-MaskPointer motion while button 4 down
x:Button5-Motion-MaskPointer motion while button 5 down
x:Button-Motion-MaskPointer motion while any button down
x:Keymap-State-MaskKeyboard state wanted at window entry and focus in
x:Exposure-MaskAny exposure wanted
x:Visibility-Change-MaskAny change in visibility wanted
x:Structure-Notify-MaskAny change in window structure wanted
x:Resize-Redirect-MaskRedirect resize of this window
x:Substructure-Notify-MaskSubstructure notification wanted
x:Substructure-Redirect-MaskRedirect structure requests on children
x:Focus-Change-MaskAny change in input focus wanted
x:Property-Change-MaskAny change in property wanted
x:Colormap-Change–MaskAny change in colormap wanted
x:Owner-Grab-Button–MaskAutomatic grabs should activate with owner_events set to True
+ +
+ +
+
Attribute: x:CW-Dont-Propagate
+

The do-not-propagate-mask attribute defines which events should not be +propagated to ancestor windows when no client has the event type +selected in this x:Input-Output or x:Input-Only window. The +do-not-propagate-mask is the bitwise inclusive OR of zero or more of the +following masks: x:Key-Press, x:Key-Release, x:Button-Press, +x:Button-Release, x:Pointer-Motion, x:Button1Motion, x:Button2Motion, +x:Button3Motion, x:Button4Motion, x:Button5Motion, and x:Button-Motion. +You can specify that all events are propagated by setting +x:No-Event-Mask (default). +

+ +
+
Attribute: x:CW-Colormap
+

The colormap attribute specifies which colormap best reflects the true +colors of the x:Input-Output window. The colormap must have the same +visual type as the window. X servers capable of supporting multiple +hardware colormaps can use this information, and window managers can use +it for calls to X:Install-Colormap. You can set the colormap attribute +to a colormap or to x:Copy-From-Parent (default). +

+

If you set the colormap to x:Copy-From-Parent, the parent window’s +colormap is copied and used by its child. However, the child window +must have the same visual type as the parent. The parent window must +not have a colormap of x:None. The colormap is copied by sharing the +colormap object between the child and parent, not by making a complete +copy of the colormap contents. Subsequent changes to the parent +window’s colormap attribute do not affect the child window. +

+ +
+
Attribute: x:CW-Cursor
+

The cursor attribute specifies which cursor is to be used when the +pointer is in the x:Input-Output or x:Input-Only window. You can set +the cursor to a cursor or x:None (default). +

+

If you set the cursor to x:None, the parent’s cursor is used when the +pointer is in the x:Input-Output or x:Input-Only window, and any change +in the parent’s cursor will cause an immediate change in the displayed +cursor. On the root window, the default cursor is restored. +

+ +
+
Function: x:window-ref window field-name …
+

Returns a list of the components specified by field-names for the +specified window. Allowable field-names are a subset of +those for x:window-set!: +

+ +
+ + +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

3.3 Window Properties and Visibility

+ +
+
Function: x:get-window-property window property
+

Returns the (string or list of numbers) value of property of +window. +

Function: x:get-window-property window property #t
+

Removes and returns the (string or list of numbers) value of +property of window. +

+ +
+
Function: x:list-properties window
+

Returns a list of the properties (strings) defined for window. +

+ +

In X parlance, a window which is hidden even when not obscured by other +windows is unmapped; one which + + + + +shows is mapped. It is an unfortunate name-collision with Scheme, +and is ingrained in the attribute names. +

+
+
Function: x:map-window window
+

Maps the window and all of its subwindows that have had map +requests. Mapping a window that has an unmapped ancestor does not +display the window but marks it as eligible for display when the +ancestor becomes mapped. Such a window is called unviewable. When all +its ancestors are mapped, the window becomes viewable and will be +visible on the screen if it is not obscured by another window. This +function has no effect if the window is already mapped. +

+

If the override-redirect of the window is False and if some other client +has selected x:Substructure-Redirect-Mask on the parent window, then the X +server generates a MapRequest event, and the x:map-window +function does not map the window. Otherwise, the window is +mapped, and the X server generates a MapNotify event. +

+

If the window becomes viewable and no earlier contents for it are +remembered, the X server tiles the window with its background. If +the window’s background is undefined, the existing screen contents are +not altered, and the X server generates zero or more x:Expose events. If +backing-store was maintained while the window was unmapped, no +x:Expose events are generated. If backing-store will now be maintained, a +full-window exposure is always generated. Otherwise, only visible +regions may be reported. Similar tiling and exposure take place for any +newly viewable inferiors. +

+

If the window is an Input-Output window, x:map-window generates +x:Expose events on each Input-Output window that it causes to be displayed. +If the client maps and paints the window and if the client begins +processing events, the window is painted twice. To avoid this, first +ask for x:Expose events and then map the window, so the client processes +input events as usual. The event list will include x:Expose for each +window that has appeared on the screen. The client’s normal response to +an x:Expose event should be to repaint the window. This method usually +leads to simpler programs and to proper interaction with window +managers. +

+ +
+
Function: x:map-subwindows window
+

Maps all subwindows of a specified window in top-to-bottom +stacking order. The X server generates x:Expose events on each newly +displayed window. This may be much more efficient than mapping many +windows one at a time because the server needs to perform much of the +work only once, for all of the windows, rather than for each window. +

+ +
+
Function: x:unmap-window window
+

Unmaps the specified window and causes the X server to generate an +UnmapNotify event. If the specified window is already unmapped, +x:unmap-window has no effect. Normal exposure processing on +formerly obscured windows is performed. Any child window will no longer +be visible until another map call is made on the parent. In other +words, the subwindows are still mapped but are not visible until the +parent is mapped. Unmapping a window will generate x:Expose events +on windows that were formerly obscured by it. +

+ +
+
Function: x:unmap-subwindows window
+

Unmaps all subwindows for the specified window in bottom-to-top +stacking order. It causes the X server to generate an UnmapNotify event +on each subwindow and x:Expose events on formerly obscured windows. Using +this function is much more efficient than unmapping multiple windows one +at a time because the server needs to perform much of the work only +once, for all of the windows, rather than for each window. +

+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

4. Graphics Context

+ +

Most attributes of graphics operations are stored in GCs. These +include line width, line style, plane mask, foreground, background, +tile, stipple, clipping region, end style, join style, and so on. +Graphics operations (for example, drawing lines) use these values to +determine the actual drawing operation. +

+
+
Function: x:create-gc drawable field-name value …
+

Creates and returns graphics context. The graphics context can be used +with any destination drawable having the same root and depth as the +specified drawable. +

+ +
+
Function: x:gc-set! graphics-context field-name value …
+

Changes the components specified by field-names for the specified +graphics-context. The restrictions are the same as for +x:create-gc. The order in which components are verified and +altered is server dependent. If an error occurs, a subset of the +components may have been altered. +

+ +
+
Function: x:copy-gc-fields! gcontext-src gcontext-dst field-name …
+

Copies the components specified by field-names from +gcontext-src to gcontext-dst. Gcontext-src and +gcontext-dst must have the same root and depth. +

+ +
+
Function: x:gc-ref graphics-context field-name …
+

Returns a list of the components specified by field-names … +from the specified graphics-context. +

+ + +

GC Attributes

+ +

Both x:create-gc and x:change-gc take one argument +followed by pairs of arguments, where the first is one of the +property-name symbols (or its top-level value) listed below; and the +second is the value to associate with that property. +

+
+
Attribute: x:GC-Function
+

The function attributes of a GC are used when you update a section of a +drawable (the destination) with bits from somewhere else (the source). +The function in a GC defines how the new destination bits are to be +computed from the source bits and the old destination bits. x:G-Xcopy is +typically the most useful because it will work on a color display, but +special applications may use other functions, particularly in concert +with particular planes of a color display. The 16 functions are: +

+
 

+x:G-Xclear           0
+x:G-Xand             (AND src dst)
+x:G-Xand-Reverse     (AND src (NOT dst))
+x:G-Xcopy            src
+x:G-Xand-Inverted    (AND (NOT src) dst)
+x:G-Xnoop            dst
+x:G-Xxor             (XOR src dst)
+x:G-Xor              (OR src dst)
+x:G-Xnor             (AND (NOT src) (NOT dst))
+x:G-Xequiv           (XOR (NOT src) dst)
+x:G-Xinvert          (NOT dst)
+x:G-Xor-Reverse      (OR src (NOT dst))
+x:G-Xcopy-Inverted   (NOT src)
+x:G-Xor-Inverted     (OR (NOT src) dst)
+x:G-Xnand            (OR (NOT src) (NOT dst))
+x:G-Xset             1
+
+
+ +
+
Attribute: x:GC-Plane-Mask
+
+

Many graphics operations depend on either pixel values or planes in a +GC. The planes attribute is an integer which specifies which planes of +the destination are to be modified, one bit per plane. A monochrome +display has only one plane and will be the least significant bit of the +integer. As planes are added to the display hardware, they will occupy +more significant bits in the plane mask. +

+

In graphics operations, given a source and destination pixel, the result +is computed bitwise on corresponding bits of the pixels. That is, a +Boolean operation is performed in each bit plane. The plane-mask +restricts the operation to a subset of planes. x:All-Planes can be +used to refer to all planes of the screen simultaneously. The result is +computed by the following: +

+
 
(OR (AND (FUNC src dst) plane-mask) (AND dst (NOT plane-mask)))
+
+ +

Range checking is not performed on a plane-mask value. It is simply +truncated to the appropriate number of bits. +

+ +
+
Attribute: x:GC-Foreground
+
Attribute: x:GC-Background
+

Range checking is not performed on the values for foreground or +background. They are simply truncated to the appropriate number of +bits. +

+

Note that foreground and background are not initialized to any values +likely to be useful in a window. +

+ +
+
Attribute: x:GC-Line-Width
+

The line-width is measured in pixels and either can be greater than or +equal to one (wide line) or can be the special value zero (thin line). +

+

Thin lines (zero line-width) are one-pixel-wide lines drawn using an +unspecified, device-dependent algorithm. There are only two constraints +on this algorithm. +

+ + +

A wide line drawn from [x1,y1] to [x2,y2] always draws the same pixels +as a wide line drawn from [x2,y2] to [x1,y1], not counting cap-style and +join-style. It is recommended that this property be true for thin +lines, but this is not required. A line-width of zero may differ from a +line-width of one in which pixels are drawn. This permits the use of +many manufacturers’ line drawing hardware, which may run many times +faster than the more precisely specified wide lines. +

+

In general, drawing a thin line will be faster than drawing a wide line +of width one. However, because of their different drawing algorithms, +thin lines may not mix well aesthetically with wide lines. If it is +desirable to obtain precise and uniform results across all displays, a +client should always use a line-width of one rather than a linewidth of +zero. +

+ +
+
Attribute: x:GC-Line-Style
+

The line-style defines which sections of a line are drawn: +

+
+
x:Line-Solid
+

The full path of the line is drawn. +

+
x:Line-Double-Dash
+

The full path of the line is drawn, but the even dashes are filled +differently from the odd dashes (see fill-style) with x:Cap-Butt style used +where even and odd dashes meet. +

+
x:Line-On-Off-Dash
+

Only the even dashes are drawn, and cap-style applies to all internal +ends of the individual dashes, except x:Cap-Not-Last is treated as x:Cap-Butt. +

+
+
+ +
+
Attribute: x:GC-Cap-Style
+
+

The cap-style defines how the endpoints of a path are drawn: +

+
+
x:Cap-Not-Last
+

This is equivalent to x:Cap-Butt except that for a line-width of zero the +final endpoint is not drawn. +

+
x:Cap-Butt
+

The line is square at the endpoint (perpendicular to the slope of the +line) with no projection beyond. +

+
x:Cap-Round
+

The line has a circular arc with the diameter equal to the line-width, +centered on the endpoint. (This is equivalent to x:Cap-Butt for line-width +of zero). +

+
x:Cap-Projecting
+

The line is square at the end, but the path continues beyond the +endpoint for a distance equal to half the line-width. (This is +equivalent to x:Cap-Butt for line-width of zero). +

+
+
+ +
+
Attribute: x:GC-Join-Style
+
+

The join-style defines how corners are drawn for wide lines: +

+
+
x:Join-Miter
+

The outer edges of two lines extend to meet at an angle. However, if +the angle is less than 11 degrees, then a x:Join-Bevel join-style is used +instead. +

+
x:Join-Round
+

The corner is a circular arc with the diameter equal to the +line-width, centered on the x:Join-point. +

+
x:Join-Bevel
+

The corner has x:Cap-Butt endpoint styles with the triangular notch filled. +

+
+
+ +
+
Attribute: x:GC-Fill-Style
+
+

The fill-style defines the contents of the source for line, text, and +fill requests. For all text and fill requests (for example, +X:Draw-Text, X:Fill-Rectangle, X:Fill-Polygon, and X:Fill-Arc); for line +requests with linestyle x:Line-Solid (for example, X:Draw-Line, +X:Draw-Segments, X:Draw-Rectangle, X:Draw-Arc); and for the even dashes +for line requests with line-style x:Line-On-Off-Dash or +x:Line-Double-Dash, the following apply: +

+
+
x:Fill-Solid
+

Foreground +

+
x:Fill-Tiled
+

Tile +

+
x:Fill-Opaque-Stippled
+

A tile with the same width and height as stipple, but with background +everywhere stipple has a zero and with foreground everywhere stipple has +a one +

+
x:Fill-Stippled
+

Foreground masked by stipple +

+
+ +

When drawing lines with line-style x:Line-Double-Dash, the odd dashes +are controlled by the fill-style in the following manner: +

+
+
x:Fill-Solid
+

Background +

+
x:Fill-Tiled
+

Same as for even dashes +

+
x:Fill-Opaque-Stippled
+

Same as for even dashes +

+
x:Fill-Stippled
+

Background masked by stipple +

+
+
+ +
+
Attribute: x:GC-Fill-Rule
+

The fill-rule defines what pixels are inside (drawn) for paths given in +X:Fill-Polygon requests and can be set to x:Even-Odd-Rule or +x:Winding-Rule. +

+
+
x:Even-Odd-Rule
+

A point is inside if an infinite ray with the point as +origin crosses the path an odd number of times. +

+
x:Winding-Rule
+

A point is inside if an infinite ray with the point as origin crosses an +unequal number of clockwise and counterclockwise directed path segments. +

+
+ +

A clockwise directed path segment is one that crosses the ray from left +to right as observed from the point. A counterclockwise segment is one +that crosses the ray from right to left as observed from the point. The +case where a directed line segment is coincident with the ray is +uninteresting because you can simply choose a different ray that is not +coincident with a segment. +

+

For both x:Even-Odd-Rule and x:Winding-Rule, a point is infinitely +small, and the path is an infinitely thin line. A pixel is inside if +the center point of the pixel is inside and the center point is not on +the boundary. If the center point is on the boundary, the pixel is +inside if and only if the polygon interior is immediately to its right +(x increasing direction). Pixels with centers on a horizontal edge are +a special case and are inside if and only if the polygon interior is +immediately below (y increasing direction). +

+ +
+
Attribute: x:GC-Tile
+
Attribute: x:GC-Stipple
+

The tile/stipple represents an infinite two-dimensional plane, with the +tile/stipple replicated in all dimensions. +

+

The tile pixmap must have the same root and depth as the GC, or an error +results. The stipple pixmap must have depth one and must have the same +root as the GC, or an error results. For stipple operations where the +fill-style is x:Fill-Stippled but not x:Fill-Opaque-Stippled, the +stipple pattern is tiled in a single plane and acts as an additional +clip mask to be ANDed with the clip-mask. Although some sizes may be +faster to use than others, any size pixmap can be used for tiling or +stippling. +

+ +
+
Attribute: x:GC-Tile-Stip-X-Origin
+
Attribute: x:GC-Tile-Stip-Y-Origin
+

When the tile/stipple plane is superimposed on a drawable for use in a +graphics operation, the upper-left corner of some instance of the +tile/stipple is at the coordinates within the drawable specified by the +tile/stipple origin. The tile/stipple origin is interpreted relative to +the origin of whatever destination drawable is specified in a graphics +request. +

+ +
+
Attribute: x:GC-Font
+

The font to be used for drawing text. +

+ +
+
Attribute: x:GC-Subwindow-Mode
+

You can set the subwindow-mode to x:Clip-By-Children or +x:Include-Inferiors. +

+
x:Clip-By-Children
+

Both source and destination windows are additionally clipped by all +viewable Input-Output children. +

+
x:Include-Inferiors
+

Neither source nor destination window is clipped by inferiors. This +will result in including subwindow contents in the source and drawing +through subwindow boundaries of the destination. The use of +x:Include-Inferiors on a window of one depth with mapped +inferiors of differing depth is not illegal, but the semantics are +undefined by the core protocol. +

+
+
+ +
+
Attribute: x:GC-Graphics-Exposures
+

The graphics-exposure flag controls x:Graphics-Expose event generation +for X:Copy-Area and X:Copy-Plane requests (and any similar requests +defined by extensions). +

+ +
+
Attribute: x:GC-Clip-X-Origin
+
Attribute: x:GC-Clip-Y-Origin
+

The clip-mask origin is interpreted relative to the origin of whatever +destination drawable is specified in a graphics request. +

+ +
+
Attribute: x:GC-Clip-Mask
+

The clip-mask restricts writes to the destination drawable. If the +clip-mask is set to a pixmap, it must have depth one and have the same +root as the GC, or an error results. If clip-mask is set to + + +x:None, the pixels are always drawn regardless of the clip origin. +The clip-mask also can be set by calling X:Set-Region. Only +pixels where the clip-mask has a bit set to 1 are drawn. Pixels are not +drawn outside the area covered by the clip-mask or where the clip-mask +has a bit set to 0. The clip-mask affects all graphics requests. The +clip-mask does not clip sources. The clip-mask origin is interpreted +relative to the origin of whatever destination drawable is specified in +a graphics request. +

+ +
+
Attribute: x:GC-Dash-Offset
+

Defines the phase of the pattern, specifying how many pixels into the +dash-list the pattern should actually begin in any single graphics +request. Dashing is continuous through path elements combined with a +join-style but is reset to the dash-offset between each sequence of +joined lines. +

+

The unit of measure for dashes is the same for the ordinary +coordinate system. Ideally, a dash length is measured along +the slope of the line, but implementations are only required +to match this ideal for horizontal and vertical lines. +Failing the ideal semantics, it is suggested that the length +be measured along the major axis of the line. The major +axis is defined as the x axis for lines drawn at an angle of +between -45 and +45 degrees or between 135 and 225 degrees +from the x axis. For all other lines, the major axis is the +y axis. +

+ +
+
Attribute: x:GC-Dash-List
+

There must be at least one element in the specified dash-list. +The initial and alternating elements (second, fourth, and so on) of the +dash-list are the even dashes, and the others are the odd dashes. +Each element specifies a dash length in pixels. All of the elements +must be nonzero. Specifying an odd-length list is equivalent to +specifying the same list concatenated with itself to produce an +even-length list. +

+ +
+
Attribute: x:GC-Arc-Mode
+

The arc-mode controls filling in the X:Fill-Arcs function and can be set +to x:Arc-Pie-Slice or x:Arc-Chord. +

+
x:Arc-Pie-Slice
+

The arcs are pie-slice filled. +

+
x:Arc-Chord
+

The arcs are chord filled. +

+
+
+ + +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

5. Cursor

+ +
+
Function: x:create-cursor display shape
+

X provides a set of standard cursor shapes in a special font named + +cursor. Applications are encouraged to use this interface for +their cursors because the font can be customized for the individual +display type. The shape argument specifies which glyph of the standard +fonts to use. +

+

The hotspot comes from the information stored in the cursor font. The +initial colors of a cursor are a black foreground and a white background +(see X:Recolor-Cursor). The names of all cursor shapes are defined with +the prefix XC: in ‘x11.scm’. +

+
Function: x:create-cursor source-font source-char mask-font mask-char fgc bgc
+

Creates a cursor from the source and mask bitmaps obtained from the +specified font glyphs. The integer source-char must be a defined +glyph in source-font. The integer mask-char must be a +defined glyph in mask-font. The origins of the source-char +and mask-char glyphs are positioned coincidently and define the +hotspot. The source-char and mask-char need not have the +same bounding box metrics, and there is no restriction on the placement +of the hotspot relative to the bounding boxes. +

+
Function: x:create-cursor source-font source-char #f #f fgc bgc
+

If mask-font and mask-char are #f, all pixels of the source +are displayed. +

+
Function: x:create-cursor source-pixmap mask-pixmap fgc bgc origin
+

mask-pixmap must be the same size as the pixmap defined by the +source-pixmap argument. The foreground and background RGB values +must be specified using foreground-color and +background-color, even if the X server only has a x:Static-Gray or +x:Gray-Scale screen. The hotspot must be a point within the +source-pixmap. +

+

X:Create-Cursor creates and returns a cursor. The +foreground-color is used for the pixels set to 1 in the source, +and the background-color is used for the pixels set to 0. Both +source and mask must have depth one but can have any root. The +mask-pixmap defines the shape of the cursor. The pixels set to 1 +in mask-pixmap define which source pixels are displayed, and the +pixels set to 0 define which pixels are ignored. +

+
Function: x:create-cursor source-pixmap #f fgc bgc origin
+

If mask-pixmap is #f, all pixels of the source are displayed. +

+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

6. Colormap

+ + + +

A colormap maps pixel values to RGB color space values. +

+
+
Function: x:create-colormap window visual alloc-policy
+

window specifies the window on whose screen you want to create a +colormap. visual specifies a visual type supported on the screen. +alloc-policy Specifies the colormap entries to be allocated. You +can pass X:Alloc-None or X:Alloc-All. +

+

The X:Create-Colormap function creates and returns a colormap of +the specified visual type for the screen on which window +resides. Note that window is used only to determine the screen. +

+
+
X:Gray-Scale
+
X:Pseudo-Color
+
X:Direct-Color
+

The initial values of the colormap entries are undefined. +

+
+
X:Static-Gray
+
X:Static-Color
+
X:True-Color
+

The entries have defined values, but those values are specific to +visual and are not defined by X. The alloc-policy must be +‘X:Alloc-None’. +

+
+
+ +

For the other visual classes, if alloc-policy is +‘X:Alloc-None’, the colormap initially has no allocated entries, +and clients can allocate them. +

+

If alloc-policy is ‘X:Alloc-All’, the entire colormap is +allocated writable. The initial values of all allocated entries are +undefined. +

+
+
X:Gray-Scale
+
X:Pseudo-Color
+

The effect is as if an XAllocColorCells call returned all pixel +values from zero to N - 1, where N is the colormap entries value in +visual. +

+
+
X:Direct-Color
+

The effect is as if an XAllocColorPlanes call returned a pixel +value of zero and red_mask, green_mask, and blue_mask values containing +the same bits as the corresponding masks in the specified visual. +

+
+ +
+ + +

To create a new colormap when the allocation out of a previously +shared colormap has failed because of resource exhaustion, use: +

+
+
Function: x:copy-colormap-and-free colormap
+
+

Creates and returns a colormap of the same visual type and for the same +screen as the specified colormap. It also moves all of the +client’s existing allocation from the specified colormap to the +new colormap with their color values intact and their read-only or +writable characteristics intact and frees those entries in the specified +colormap. Color values in other entries in the new colormap are +undefined. If the specified colormap was created by the client with +alloc set to ‘X:Alloc-All’, the new colormap is also created with +‘X:Alloc-All’, all color values for all entries are copied from the +specified colormap, and then all entries in the specified +colormap are freed. If the specified colormap was not +created by the client with ‘X:Alloc-All’, the allocations to be moved +are all those pixels and planes that have been allocated by the client +and that have not been freed since they were allocated. +

+
+ +

A colormap maps pixel values to elements of the RGB +datatype. An RGB is a list or vector of 3 integers, describing +the red, green, and blue intensities respectively. The integers are in +the range 0 - 65535. +

+
+
Function: x:alloc-colormap-cells colormap ncolors nplanes
+
Function: x:alloc-colormap-cells colormap ncolors nplanes contiguous?
+
+

The X:Alloc-Color-Cells function allocates read/write color +cells. The number of colors, ncolors must be positive and the +number of planes, nplanes nonnegative. If ncolors and +nplanes are requested, then ncolors pixels and nplane plane masks +are returned. No mask will have any bits set to 1 in common with any +other mask or with any of the pixels. By ORing together each pixel with +zero or more masks, ncolors * 2^nplanes distinct pixels can +be produced. All of these are allocated writable by the request. +

+
+
x:Gray-Scale
+
x:Pseudo-Color
+

Each mask has exactly one bit set to 1. If contiguous? is +non-false and if all masks are ORed together, a single contiguous set of +bits set to 1 is formed. +

+
x:Direct-Color
+

Each mask has exactly three bits set to 1. If contiguous? is +non-false and if all masks are ORed together, three contiguous sets of +bits set to 1 (one within each pixel subfield) is formed. +

+
+ +

The RGB values of the allocated entries are undefined. +X:Alloc-Color-Cells returns a list of two uniform arrays if it +succeeded or #f if it failed. The first array has the pixels allocated +and the second has the plane-masks. +

+ +
Function: x:alloc-colormap-cells colormap ncolors rgb
+
Function: x:alloc-colormap-cells colormap ncolors rgb contiguous?
+
+

The specified ncolors must be positive; and rgb a list or +vector of 3 nonnegative integers. If ncolors colors, nreds +reds, ngreens greens, and nblues blues are requested, +ncolors pixels are returned; and the masks have nreds, +ngreens, and nblues bits set to 1, respectively. If +contiguous? is non-false, each mask will have a contiguous set of +bits set to 1. No mask will have any bits set to 1 in common with any +other mask or with any of the pixels. +

+

Each mask will lie within the corresponding pixel subfield. By ORing +together subsets of masks with each pixel value, ncolors * +2(nreds+ngreens+nblues) distinct pixel values can be +produced. All of these are allocated by the request. However, in the +colormap, there are only ncolors * 2^nreds independent red +entries, ncolors * 2^ngreens independent green entries, and +ncolors * 2^nblues independent blue entries. +

+

X:Alloc-Color-Cells returns a list if it succeeded or #f if it +failed. The first element of the list has an array of the pixels +allocated. The second, third, and fourth elements are the red, green, +and blue plane-masks. +

+ +
+
Function: x:free-colormap-cells colormap pixels planes
+
Function: x:free-colormap-cells colormap pixels
+
+

Frees the cells represented by pixels whose values are in the +pixels unsigned-integer uniform-vector. The planes argument +should not have any bits set to 1 in common with any of the pixels. The +set of all pixels is produced by ORing together subsets of the +planes argument with the pixels. The request frees all of these +pixels that were allocated by the client. Note that freeing an +individual pixel obtained from X:Alloc-Colormap-Cells with a +planes argument may not actually allow it to be reused until all of its +related pixels are also freed. Similarly, a read-only entry is not +actually freed until it has been freed by all clients, and if a client +allocates the same read-only entry multiple times, it must free the +entry that many times before the entry is actually freed. +

+

All specified pixels that are allocated by the client in the +colormap are freed, even if one or more pixels produce an error. +It is an error if a specified pixel is not allocated by the client (that +is, is unallocated or is only allocated by another client) or if the +colormap was created with all entries writable (by passing +‘x:Alloc-All’ to X:Create-Colormap). If more than one pixel +is in error, the one that gets reported is arbitrary. +

+ +
+
Function: x:colormap-find-color colormap rgb
+
+

rgb is a list or vector of 3 integers, describing the red, green, +and blue intensities respectively; or an integer ‘#xrrggbb’, +packing red, green and blue intensities in the range 0 - 255. +

+
Function: x:colormap-find-color colormap color-name
+
+

The case-insensitive string color_name specifies the name of a +color (for example, ‘red’) +

+

X:Colormap-Find-Color allocates a read-only colormap entry +corresponding to the closest RGB value supported by the hardware. +X:Colormap-Find-Color returns the pixel value of the color +closest to the specified RGB or color_name elements +supported by the hardware, if successful; otherwise +X:Colormap-Find-Color returns #f. +

+

Multiple clients that request the same effective RGB value can +be assigned the same read-only entry, thus allowing entries to be +shared. When the last client deallocates a shared cell, it is +deallocated. +

+
+ +
+
Function: x:color-ref colormap pixel
+
+

Returns a list of 3 integers, describing the red, green, +and blue intensities respectively of the colormap entry of the +cell indexed by pixel. +

+

The integer pixel must be a valid index into colormap. +

+ +
+
Function: X:Color-Set! colormap pixel rgb
+
+

rgb is a list or vector of 3 integers, describing the red, green, +and blue intensities respectively; or an integer ‘#xrrggbb’, +packing red, green and blue intensities in the range 0 - 255. +

+
Function: X:Color-Set! colormap pixel color-name
+
+

The case-insensitive string color_name specifies the name of a +color (for example, ‘red’) +

+

The integer pixel must be a valid index into colormap. +

+

X:Color-Set! changes the colormap entry of the read/write +cell indexed by pixel. If the colormap is an installed map +for its screen, the changes are visible immediately. +

+
+ +
+
Function: x:install-colormap colormap
+
+

Installs the specified colormap for its associated screen. All +windows associated with colormap immediately display with true +colors. A colormap is associated with a window when the window is +created or its attributes changed. +

+

If the specified colormap is not already an installed colormap, the X +server generates a ColormapNotify event on each window that has that +colormap. +

+
+ +
+
Function: x:ccc colormap
+

Returns the Color-Conversion-Context of colormap. +

+ + +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

7. Rendering

+ +
+
Function: x:flush display
+
Function: x:flush window
+

Flushes the output buffer. Some client applications need not use this +function because the output buffer is automatically flushed as needed by +calls to X:Pending, X:Next-Event, and X:Window-Event. Events generated +by the server may be enqueued into the library’s event queue. +

+
Function: x:flush gc
+

Forces sending of GC component changes. +

+

Xlib usually defers sending changes to the components of a GC to the +server until a graphics function is actually called with that GC. This +permits batching of component changes into a single server request. In +some circumstances, however, it may be necessary for the client to +explicitly force sending the changes to the server. An example might be +when a protocol extension uses the GC indirectly, in such a way that the +extension interface cannot know what GC will be used. +

+ +
+
Function: x:clear-area window (x-pos y-pos) (width height) expose?
+

Paints a rectangular area in the specified window according to the +specified dimensions with the window’s background pixel or pixmap. +The subwindow-mode effectively is ‘x:Clip-By-Children’. If width +is zero, it is replaced with the current width of the window minus +x. If height is zero, it is replaced with the current height of the +window minus y. If the window has a defined background +tile, the rectangle clipped by any children is filled with this tile. +If the window has background x:None, the contents of the +window are not changed. In either case, if expose? is True, +one or more x:Expose events are generated for regions of the rectangle +that are either visible or are being retained in a backing store. If +you specify a window whose class is x:Input-Only, an error +results. +

+ +
+
Function: x:fill-rectangle window gcontext position size
+
+ + +

Draw Strings

+ +
+
Function: x:draw-string drawable gc position string
+

Position specifies coordinates relative to the origin of +drawable of the origin of the first character to be drawn. +

+

x:draw-string draws the characters of string, starting at +position. +

+ +
+
Function: x:image-string drawable gc position string
+

Position specifies coordinates relative to the origin of +drawable of the origin of the first character to be drawn. +

+

x:image-string draws the characters and background of +string, starting at position. +

+ + +

Draw Shapes

+ +
+
Function: x:draw-points drawable gc position …
+

Position … specifies coordinates of the point to be drawn. +

+
Function: x:draw-points drawable gc x y …
+

(x, y) … specifies coordinates of the point to be +drawn. +

+
Function: x:draw-points drawable gc point-array
+

point-array is a uniform short array of rank 2, whose rightmost +index spans a range of 2. +

+

The X:Draw-Points procedure uses the foreground pixel and +function components of the gc to draw points into drawable +at the positions (relative to the origin of drawable) specified. +

+

X:Draw-Points uses these gc components: function, +planemask, foreground, subwindow-mode, clip-x-origin, clip-y-origin, and +clip-mask. +

+ + +
+
Function: x:draw-segments drawable gc pos1 pos2 …
+

Pos1, pos2, … specify coordinates to be connected by +segments. +

+
Function: x:draw-segments drawable gc x1 y1 x2 y2 …
+

(x1, y1), (x2, y2) … specify coordinates +to be connected by segments. +

+
Function: x:draw-segments drawable gc point-array
+

point-array is a uniform short array of rank 2, whose rightmost +index spans a range of 2. +

+

The X:Draw-Segments procedure uses the components of the +specified gc to draw multiple unconnected lines between disjoint +adjacent pair of points passed as arguments. It draws the segments in +order and does not perform joining at coincident endpoints. For any +given line, X:Draw-Segments does not draw a pixel more than once. +If thin (zero line-width) segments intersect, the intersecting pixels +are drawn multiple times. If wide segments intersect, the intersecting +pixels are drawn only once, as though the entire PolyLine protocol +request were a single, filled shape. X:Draw-Segments treats all +coordinates as relative to the origin of drawable. +

+

X:Draw-Segments uses these gc components: function, +plane-mask, line-width, line-style, cap-style, fill-style, +subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask, join-style. +It also use these gc mode-dependent components: foreground, +background, tile, stipple, tilestipple-x-origin, tile-stipple-y-origin, +dash-offset, and dash-list. +

+ +
+
Function: x:draw-lines drawable gc pos1 pos2 …
+

Pos1, pos2, … specify coordinates to be connected by +lines. +

+
Function: x:draw-lines drawable gc x1 y1 x2 y2 …
+

(x1, y1), (x2, y2) … specify coordinates +to be connected by lines. +

+
Function: x:draw-lines drawable gc point-array
+

point-array is a uniform short array of rank 2, whose rightmost +index spans a range of 2. +

+

The X:Draw-Lines procedure uses the components of the specified +gc to draw lines between each adjacent pair of points passed as +arguments. It draws the lines in order. The lines join correctly at +all intermediate points, and if the first and last points coincide, the +first and last lines also join correctly. For any given line, +X:Draw-Lines does not draw a pixel more than once. If thin (zero +line-width) lines intersect, the intersecting pixels are drawn multiple +times. If wide lines intersect, the intersecting pixels are drawn only +once, as though the entire PolyLine protocol request were a single, +filled shape. X:Draw-Lines treats all coordinates as relative to +the origin of drawable. +

+

X:Draw-Lines uses these gc components: function, +plane-mask, line-width, line-style, cap-style, fill-style, +subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask, join-style. +It also use these gc mode-dependent components: foreground, +background, tile, stipple, tilestipple-x-origin, tile-stipple-y-origin, +dash-offset, and dash-list. +

+ +
+
Function: x:fill-polygon drawable gc pos1 pos2 …
+

Pos1, pos2, … specify coordinates of the border path. +

+
Function: x:fill-polygon drawable gc x1 y1 x2 y2 …
+

(x1, y1), (x2, y2) … specify coordinates +of the border path. +

+
Function: x:fill-polygon drawable gc point-array
+

point-array is a uniform short array of rank 2, whose rightmost +index spans a range of 2. +

+

The path is closed automatically if the last point in the list or +point-array does not coincide with the first point. +

+

The X:Fill-Polygon procedure uses the components of the specified +gc to fill the region closed by the specified path. +X:Fill-Polygon does not draw a pixel of the region more than +once. X:Fill-Polygon treats all coordinates as relative to the +origin of drawable. +

+

X:Fill-Polygon uses these gc components: function, +planemask, fill-style, fill-rule, subwindow-mode, clip-x-origin, +clip-y-origin, and clip-mask. It also use these gc mode-dependent +components: foreground, background, tile, stipple, +tile-stipple-x-origin, and tile-stipple-y-origin. +

+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

8. Images

+ +
+
Function: x:read-bitmap-file drawable file
+
+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

9. Event

+ +

These three status routines always return immediately if there are +events already in the queue. +

+
+
Function: x:q-length display
+

Returns the length of the event queue for the connected display. +Note that there may be more events that have not been read into the +queue yet (see X:Events-Queued). +

+ +
+
Function: x:pending display
+

Returns the number of events that have been received from the X server +but have not been removed from the event queue. +

+ +
+
Function: x:events-queued display
+

Returns the number of events already in the queue if the number is +nonzero. If there are no events in the queue, X:Events-Queued +attempts to read more events out of the application’s connection without +flushing the output buffer and returns the number read. +

+ +

Both of these routines return an object of type event. +

+
+
Function: x:next-event display
+

Removes and returns the first event from the event queue. If the event +queue is empty, X:Next-Event flushes the output buffer and blocks +until an event is received. +

+ +
+
Function: x:peek-event display
+

Returns the first event from the event queue, but it does not remove the +event from the queue. If the queue is empty, X:Peek-Event +flushes the output buffer and blocks until an event is received. +

+ +

Each event object has fields dependent on its sub-type. +

+
+
Function: x:event-ref event field-name
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
windowThe window on which event was generated and is referred to as the +event window.
rootis the event window’s root window.
subwindowIf the source window is an inferior of the event window, the +subwindow is the child of the event window that is the source +window or the child of the event window that is an ancestor of the +source window. Otherwise, ‘None’.
X-event:typeAn integer: x:Key-Press, x:Key-Release, +x:Button-Press, x:Button-Release, x:Motion-Notify, +x:Enter-Notify, x:Leave-Notify, x:Focus-In, +x:Focus-Out, x:Keymap-Notify, x:Expose, +x:Graphics-Expose, x:No-Expose, x:Visibility-Notify, +x:Create-Notify, x:Destroy-Notify, x:Unmap-Notify, +x:Map-Notify, x:Map-Request, x:Reparent-Notify, +x:Configure-Notify, x:Configure-Request, +x:Gravity-Notify, x:Resize-Request, +x:Circulate-Notify, x:Circulate-Request, +x:Property-Notify, x:Selection-Clear, +x:Selection-Request, x:Selection-Notify, +x:Colormap-Notify, x:Client-Message, or +x:Mapping-Notify.
X-event:serialThe serial number of the protocol request that generated the event.
X-event:send-eventBoolean that indicates whether the event was sent by a different client.
X-event:timeThe time when the event was generated expressed in milliseconds.
X-event:x
X-event:yFor window entry/exit events the x and y members are set to +the coordinates of the pointer position in the event window. This +position is always the pointer’s final position, not its initial +position. If the event window is on the same screen as the root window, +x and y are the pointer coordinates relative to the event +window’s origin. Otherwise, x and y are set to zero. + +

For expose events The x and y members are set to the +coordinates relative to the drawable’s origin and indicate the +upper-left corner of the rectangle. +

+

For configure, create, gravity, and reparent events the x and +y members are set to the window’s coordinates relative to the +parent window’s origin and indicate the position of the upper-left +outside corner of the created window. +

X-event:x-root
X-event:y-rootThe pointer’s coordinates relative to the root window’s origin at the +time of the event.
X-event:stateFor keyboard, pointer and window entry/exit events, the state member is +set to indicate the logical state of the pointer buttons and modifier +keys just prior to the event, which is the bitwise inclusive OR of +one or more of the button or modifier key masks: x:Button1-Mask, +x:Button2-Mask, x:Button3-Mask, x:Button4-Mask, +x:Button5-Mask, x:Shift-Mask, x:Lock-Mask, +x:Control-Mask, x:Mod1-Mask, x:Mod2-Mask, +x:Mod3-Mask, x:Mod4-Mask, and x:Mod5-Mask. + +

For visibility events, the state of the window’s visibility: +x:Visibility-Unobscured, x:Visibility-Partially-Obscured, or +x:Visibility-Fully-Obscured. +

+

For colormap events, indicates whether the colormap is installed or +uninstalled: x:Colormap-Installed or x:Colormap-Uninstalled. +

+

For property events, indicates whether the property was changed to a new +value or deleted: x:Property-New-Value or x:Property-Delete. +

X-event:keycodeAn integer that represents a physical key on the keyboard.
X-event:same-screenIndicates whether the event window is on the same screen as the root +window. If #t, the event and root windows are on the same screen. If +#f, the event and root windows are not on the same screen.
X-event:buttonThe pointer button that changed state; can be the x:Button1, +x:Button2, x:Button3, x:Button4, or x:Button5 +value.
X-event:is-hintDetail of motion-notify events: x:Notify-Normal or +x:Notify-Hint.
X-event:modeIndicates whether the event is a normal event, pseudo-motion event +when a grab activates, or a pseudo-motion event when a grab deactivates: +x:Notify-Normal, x:Notify-Grab, or x:Notify-Ungrab.
X-event:detailIndicates the notification detail: x:Notify-Ancestor, +x:Notify-Virtual, x:Notify-Inferior, +x:Notify-Nonlinear, or x:Notify-Nonlinear-Virtual.
X-event:focusIf the event window is the focus window or an inferior of the focus +window, #t; otherwise #f.
X-event:width
X-event:heightThe size (extent) of the rectangle.
X-event:countFor mapping events is the number of keycodes altered. + +

For expose events Is the number of Expose or GraphicsExpose events that +are to follow. If count is zero, no more Expose events follow for this +window. However, if count is nonzero, at least that number of Expose +events (and possibly more) follow for this window. Simple applications +that do not want to optimize redisplay by distinguishing between +subareas of its window can just ignore all Expose events with nonzero +counts and perform full redisplays on events with zero counts. +

X-event:major-codeThe major_code member is set to the graphics request initiated by the +client and can be either X_CopyArea or X_CopyPlane. If it is +X_CopyArea, a call to XCopyArea initiated the request. If it is +X_CopyPlane, a call to XCopyPlane initiated the request.
X-event:minor-codeNot currently used.
X-event:border-widthFor configure events, the width of the window’s border, in pixels.
X-event:override-redirectThe override-redirect attribute of the window. Window manager clients +normally should ignore this window if it is #t.
X-event:from-configureTrue if the event was generated as a result of a resizing of the +window’s parent when the window itself had a win-gravity of +x:Unmap-Gravity.
X-event:value-maskIndicates which components were specified in the ConfigureWindow +protocol request. The corresponding values are reported as given in the +request. The remaining values are filled in from the current geometry +of the window, except in the case of above (sibling) and detail +(stack-mode), which are reported as None and Above, respectively, if +they are not given in the request.
X-event:placeThe window’s position after the restack occurs and is either +x:Place-On-Top or x:Place-On-Bottom. If it is x:Place-On-Top, the +window is now on top of all siblings. If it is x:Place-On-Bottom, the +window is now below all siblings.
X-event:newindicate whether the colormap for the specified window was changed or +installed or uninstalled and can be True or False. If it is True, the +colormap was changed. If it is False, the colormap was installed or +uninstalled.
X-event:formatIs 8, 16, or 32 and specifies whether the data should be viewed as a +list of bytes, shorts, or longs
X-event:requestIndicates the kind of mapping change that occurred and can be +x:Mapping-Modifier, x:Mapping-Keyboard, or +x:Mapping-Pointer. If it is x:Mapping-Modifier, the +modifier mapping was changed. If it is x:Mapping-Keyboard, the +keyboard mapping was changed. If it is x:Mapping-Pointer, the +pointer button mapping was changed.
X-event:first-keycodeThe X-event:first-keycode is set only if the X-event:request was set to +x:Mapping-Keyboard. The number in X-event:first-keycode +represents the first number in the range of the altered mapping, and +X-event:count represents the number of keycodes altered.
+
+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

Indexes

+ + + + + + + +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

Procedure and Macro Index

+ +
Jump to:   H +   +X +   +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Index Entry Section

H
hostname:number.screen-number2. Display and Screens

X
x:alloc-colormap-cells6. Colormap
x:alloc-colormap-cells6. Colormap
x:alloc-colormap-cells6. Colormap
x:alloc-colormap-cells6. Colormap
x:ccc6. Colormap
x:clear-area7. Rendering
x:close2. Display and Screens
x:close3.1 Windows and Pixmaps
x:close3.1 Windows and Pixmaps
x:color-ref6. Colormap
X:Color-Set!6. Colormap
X:Color-Set!6. Colormap
x:colormap-find-color6. Colormap
x:colormap-find-color6. Colormap
x:copy-colormap-and-free6. Colormap
x:copy-gc-fields!4. Graphics Context
x:create-colormap6. Colormap
x:create-cursor5. Cursor
x:create-cursor5. Cursor
x:create-cursor5. Cursor
x:create-cursor5. Cursor
x:create-cursor5. Cursor
x:create-gc4. Graphics Context
x:create-pixmap3.1 Windows and Pixmaps
x:create-pixmap3.1 Windows and Pixmaps
x:create-window3.1 Windows and Pixmaps
x:create-window3.1 Windows and Pixmaps
x:default-ccc2. Display and Screens
x:default-ccc2. Display and Screens
x:default-ccc2. Display and Screens
x:default-colormap2. Display and Screens
x:default-colormap2. Display and Screens
x:default-colormap2. Display and Screens
x:default-gc2. Display and Screens
x:default-gc2. Display and Screens
x:default-gc2. Display and Screens
x:default-screen2. Display and Screens
x:default-visual2. Display and Screens
x:default-visual2. Display and Screens
x:default-visual2. Display and Screens
x:draw-linesDraw Shapes
x:draw-linesDraw Shapes
x:draw-linesDraw Shapes
x:draw-pointsDraw Shapes
x:draw-pointsDraw Shapes
x:draw-pointsDraw Shapes
x:draw-segmentsDraw Shapes
x:draw-segmentsDraw Shapes
x:draw-segmentsDraw Shapes
x:draw-stringDraw Strings
x:event-ref9. Event
x:events-queued9. Event
x:fill-polygonDraw Shapes
x:fill-polygonDraw Shapes
x:fill-polygonDraw Shapes
x:fill-rectangle7. Rendering
x:flush7. Rendering
x:flush7. Rendering
x:flush7. Rendering
x:free-colormap-cells6. Colormap
x:free-colormap-cells6. Colormap
x:gc-ref4. Graphics Context
x:gc-set!4. Graphics Context
x:get-window-property3.3 Window Properties and Visibility
x:get-window-property3.3 Window Properties and Visibility
x:image-stringDraw Strings
x:install-colormap6. Colormap
x:list-properties3.3 Window Properties and Visibility
x:make-visual2. Display and Screens
x:make-visual2. Display and Screens
x:map-subwindows3.3 Window Properties and Visibility
x:map-window3.3 Window Properties and Visibility
x:next-event9. Event
x:open-display2. Display and Screens
x:peek-event9. Event
x:pending9. Event
x:protocol-version2. Display and Screens
x:q-length9. Event
x:read-bitmap-file8. Images
x:root-window2. Display and Screens
x:root-window2. Display and Screens
x:root-window2. Display and Screens
x:screen-black2. Display and Screens
x:screen-black2. Display and Screens
x:screen-black2. Display and Screens
x:screen-cells2. Display and Screens
x:screen-cells2. Display and Screens
x:screen-cells2. Display and Screens
x:screen-count2. Display and Screens
x:screen-depth2. Display and Screens
x:screen-depth2. Display and Screens
x:screen-depth2. Display and Screens
x:screen-depth2. Display and Screens
x:screen-depths2. Display and Screens
x:screen-depths2. Display and Screens
x:screen-depths2. Display and Screens
x:screen-dimensions2. Display and Screens
x:screen-dimensions2. Display and Screens
x:screen-dimensions2. Display and Screens
x:screen-size2. Display and Screens
x:screen-size2. Display and Screens
x:screen-size2. Display and Screens
x:screen-white2. Display and Screens
x:screen-white2. Display and Screens
x:screen-white2. Display and Screens
x:server-vendor2. Display and Screens
x:unmap-subwindows3.3 Window Properties and Visibility
x:unmap-window3.3 Window Properties and Visibility
x:vendor-release2. Display and Screens
x:visual-class2. Display and Screens
x:visual-class2. Display and Screens
x:visual-class2. Display and Screens
x:visual-geometry2. Display and Screens
x:visual-geometry2. Display and Screens
x:visual-geometry2. Display and Screens
x:window-geometry3.1 Windows and Pixmaps
x:window-geometry-set!3.1 Windows and Pixmaps
x:window-ref3.2 Window Attributes
x:window-set!3.2 Window Attributes

+
Jump to:   H +   +X +   +
+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

Variable Index

+ +
Jump to:   X +   +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Index Entry Section

X
x:CW-Back-Pixel3.2 Window Attributes
x:CW-Back-Pixmap3.2 Window Attributes
x:CW-Backing-Pixel3.2 Window Attributes
x:CW-Backing-Planes3.2 Window Attributes
x:CW-Backing-Store3.2 Window Attributes
x:CW-Bit-Gravity3.2 Window Attributes
x:CW-Border-Pixel3.2 Window Attributes
x:CW-Border-Pixmap3.2 Window Attributes
x:CW-Border-Width3.1 Windows and Pixmaps
x:CW-Colormap3.2 Window Attributes
x:CW-Cursor3.2 Window Attributes
x:CW-Dont-Propagate3.2 Window Attributes
x:CW-Event-Mask3.2 Window Attributes
x:CW-Height3.1 Windows and Pixmaps
x:CW-Override-Redirect3.2 Window Attributes
x:CW-Save-Under3.2 Window Attributes
x:CW-Sibling3.1 Windows and Pixmaps
x:CW-Stack-Mode3.1 Windows and Pixmaps
x:CW-Width3.1 Windows and Pixmaps
x:CW-Win-Gravity3.2 Window Attributes
x:CWX3.1 Windows and Pixmaps
x:CWY3.1 Windows and Pixmaps
x:GC-Arc-ModeGC Attributes
x:GC-BackgroundGC Attributes
x:GC-Cap-StyleGC Attributes
x:GC-Clip-MaskGC Attributes
x:GC-Clip-X-OriginGC Attributes
x:GC-Clip-Y-OriginGC Attributes
x:GC-Dash-ListGC Attributes
x:GC-Dash-OffsetGC Attributes
x:GC-Fill-RuleGC Attributes
x:GC-Fill-StyleGC Attributes
x:GC-FontGC Attributes
x:GC-ForegroundGC Attributes
x:GC-FunctionGC Attributes
x:GC-Graphics-ExposuresGC Attributes
x:GC-Join-StyleGC Attributes
x:GC-Line-StyleGC Attributes
x:GC-Line-WidthGC Attributes
x:GC-Plane-MaskGC Attributes
x:GC-StippleGC Attributes
x:GC-Subwindow-ModeGC Attributes
x:GC-TileGC Attributes
x:GC-Tile-Stip-X-OriginGC Attributes
x:GC-Tile-Stip-Y-OriginGC Attributes

+
Jump to:   X +   +
+ +
+ + + + + + + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+ +

Concept Index

+ +
Jump to:   C +   +D +   +M +   +N +   +R +   +U +   +V +   +X +   +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Index Entry Section

C
colormap6. Colormap
cursor5. Cursor

D
depth2. Display and Screens
drawable3. Drawables
Drawable3. Drawables

M
map3.3 Window Properties and Visibility
mapped3.3 Window Properties and Visibility

N
noneGC Attributes

R
RGB6. Colormap

U
unmap3.3 Window Properties and Visibility
unmapped3.3 Window Properties and Visibility

V
visual2. Display and Screens
Visual2. Display and Screens

X
X1. XlibScm
x:NoneGC Attributes
Xlib1. XlibScm

+
Jump to:   C +   +D +   +M +   +N +   +R +   +U +   +V +   +X +   +
+ +
+ + + + + + +
[Top][Contents][Index][ ? ]
+

Table of Contents

+
+ + +
+
+ + + + + + +
[Top][Contents][Index][ ? ]
+

About This Document

+

+ This document was generated by iwamatsu on March 3, 2010 using texi2html 1.82. +

+

+ The buttons in the navigation panels have the following meaning: +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Button Name Go to From 1.2.3 go to
[ < ] BackPrevious section in reading order1.2.2
[ > ] ForwardNext section in reading order1.2.4
[ << ] FastBackBeginning of this chapter or previous chapter1
[ Up ] UpUp section1.2
[ >> ] FastForwardNext chapter2
[Top] TopCover (top) of document  
[Contents] ContentsTable of contents  
[Index] IndexIndex  
[ ? ] AboutAbout (help)  
+ +

+ where the Example assumes that the current position is at Subsubsection One-Two-Three of a document of the following structure: +

+ + + +
+

+ + This document was generated by iwamatsu on March 3, 2010 using texi2html 1.82. + +
+ +

+ + --- scm-5e5.orig/build.scm +++ scm-5e5/build.scm @@ -568,6 +568,16 @@ (nostart linux "" "" #f () ()) (dump linux "" "" #f ("unexelf.c" "gmalloc.c") ()) + (m linux-ia64 "" "-lm" "/lib/libm.so" () ()) + (c linux-ia64 "" "-lc" "/lib/libc.so" () ()) + (dlll linux-ia64 "-DSUN_DL" "-ldl" #f () ()) + (regex linux-ia64 "" "" #f () ()) + (graphics linux-ia64 "-I/usr/include/X11 -DX11" "-L/usr/X11R6/lib -lX11" + "/usr/X11R6/lib/libX11.so" () ()) + (curses linux-ia64 "" "-lcurses" "/lib/libncurses.so" () ()) + (nostart linux-ia64 "" "" #f () ()) + (dump linux-ia64 "" "" #f ("unexelf.c" "gmalloc.c") ()) + (dump irix "" "-G 0" #f () ()) (m acorn-unixlib "" "" #f () ()) @@ -1077,14 +1087,17 @@ (append objects libs))) oname))) +(define (build-continue-ia64 parms) + (and (batch:try-command + parms "gcc -o get-contoffset-ia64 get-contoffset-ia64.c") + (batch:try-command + parms "./get-contoffset-ia64 contoffset-ia64.S") + (batch:try-command + parms "gcc -c continue-ia64.S"))) + (defcommand link-c-program linux-ia64 (lambda (oname objects libs parms) - (and (and (batch:try-command - parms "gcc -o get-contoffset-ia64 get-contoffset-ia64.c") - (batch:try-command - parms "./get-contoffset-ia64 contoffset-ia64.S") - (batch:try-command - parms "gcc -c continue-ia64.S")) + (and (build-continue-ia64 parms) (batch:try-command parms "gcc" "-rdynamic" "-o" oname "continue-ia64.o" (must-be-first @@ -1568,6 +1581,15 @@ (and (batch:try-command parms "ar rc" aname objects) (batch:try-command parms "ranlib" aname) aname)))) + +(defcommand make-archive linux-ia64 + (lambda (oname objects libs parms) + (let ((aname (string-append "lib" oname ".a"))) + (and (build-continue-ia64 parms) + (batch:try-command parms "ar rc" aname objects "continue-ia64.o") + (batch:try-command parms "ranlib" aname) + aname)))) + (defcommand compile-dll-c-files *unknown* (lambda (files parms) (and (batch:try-chopped-command parms --- scm-5e5.orig/continue.h +++ scm-5e5/continue.h @@ -60,6 +60,10 @@ #ifdef _UNICOS # define STACK_GROWS_UP #endif +/* __hppa__ case added by tb for debian */ +#ifdef __hppa__ +# define STACK_GROWS_UP +#endif /* James Clark came up with this neat one instruction fix for continuations on the SPARC. It flushes the register windows so --- scm-5e5.orig/debian/changelog +++ scm-5e5/debian/changelog @@ -0,0 +1,610 @@ +scm (5e5-3.3build1) xenial; urgency=medium + + * No-change rebuild for ncurses6 transition. + + -- Matthias Klose Sun, 07 Feb 2016 09:45:38 +0000 + +scm (5e5-3.3) unstable; urgency=low + + * Non-maintainer upload. + * Fixed texinfo errors (Closes: #712339) + * Removed install-info from maintainer scripts (Closes: #708498) + + -- Hilko Bengen Sat, 23 Nov 2013 15:14:04 +0100 + +scm (5e5-3.2) unstable; urgency=low + + * NMU, added armhf in arch list. (Closes: #604537) + + -- Konstantinos Margaritis Thu, 24 Feb 2011 15:44:36 +0000 + +scm (5e5-3.1) unstable; urgency=low + + * Non-maintainer upload. + ACKed by maintainer. + * Update debian/control. + - Add support sh4, kfreebsd-amd64 and kfreebsd-i386. + (Closes: #558213, #559017) + - Replacing libreadline5-dev build dependency with libreadline-dev. + (Closes: #553847) + + -- Nobuhiro Iwamatsu Mon, 01 Mar 2010 14:58:29 +0900 + +scm (5e5-3) unstable; urgency=low + + * build.scm (build-continue-ia64): New function, to encapsulate the method + for building continue-ia64.o. + (link-c-program/linux-ia64): Use build-continue-ia64. + (make-archive/linux-ia64): New command, to use build-continue-ia64. + (Closes: #483273). + + -- Thomas Bushnell, BSG Sat, 26 Jul 2008 12:08:17 -0700 + +scm (5e5-2) unstable; urgency=low + + * continue.h: actually make the change mentioned in 5e5-1. + * Makefile: Likewise. + * xgen.scm: Likewise. + * scm.1: Likewise. + * build.scm: Likewise. + + -- Thomas Bushnell, BSG Mon, 18 Feb 2008 15:37:29 -0500 + +scm (5e5-1) unstable; urgency=low + + * New upstream release. + * continue.h: Repeat change from 5e1-2. + * xgen.scm: Repeat change from 5e2-4. + * scm.1: Repeat change from 5e2-4. + * build.scm: Repeat change from 5e3-5. + * Makefile: Repeat change from 5e3-2. + * debian/control (Build-Depends): Require at least version 3b1 of slib. + (scm Depends): Likewise. + (libscm-dev Depends): Likewise. + + * Makefile (scm.info): Add explicit dependency on features.txi and + platform.txi. For some reason the one through $(texifiles) is + failing mysteriously. Perhaps this is a make bug. + + -- Thomas Bushnell, BSG Mon, 04 Feb 2008 20:53:13 -0500 + +scm (5e4-5) unstable; urgency=low + + * debian/control (libscm-dev/Description): Drop mistaken extra spaces + in description. + + * debian/control (libscm-dev/Depends): Use $(binary:Version} for the + dependency rather than ${source:Version}. + + * debian/control (Standards-Version): Update to 3.7.3. (No changes needed.) + + -- Thomas Bushnell, BSG Wed, 16 Jan 2008 16:08:07 -0500 + +scm (5e4-4) unstable; urgency=low + + * continue.h: Fix spelling of STACK_GROWS_UP in change from 5e4-1. + + * Makefile: Repeat change from 5e3-2. + + -- Thomas Bushnell, BSG Sun, 13 Jan 2008 22:15:05 -0500 + +scm (5e4-3) unstable; urgency=low + + * debian/rules (SCM_OPTIONS): Add -F differ. + + * debian/control (libscm-dev): New package. We don't make a shared library + because there is no standardization of SCM options, and no way to indicate + in a non-brittle fashion what SCM options are available in any particular + build, nor any standardization of sonames. + * debian/rules (build): Build libscm.a too. + (install): Install libscm.a, scm.h, scmfig.h, and scmflags.h into + libscm-dev. Don't install header files in scm package. + (Closes: #459828) + + * debian/copyright: Add proper authorship and copyright information; make + mention of the special library linking exception since we are now + packaging the library. + + -- Thomas Bushnell, BSG Wed, 09 Jan 2008 14:08:12 -0500 + +scm (5e4-2) unstable; urgency=low + + * Properly acknowledge NMU 5e3-6.1. (Closes: #369576, #458284). + + -- Thomas Bushnell, BSG Sun, 30 Dec 2007 17:10:06 -0800 + +scm (5e4-1) unstable; urgency=low + + * New upstream release. + * debian/control: Require at least version 3a5 of slib. + + * debian/postrm: New file to remove /usr/lib/scm/implcat and + /usr/lib/scm/slibcat upon purge. (Closes: #455124). Thanks to Kumar + Appaiah for the fix. + + * debian/control (Architecture): Add armel and armeb. (Closes: #408792). + + * debian/rules (install): Don't use -s when installing. dh_strip should + be sufficient, and this should make the nostrip build option work. + (Closes: #438004). + + * continue.h: Repeat change from 5e1-2. + + * xgen.scm: Repeat change from 5e2-4. + + * scm.1: Repeat change from 5e2-4. + + * build.scm: Repeat change from 5e3-5. + + -- Thomas Bushnell, BSG Fri, 28 Dec 2007 15:56:00 -0800 + +scm (5e3-6.1) unstable; urgency=low + + * Non-maintainer upload. + * Split doc-base file into two files, add missing 'Index' fields for 'info' + sections (closes: #369576). + Thanks to Robert Luberda for the patch. + * Remove from rules/postinst/postrm any manually doc-base handling code, + since dh_installdocs supports doc-base on its own. + Thanks to Robert Luberda for the patch. + + -- Neil Williams Sun, 15 Jul 2007 21:14:17 +0100 + +scm (5e3-6) unstable; urgency=medium + + * Medium urgency because this is a release critical issue, + and is part of the fix made in slib 3a4-4. + + * debian/control (scm): Add version specification to the slib + dependency (>> 3a4). + + -- Thomas Bushnell, BSG Wed, 8 Nov 2006 00:12:38 -0800 + +scm (5e3-5) unstable; urgency=low + + * build.scm (build: C-libraries): Duplicate linux section for linux-ia64. + + -- Thomas Bushnell, BSG Sat, 28 Oct 2006 02:27:38 -0700 + +scm (5e3-4) unstable; urgency=low + + * debian/rules (PLATFORM): New variable, to hold the SCM platform name; + linux normally, but linux-ia64 on ia64. + (SCM_OPTIONS): Instead of always giving -p linux, use $(PLATFORM). + + -- Thomas Bushnell, BSG Fri, 27 Oct 2006 20:02:53 -0700 + +scm (5e3-3) unstable; urgency=low + + * debian/rules (install): Don't install slibcat, since we build it at + install time. (Closes: #395552) + + -- Thomas Bushnell, BSG Fri, 27 Oct 2006 12:31:20 -0700 + +scm (5e3-2) unstable; urgency=low + + * Makefile (ofiles): If $(ARCH) is ia64, add continue-ia64.o. + * debian/rules: Set ARCH from DEB_BUILD_ARCH when making scmlit. + (Closes: #395312) + + -- Thomas Bushnell, BSG Thu, 26 Oct 2006 21:50:09 -0700 + +scm (5e3-1) unstable; urgency=low + + * New upstream release. + * debian/control (Architecture): Add ia64 to list of supported archs. Now + everything but s390 is listed. (Closes: #335980) + (Build-Depends): Require at least version 3a4 of slib. + + * Change to continue.h from version 5e1-2 repeated here. + + * Change to xgen.scm from version 5e2-4 repeated here. + + * Change to scm.1 from version 5e2-4 repeated here. + + -- Thomas Bushnell, BSG Mon, 23 Oct 2006 23:31:59 -0700 + +scm (5e2-5) unstable; urgency=low + + * debian/rules (binary-arch): Depend on install. Whoops! + + -- Thomas Bushnell, BSG Sat, 21 Oct 2006 19:20:05 -0700 + +scm (5e2-4) unstable; urgency=medium + + * Medium urgency because this fixes the non-working xgen.scm and + compile.scm programs. + + * debian/control (Standards-Version): Update to 3.7.2. + + * debian/control (Architecture): Change i386-hurd to hurd-i386. + + * scm.1 (.TH): Put in section number. + + * debian/doc-base: Put .gz suffix after info files, since that's how we + install them. + + * debian/rules (binary-arch): Make compile.scm and xgen.scm executable. + * xgen.scm (#!): Find /usr/bin/scm in correct place. + + * debian/control (Build-Depends): Add debhelper. + * debian/rules (DH_VERBOSE): New variable; commented out. + (checkdir): Delete variable; replace with dh_testdir. + (checkroot): Delete target; replace with dh_testroot. + (clean): Call dh_testroot. Remove build-stamp first in case something + later bombs. Call dh_clean at the end. + (binary-indep): Just depend on build and install and do nothing else. + (install): New target. Most of the guts come here from binary-arch. + Call debhelper stuff at the front. + Install into debian/scm instead of debian/tmp. + (binary-arch): Use debhelper commands to build the package. + (.PHONY): Add install. + * debian/compat: New file (level 5). + * debian/postinst: Add #DEBHELPER# token. + * debian/prerm: Add #DEBHELPER# token. + + -- Thomas Bushnell, BSG Fri, 20 Oct 2006 13:37:25 -0700 + +scm (5e2-3) unstable; urgency=low + + * debian/control (Architecture): Remove s390, officially unsupported by + upstream. + + -- Thomas Bushnell, BSG Tue, 12 Sep 2006 00:04:04 -0700 + +scm (5e2-2) unstable; urgency=low + + * debian/postinst: Rebuild the slib catalog every time. + + -- Thomas Bushnell, BSG Sat, 27 May 2006 15:35:32 -0700 + +scm (5e2-1) unstable; urgency=low + + * New upstream release. + * Change to continue.h from version 5e1-2 repeated here. + + -- Thomas Bushnell, BSG Wed, 26 Apr 2006 23:01:39 -0700 + +scm (5e1-5) unstable; urgency=low + + * debian/control (scm): Add ppc64 to Architecture list. + * scmfig.h (__powerpc64__, __x86_64__): Define SHORT_INT and CDR_DOUBLES. + (Closes: #353173, #251765). + + -- Thomas Bushnell, BSG Wed, 22 Feb 2006 15:19:31 -0800 + +scm (5e1-4) unstable; urgency=low + + * debian/control (Build-Depends): Actually *make* the preceding change + rather than simply documenting it. (Closes: #347027). + + -- Thomas Bushnell, BSG Mon, 9 Jan 2006 09:54:52 -0800 + +scm (5e1-3) unstable; urgency=low + + * debian/control (Build-Depends): Depend on libx11-dev instead of xlibs-dev. + (Closes: #347027). + + -- Thomas Bushnell, BSG Mon, 9 Jan 2006 09:18:22 -0800 + +scm (5e1-2) unstable; urgency=low + + * debian/control (Architecture): Provide explicit list: alpha amd64 arm + hppa i386 i386-hurd m68k mips mipsel powerpc s390 sparc. This is all + the Debian archs except for ia64, which is officially unspported by + upstream. + + * continue.h: When __hppa__ is defined, set STACK_GROWS_UP. + + -- Thomas Bushnell, BSG Fri, 28 Oct 2005 17:24:42 -0700 + +scm (5e1-1) unstable; urgency=low + + * New upstream release. (Closes: #335970) + * debian/rules (SCM_OPTIONS): Remove -F turtlegr; the file supporting + this option seems to have gone by the wayside. + * debian/rules (binary-arch): Don't try to install grtest.scm; it's gone + now. + + * debian/rules (build-stamp): Use tee to capture output of ./build so + that we can capture a copy of the file in the build log. + + * scm.1: Fix spelling errors in manual page: + verobse -> verbose; + qoutes -> quotes; + aguments -> arguments; + neccessary -> necessary; + preceeds -> precedes. + syncronization -> synchronization. + (Closes: #300131) + + * debian/postinst, debian/prerm: Assume that install-docs is in the + standard place, and test for it there with test -x. (Closes: #292996) + + -- Thomas Bushnell, BSG Thu, 27 Oct 2005 12:00:49 -0700 + +scm (5d9-5) unstable; urgency=low + + * New maintainer. Adopted with permission of previous maintainer. + + * repl.c (s_read): Remove static qualifier on declaration. + * scmfig.h: Use SHORT_INT and CDR_DOUBLES on __powerpc64__ and + __x86_64__ just as with __ia64. + (Closes: #295074, #251765) + + * debian/control (Build-Depends): Use libreadline5-dev in place of + libreadline4-dev. (Closes: #326297) + + -- Thomas Bushnell, BSG Wed, 26 Oct 2005 19:31:02 -0700 + +scm (5d9-4.1) unstable; urgency=high + + * Non-maintainer upload. + * High-urgency upload for sarge-targetted RC bugfix. + * Revert upstream "CAUTIOUS" define, which causes the scm build to + fail its test suite on alpha (and, it appears, powerpc as well). + Closes: #245810. + + -- Steve Langasek Tue, 7 Dec 2004 23:23:48 -0800 + +scm (5d9-4) unstable; urgency=low + + * Apply patch from 144062 to fix hppa build (Closes: #144062) + * Change scm.1 section from Jan 4 200 to 1. (lintian) + + -- James LewisMoss Thu, 6 May 2004 14:24:32 -0400 + +scm (5d9-3) unstable; urgency=low + + * Properly clean up info files. + * Make and install Xlibscm.info. + + -- James LewisMoss Sat, 3 Apr 2004 15:44:38 -0500 + +scm (5d9-2) unstable; urgency=low + + * Fix path problem in slibcat. Hack at mklibcat.scm. (Closes: #241510) + + -- James LewisMoss Sat, 3 Apr 2004 15:35:52 -0500 + +scm (5d9-1) unstable; urgency=low + + * New upstream release + * Merge NMU sparc changes (Closes: #191171, #191356) + * SHORT_INT is defined for ia64 upstream (Closes: #141928) + * Scheme imps now grouped in info file (has been for a while) + (Closes: #115452) + + -- James LewisMoss Sun, 14 Mar 2004 11:44:51 -0500 + +scm (5d6-3.1) unstable; urgency=low + + * NMU with patch from James Troup, to fix FTBFS on sparc. Closes: #191171 + + -- Joey Hess Tue, 29 Apr 2003 19:56:51 -0400 + +scm (5d6-3) unstable; urgency=low + + * Add build depend on xlibs-dev (Closes: #148020) + + -- James LewisMoss Fri, 24 May 2002 15:56:12 -0400 + +scm (5d6-2) unstable; urgency=low + + * Remove libregexx-dev from build-depends. + * Change build to use ./scmlit rather than scmlit (should fix some build + problems) (looks like alpha is mostly building) + * New release (Closes: #140175) + * Built with turtlegraphics last time (Closes: #58515) + + -- James LewisMoss Thu, 23 May 2002 13:41:02 -0400 + +scm (5d6-1) unstable; urgency=low + + * New upstream. + * Add xlib and turtlegr to requested list of features. (closes + some bug) + * Make clean actually clean most everything up. + * Remove hacks renaming build to something else and just set build as a + .PHONY target in debian/rules. + * Add the turtlegr code. + + -- James LewisMoss Fri, 17 May 2002 13:27:00 -0400 + +scm (5d5-1) unstable; urgency=low + + * New upstream + * Has fixes for 64 bit archs. May fix alpha compile problem. Does fix + (Closes: #140175) + * Take out -O2 arg. + + -- James LewisMoss Sat, 6 Apr 2002 17:46:22 -0500 + +scm (5d4-3) unstable; urgency=low + + * Don't link with regexx, but just use libc6's regular expression + functions. + * Define (terms) to output /usr/share/common-licenses/GPL (Closes: + #119321) + + -- James LewisMoss Wed, 12 Dec 2001 16:27:02 -0500 + +scm (5d4-2) unstable; urgency=low + + * Add texinfo to build depends (Closes: #107011) + + -- James LewisMoss Sun, 29 Jul 2001 22:16:35 -0400 + +scm (5d4-1) unstable; urgency=low + + * New upstream release. + * Move install-info --remove to prerm. + + -- James LewisMoss Tue, 22 May 2001 01:35:50 -0400 + +scm (5d3-5) unstable; urgency=low + + * Move scm info files to section "The Algorithmic Language Scheme" to + match up with guile. + + -- James LewisMoss Mon, 11 Dec 2000 03:49:34 -0500 + +scm (5d3-4) unstable; urgency=low + + * Fix build depends (Closes: #76691) + + -- James LewisMoss Sat, 11 Nov 2000 09:55:07 -0500 + +scm (5d3-3) unstable; urgency=low + + * Fix path in scm dhelp file. + + -- James LewisMoss Fri, 27 Oct 2000 15:37:47 -0400 + +scm (5d3-2) unstable; urgency=low + + * Actually put the header files in the package. Oops. + + -- James LewisMoss Thu, 26 Oct 2000 21:52:47 -0400 + +scm (5d3-1) unstable; urgency=low + + * New upstream. (Closes: #74761) + * Make (terms) use new license location. + * Make use libregexx rather than librx. + * Fix build depends for above. + * Using new regex lib seems to fix crash (Closes: #66787) + * Consider adding scm-dev package with headers, but instead just add the + headers to the scm package. (Closes: #70787) + * Add doc-base support. + + -- James LewisMoss Sun, 22 Oct 2000 22:29:41 -0400 + +scm (5d2-3) unstable frozen; urgency=low + + * Fix libncurses4-dev -> libncurses5-dev build depend (Closes: #58435) + * Fix libreadline2-dev -> libreadline4-dev build depend. + * Fix license location in copyright file (lintian warning) + * Add tetex-bin as a build depend (needs makeinfo) (Closes: #53197) + * Add -isp option to dpkg-gencontrol (lintian error) + * Move scm to section interpreters. + + -- James LewisMoss Sun, 12 Mar 2000 09:04:17 -0500 + +scm (5d2-2) unstable; urgency=low + + * Apply patch from upstream for bug in eval.c. (Picked up from + comp.lang.scheme) + * Add Build-Depends on slib, librx1g-dev, libncurses4-dev, libreadlineg2-dev. + * Up standards version. + * Correct description: this is an R5RS implementation now + * Make sure no optimizations are done on m68k. (Closes: #52434) + + -- James LewisMoss Thu, 16 Dec 1999 23:53:15 -0500 + +scm (5d2-1) unstable; urgency=low + + * New upstream. + + -- James LewisMoss Mon, 6 Dec 1999 19:30:02 -0500 + +scm (5d1-2) unstable; urgency=low + + * Remove TAGS on clean (cut the diff back down to reasonable size). + + -- James LewisMoss Sat, 13 Nov 1999 14:10:10 -0500 + +scm (5d1-1) unstable; urgency=low + + * New upstream. + * move stuff to /usr/share. + + -- James LewisMoss Sat, 13 Nov 1999 13:26:46 -0500 + +scm (5d0-3) unstable; urgency=low + + * Change scmlit call to ./scmlit call (missed one) (Fixes bugs #37455 + and #35545) + * Change man file permissions to 644 (fixes lintian warning) + + -- James LewisMoss Wed, 12 May 1999 22:39:54 -0400 + +scm (5d0-2) unstable; urgency=low + + * Removed call to add_final in init_crs. lendwin doesn't do anything + and scm was crashing when quit everytime in final_scm. + * Changed copyright to reflect new source. + + -- James LewisMoss Thu, 11 Mar 1999 22:13:19 -0500 + +scm (5d0-1) unstable; urgency=low + + * New upstream. + * Changed (terms) to access "/usr/doc/copyright/GPL". + * Changed regex to use -lrx + + -- James LewisMoss Sun, 7 Mar 1999 12:39:16 -0500 + +scm (5c3-6) unstable; urgency=low + + * New maintainer. + + -- James LewisMoss Fri, 26 Feb 1999 00:45:30 -0500 + +scm (5c3-5) frozen unstable; urgency=low + + * debian/rules chmod +x's bld.scm. Fixes #30521. + + -- David N. Welton Fri, 11 Dec 1998 20:21:49 -0800 + +scm (5c3-4) frozen unstable; urgency=low + + * Made bld.scm executable. Fixes #29578. + + -- David N. Welton Mon, 30 Nov 1998 20:57:12 -0800 + +scm (5c3-3) frozen unstable; urgency=low + + * -nw + * Fixes #16762. + * Fixes #18163. + * Fixes #18164. + * Fixes #23743. + * Fixes #24098. + * Fixes #24099. + * Fixes #24547. + + -- David N. Welton Mon, 9 Nov 1998 21:41:29 -0800 + +scm (5c3-2) frozen unstable; urgency=low + + * Re-uploading for slink freeze. + + -- David N. Welton Mon, 2 Nov 1998 21:06:01 -0800 + +scm (5c3-1) unstable; urgency=low + + * New upstream version. + + -- David N. Welton Thu, 29 Oct 1998 21:37:49 -0800 + +scm (5b3-1) unstable; urgency=low + + * New maintainer + * New version + * libc6 + + -- Rob Browning Fri, 12 Dec 1997 17:29:42 -0600 + +scm (4e6-2) unstable; urgency=low + + * Recompiled to use regex0. + + -- Karl Sackett Wed, 18 Dec 1996 13:27:20 -0600 + +scm (4e6-1) unstable; urgency=low + + * First Debian release. + * Makefile.in: scm compiles with regex. + + -- Karl Sackett Fri, 13 Dec 1996 08:55:23 -0600 --- scm-5e5.orig/debian/compat +++ scm-5e5/debian/compat @@ -0,0 +1 @@ +5 --- scm-5e5.orig/debian/control +++ scm-5e5/debian/control @@ -0,0 +1,25 @@ +Source: scm +Section: interpreters +Priority: optional +Maintainer: Thomas Bushnell, BSG +Standards-Version: 3.7.3 +Build-Depends: slib (>> 3b1), libncurses5-dev, libreadline-dev, texi2html, texinfo, libx11-dev, debhelper (>= 5), quilt + +Package: scm +Architecture: alpha amd64 arm hppa i386 hurd-i386 m68k mips mipsel powerpc ppc64 sparc ia64 armel armeb armhf sh4 kfreebsd-amd64 kfreebsd-i386 +Section: interpreters +Priority: optional +Depends: slib (>> 3b1), ${shlibs:Depends} +Description: A Scheme language interpreter + Scm conforms to Revised^5 Report on the Algorithmic Language Scheme and + the IEEE P1178 specification. + +Package: libscm-dev +Architecture: alpha amd64 arm hppa i386 hurd-i386 m68k mips mipsel powerpc ppc64 sparc ia64 armel armeb armhf sh4 kfreebsd-amd64 kfreebsd-i386 +Section: libdevel +Priority: optional +Depends: scm (= ${binary:Version}), slib (>> 3b1), ${shlibs:Depends} +Description: Embeddable library for SCM Scheme language interpreter + This is a static library which provides the functionality of SCM, making it + convenient add scheme functionality to other programs. + --- scm-5e5.orig/debian/copyright +++ scm-5e5/debian/copyright @@ -0,0 +1,57 @@ +This is the Debian GNU/Linux prepackaged version of scm. + +This package was put together by Karl Sackett , and +upgraded by James LewisMoss from sources obtained +from: + + ftp://swissnet.ai.mit.edu/ftpdir/scm/scm5d9.tar.gz + +For more information see: + + http://www-swiss.ai.mit.edu/~jaffer/SCM + +Author: Aubrey Jaffer +Further portions written by: + Richard E. Harke + Tanel Tammet + William Clinger + Mkinen Sami + Jarkko Leppanen + The Free Software Foundation + Paradigm Associates Inc. + Digital Equipment Corp. + Tektronix, Inc. + + +Copyright: + 1984-2006 by the Free Software Foundation + 1996, 2000-2001, 2003, 2007 by Aubrey Jaffer +Portions Copyright: + 1990 by W. Wilson Ho + 1992-1997 by Tanel Tammet + 1992 by William Clinger + 1989 by Paradigm Associates Inc. + 1992 by Mkinen Sami and Jarkko Leppanen + 1985-1991 by Digital Equipment Corp. + 1990-1991 by Textronix, Inc. + +License: + +scm as a whole is distributed under the GNU General Public License. +See /usr/share/common-licenses/GPL for details. Some individual +source files and portions of the documentation can be distributed under +more liberal terms as described in each file. + +As a special exception, the Free Software Foundation gives permission +for additional uses of the text contained in its release of SCM. + +The exception is that, if you link the SCM library with other files +to produce an executable, this does not by itself cause the +resulting executable to be covered by the GNU General Public License. +Your use of that executable is in no way restricted on account of +linking the SCM library code into it. + +This exception does not however invalidate any other reasons why +the executable file might be covered by the GNU General Public License. + + --- scm-5e5.orig/debian/doc-base +++ scm-5e5/debian/doc-base @@ -0,0 +1,13 @@ +Document: scm +Title: SCM: scheme interpreter +Author: Aubrey Jaffer +Abstract: This manual describes the scheme interpreter scm. +Section: Apps/Programming + +Format: info +Index: /usr/share/info/scm.info.gz +Files: /usr/share/info/scm.info.gz + +Format: HTML +Index: /usr/share/doc/scm/scm.html +Files: /usr/share/doc/scm/scm.html --- scm-5e5.orig/debian/doc-base.scm-xlib +++ scm-5e5/debian/doc-base.scm-xlib @@ -0,0 +1,13 @@ +Document: scm-xlib +Title: X Interface for SCM scheme interpreter +Author: Aubrey Jaffer +Abstract: This manual describes the X Interface for scheme interpreter SCM. +Section: Apps/Programming + +Format: info +Index: /usr/share/info/Xlibscm.info.gz +Files: /usr/share/info/Xlibscm.info.gz + +Format: HTML +Index: /usr/share/doc/scm/Xlibscm.html +Files: /usr/share/doc/scm/Xlibscm.html --- scm-5e5.orig/debian/patches/kfreebsd_support.patch +++ scm-5e5/debian/patches/kfreebsd_support.patch @@ -0,0 +1,46 @@ +--- scm-5e5.orig/time.c ++++ scm-5e5/time.c +@@ -73,7 +73,7 @@ + /* Define this if your system lacks times(). */ + /* #define LACK_TIMES */ + +-#ifdef linux ++#if defined(linux) || defined(__GLIBC__) + # include + # include + # include +only in patch2: +unchanged: +--- scm-5e5.orig/scmfig.h ++++ scm-5e5/scmfig.h +@@ -310,7 +310,7 @@ + # define STDC_HEADERS + #endif + +-#ifdef linux ++#if defined(linux) || defined(__GLIBC__) + # define HAVE_SELECT + # define HAVE_SYS_TIME_H + # define STDC_HEADERS +@@ -755,7 +755,7 @@ + # include + #endif + +-#ifdef linux ++#if defined(linux) || defined(__GLIBC__) + # include + #endif + +only in patch2: +unchanged: +--- scm-5e5.orig/findexec.c ++++ scm-5e5/findexec.c +@@ -51,7 +51,7 @@ + # include + # include + # endif +-# ifdef linux ++# if defined(linux) || defined(__GLIBC__) + # include + # include + # include --- scm-5e5.orig/debian/patches/series +++ scm-5e5/debian/patches/series @@ -0,0 +1,2 @@ +kfreebsd_support.patch +texinfo5_fixes.patch --- scm-5e5.orig/debian/patches/texinfo5_fixes.patch +++ scm-5e5/debian/patches/texinfo5_fixes.patch @@ -0,0 +1,399 @@ +Index: scm/Xlibscm.texi +=================================================================== +--- scm.orig/Xlibscm.texi 2013-11-23 13:14:37.672671849 +0100 ++++ scm/Xlibscm.texi 2013-11-23 13:14:55.696761226 +0100 +@@ -257,8 +257,9 @@ + Returns the root window for the specified @var{screen-number}. Use + @code{x:root-window} for functions that need a drawable of a particular + screen or for creating top-level windows. ++@end defun + +-@defunx x:root-window window ++@defun x:root-window window + Returns the root window for the specified @var{window}'s screen. + @end defun + +@@ -345,7 +346,9 @@ + + @defun x:screen-depth display screen-number + Returns the depth of the root window of the specified screen. +-@defunx x:screen-depth display ++@end defun ++ ++@defun x:screen-depth display + @defunx x:screen-depth window + @defunx x:screen-depth visual + Returns the depth of argument. +@@ -420,8 +423,9 @@ + + The returned window will have the attributes specified by + @var{field-name}s and @var{value}. ++@end defun + +-@defunx x:create-window window position size border-width border background ++@defun x:create-window window position size border-width border background + The returned window inherits its depth, class, and visual from its + parent. All other window attributes, except @var{background} and + @var{border}, have their default values. +@@ -909,7 +913,9 @@ + @defun x:get-window-property window property + Returns the (string or list of numbers) value of @var{property} of + @var{window}. +-@defunx x:get-window-property window property #t ++@end defun ++ ++@defun x:get-window-property window property #t + Removes and returns the (string or list of numbers) value of + @var{property} of @var{window}. + @end defun +@@ -1392,8 +1398,9 @@ + initial colors of a cursor are a black foreground and a white background + (see X:Recolor-Cursor). The names of all cursor shapes are defined with + the prefix XC: in @file{x11.scm}. ++@end defun + +-@defunx x:create-cursor source-font source-char mask-font mask-char fgc bgc ++@defun x:create-cursor source-font source-char mask-font mask-char fgc bgc + Creates a cursor from the source and mask bitmaps obtained from the + specified font glyphs. The integer @var{source-char} must be a defined + glyph in @var{source-font}. The integer @var{mask-char} must be a +@@ -1402,12 +1409,14 @@ + hotspot. The @var{source-char} and @var{mask-char} need not have the + same bounding box metrics, and there is no restriction on the placement + of the hotspot relative to the bounding boxes. ++@end defun + +-@defunx x:create-cursor source-font source-char #f #f fgc bgc ++@defun x:create-cursor source-font source-char #f #f fgc bgc + If @var{mask-font} and @var{mask-char} are #f, all pixels of the source + are displayed. ++@end defun + +-@defunx x:create-cursor source-pixmap mask-pixmap fgc bgc origin ++@defun x:create-cursor source-pixmap mask-pixmap fgc bgc origin + @var{mask-pixmap} must be the same size as the pixmap defined by the + @var{source-pixmap} argument. The foreground and background RGB values + must be specified using @var{foreground-color} and +@@ -1422,8 +1431,9 @@ + @var{mask-pixmap} defines the shape of the cursor. The pixels set to 1 + in @var{mask-pixmap} define which source pixels are displayed, and the + pixels set to 0 define which pixels are ignored. ++@end defun + +-@defunx x:create-cursor source-pixmap #f fgc bgc origin ++@defun x:create-cursor source-pixmap #f fgc bgc origin + If @var{mask-pixmap} is #f, all pixels of the source are displayed. + @end defun + +@@ -1539,8 +1549,9 @@ + succeeded or #f if it failed. The first array has the pixels allocated + and the second has the plane-masks. + ++@end defun + +-@defunx x:alloc-colormap-cells colormap ncolors rgb ++@defun x:alloc-colormap-cells colormap ncolors rgb + @defunx x:alloc-colormap-cells colormap ncolors rgb contiguous? + + The specified @var{ncolors} must be positive; and @var{rgb} a list or +@@ -1596,8 +1607,9 @@ + @var{rgb} is a list or vector of 3 integers, describing the red, green, + and blue intensities respectively; or an integer @samp{#x@i{rrggbb}}, + packing red, green and blue intensities in the range 0 - 255. ++@end defun + +-@defunx x:colormap-find-color colormap color-name ++@defun x:colormap-find-color colormap color-name + + The case-insensitive string @var{color_name} specifies the name of a + color (for example, @file{red}) +@@ -1630,8 +1642,9 @@ + @var{rgb} is a list or vector of 3 integers, describing the red, green, + and blue intensities respectively; or an integer @samp{#x@i{rrggbb}}, + packing red, green and blue intensities in the range 0 - 255. ++@end defun + +-@defunx X:Color-Set! colormap pixel color-name ++@defun X:Color-Set! colormap pixel color-name + + The case-insensitive string @var{color_name} specifies the name of a + color (for example, @file{red}) +@@ -1671,8 +1684,9 @@ + function because the output buffer is automatically flushed as needed by + calls to X:Pending, X:Next-Event, and X:Window-Event. Events generated + by the server may be enqueued into the library's event queue. ++@end defun + +-@defunx x:flush gc ++@defun x:flush gc + Forces sending of GC component changes. + + Xlib usually defers sending changes to the components of a GC to the +@@ -1726,12 +1740,14 @@ + + @defun x:draw-points drawable gc position @dots{} + @var{Position} @dots{} specifies coordinates of the point to be drawn. ++@end defun + +-@defunx x:draw-points drawable gc x y @dots{} ++@defun x:draw-points drawable gc x y @dots{} + (@var{x}, @var{y}) @dots{} specifies coordinates of the point to be + drawn. ++@end defun + +-@defunx x:draw-points drawable gc point-array ++@defun x:draw-points drawable gc point-array + @var{point-array} is a uniform short array of rank 2, whose rightmost + index spans a range of 2. + +@@ -1748,12 +1764,14 @@ + @defun x:draw-segments drawable gc pos1 pos2 @dots{} + @var{Pos1}, @var{pos2}, @dots{} specify coordinates to be connected by + segments. ++@end defun + +-@defunx x:draw-segments drawable gc x1 y1 x2 y2 @dots{} ++@defun x:draw-segments drawable gc x1 y1 x2 y2 @dots{} + (@var{x1}, @var{y1}), (@var{x2}, @var{y2}) @dots{} specify coordinates + to be connected by segments. ++@end defun + +-@defunx x:draw-segments drawable gc point-array ++@defun x:draw-segments drawable gc point-array + @var{point-array} is a uniform short array of rank 2, whose rightmost + index spans a range of 2. + +@@ -1779,12 +1797,14 @@ + @defun x:draw-lines drawable gc pos1 pos2 @dots{} + @var{Pos1}, @var{pos2}, @dots{} specify coordinates to be connected by + lines. ++@end defun + +-@defunx x:draw-lines drawable gc x1 y1 x2 y2 @dots{} ++@defun x:draw-lines drawable gc x1 y1 x2 y2 @dots{} + (@var{x1}, @var{y1}), (@var{x2}, @var{y2}) @dots{} specify coordinates + to be connected by lines. ++@end defun + +-@defunx x:draw-lines drawable gc point-array ++@defun x:draw-lines drawable gc point-array + @var{point-array} is a uniform short array of rank 2, whose rightmost + index spans a range of 2. + +@@ -1810,12 +1830,14 @@ + + @defun x:fill-polygon drawable gc pos1 pos2 @dots{} + @var{Pos1}, @var{pos2}, @dots{} specify coordinates of the border path. ++@end defun + +-@defunx x:fill-polygon drawable gc x1 y1 x2 y2 @dots{} ++@defun x:fill-polygon drawable gc x1 y1 x2 y2 @dots{} + (@var{x1}, @var{y1}), (@var{x2}, @var{y2}) @dots{} specify coordinates + of the border path. ++@end defun + +-@defunx x:fill-polygon drawable gc point-array ++@defun x:fill-polygon drawable gc point-array + @var{point-array} is a uniform short array of rank 2, whose rightmost + index spans a range of 2. + +Index: scm/scm.texi +=================================================================== +--- scm.orig/scm.texi 2013-11-23 13:14:37.684671909 +0100 ++++ scm/scm.texi 2013-11-23 13:14:55.708761285 +0100 +@@ -1644,11 +1644,11 @@ + @section Editing Scheme Code + + @defun ed arg1 @dots{} ++@defunx ed filename + The value of the environment variable @code{EDITOR} (or just @code{ed} + if it isn't defined) is invoked as a command with arguments @var{arg1} + @dots{}. + +-@defunx ed filename + If SCM is compiled under VMS @code{ed} will invoke the editor with a + single the single argument @var{filename}. + @end defun +@@ -1733,16 +1733,18 @@ + loads the appropriate module from SLIB if they are invoked. + + @defmac trace proc1 @dots{} +-Traces the top-level named procedures given as arguments. + @defmacx trace ++Traces the top-level named procedures given as arguments. ++ + With no arguments, makes sure that all the currently traced identifiers + are traced (even if those identifiers have been redefined) and returns a + list of the traced identifiers. + @end defmac + + @defmac untrace proc1 @dots{} +-Turns tracing off for its arguments. + @defmacx untrace ++Turns tracing off for its arguments. ++ + With no arguments, untraces all currently traced identifiers and returns + a list of these formerly traced identifiers. + @end defmac +@@ -2206,8 +2208,9 @@ + Returns the path (string) which SCM uses to find the executable file + whose invocation the currently running session is, or #f if the path is + not set. ++@end defun + +-@defunx execpath #f ++@defun execpath #f + @defunx execpath newpath + Sets the path to @code{#f} or @var{newpath}, respectively. The old path + is returned. +@@ -2521,10 +2524,10 @@ + @itemx @code{exact->inexact} + @itemx @code{inexact->exact} + @xref{Numerical operations, , , r5rs, Revised(5) Scheme}. +-@itemx @code{with-input-from-file} ++@item @code{with-input-from-file} + @itemx @code{with-output-to-file} + @xref{Ports, , , r5rs, Revised(5) Scheme}. +-@itemx @code{load} ++@item @code{load} + @itemx @code{transcript-on} + @itemx @code{transcript-off} + @xref{System interface, , , r5rs, Revised(5) Scheme}. +@@ -2930,8 +2933,9 @@ + Returns the current position of the character in @var{port} which will + next be read or written. If @var{port} is open to a non-file then + @code{#f} is returned. ++@end defun + +-@defunx file-position port k ++@defun file-position port k + Sets the current position in @var{port} which will next be read or + written. If successful, @code{#f} is returned. If @var{port} is open + to a non-file, then @code{file-position} returns @code{#f}. +@@ -3321,8 +3325,9 @@ + @defun comment string1 @dots{} + Appends @var{string1} @dots{} to the strings given as arguments to + previous calls @code{comment}. ++@end defun + +-@defunx comment ++@defun comment + Returns the (appended) strings given as arguments to previous calls + @code{comment} and empties the current string collection. + @end defun +@@ -3345,8 +3350,9 @@ + @code{#} in which case the expression will be treated as + whitespace. @code{#} is the value returned by the + expression @code{(if #f #f)}. ++@end deffn + +-@deffnx {Callback procedure} load:sharp c port ++@deffn {Callback procedure} load:sharp c port + Dispatches like @code{read:sharp}, but only during @code{load}s. The + read-syntaxes handled by @code{load:sharp} are a superset of those + handled by @code{read:sharp}. @code{load:sharp} calls +@@ -4718,12 +4724,14 @@ + each file in @var{directory}. The dynamic order in which @var{proc} is + applied to the filenames is unspecified. The value returned by + @samp{directory-for-each} is unspecified. ++@end defun + +-@defunx directory-for-each proc directory pred ++@defun directory-for-each proc directory pred + Applies @var{proc} only to those filenames for which the procedure + @var{pred} returns a non-false value. ++@end defun + +-@defunx directory-for-each proc directory match ++@defun directory-for-each proc directory match + Applies @var{proc} only to those filenames for which + @code{(filename:match?? @var{match})} would return a non-false value + (@pxref{Filenames, , , slib, SLIB}). +@@ -4843,8 +4851,9 @@ + + If successful, this procedure does not return. Otherwise an error + message is printed and the integer @code{errno} is returned. ++@end defun + +-@defunx execv command arglist ++@defun execv command arglist + @defunx execvp command arglist + Like @code{execl} and @code{execlp} except that the set of arguments to + @var{command} is @var{arglist}. +@@ -5123,8 +5132,9 @@ + + @defun setpwent #t + Rewinds the pw entry table back to the begining. ++@end defun + +-@defunx setpwent #f ++@defun setpwent #f + @defunx setpwent + Closes the pw table. + @end defun +@@ -5151,8 +5161,9 @@ + + @defun setgrent #t + Rewinds the group entry table back to the begining. ++@end defun + +-@defunx setgrent #f ++@defun setgrent #f + @defunx setgrent + Closes the group table. + @end defun +@@ -5435,8 +5446,9 @@ + + @defun line-editing + Returns the current edited line port or @code{#f}. ++@end defun + +-@defunx line-editing bool ++@defun line-editing bool + If @var{bool} is false, exits line-editing mode and returns the previous + value of @code{(line-editing)}. If @var{bool} is true, sets the current + input and output ports to an edited line port and returns the previous +@@ -6434,8 +6446,9 @@ + @code{letrec}, @code{or}, @code{quote}, @code{set!}, @code{#f}, + @code{#t}, @code{#}, @code{#}, @code{()}, and + @code{#}. ++@end deftp + +-@deftpx {CAR Immediate} ispcsym ++@deftp {CAR Immediate} ispcsym + special symbols: syntax-checked versions of first 14 isyms + @end deftp + +@@ -6561,8 +6574,9 @@ + + @deftp Header tc7_ssymbol + static scheme symbol (part of initial system) ++@end deftp + +-@deftpx Header tc7_msymbol ++@deftp Header tc7_msymbol + @code{malloc}ed scheme symbol (can be GCed) + + @defmac SYMBOLP x +@@ -7262,8 +7276,9 @@ + @code{deferred_proc} is set to non-zero, one of the global variables + @code{SIGINT_deferred} or @code{SIGALRM_deferred} is set to 1, and the + handler returns. ++@end defmac + +-@defmacx ALLOW_INTS ++@defmac ALLOW_INTS + Checks the deferred variables and if set the appropriate handler is + called. + +@@ -8011,8 +8026,9 @@ + + @code{scm_addr} is useful for performing C operations on strings or + other uniform arrays (@pxref{Uniform Array}). ++@end deftypefun + +-@deftypefunx unsigned long scm_base_addr(SCM @var{ra}, char *@var{s_name}) ++@deftypefun unsigned long scm_base_addr(SCM @var{ra}, char *@var{s_name}) + Returns a pointer (cast to an @code{unsigned long}) to the beginning + of storage of array @var{ra}. Note that if @var{ra} is a + shared-array, the strorage accessed this way may be much larger than --- scm-5e5.orig/debian/postinst +++ scm-5e5/debian/postinst @@ -0,0 +1,10 @@ +#!/bin/sh +set -e + +rm -f /usr/lib/scm/slibcat +/usr/bin/scm -c "(require 'new-catalog)" +if [ -e /usr/lib/scm/slibcat ] ; then + chmod 644 /usr/lib/scm/slibcat +fi + +#DEBHELPER# --- scm-5e5.orig/debian/postrm +++ scm-5e5/debian/postrm @@ -0,0 +1,9 @@ +#!/bin/sh + +set -e + +if [ "$1" = purge ] && [ -e /usr/lib/scm/implcat ] && [ -e /usr/lib/scm/slibcat ]; then + rm -f /usr/lib/scm/implcat /usr/lib/scm/slibcat +fi + +#DEBHELPER# --- scm-5e5.orig/debian/prerm +++ scm-5e5/debian/prerm @@ -0,0 +1,9 @@ +#!/bin/sh + +set -e + +if [ \( "$1" = "upgrade" -o "$1" = "remove" \) -a -L /usr/doc/scm ]; then + rm -f /usr/doc/scm +fi + +#DEBHELPER# --- scm-5e5.orig/debian/require.scm.debian +++ scm-5e5/debian/require.scm.debian @@ -0,0 +1,2 @@ +(define (library-vicinity) "/usr/share/slib/") +(load (in-vicinity (library-vicinity) "require")) --- scm-5e5.orig/debian/rules +++ scm-5e5/debian/rules @@ -0,0 +1,225 @@ +#! /usr/bin/make -f +# -*-Makefile-*- + +CC =gcc +CFLAGS = -g -Wall +LDFLAGS = + +SHELL =/bin/sh +srcdir =. + +INSTALL =/usr/bin/install +INSTALL_DIR =$(INSTALL) -d -m 755 -o root -g root +INSTALL_PROGRAM =$(INSTALL) -m 755 -o root -g root +INSTALL_DATA =$(INSTALL) -m 644 -o root -g root +INSTALL_MAN =$(INSTALL) -m 644 -o root -g root + +ifeq ($(DEB_BUILD_ARCH), m68k) +COMPILER_OPTIONS= +else +COMPILER_OPTIONS= +endif + +ifeq ($(DEB_BUILD_ARCH),ia64) +PLATFORM=linux-ia64 +else +PLATFORM=linux +endif + +SCM_OPTIONS = -p $(PLATFORM) \ + --compiler-options="$(COMPILER_OPTIONS)" \ + -F cautious \ + -F bignums \ + -F arrays \ + -F array-for-each \ + -F inexact \ + -F record \ + -F compiled-closure \ + -F generalized-c-arguments \ + -F tick-interrupts \ + -F i/o-extensions \ + -F edit-line \ + -F regex \ + -F socket \ + -F posix \ + -F unix \ + -F curses \ + -F dynamic-linking \ + -F xlib \ + -F dump \ + -F macro \ + -F differ + +# -F dump +# -F turtlegr + +# -F heap-can-shrink \ + +#SCHEME_LIBRARY_PATH=../slib-3a1/ +#export SCHEME_LIBRARY_PATH +NON_LIB_FILES = 'bench.scm|build.scm|example.scm|r4rstest.scm|pi.scm|grtest.scm' + +# Uncomment this to turn on verbose mode +#export DH_VERBOSE=1 + + +build: build-stamp +build-stamp: + chmod +x build + dh_testdir + QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2 + cp debian/require.scm.debian require.scm +ifeq ($(DEB_BUILD_ARCH), m68k) + ${MAKE} scmlit CFLAGS="-g -Wall" ARCH=$(DEB_BUILD_ARCH) +else + ${MAKE} scmlit ARCH=$(DEB_BUILD_ARCH) +endif + test -e /usr/share/slib || \ + (echo "Must have slib installed for compile" && exit 1) + +# Main SCM binary. + ./build ${SCM_OPTIONS} | tee debian/bld + chmod ug+x debian/bld + debian/bld + +# SCM library + ./build -t lib $(SCM_OPTIONS) | tee debian/bld + chmod ug+x debian/bld + debian/bld + + make scm.info + make Xlibscm.info + texi2html -monolithic scm.texi + texi2html -monolithic Xlibscm.texi + touch build-stamp + +clean: + dh_testdir + dh_testroot + -rm -f build-stamp + + -rm -f scm.info* scm.html tmp1 tmp2 scmflags.h scmlit + -rm -f Xlibscm.info* + -rm -f features.txi platform.txi + -rm -f *.info + -rm require.scm scm + make distclean + -rm -f srcdir.mk + -rm -f debian/bld + -rm -rf libscm.a + -rm -rf *~ debian/*~ debian/tmp* debian/files debian/substvars + + QUILT_PATCHES=debian/patches quilt pop -a -R || test $$? = 2 + dh_clean + +binary-indep: build install +# We have nothing to do by default + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + -rm -rf debian/scm + -rm -rf debian/libscm-dev + +# debian/scm + $(INSTALL_DIR) debian/scm + $(INSTALL_DIR) debian/scm/DEBIAN + $(INSTALL_PROGRAM) debian/postinst debian/scm/DEBIAN + $(INSTALL_PROGRAM) debian/prerm debian/scm/DEBIAN + +# binaries + $(INSTALL_DIR) debian/scm/usr/bin + $(INSTALL_PROGRAM) scm debian/scm/usr/bin + +# library + $(INSTALL_DIR) debian/scm/usr/lib/scm + $(INSTALL_DATA) `ls *.scm | egrep -v ${NON_LIB_FILES}` debian/scm/usr/lib/scm +## $(INSTALL_DATA) slibcat debian/scm/usr/lib/scm + chmod +x debian/scm/usr/lib/scm/compile.scm + chmod +x debian/scm/usr/lib/scm/xgen.scm + +# headers +# $(INSTALL_DIR) debian/scm/usr/include/scm +# $(INSTALL_DATA) *.h debian/scm/usr/include/scm + +# man pages + $(INSTALL_DIR) debian/scm/usr/share/man/man1 + $(INSTALL_MAN) scm.1 debian/scm/usr/share/man/man1 + gzip -9vr debian/scm/usr/share/man || true + +# documentation + $(INSTALL_DIR) debian/scm/usr/share/doc/scm + $(INSTALL_DATA) debian/changelog debian/scm/usr/share/doc/scm/changelog.Debian + $(INSTALL_DATA) ChangeLog debian/scm/usr/share/doc/scm/changelog + $(INSTALL_DATA) QUICKREF debian/scm/usr/share/doc/scm + $(INSTALL_DATA) README debian/scm/usr/share/doc/scm + gzip -9v debian/scm/usr/share/doc/scm/* + $(INSTALL_DATA) scm.html debian/scm/usr/share/doc/scm + $(INSTALL_DATA) Xlibscm.html debian/scm/usr/share/doc/scm + $(INSTALL_DATA) debian/copyright debian/scm/usr/share/doc/scm + +# examples + $(INSTALL_DIR) debian/scm/usr/share/doc/scm/examples + $(INSTALL_DATA) r4rstest.scm debian/scm/usr/share/doc/scm/examples + $(INSTALL_DATA) example.scm debian/scm/usr/share/doc/scm/examples + $(INSTALL_DATA) pi.scm debian/scm/usr/share/doc/scm/examples + $(INSTALL_DATA) pi.c debian/scm/usr/share/doc/scm/examples + $(INSTALL_DATA) bench.scm debian/scm/usr/share/doc/scm/examples + $(INSTALL_DATA) split.scm debian/scm/usr/share/doc/scm/examples +# $(INSTALL_DATA) grtest.scm debian/scm/usr/share/doc/scm/examples + +# info pages + $(INSTALL_DIR) debian/scm/usr/share/info + $(INSTALL_DATA) scm.info* debian/scm/usr/share/info + $(INSTALL_DATA) Xlibscm.info* debian/scm/usr/share/info + gzip -9 debian/scm/usr/share/info/* + +# library package + $(INSTALL_DIR) debian/libscm-dev/usr/lib + $(INSTALL_DIR) debian/libscm-dev/usr/include + $(INSTALL_DIR) debian/libscm-dev/usr/share/doc/libscm-dev + $(INSTALL_DATA) libscm.a debian/libscm-dev/usr/lib + $(INSTALL_DATA) scm.h debian/libscm-dev/usr/include + $(INSTALL_DATA) scmfig.h debian/libscm-dev/usr/include + $(INSTALL_DATA) scmflags.h debian/libscm-dev/usr/include + $(INSTALL_DATA) debian/changelog debian/libscm-dev/usr/share/doc/libscm-dev/changelog.Debian + $(INSTALL_DATA) ChangeLog debian/libscm-dev/usr/share/doc/libscm-dev/changelog + $(INSTALL_DATA) debian/copyright debian/libscm-dev/usr/share/doc/libscm-dev + +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installexamples +# dh_install +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installcatalogs +# dh_installpam +# dh_installmime +# dh_installcron +# dh_installinfo +# dh_uncodumented + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms +# dh_perl +# dh_python +# dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch + +.PHONY: build clean binary binary-arch binary-indep install --- scm-5e5.orig/scm.1 +++ scm-5e5/scm.1 @@ -1,5 +1,5 @@ .\" dummy line -.TH SCM "April 2006" +.TH 1 SCM "April 2006" .UC 4 .SH NAME scm \- a Scheme Language Interpreter --- scm-5e5.orig/xgen.scm +++ scm-5e5/xgen.scm @@ -1,4 +1,4 @@ -#! /usr/local/bin/scm \ %0 %* +#! /usr/bin/scm \ %0 %* - !# ;;;; "xgen.scm", Convert C Event structs to xevent.h and xevent.scm. ;; Copyright (C) 1991-2000 Free Software Foundation, Inc.