thumb|right|An Informatics General computer programmer using XEDIT on an IBM 3279 terminal
thumb|An early version of XEDIT from 1982, as displayed on a 3270 terminal emulator.
XEDIT is a visual editor for VM/CMS, primarily using block mode IBM 3270 terminals. It also works on line-mode terminals.
XEDIT is much more line-oriented than modern PC and Unix editors. For example, XEDIT provides automatic line numbers, and many of the commands operate on blocks of lines. A pair of features allows selective line and column editing. The ALL command, for example, hides all lines not matching the described pattern, and the COL (Column) command allows hiding those columns not specified. Hence changing, for example, the word NO as it appears only in columns 24 thru 28, to YES, and only on lines with the word FLEXIBLE, is doable.
Another feature is a command line which allows the user to type arbitrary editor commands. Because IBM 3270 terminals do not transmit data to the computer until certain special keys are pressed [such as , a program function key (PFK), or a program access key (PAK)], XEDIT is less interactive than many PC and Unix editors. For example, continuous spell-checking as the user types is problematic.
Typical screen layout
<syntaxhighlight lang="text" line>
MOHICANS SCRIPT A1 V 132 Trunc=132 Size=10 Line=10 Col=1 Alt=10
XEDIT:
===== Last of the Mohicans
===== .sp
===== It was a feature peculiar to the colonial wars of North America,
===== that the toils and dangers of the wilderness were to be encountered
===== before the adverse hosts could meet.
===== A wide and apparently an impervious boundary of forests severed
===== the possessions of the hostile provinces of France and England.
===== The hardy colonist, and the trained European who fought at his
===== side, frequently expended months in struggling against the rapids
===== of the streams, or in effecting the rugged passes of the mountains
|...+....1....+....2....+....3....+....4....+....5....+....6....+....7...
===== * * * End of File * * *
====>
X E D I T 1 File
</syntaxhighlight>
thumb|XEDIT in "input mode," waiting for the user to input more text.
Notable features of the screen layout:
- The top line provides details about line format where:
- is the filename
- is the filetype
- is the filemode (default, indicating which disk the file is on)
- is the record format (RECFM) which can be Fixed or Variable
- is the length of the records (for V, maximum length is 65535)
- indicates changes beyond 132 columns will be ignored
- denotes total number of lines in file
- denotes the current line
- denotes the current column
- indicates that ten changes have been made while XEDITing
- The equal signs <code>=====</code> at the beginning of the lines provide space for line numbers if desired, and a place to enter XEDIT prefix commands that may operate on blocks of lines.
- The line beginning |...+ is a ruler that e.g. might show tabulator positions.
- The following line marks end-of-file, appearing in XEDIT as if it followed the last actual line of the file.
- The next-to-bottom line showing <code>====></code> is a command line for entering XEDIT or system (CP/CMS) commands or macros.
- There is no mouse pointer because most IBM 3270 terminals did not have mice.
- Most IBM 3270 terminals had 12 or 24 program function keys (PFKs) (and also two or three program assist keys), to which XEDIT commands or macros could be assigned.
- XEDIT commands can be used to change the screen appearance. Some examples include:
- Moving the position of (or eliminating) the command line
- Moving the position of (or eliminating) the TABS marker line
- Moving the position of (or eliminating) the PREFIX lines
- Changing the prefix line from equal signs (<code>=====</code>) to line numbers (nnnnn)
- Defining whether or not TAB characters are to be expanded
- Defining which lines are to be displayed by scope (SELECT)
- Showing the data on a display screen or in typewriter mode
- Specifying text line(s) to be displayed on the screen (RESERVED)
- Eliminating the TOFEOF lines ( and )
- Displaying (or eliminating) SHADOW lines (indications that lines are not being displayed)
- Displaying (or eliminating) the SCALE line (a scale or ruler to assist editing)
- Changing the background and foreground colors used for the different portions of the screen
- Defining what lines are to be displayed (RANGE)
- Defining what columns are to be displayed (and also, if in hexadecimal, text, or both)
- Defining multiple XEDIT screens [sizes, location (over/under, side by side, combinations)]
Macro language
XEDIT macros (scripts) can be written in Rexx, ooRexx, EXEC 2, or EXEC.
XEDIT exposes the majority of its internal state to the macro environment, allowing macros to easily read and set internal variables that control its operation.
KEXX
KEDIT 5 for DOS and OS/2 supports an external Rexx interpreter (native OS/2 Rexx or Quercus Rexx, for DOS only Quercus Rexx replacing the older Mansfield Rexx) and its own rather limited KEXX subset. KEDITW 1.6.1 for Windows supports only its own internal KEXX 5.62 version of the Rexx language. Macros can be arranged in the <code><abbr title="Kedit Macro Library">.kml</abbr></code> file format.
History
XEDIT was written by IBM employee Xavier de Lamberterie and was first released in 1980.
Its predecessor was EDIT SP (SP is an initialism for System Product used by IBM). Other key influences were EDIT, the older editor for CMS, and EDGAR, an IBM Program Product editor for CMS. XEDIT supported many of the EDGAR commands, SOS (Screen Output Simulation) being a major one. XEDIT also supported EXEC 2, the predecessor of Rexx.
PC and Unix adaptations
thumb|right|Keditw 1.6.1 screenshot
When PCs and Unix computers began to supplant IBM 3270 terminals, some users wanted text editors that resembled the XEDIT they were accustomed to. To fill this need, several developers provided similar programs:
KEDIT
KEDIT by Mansfield Software Group, Inc., was the first XEDIT clone. Although originally released in 1983, the first major release was version 3.53 for DOS, released in 1985. KEDIT 4.0 had a version supporting OS/2, and included the ALL command.
The last version for DOS and OS/2 was KEDIT 5.0p4. KeditW (for Windows) is at version 1.6.1 dated December 2012.
KEDIT supports a built-in Rexx-subset called KEXX. Mansfield Software created the first non-IBM implementation of Rexx (Personal Rexx) in 1985.
In December 2012 Mansfield Software released 1.6.1 to provide compatibility with Windows 8 and extended support to at least June . These 32bit versions work also in the 64bit versions of Windows 7 and Vista, but do not directly support Unicode. As of December 2022, Kedit supports Windows 10 and 11 too, and Mansfield promises email support until at least June 2024.
SEDIT
SEDIT (first released in 1989) is another implementation on both Windows and Unix, which supports a variant of Rexx language called S/REXX (announced in 1994).
THE (The Hessling Editor)
thumb|150px|Twin session
The Hessling Editor (THE) is an open source text editor first released in , and available for many operating systems including QNX, OS/2, DOS, BeOS, Amiga, Windows 95/98/Me/NT/2000/XP and most or all POSIX Unix platforms (as a program for text-mode or native X11). and takes some features from KEDIT. THE was written in C with PDCurses also required for some platforms.
References
External links
- KEDIT, a Mansfield Software Group product, for DOS, OS/2, and Windows.
- KEDIT/KEXX summary by Rex Swain
- macro collection
- PcXedit, a freeware program for Windows.
- SEDIT and S/REXX for Unix and Windows product description
- THE, The Hessling Editor, open source using Regina as its macro language
- uni-XEDIT for Unix product description (2003)
- EE, fullscreen editor for VM/370-R6 SixPack
