\begindata{text,538378132} \textdsversion{12} \template{help} \define{global } \chapter{DesKey -- Describe Key } \section{Proctable Entries:} \leftindent{There are 5 proctable entries for proctable and keybinding information: \bold{deskey-describe-key: }\italic{Show binding of a typed in key sequence.} \indent{prompts for a key sequence and responds with the name of the proctable entry that would be called when that sequence is normally typed. }\bold{deskey-describe-bound-keys: }\italic{show bindings for all keys (key sorted)} \indent{brings up a window with a list of all the key bindings that are in effect (see Key Window below). The list is sorted alphabetically by the key-bindings. }\bold{deskey-describe-bound-procs:} \italic{show bindings for all keys (proc sorted)} \indent{brings up a window with a list of all the key bindings that are in effect (see Key Window below). The list is sorted alphabetically by the proctable entries. }\bold{deskey-describe-proctable:} \italic{list proctable entries.; Return count.} \indent{brings up a window with a list of the proctable entries associated with the current key-map (see Proc Window below). The list is sorted alphabetically by the proctable entries. }\bold{deskey-list-proctable:} \italic{list proctable entries; Return count.} \indent{does the same as the previous procentry, except it uses no formatting, and leaves the information in a file on the local disk (instead of displaying it in a buffer). } Each of these can be bound to a key (or key sequence) in an .xxxinit file using the 'addkey' function. Each of these proctable entries require an additional argument "im" which is used when the function is called. For example you could include the following in your .atkinit file: \example{addkey deskey-describe-key \\e? im addkey deskey-describe-bound-procs ^XP im addkey deskey-describe-bound-keys ^XK im addkey deskey-describe-proctable \\e- im } They can also be bound to menus (either in addition, or instead of keybindings): \example{addmenu "deskey-describe-key" "Keys,Describe A Key~10" im addmenu "deskey-describe-bound-procs" "Keys,List Keys (by proc)~12" im addmenu "deskey-describe-bound-keys" "Keys,List Keys (by key)~14" im addmenu "deskey-describe-proctable" "Keys,List Proc Entries~16" im } These functions can also be called from NESS by replacing the '-' with '_' and adding a pair of parens: \example{deskey_describe_key() deskey_describe_bound_keys() deskey_describe_bound_procs() deskey_list_proctable() }} \section{Key Window:} \leftindent{The window which is brought up for either 'deskey-describe-bound-keys' or 'deskey-describe-bound-procs' is organized into three columns: \typewriter{key-sequence \bold{proctable-entry-name}} - \italic{description} Due to the way the list is formatted - the window should be at least as wide as half the screen width. The part will occasionally contain one the following strings: The first means that there was no documentation included when the programmer created this proctable entry. The second one indicates that the proctable entry is associated with a dynamically loadable package - which has not yet been loaded, and the documentation cannot be found until the package has been loaded. } \section{Proc Window:} \leftindent{The window which is brought up for 'deskey-describe-proctable' is organized into two major columns: \typewriter{\bold{proctable-entry-name} }- \italic{description} The first column is occasionally broken up into two, or three smaller parts, thus giving you: \typewriter{\bold{proctable-entry-name} (argument)=> return value }- \italic{description} (\typewriter{argument}) - the part within, but not including the parens is the literal argument which must be supplied for the proctable entry (like in the above examples where "im" is at the end of each of the 'addkey' lines). \typewriter{=> return value} - most proctable-entries call functions which do not return a value. Some however, do return values and the type of the return value will be indicated here (e.g. Long, Boolean, Short, Char, etc.) Due to the way the list is formatted - the window should be at least as wide as half the screen width. The part will occasionally contain one the following strings: The first means that there was no documentation included when the programmer created this proctable entry. The second one indicates that the proctable entry is associated with a dynamically loadable package - which has not yet been loaded, and the documentation cannot be found until the package has been loaded.} \section{Known Bugs:} \leftindent{\description{As mentioned above - due to the way the lists are formatted, the window should be at least as wide as half the screen width. On small screens (smaller than 19") it may even have to be wider. No fix forthcoming.}} \section{See Also:} \begindata{bp,537558784} \enddata{bp,537558784} \view{bpv,537558784,850,0,0} Copyright 1992 Carnegie Mellon University and IBM. All rights reserved. \smaller{\smaller{$Disclaimer: Permission to use, copy, modify, and distribute this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice, this permission notice, and the following disclaimer appear in supporting documentation, and that the names of IBM, Carnegie Mellon University, and other copyright holders, not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. IBM, CARNEGIE MELLON UNIVERSITY, AND THE OTHER COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL IBM, CARNEGIE MELLON UNIVERSITY, OR ANY OTHER COPYRIGHT HOLDER BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. $ }}\enddata{text,538378132}