Jump to content

Enhanced Editor: Difference between revisions

From EDM2
No edit summary
Line 25: Line 25:
* [[Customizing the Enhanced Editor]] by [[Jörg Schwieder]]
* [[Customizing the Enhanced Editor]] by [[Jörg Schwieder]]
* [[Paul Floyd]]: [[Adding syntax highlighting to EPM]]
* [[Paul Floyd]]: [[Adding syntax highlighting to EPM]]
;Hints & tips
* [[Alex Taylor]]: [http://www.os2voice.org/VNL/past_issues/VNL0206H/tips.html#k EPM Syntax Highlighting]


;Reviews and overviews
;Reviews and overviews

Revision as of 20:22, 22 January 2016

The Enhanced Editor, also known as EPM or "Enhanced E" is a fully programmable all-purpose editor that comes with every OS/2 and eComStation installation. It is a bit unusual in the PC world in that it is not a plain text editor application per se, but rather a text editing engine to which you add scripts to make it behave like you want, note that this is different from programmable text editors such as Emacs or even the closely related Visual SlickEdit in that normal extensible editors have a core functionality that can be added to but cannot be stripped away or modified except by changing the executable itself. In EPM almost all of what would be the "core functionality" is actually scripts that can be modified or stripped away as needed.

This means that in practice with relatively little work you can configure and extend the editor to suit you and the tools you use, it is for instance popular to use it as a "workframe" or IDE front end for compilers and related tool chains, but it has also been used as the back end for editing structured publications such as language dictionaries and so on. You are not confined to using the EPM engine and the REXX scripting capabilities, you can also use GUI's and external programs and libraries.

So as not to confuse people, it should be noted that there is another OS/2 editor from the company Pillarsoft that is also knowns as Enhanced E and although that is a much later release than this product it is best advised to not use the "Enhanced E" her but stick to calling it EPM or the full "Enhanced Editor".

Current version

Last known version is 6.03b, due to its age there are some issues with it although nothing major. It does not work directly with Unicode although if you hook up the REXX Unicode libraries, you can make it automatically import and export Unicode text with a little work but it will never be a Unicode editor internally. There has also not been an official update on any of the filters, so language support for Java, C++ and other languages that have seen a lot of updates are all getting a bit stale.

OS/2 versions up to 6.0 are ports of the old DOS E editor with a PM front end, i.e. they are hybrid 16 and 32 bit software, the PM engine is 32 bit but the editing engine is 16 bit. Version 6.0 was re-written from scratch and is fully 32 bit. While 6.0x has a few minor bugs that are not present in older versions you are still strongly recommended to upgrade if only for the line limit, version 5.51 only allows up to 256 characters per line while 6.0 has an infinite line length, if they are longer than 1600 bytes they are simply split up in memory and reassembled on file saves. Similarly macrospace on version 5.5 was only 64k etc.

History & background

EPM traces its history to the Personal Editor released in 1982, but that product offered limited programmability via the use of GML configuration files, as that product had a number of problems a re-written version was released in 1984 called simply E and a year later a version of E was released that used REXX as a scripting language. That version of the language was so flexible that IBM used it internally to create and model all text mode interfaces over the next few years.

J. Clark Maurer, one of the main programmers of E left IBM in 1988 to publish Visual SlickEdit but that software package is based on many of the ideas found in E is slightly less flexible.

Known Enhanced Editor scripts and add-ons

Publications

Tutorials
Hints & tips
Reviews and overviews

Language Support

  • UK English
  • US English
  • German (de_de)
  • French
  • Russian
  • Spanish
  • Brazilian Portuguese
  • Dutch
  • Danish
  • Swedish
  • Japanese
  • Simplified Chinese

and more

Older 16 bit OS/2 releases also contained support for
  • Icelandic

Note version 6.0x may not be available in all the above languages, also note that IBM only supplied a limited set of dictionaries for the Enhanced Editor 6.0x, in many cases only the US English versions, however IBM internally used standardised format for spell checking libraries so you can use other spell checking libraries from that era for use with the package including those that came with IBM Works, however these do not work with older versions of EPM (e.g. 5.51 or older).

Syntax assist and highlighting

A standard EMP comes with "syntax assist", that is syntax highlighting, semi-automatic formatting and automatic code summary generation, EPM has support for the E macro language used by itself in addition to C, Modula-2, Pascal and REXX. On top of that third party packages are available that add support for C++ and Oberon (See here) although the support may not be as .

Syntax highlighting is known in EPM terminology as "Syntax Colouring" and unusually enough the editor only handles that on a line by line basis rather than page by page or file by file. Included are colouring files for C, C++, FORTRAN 90, HTML, IBM Bookmaster, IPF, Java (outdated, based on the C filter), Makefiles, Resource files (RC), REXX, Perl and TeX.

Some of the syntax coloring filters have additional features, the C highlighting filter for instance contains support for most of the OS/2 2.1 API.

Links

License and availability

  • Commercial software, development stopped but is shipped with all versions of eComStation and all versions of OS/2 2.0 and later. It was internal use only software for OS/2 1.x.

Authors and publisher

  • J. Clark Maurer
  • IBM