1.20 (r3543) to 1.21 (r3918) -- Status: 2020-03-16

Status bar

  • Added special color for read-only files.


  • Moved EPMBBS files to samples package.
  • Renamed package ids. The installation works with old and new id names. Old id names were changed on the first start now, when the WarpIN database is unlocked.
  • Use rwIni functions, if installed and if possible.
  • Added deletion of myepm folder icon EAs and avoided its setting.
  • Fixed update behavior for object titles.

Search dialog

  • Enabled T and B settings.
  • Changed the font of both entry fields to that of the edit window.
  • If a mark exists in current file, activate Marked area and Start at top. Made that configurable by Preferences -> Appearance -> Windows and dialogs -> Search dialog.
  • Improved focus, e.g. when switching EPM windows while the Search dialog is on top.
  • Many more fixes.


  • Added setting for mode-specific or general tabs and margins.
  • Replaced all remaining EPM settings with NEPMD settings, including configurable cursor and pointer styles.

Cursor highlighting

  • Added cursor highlighting for many cases.

Window and object functions

  • Added procs as wrappers for C functions.
  • Replaced REXX commands with that.

Popup menu

  • Open popup menu at the cursor position with Alt+Sh+F10.

Environment extension

  • Fixed BeginLIBPATH handling. Now it can be extended by the pseudo env var within a command window.

Config file

  • Remove multiple spaces within the value part, except for color defs.


  • Path-changing commands now change to the root dir of a drive before changing that drive. That keeps the previous dirs on previous drives unlocked, so that it can be deleted or renamed. Previously the old dir was locked until EPM was closed.

Unwanted scrolling

  • Added workaround for more cases.
  • Fixed small vertical window scrolling on position restore. Now the scroll position is saved and restored exactly, including fractions of font heights.
  • Fixed search direction processing.


  • Fixed handling of double quotes for defcs and defprocs.
  • Allow for special chars in filenames by adding missing enquoting.


  • Many improvements, with checking for different .E files and faster .E file processing, except for the initial check.
  • Added new markers: 'I' = information, '=' = equal .E file.
  • Now user .E files, marked with '=', can be safely deleted.
  • At first startup, if user .EX files were found, ask to execute RecompileNew.
  • Added line-wise comparison with diff.exe for source files, if a md5 check has found different files. That allows for ignoring $Id $ (RCS keyword) lines, as being used in the source files.


  • Added version check via version.cfg on the netlabs server.
  • Improved processing, added missing select event.


  • Preserve EAs and datetimes for Move and Encode.

Open URLs

  • Improved dialog actions.
  • Changed to use a temporary WPS object. This supports long URLs.


  • Added functions for datetime difference calculation and validation.


  • Disabled RefreshMenu in SwitchKeyset, if not required. That results in a speed improvement on file switching. Unfortunately it's still required for different keysets (e.g. for SHELL files) to keep the mnemonics in the menu right.


  • Made scanning for multi-line comments on cursor movement much faster. A simpler method is used to bypass the MLC array creation. That array is used, if it exists, what is the fastest method. Now stuttering cursor scrolling shouldn't happen anymore.
  • LocateMLC: Replaced previous complex implementation, that already was a binary search, by a clean binary search. This seems to be a bit faster again.
  • Improvements for literals.
  • Fixed cursor movement when repeatfind is used.
  • Fixed length of highlighted string for MatchFindOnMove.


  • Fixed Alt+1 for <filespec>:<linenum> <string containing a : (colon)>. Now linenum is correctly parsed.
  • Added <filespec>:<"search word"> or <filespec>:<searchword>, with allowing for cursor placement on <searchword>.

Preferences menu

  • Changed Configuration presets to Basic configuration.
  • Added sections Presets and Main items. Added items to it to control main settings more easily and to give visual feedback on switching presets.
  • Added Edit window -> Click only gives focus as replacement for the const.
  • Avoid menu item 'Restore file...' for non-backup .Tree_Dir files.
  • Disabled common popup menu items for .Tree and .Tree_Dir files. Previously, the Alt+1 menu item appeared twice and TagScan didn't make sense for these files.
  • Fixed disabling for advanced marking menu items.
  • PopupMenuItemsOutsideMark: Added diabling of advanced menu items if CUA marking is active.
  • Fixed menu item id exhaustion after RefreshMenu.


  • Improved Backup to avoid backup file creation when useless.
  • Added Restore and Compare commands.
  • Added Restore and Compare menu item to popup menu for .Tree files.
  • Added EAs EPM.PREVPATH and EPM.BACKUPDATETIME for later file restore and later cleanup of backup directory.
  • Fixed .Tree popup menu behavior to take the line under the mouse pointer.
  • Added automatic mode selection for backup files on load via EA recognizing. The previous mode is now saved as EA EPM.PREVMODE.
  • Changed getting mode for backup files without requiring EPM.PREVMODE EAs. It is now checked if a tilde and a number is appended.
  • Fixed processing of virtual files.

