This Appendix summarizes the changes between ARPUS/ce Version 2.5 and previous versions. The Appendix is organized in reverse chronological order. That is, changes between the latest revision and its predecessor are listed first. Changes relating to older versions are listed later in this Appendix.
Other chapters of this User Guide contain tables of Ce and ceterm commands as well as default key definitions. The information shown in this Appendix is also included in those tables for your referencing convenience.
Ce now supports both vertical and horizontal scroll bars. By default, they appear as needed. X resources and commands can be used to control their appearance (both how they look and when they appear). Due to Ce's ability to scroll sideways, an extra resource "Ce.scrollBarWidth" controls the horizontal scroll bar behavior. This resource can also be used to disable the horizontal scroll bar and keep the vertical scroll bar.
Ce now supports a user customizable menu bar and user customizable pull down menus. Menu items, which look a lot like key definitions, are controlled by commands held in the ".Cekeys" file. Several new commands assist in using an manipulating pulldowns.
A new Ce command "ca" allows the colorization of a range of text. The colorization is local to the Ce session and is not saved. Several programs to generate colorization on HTML and C programs are provides in source along with the menu item definitions which would make use of them. This first color release uses static color. That is, the colorization is not yet language sensitive.
Ce now allows the generation of labels which are stored local to a Ce session. If line numbers are turned on, the labels can be seen in the line no field. A program to generate labels from C source and put them in a pulldown is supplied in source.
The Ce helps and users guide are provided in HTML format along with a frequently asked questions list and other HTML only documentation. The HTML package is self contained. You need only provide a link so your intranet web server can get to the main web page.
Several useful programs are provided in source form. These programs are designed to interact with Ce and can server as a model for other programs. The initial set includes a basic HTML parser which generates Ce "ca" commands to colorize HTML documents; a program which does the same thing for C programs; and a program to generate labels for all the functions in a C source file.
-kdp <name>
Ce.keydefProp : <name>
Ce stored the key definitions it reads from the "$HOME/.Cekeys" file in an X property
hung off the root window. This property allows a different name to be used.This option
can be used with the -name option or aliasing the Ce command to maintain multiple sets
of independent key definitions for different windows. This falls under the heading of
extremely advanced features. It has been used in writing simulators which control
bunches of ce and ceterm windows simulating multiple processors. DEFAULT: CeKeys.
-sb {y | n | auto}
Ce.scrollBar : {y | n | auto}
Scroll bars are always on "y" or off "n", or they appear as needed. As needed is defined
as a vertical scroll bar exists when the number of lines being displayed exceeds the
number of lines in the window. A horizontal scroll bar is needed when a line is longer
than a window. A special note about Ce horizontal scroll bars: The slider width is an
indication of the width of the window with respect to the width of the line. To facilitate
horizontal scrolling, Ce operates as though the line width is at least 300 characters when
the scroll bar slider is drawn. This can be modified with the "Ce.scrollBarWidth" option.
Note also that the scrollBar option is often set differently for Ce and ceterm. It is common
to turn it off in ceterm windows. Ce.scrollBar : auto ceterm.scrollBar : no DEFAULT: auto.
-sbwidth <num>
Ce.scrollBarWidth : <num>
The argument sbwidth or the X Windows resource "scrollBarWidth" can be set to define
the minimum line size used to calculate the dimensions of the slider portion of the scroll
bar. For example: If the window is 80 characters wide and one of the lines displayed
is 160 characters wide, the horizontal scroll bar slider will be one half the width of the
gutter it rides in. This allows you to slide to the end of the line with the slider. The use
of horizontal scrolling in Ce makes this somewhat restrictive. It would be nice to use the
horizontal scroll bar to move farther than the end of the line. To facilitate this, the
"scrollBarWidth" resource is used. If the horizontal scroll bar is displayed, it behaves
as though the longest line displayed is at least "scrollBarWidth" characters long. If a real
line is longer, the longer value is used. Setting scrollBarWidth to 1 will make the slider
size to the longest line in the window. Setting scrollBarWidth to 0 disables the horizontal
scroll bar. This way you can use just the vertical scroll bar without ever seeing the
horizontal. DEFAULT: 300.
-oplist
The causes Ce to calculate it's run time options and dump them to stdout. It is useful
in diagnosing problems and is used in the procedure which updates Ce from a previous
release.
-pdm {y | n}
Ce.pdm : {y | n}
The pdfm or the X windows resource ".pdm" can be set to define whether the pull down
menu bar is initially visible or invisible. It is common to have the pulldown menu bar on
for Ce and cv and off for ceterm: ce.pdm : y cv.pdm : y ceterm.pdm : n.
-xrm "resource:value"
The xrm option allows the specification of X resources. This is a standard parameter
for X applications. It is not especially useful with Ce, as all the resources can be
specified from the command line. The parameter holds one X resource line. The "-xrm"
parameter may be specified multiple times. For example: -xrm "ce.foreground:red".
-CEHELPDIR <path>
Ce.CEHELPDIR : <path>
The CEHELPDIR resource is set in the installation of the app-defaults file for Ce to the
directory containing the Ce help pages. If you do not set the environment variable
"CEHELPDIR" in your ".profile", Ce will use this value when looking for the help pages.
This technique makes the Ce help file directory easier to move around.
-dotmode {0 | 1[string] | 2}
ceterm.dotmode : {0 | 1[string] | 2}
The ceterm password dot mode option is needed on HP/UX machines of release 10.20
and beyond where the users primarily use the csh shell. When ceterm detects that the
user is typing a password, the program goes into dot mode. The characters typed are
displayed as dots and undo processing is disabled so you cannot undo to get the
password back. At HP/UX 10.20, it was not possible to find a combination of "tty"
settings which would correctly indicate that a password was being entered for the "csh"
(ksh works fine). To rectify this, a simpler method of detecting password prompting,
namely watching for "pas" in the prompt string (case insensitive), was added. In this
mode, you can optionally set the prompt fragment to look for. The values are shown in
Table D-1.
Table D-1. Prompt Fragments and Definitions
Value |
Definition |
0 |
Nodot mode, never display dots, passwords are visible. |
1 |
Scan prompt for string, Note, if you use hostname in your UNIX prompt and your node name is Pascal, you are sunk! |
2 |
Normal mode, watch the tty bits to determine password entry. DEFAULT: 2 (Can be set during installation). |
New Ce commands listed in Table D-2 were added to support colorization of text, pull down menus, scroll bars, statement labels, and miscellaneous features people asked for.
Table D-2. New Ce Commands and Definitions
Command |
Definition |
ca |
This command is used to color an area or remove color from an area. |
{ |
Called the "corner" command, this command behaves similar to the positioning command [row,col]. Instead of moving the cursor to this position, the corner command positions the file so {row,col} is in the upper left corner of the window. |
fbdr |
This command allows dynamic inspection and modification of the find border resource introduced in release 2.4. The find border modifies the positioning commands (such as find), to position the window so there are at least 'n' lines between the located position and the found line. In this case, "n" is the number from the "fbdr" command. This allows you to see text in context. See the "fbdr" help for more information. The scroll bar command, "sb", allows the scroll bars to be switched on and off. |
mi |
The "menu item" command is put in the ".Cekeys" file to create the items found in the menu bar and in pull down menu's. It's syntax is very much the same as a key definition. As with key definitions, menu items are known across all Ce windows. The local menu item command, "lmi", creates a menu item for just the current window. |
pd |
The "pulldown" command activates a pull down menu. This command can be placed in a key definition or executed from a menu item. It is the command used to create cascading pull down menus. Try the Ce command: "pd Menubar". |
pdm |
The "pull down menu" command allows you to toggle the menu bar on and off. |
tmb |
The "to menu bar" command can be put under a key definition to move the cursor to the menu bar and lock the main window till the mouse is clicked. |
nc |
The "next color" command moves the cursor forward to the next colored area. |
pc |
The "previous color" command moves the cursor backward to the next colored area. |
eval |
The "evaluate" command performs symbolic substitution of environment variables on its argument and then executes the argument as Ce commands. This is useful in some complex command files and key definitions. |
lbl |
The "label" command sets a label at the current cursor position in the main window. |
glb |
The "go label" command positions the cursor at the named label. |
dlb |
The "delete label" command deletes all labels in a range of text. |
xa |
The "paste buffer append" command concatenates two paste buffers. This is useful in some key definitions. |
f |
Alternate find syntax. Allows delimiter other than "/". This is handy for search strings with slashes in them. |
The Ce_init program is now sensitive to whether Aegis or UNIX regular expressions are in use. The shell now asks several setup questions to do some initial customization. The key definitions, which were previously held in the DATA directory, have been put into the "ce_init" shell. The data directory no longer exists.
This program sends a terminal control sequence which is ignored by xterm's, hpterms, cmdtools, and so on but is recognized by ceterm. The program can thus detect whether it is being called from a ceterm or some other terminal. This is often useful in ".profile" (.login) shells or ".kshrc" (.cshrc) shells.
The install process now addresses the HTML and contributed program directories. It also allows some site wide customization as part of the install process. The data directory which contained initial key definitions has been eliminated in release 2.5. This data is now encoded in the "ce_init" shell. Also, the help files do not need to be tailored to the site. The only file which is tailored is "ce_init".
Release 2.4.2 and earlier versions will complain about the menu item definitions which are stored with the key definitions. Once you run release 2.5, bringing up an earlier version of Ce will cause a bunch of error message to be written out. You can get rid of this by doing a "ce -reload" with the earlier version. The code which generates these messages has been modified so it will not be a problem with later releases.
This is a summary of changes from Ce release 2.4.1 to 2.4.2. Release 2.4.2 contains 2 bug fixes and 2 enhancements.
References to the system routine "gethostbyname" were removed to get around a problem which occured on Apollo systems running the xdm window manager.
Correction to allow the below key definitions to work as desired when running Ce in "mouse
-off" mode.
kd m1 sic;dr;echo;mouse -on ke
kd m1U xc;mouse -off ke
If a Ce session which was piped into is put into read/write mode, a temporary name in "/tmp" is created. Previous behavior was to beep and issue an error message.
A new X resource (titlebarfont) and line option "-tbf" allows the user to specifiy the font to use in the reverse video titlebar at the top of the window.
This is a summary of changes from Ce release 2.4 to 2.4.1.
Release 2.4.1 is a maintenance release. The following bugs were fixed:
A memory fault occured in ceterm only on HP/UX systems when the prompt was wider than the window and the return key was pressed in the main transcript pad.
The +lineno option on the command line was off by 1. That is, executing "ce +3 .profile" left the cursor on line 4. This is corrected. This option was undocumented in release 2.4.
A problem with "ww -a" has been corrected. It would occationally compress blanks.
A problem in the bl command was fixed. In one case it would find the wrong matching bracket.
BA problem involving the use of aliases within key definitions has been resolved. A key definition which used an alias would only pick up the first command in the alias list.
A problem involving the title command with no options was resolved. The command sequence "title abc;title" would cause a memory fault.
This is a summary of changes from Ce release 2.3.2 to 2.4.
The new Ce commands are primarily for users who write customized commands and for programmers who write "Ce aware" programs. The alias command is a partial exception to this rule as it is used to add default alias names for common commands. For example, find, quit, end, save, and help aliases were added to the ".Cekeys" file created by "ce_init". To incorporate these changes into your existing ".Cekeys" file, execute the new "ce_update" command.
Table D-3. New Ce Commands and Definitions
Command |
Definition |
alias |
The "alias" command allows the user to define new Ce commands. The syntax is very similar to kd command. New commands may contain symbolic substitution of positional parameter. It is used in the shipped key definition file to add aliases for help, quit, end, and a few other functions. |
sp |
"sp" is a special command for use with "Ce aware" programs. A program is "Ce aware" if it is the program executing under a ceterm and it wishes to make use of Ce features from within the program. |
prefix |
"prefix" is a special command which modifies the way data being written to the transcript pad in a ceterm is processed. It allows a set of one or more characters to be looked for at the start of each line written to the transcript pad. If a match is found, the rest of the line is assumed to be Ce commands and executed instead of being put in the transcript pads. The ceterm program comes initialized with a default prefix. This allows some shell users to synchronize the current working directory in the "Command:" window and the shells current working directory in a more elegant way than previously possible. |
xl |
The "xl" command is "copy literal". The string "xl" was chosen because it is consistent with "xc" for copy, "xd" for cut, and "xp" for paste. The "xl" command copies the literal string passed as it's argument to the named paste buffer. The optional arguments to "xc" apply to "xl". |
Table D-4. New Parameters and Definitions
Parameter |
Definition |
-e option to the bang (!) command |
The "bang (!)" command causes the passed command to be sent to the shell and executed. The current marked region is passed as stdin to the program/shell script and optionally cut from the file. The standard output from the invoked program is optionally pasted into the cut out spot. The -e option specifies that standard output from the program is a string of Ce commands to be executed. Note that when used in conjunction with the alias command, you can write your own editor commands in your choice of languages or shell scripts. |
Using grave (reverse) quotes (`) |
Normally the processing of a prompt removes leading white space from the response entered in a prompt. Sometimes this is not desirable. Enclose the prompt string in grave quotes instead of single quotes to preserve leading blanks and tabs in the response to the prompt. |
-w option to wc |
Normally when Ce returns, it saves the current window size and color scheme. When the next Ce/ceterm starts up, if no geometry was specified via the command line or X resource, it picks up the last one used. The -w option defeats this option. Using the window manager pull down to close a ce/ceterm implies this option. |
-dpb <name>
Ce.dfltPasteBuf : <name>
Use the specified name as the default paste buffer. As delivered, this is the paste buffer
name CLIPBOARD. It is the default paste buffer name for most Sun applications. The
other common name is PRIMARY with is the name used by xterm and other
applications. This resource is commonly set by the system adinistator to the value
PRIMARY in the app-defaults directory file "Ce". It is expected that sites not using Sun
workstations will change the default to PRIMARY in the app-defaults library to make it
easier for Ce to communicate with xterms and other applications on these machines.
DEFAULT: CLIPBOARD.
-findbrdr <num>
Ce.findbrdr : <num>
Use the specified number as a border for find commands. That is, if <num> was
specified as 2, make sure there are 2 lines between the top or bottom of the window and
the found string. This is ignored if the find is in the first <num> lines of the file. It may
be modified if the number of lines in the window is less than double num. This option
is often set to 1 or 2 in the ".Xdefaults file". For example: If the resource "Ce.findbrdr:1"
is active, the find command will position the window so there is at least one line of text
above or below the found line. DEFAULT: 0.
-ib <path>
Ce.iconBitmap : <path>
This option lets you change the icon used for ce/ceterm. Ce will use the requested file
as the bitmap for the icon. The file should be in the format created by the X bitmap utility.
This utility is found in different places on different types of machines. DEFAULT: The
standard ce/ceterm icons.
-transpad
This option puts a Ce window into a special read from stdin mode. It is useful when
piping into Ce from a device such as a hardware monitor which generates data
sporadically over a long period of time. When Ce is running in its normal mode and it
is reading from stdin, if you press "^b" (go to bottom of file), the screen will lock until all
the data has been read in ensuring that the bottom of the file has also been read. This
is fine when using Ce as a pager for manual pages. When displaying output from some
device which is producing messages, a behavior like the transcript pad of a ceterm is
desired, only with no UNIX command window. The "-transpad" option provides this
behavior. One use for this option has been to provide a monitor window in a debugger.
The Ce program was executed via a "C" popen(3) call and output written to this pipe as
needed. DEFAULT: Off.
-offdspl { y | n }
Ce.offdspl : { y | n }
This option overrides a normal "safety" feature of Ce for use with virtual window
managers such as olvwm. Normally Ce will not allow the specification of a window
geometry which has no portion of the window visible. This is because such a window
is very difficult to interact with. When using a virtual window manager it may be
desireable to bring up Ce windows in parts of the virtual workspace which are not
currently visible. This is especially true during login startup processing. When set to
"y", the offdspl argument or X resource allows the specification of geometries which are
off screen. Whether this option is required depends upon how the virtual desktop is
managed. Managers such as HP/VUE and CDE unmap the windows which are not in
the currently displayed desktop. Window managers like olvwm move the window to
geometry values which are off screen. It is for this second type of window managers
that the offdspl option is supplied. DEFAULT: n.
-lockf { y | n }
Ce.lockf : { y | n }
As of release 2.4, Ce supports the use of System V, advisory file locking. The default
is to use file locking. Specifying "n" in the command line argument or the X resource
disables the file locking feature. Note that file locking is only supported on file systems
which support advisory locking via the lockf system call. This includes local files
systems and most NFS file systems. DEFAULT: Y.
ce_update
A new shell called "ce_update" and a supporting program named "ce_merge" have been
added. The "ce_update" command compares the existing key definitions to the defaults
and appends any new default key definitions which were not previously defined to the
existing ".Cekeys" file. Users who customize their key definitions generally do not want
to run "ce_init" to get new key definitions because this would overwrite their
customizations. The "ce_update" command does a merge without replace of the default
definitions and puts the new definitions at the bottom of the file where they are easy to
find. Note that "ce_update" is an alias to "ce".
The abrt command "^x" will not cancel pending prompts. Thus if you press the Help key "F9" and are prompted for a name and you do not wish to look at any helps, pressing "^x" will cancel the prompting command.
The "dq" command (interupt) in ceterm causes the transcript pad to scroll to the bottom of the data. This avoids the problem of users in scroll mode (the default) to continue to see data scrolling on the screen after the quit has taken place. In truth, the data had already been sent from the shell but scrolling one line at a time made the output look like the command was still running. See the "ws" command or the scroll X resource for information about turning scrolling on and off.
The environment variable CE_CMDF_PATH is searched when accessing command files which do not have a complete path. For example, If "CE_CMDF_PATH=.:/usr/mygroup/ cecmds:/usr/dept/cecmds" and the Ce command "cmdf abc" is executed, Ce will check for the command file as "./abc, /usr/mygroup/cecmds/abc", and "/usr/dept/cecmds/abc".
The tmw (to main window) command caused the transcript pad to scroll when it should not have.
Key definitions which included entering text and scrolling would cause erroneous data to be displayed. A screen refresh would fix it. An example is: "kd ^1 tl;es'> ';[+1] ke".
Several minor drawing, regular expression (substitute), and cursor positioning bugs have been fixed in this release.
Moved default "^c" (copy), "^e" (cut), and "^p" (paste) key defintions to "<Alt> c", "<Alt> e", and "<Alt> p" respectively.
Added default key definitions for:
"^c" - interupt in ceterm
"^d" - end of file in ceterm
Added aliases for "quit", "end", "exit", "save", "help", "print", "top", and "bottom".
Several of the changes in release 2.4 make Ce not integrate properly with release 2.3.2. These changes are described here.
Key definitions using the bang "!" command or the command line prompting, when read from the X server by one version will not be processed correctly by the other. If the ".Cekeys" file was loaded by release 2.3.2, prompts will loose the first character of the prompt and bang commands will lose the first character of the commmand line.
If you use the "Ce.dfltPasteBuf" resource or the "-dpb" option to change the name of the default paste buffer in release 2.4., copy and paste operations using the default paste buffer will not work between 2.4 and 2.3.2 windows.
This is a summary of changes from Ce release 2.3 to 2.3.2. It also includes the changes between release 2.3 and 2.3.1. Releases 2.3.1 and 2.3.2 are maintenance releases. The primary changes deal with problems encountered with the license manager introduced in release 2.3. There are several minor bug fixes and two new resources.
Ce.envar: {y | n}
Release 2.3 introduced the ability to click on a file which contains environment variables and
have those variables resolved before looking for the file name. In release 2.3.1, a resource
was added to allow the processing of these names to be turned off.
Ce.LSHOST : <nodename>
Release 2.3.2 introduced the ability to specify a default value for the license server LSHOST
environment variable as a resource. This allows the system administrator to specify it in the
app-defaults/Ce file instead of having to put it in each user's .profile.
Stored cp commands:
If a key definition contains a 'cp' command (none of the default definitions do) and it is read
from the .Cekeys file by release 2.3.1 of Ce or earlier, release 2.3.2 will not be able to
extract it when starting up.
This is a summary of changes from Ce release 2.1 to 2.3. It includes the changes between release 2.1 and 2.2.
Table D-5. New Ce Commands and Definitions
Command |
Definitions |
bell |
Beep the bell |
mouse |
Disconnect Mouse and text cursors |
rec |
Command recording |
title |
Change Window Manager title |
Table D-6. New Parameters and Definitions
Command |
Option |
Definition |
pn |
-r |
Replace target file name if it exists |
tf |
-p |
Compress blanks before textflow |
xc |
-a |
Append mode for copy buffers |
vt |
-auto |
Switch to VT100 emulation mode as needed |
Table D-7. New Run Time Options and "X" Resources and Definitions
Option |
Resource |
Definition |
-iconic |
Ce.iconic |
Start Ce as an Icon |
-ls |
ceterm.loginShell |
Cause .profile to be run during startup |
-readlock |
|
Disable "ro" command for a ce session |
-vt |
ceterm.vt |
Control vt100 emulation mode |
The default key definitions in the "data" directory are now delivered in both Aegis and Unix regular expression mode. The Unix mode definitions are commented out. You may modify the data files to initially define the Unix mode definitions. See the keyCon help file for more information on doing this customization. If this change is made, you need to modify the "Ce.expr" line in the ".Xdefaults" file of the "data" directory to specify Unix mode expressions. The location of the data directory is set at install time.
The key definitions for "F2" through "F4", "^c", "^e", and "^p" have been updated in the "initial .Cekeys" file to remove the "-l" (local) option from the definition. You should make this change in your personal ".Cekeys" file. The "-l" option prevented copy and paste across windows from working.
For example:
OLD: kd F2 xc -l ke
kd F2S xc -l -r ke
NEW: kd F2 xc ke
kd F2S xc -r ke
In the files used by "ce_init" to build the ".Cekeys" files, alternate Unix mode definitions have been provided. These definitions are initially commented out. They can be updated by the user in their private ".Cekeys" file or by the system administrator in the master copies. In the "keydef" file (either ".Cekeys" or the master copy), find the line "Ce.expr". It will be in a comment line. Below it will be two key definitions. One is commented out with the string "#Unix expr". Delete this string and comment out the existing definition on the line above.
Several of the changes in release 2.3 make Ce not integrate properly with release 2.1. These changes are described here.