1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278
|
.\" t
.\" @(#)xwpe.1 5/3/99
.de EX \"Begin example
.ne 5
.if n .sp 1
.if t .sp .5
.nf
.in +.5i
..
.de EE
.fi
.in -.5i
.if n .sp 1
.if t .sp .5
..
.ta .3i .6i .9i 1.2i 1.5i 1.8i
.TH xwpe 1 "May 3, 1999"
.UC
.SH NAME
xwpe, xwe, wpe, we \- X-Window Programming Environment
.SH SYNOPSIS
.EX
\fBxwpe\fP [ \fIoptions\fP ] file ...
\fBxwe\fP [ \fIoptions\fP ] file ...
\fBwpe\fP [ \fIoptions\fP ] file ...
\fBwe\fP [ \fIoptions\fP ] file ...
.EE
.SH DESCRIPTION
Xwpe can be used with or without the programming interface.
It has its own X interface but can be used also on a
character terminal.
\fIxwpe\fP fires up the X interface together with the programming
interface. \fIxwe\fP is the X version but without the special
features of the programming interface. In connection with a
simple character terminal you can use \fIwpe\fP to program and
\fIwe\fP as editor.
Xwpe is a X-window programming environment designed for use
on UNIX-systems. It is similar to the 'Borland C++ or Turbo
Pascal' environments. The differences between the programming
environments from Borland and xwpe is that many compilers, linkers,
and debuggers can be used in xwpe. Menus and commands are
accessible via both the keyboard and mouse.
Errors that occur while compiling and linking a program
can be examined in the sources. The cursor will jump to the
corresponding line in the source-file. Programs using
more than one source-file can be managed with the so called
"project-option" (see also \fIproject-file\fP).
The program can be started from within the
\fIProgramming-Environment\fP and errors may be found using a
debugger. The \fIdebugging-environment\fP allows the user to set
and unset breakpoints directly in the source code. The
contents of variables may be displayed in a special window,
the \fIWatch-Window\fP. This window is updated while reaching a
breakpoint. The \fIStack-Window\fP displays the program stack.
Help is available for xwpe and the man-pages installed on
the system may be displayed. All this can be reached via the
\fIhelp-functions\fP.
The \fIeditor\fP may be used to edit up to 35 files at the same time.
They are all displayed in a window of their own. A \fImouse\fP is
used to select special editor functions from the top menu.
These functions can also be selected by hitting a \fIspecial key\fP
or combinations of keys. Some of these features are a
complete search and replace function (yes, it can search for
regular expressions) and a \fIfile-manager\fP. The file-manager
is used to open, copy, rename and move or delete files.
The X-window programming environment can be used without the
special programming features. If it is invoked as `\fIxwe\fP'
(`\fIwe\fP' if used with a character terminal) it can be used as an
editor e.g. for shell-programming.
.SH OPTIONS
.IP "\fB-pm\fP"
The next file is a message-file.
.IP "\fB-r\fP"
Start \fIxwpe\fP in the \fIrecover mode\fP. The internal buffers
are saved in files with the postfix `.ESV' in the name
if a signal is caught by \fIxwpe\fP (except for SIGKILL).
If the editor is invoked with the `\-r' option is
specified in the command line, the old session will be
recovered.
.IP "\fB-sf \fIfile\fP"
\fIfile\fP will be used instead of the personal option file,
\fI$HOME/.xwpe/xwperc\fP.
.IP "\fB-so\fP"
The default options are used. The option file will not be read.
.PP
The following standard X command line options are available
for the X-Window versions.
.IP "\fB-display \fIdisplay\fP"
This option specifies the X server to contact; see \fIX(1)\fP.
.IP "\fB-font \fIfont, \fB-fn \fIfont\fP"
The font to used for the text can be specified with this option.
The default is \fI8x13\fP.
.IP "\fB-geometry \fIgeometry, \fB-g \fIgeometry\fP"
This option specifies the preferred size and and position of the
editor; see \fIX(1)\fP.
.IP "\fB-iconic\fP"
This indicates that \fIxwpe\fP should ask the window manager to
start as icon rather than a normal window.
.IP "\fB-pcmap\fP"
This starts \fIxwpe\fP with a private colormap.
.SH INVOCATION
On startup (subject to the \fB-sf\fP and \fB-so\fP options),
xwpe reads the personal initialization file \fI$HOME/.xwpe/xwperc\fP.
If no such file exists, the system wide initialization file,
\fI/usr/local/lib/xwpe/xwperc\fP, is read. If neither file
exists, the default options will be used.
\fIxwperc\fP is a text file written by the programming
environment. Although modification by hand is possible comments
will be erased if the options are latter saved from within xwpe.
.SH RESOURCES
The following resources are available. The application name is
either "xwe" or "xwpe". Both belong to the "Xwpe" class.
.IP "\fBfont (\fPclass \fBFont)\fP"
Specifies the name of the font to use. The default is ``8x13.''
.IP "\fBgeometry (\fPclass \fBGeometry)\fP"
Specifies the preferred size and position of the editor. Sizes of
less than 80 x 25 are ignored.
.IP "\fBcolor1 (\fPclass \fBColor1)\fP"
.IP "\fB...\fP"
.IP "\fBcolor16 (\fPclass \fBColor16)\fP"
\fIxwpe\fP uses 16 colors. The default setting is similar to the
PC-color set.
.SH SYNTAX-SUPPORT:
Xwpe supports the syntax of a language by using different
colors to display \fIkeywords\fP, \fIconstants\fP, \fIpreprocessor\fP,
\fIcomments\fP, \fIoperators\fP and everything else.
This support is defined already for the programming
languages C, C++, and FORTRAN. More languages can be
added to the user's syntax definition file, \fI$HOME/.xwpe/syntax_def\fP.
The syntax of any predefined language can also be overridden.
If no personal syntax definition file exists, the system
definition file, \fI/usr/local/lib/xwpe/syntax_def\fP, will be
used.
Each syntax highlighting is distinguished by the file extension.
The \fIsyntax_def\fP uses the following format for language
definition.
.\" Everything after this point needs fixing.
.EX
"string: The postfix for the filename."
"integer: The number of keywords."
"strings: The keywords."
"integer: Number of operators with more than one
character length."
"strings: Operators with more than one character
length."
"string: Operators containing one character."
"string: Beginning of comment"
"string: End of comment"
"string: Beginning of comment reaching until the end
of the line."
"string: Characters used for comments depending on the
column."
"string: Special single characters."
"integer: Column for comments (\-1 for none)."
"integer: Column for continuing line (\-1 for none)"
"Integer: Column for comment till the end of line (1000
for none)"
.EE
Strings and integers are separated by blanks or carriage returns. The
strings used for single character operators and for column
depending comments must not contain blanks. All strings used
for comments can contain NULL to indicate that there is no
such comment. An integer can be zero if there is no keyword
or multiple character operators. The string for special
single characters contains the following fields:
.EX
Character for string-constants
Character for character-constants
Character for preprocessor-commands
Character for quoting the next character
Character for next line is continuing line
(if it is the last character in the line)
Character (if not empty: the language is not
case sensitive)
.EE
If one character is not defined (e.g. missing) a blank is
inserted at the corresponding position.
An example:
.EX
.c
32
auto break case char const continue default do
double else enum extern float for goto if int
long register return short signed sizeof static
struct switch typedef union unsigned void volatile
while
0
~^()[]{}<>+\-/*%=|&!.?:,; /* */ NULL NULL "'#\\ \-1 \-1 1000
.f
64
ACCESS ASSIGN BACKSPACE BLANK BLOCKDATA CALL CHARACTER
CLOSE COMMON COMPLEX CONTINUE DATA DIMENSION DIRECT DO
DOUBLE PRECISION ELSE END ENDFILE ENTRY EQUIVALENCE ERR
EXIST EXTERNAL FILE FMT FORM FORMAT FORMATTED FUNCTION
GOTO IF IMPLICIT INQUIRE INTEGER INTRINSIC IOSTAT
LOGICAL NAME NAMED NEXTREC NUMBER OPEN OPENED
PARAMETER PAUSE PRINT PROGRAM READ REAL REC RECL
RETURN REWIND SAVE SEQUENTIAL STATUS STOP SUBROUTINE
TO UNFORMATED UNIT WRITE
13
.AND. .EQ. .EQV. .FALSE. .GE. .GT. .LE. .LT. .NE.
.NEQV. .NOT. .OR. .TRUE.
()+-/*=$.:, NULL NULL ! C* ' 1 0 5 72
.EE
.SH COPYRIGHTS
Copyright (C) 1993 Fred Kruse
Xwpe is free. Anyone may redistribute copies of xwpe to
anyone under the terms stated in the
\fIGNU General Public License\fP. The author assumes no
responsibility for errors or omissions or damages resulting
from the use of xwpe or this manual.
.SH MAINTAINER
Send questions or problems to Dennis Payne, dulsi@identicalsoftware.com.
.SH BUGS
Debugging leaks memory. The exact cause is still unknown.
Unsure if the column for continuing previous line is working.
Information on how to test this and what the result should be
would be greatly appreciated.
Documentation hasn't been updated.
Compilers are assumed to have a \-c and \-o option. This causes problems
for those who wish to use java, perl, or other languages.
\fBmake install\fP installs x versions even if not compiled in.
Adding items when no project is open has odd behavior.
Changing the maximum column and using cut & paste can crash xwpe.
Clicking "edit" in the project menu when not on a file it loads a file
with a name of " ".
Esc key requires 3 presses to do the regular escape function under Linux
console (and perhaps other terminal types).
No error for disk full.
Check headers doesn't correctly handle comments and "ifndef" protection.
|