Move expression

  • Extended to process mark if it exists.
  • Improved string determination.


  • Syntax expansion: Completely reworked C mode, many improvements for when coding styles have changed. Added CFunctionCodeStyle.
  • SCRIPT: Fixed highlighting definitions.
  • PHP: Improvements.
  • IPF: Find headings spanned over multiple lines.
  • PASCAL: Several improvements.
  • SHELL, .DOS, .Tree: Made 'Directory of' line editable for DIR commands, like for '.DOS dir' files.
  • SHELL, .DOS, .Tree: Control the cursor position.
  • SHELL, .DOS, .Tree: Use SHELL highlighting for .DOS files.
  • All modes: Replaced LINECOMMENTOVERRIDEMULTI by MULTILINECOMMENTENDPRIO. This is only used for TeX's pseudo-MLC env \iffalse ... \fi.
  • Tags: Fixes for TeX and LaTeX commands.
  • Assist: Find more TeX keywords.
  • TEX: Added verbatim environment to the multi-line commands.
  • Syntax expansion: Fixes for REXX.
  • FindDef: Added mode REXX.
  • REXX: Improved bracket matching when pressing BackSpace repeatedly.
  • REXX: Added rwIni keywords.

File and Mode settings

  • Completely reworked, with calls to generic functions.
  • Fixes for Coding style settings.
  • Added menu item.

Format submenu

  • Split Line breaks into Line ends and Line wraps.
  • Added menu items for DOS and Unix line ends.


  • Added new commands.
  • Completely reworked encoding menu items. That includes a predefined list, similar to the spell-check menu items and many helpful menu items and options.


  • Improved double click behavior.


  • Added workaround to avoid access to the unwanted first undo state after loading a file with attribute EAs.


  • Added compatibility for old bookmark commands. That makes the toolbar commands from MAKEACTN.E work again.
  • Changed bookmarks dialog to display column instead of index.
  • Extended bookmarks dialog to optionally add EPM.POS, undo and stack positions. This behavior can be toggled via dialog button and is saved per window non-permanently.

Spell-check dictionaries

  • Catch errors of wget and unzip on download.
  • Dialog improvements.


  • Added fix for user-defined groups of associations.


  • Removed double call of wis\makefile in many cases. (There exist still a few.)
  • Fixed backslash handling for C-included files by htext files.
  • Changed clean makefile target to clean both debug and release, as documented in MAKEFILE.INF.

1.19 (r3209) to 1.20 (r3543) -- 2019-03-21


  • Fixed configuration of NEPMD associations during the installation. Previously, the script worked only after installation.


  • Added menu item to insert the sum of block-marked text.

Center, box and draw

  • Added menu items under Format.
  • Added style configuration dialogs.
  • For line mode, use header width value instead of 1599 (MAXMARGIN).
  • Added configuration of header width.

Reflow margins

  • Changed configuration of first margins selection item to use header width.

Key recording

  • Allow for edit, save and restore a recorded sequence.
  • Added menu items for that.
  • Moved menu items from Edit to Run.

Spell-check dictionaries

  • Uploaded working Netscape dictionary files.
  • Improved configuration dialogs.
  • Added Download button to the Edit dictionaries dialog.

Alt+1 and URLs

  • Improved URL processing.
  • Many improvements for Alt+1 to process the file spec under the cursor, e.g. added filespec:"search wrds".


  • Fixes for handling search options.
  • Added reset of last saved Change arguments by executing a different Find (locate) command.


  • Made initialization more stable.
  • Improved processing of commands after the first start.

Title bar

  • Improved the display of the .LONGNAME EA.

Dynamic configuration

  • Improved processing of environment variables to extend the environment and fixed previous double extension.
  • BEGINLIBPATH is used now instead of EPMBEGINLIBPATH.
  • Environments started with EPMMAINT.CMD now show the correct paths for the loader and the executable.


  • Copied Coding style menu items from Preferences to Format for easier access.

  • Extended all remaining commands to process mark only if it exists.


  • Added tags support for modes INI and TEXT.
  • Fixed tags processing for PHP, IPF.
  • Allow for tags with multiple words.
  • IPF: Allow for headers spanned over multiple lines.
  • Fixed tags processing if egrep meta characters are included.
  • Added LaTeX and TeX tag keywords for mode TEX.


  • SHELL: Fixed command history for a restored command line file.


  • The reload of a keyword file can now be forced by keeping the Ctrl key pressed while executing NepmdActivateHighlight. That applies also to the highlighting menu items.

  • Highlighting is now temporarily switched off during mouse marking. This is required as a workaround to allow for catching the end of a line when the file was highlighted.

  • Added workaround for an EPM bug to replace DELIMI with DELIM if possible to allow for specifying escape chars.


  • Fixes for RecompileNew.
  • Changed inclusion of MYSTUFF.E and handle that file correctly as an option.
  • Added Recompile command to process the current file only.

Tabs and spaces

  • Many changes and fixes.

Swap text

  • Added MoveExpressionLeft and MoveExpressionRight. Menu items can be found under Edit -> Move.

