XEDIT
XEDIT is a visual editor for VM/CMS using block mode IBM 3270 terminals. (Line-mode terminals are also supported.)

XEDIT is much more line-oriented than modern PC and Unix editors. For example, XEDIT supports 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
 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

Notable features of the screen layout:
The top line provides details about line format where:
MOHICANS   is the filename
SCRIPT   is the filetype
A1   is the filemode (default, indicating which disk the file is on)
V   is the record format (RECFM) which can be Fixed or Variable
132   is the length of the records (for V, maximum length is 65535)
Trunc=132   indicates changes beyond 132 columns will be ignored
Size=10   denotes total number of lines in file
Line=10   denotes the current line
Col=1   denotes the current column
Alt=10   indicates that ten changes have been made while XEDITing
The equal signs ===== 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 ====> 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 (=====) 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 (* * * Top of File * * * --and-- * * * End of File * * *)
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, 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 .kml 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

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. By 1990, 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. Some earlier Windows versions were:
 Release being 1.5 service level 3, dated January 1998
 Version 1.6, dated December 2007 

KEDIT 1.6 supports syntax highlighting for various languages including C#, COBOL, FORTRAN, HTML, Java, Pascal, and xBase defined in the .kld file format.

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)

The Hessling Editor (THE) is an open source text editor first released in , released under the GPL-2.0-or-later license,  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). THE is a derivation of the IBM Mainframe VM/CMS editor XEDIT that includes support for versions of the REXX scripting language,  and takes some features from KEDIT. THE was written in C with PDCurses also required for some platforms.  A REXX interpreter such as Regina is also required for THE's REXX macro capability.

THE's author, Mark Hessling, discussed at the 1993 REXX conference in La Jolla, California why he created a new multi-platform text editor.

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)

XEDIT
THE
IBM mainframe software
Command shells
IBM software
Rexx
VM (operating system)