Syntax expansion

  • Reworked syntax expansion: Handle tabs correctly, skip expansion in unwanted cases, avoid double ending keywords.
  • Many fixes.


  • Fixes for nested multi-line comments.


  • Reworked buggy attributes (e.g. bookmarks) handling for many commands. Attributes are now preserved after processing and move now correctly together with the text. Deleting a line removes also its attributes.


  • Reworked bookmarks processing.
  • Fixed handling of multiple files with bookmarks in a ring.
  • Improved ListMark dialog. Added filename and the columns FileId, Idx and Line.
  • Improved SetMark dialog: Pre-filled name entry field with the begin of the current line.

  • Added commands and key definitions for adding auto-named bookmarks and for going to the next and previous bookmark.
  • Added type and name configuration dialogs.


  • Fixed strings processing for ListBox and EntryBox.


  • Extended Fill to accept multiple chars, either tiled or left-aligned.


  • Improved file searching for NEPMD files.

Context menu

  • Added TagScan and OpenUrl to the context menu.


  • Fixed notification within menu items if values are overridden by file, file EA or mode settings.
  • Added Insert marked lines (above or below). Previously, below was internally hard-coded. The new default value is above.
  • Moved stream mode and Newline processing to an extra submenu.
  • Reworked Tab and BackTab. Added much more configuration options.


  • Fixed export of a value with leading or trailing spaces.


  • Reworked Undo processing.
  • Added configuration for special events.
  • Fixed Undo position, avoid scrolling and allow for catching a change without scrolling by changing in the Undo history back and forth.

1.18 (r2948) to 1.19 (r3209) -- 2018-10-19


  • Improved mode definitions for INI, JAVASCRIPT, TEX, FORTRAN77, FORTRAN90, TEXT.
  • Added mode PYTHON.
  • Improved PREFERREDCOMMENT key to handle 'L' or 'S' for single-line and 'M' for multiple line comment. Allow for appending a number, e.g. 'M2', to select a special string, when multiple comment strings are defined.
  • Added Preferences menu item to the popup menu.
  • Added menu item Mark line set at cursor to the Mark submenu.
  • Improvements for the Format submenu.
  • Added Current keyset definitions to the Help submenu
  • Added Highlight cursor to the Preferences menu.
  • Added Import user settings to the Preferences menu.
  • Added section headings to the Preferences menu.
  • Reworked and extended Colors and fonts in the Preferences menu.
  • Added NewLine and Enter configuration to the Preferences menu.


  • Changed scroll definitions in CUA keys. Added Alt combinations to Move cursor and to Scroll for faster movement.
  • ScrollLock interchanges now the definitions for Cursor move and Scroll. That leads to scroll improvements on systems where AMouse doesn't work, e.g. on VMs.
  • Made mouse definitions configurable via STDKEYS.E.
  • Added key category names.
  • Added dynamic listing of the current key definitions.
  • Fixed single-key determination for DBCS, untested.

Configuration files

  • Fixed determination if an import of DEFAULTS.CFG or USER.CFG is required.
  • Moved all settings from OBJECTS.CFG and COLORS.CFG to DEFAULTS.CFG.
  • Changed color numbers to names in configuration files and registry keys.
  • Added optional deletion of user keys before import of USER.CFG.
  • Made cache directory for temporary mode files configurable.
  • Improved and fixed enquoting for .CFG and text .INI files.


  • Added cursor, scroll and mark position restore to Undo and Redo.

Shell files

  • Fixed shell file processing.
  • Improved outfiltering of initial shell prompt lines (requested by Ben Dragon).

Process marked lines

  • Changed processing of file to marked lines, if marked for Wrap.

Syntax expansion

  • Improved syntax expansion for C to omit expansion if cursor is left of a keyword or a brace.
  • Improved syntax expansion for PASCAL, E and REXX.

Assist and TagScan

  • Made Assist much faster for multi-line comments.
  • Added fixes for Assist.
  • Reworked TagScan for C, PASCAL, ASSEMBLER, CMD, HTEXT, IPF, JAVASCRIPT, PYTHON, E, REXX, TEX to use Assist procedures for more accurate results.
  • Added fix for FORTRAN90.

Library functions of NEPMD.DLL

  • Added NepmdDeleteConfigTree, NepmdImportUserConfig.
  • Renamed NepmdFileDelete to NepmdDeleteFile.
  • Added NepmdDeleteTree, NepmdSearchTree.


  • Fixed unwanted reset of program object settings on program object creation.
  • Fixed corruption of NEPMD.INI on installation.


  • Improved error handling in .ERX files.
  • Added more fixes for Locate and Change.
  • Added fixes for changing the additional keyset.
  • Added improvement for HookAdd.
  • Minimized scrolling for ScrollAfterLocate.
  • Avoid unwanted scrolling in more cases.
  • Fixes and improvements for Link, Unlink and RecompileNew.
  • Fixed and improved FindFileInList and Alt_1.

Last modified 6 months ago Last modified on Mar 20, 2020, 9:52:04 PM