Dec 302017
OS/2 port of Unix editor with source from germany. Most docs in german, but program source translated.
File EHP.ZIP from The Programmer’s Corner in
Category OS/2 Files
OS/2 port of Unix editor with source from germany. Most docs in german, but program source translated.
File Name File Size Zip Size Zip Type
DLL 0 0 stored
EMX.DLL 37945 19473 deflated
EMXLIBC.DLL 66971 33454 deflated
KBD32.DLL 18222 8688 deflated
MOU32.DLL 18882 8861 deflated
VIO32.DLL 20712 9447 deflated
EHP.EXE 284064 86136 deflated
EHP.TXT 8868 3058 deflated
KM.EXE 100477 31187 deflated
SOURCE 0 0 stored
AUS_1.C 27625 5723 deflated
AUS_2.C 42544 8727 deflated
AUS_3.C 64053 13471 deflated
BLOCK_1.C 47313 9766 deflated
BLOCK_2.C 30834 7115 deflated
CONFIG.C 16901 4281 deflated
CURSES.H 3807 1195 deflated
CUR_MAIN.C 44993 8278 deflated
CUR_WFCS.C 36540 5432 deflated
CUR_WGET.C 47019 6426 deflated
DEFS.H 16978 5227 deflated
KEYS.H 1174 477 deflated
KM.C 26768 7349 deflated
MAIN.C 35354 8589 deflated
MAKEFILE 936 298 deflated
MOUSE.C 35607 6871 deflated
SE.C 34787 7750 deflated
TASTE.C 25285 6601 deflated
TEXT_1.C 27380 6211 deflated
TEXT_2.C 44493 9668 deflated
WINDOW.C 56413 11034 deflated
TASTEN.INF 1065 548 deflated
UM_EHP.DOC 83594 19654 deflated

Download File EHP.ZIP Here

Contents of the EHP.TXT file

The EHP editor is an editor written on a HP UNIX workstation.
It is in the process of being ported to OS/2 2.0 and this is a beta version.
For the moment the documentation (except this document) is
The package can be compiled using EMX GCC 0.8e. Unpack the file using
OS/2's UNPACK utility. Construct a suitable keyboard layout using the
extracted program km.exe or use the withcoming tasten.inf. Enter the path
where you stored tasten.inf in the definition of you EHPINIT environment

Install procedure:
Copy the .exe files and the tasten.inf file
to a directory of your choice (best one contained in your PATH)
and set the environment variable EHPINIT to something like
set EHPINIT=autoind screen 80x50 keys xxx\tasten.inf
where xxx represents the path where you put the tasten.inf file.
Copy the .DLL-files to a directory contained in your LIBPATH statement,
e.g. to \OS2\DLL.

Meanwhile I managed to translate the editor and km messages
(I hope, I got all) to English, further I predefined the tasten.inf file
containing the keyboard commands, to be leaned on English.

The two bugs concerning the filtering of blocks and calling shell commands
from within a window have been fixed.

Here an overview of the current (English) keyboard commands:

CTRL-a Insert line before current line
CTRL-b Block commands:
- b mark beginning of block
- c copy block to cursor position
- d delete block
- e end of rectangular block (good for moving comments)
- f filter the block (e.g. pass the block through SORT)
- i indent block (left or right)
- m move block to cursor position
- n end of normal block (with line wrap)
- p copy contents of paste-buffer to cursor position
- r read block from file and insert at cursor position
- t cuT block (means: copy it to the paste-buffer)
- u unmark block
- w write block to file
CTRL-c abort repeat function or macro execution,
insert control code in text or command
CTRL-e Edit commands: (perhaps not the right menu, open
for suggestions)
- l load file in current window
- r rename file
- s save file contained in current window
CTRL-f Find / Replace
- a Again (repeat last find or replace)
- f find
- r replace
Short description of find/replace options:
number: Find th element / replace
a: (replace only) replace all occurrences
b: search from the beginning of the text
e: search from textend upwards ('r' implicit)
g: (replace only) global (don't ask for replace)
i: ignore upper-/lowercase
r: reverse (search backwards)
u: (replace only) underline replace expression
if and only if the first character of the
found search expression is underlined.
(without 'u' underlining is done according to
the current underline mode, see CTRL-u)
w: find/replace words only
CTRL-g Goto commands:
- b goto beginning of marked block
- e goto end of marked block
- g goto marker
- l last position (stored before CTRL-g, jump to beginning
or end of file, searching, replacing)
- n goto line number
- s set marker
CTRL-j Join (append following line to the current one)
CTRL-k (from the German korrigieren (correct)) insert the
line deleted last (with CTRL-y) before the current line
CTRL-l Refresh (VI-like)
CTRL-n Repeat find/replace (same as CTRL-f-a)
CTRL-o (VI-like open line) insert line after current line
CTRL-q Delete to end-of-line
CTRL-r repeat a command sequence n times
CTRL-s Set/unset flags
- a autoindent
- b blockhighlighting
- c tabcompression (blanks may be converted to tabs when
saving the file, this is the default)
- s shell mode (when pressing RETURN, the part of the
current line up to the cursor position is passed to
the shell, the result of the executed command is
inserted in the text and marked as a block)
- t define tablength (how far the TAB key ought to jump,
not what number of spaces is converted to a tab in
the text's file representation)
- . create .bak-files when overwriting an existing file
CTRL-t Delete word right to the cursor (Borland-like)
CTRL-u toggle underline mode (underlined characters are
represented by _^H where is the underlined
CTRL-v Macro definition/execution
CTRL-w Window functions
- c close current window
- d switch direct to another window by supplying the
name of the file contained in the window
- i switch to window by index (number of the window
displayed in the lower left corner of each window)
- m move window on the screen
- n switch to next window
- o open new window
- p switch to previous window. This operation is symmetric,
i.e. applied twice, you get to the window where you
were before.
- s change size of current window
- t toggle window size (two sizes exist, both of which
are initially set to full size)
CTRL-x Exit commands
- n exit without saving and without executing the load file
(the load file is a batch file, which can optionally
be executed when quitting the editor, e.g. it may
contain the call to MAKE)
- s exit with saving all modified files, but without
executing the load file
- N exit without saving, but with loadfile execution.
The default name for the load file is load.bat in
the current directory, but it can be modified using
the environment variable EHPINIT.
- S exit with saving all modified files and executing the
load file.
CTRL-y delete the current line (can be undone using CTRL-k)
arr_left move cursor left one character
arr_right move cursor right one character
arr_up move cursor up one character
arr_down move cursor down one character
CTRL-arr_left move cursor left one word
CTRL-arr_right move cursor right one word
CTRL-arr_up move window content including cursor one line up
CTRL-arr_down move window content including cursor one line down
ALT-arr_left make current line appear in the middle of the window
ALT-arr_up make current line first line of window
ALT-arr_down make current line last line of window
HOME move cursor to beginning of current line
END move cursor to end of current line
CTRL-HOME move cursor to the first line of the window
CTRL-END move cursor to the last line of the window
PgUp one page up
PgDn one page down
CTRL-PgUp go to beginning of file
CTRL-PgDn go to end of file
ALT-PgUp go half a page up
ALT-PgDn go half a page down
DEL delete character on which the cursor stands
Backspace delete character left to the cursor. If cursor is in
first column, join current line with the upper line.
Ins Toggle insert/overwrite mode

The environment variable EHPINIT:
autoind turn autoindent mode on by default
nohelp turn off the helpline
noshowblock turn off blockhighlighting
nobak turn off creation of .bak files
deftab set tabsize to n
screen CxL switch to screen size CxL (C=columns, L=lines)
NOTE: be sure, your video card supports that mode
keys keyboard file is stored in
conffile config file storing information about the session,
like open files, window sizes and macros, is stored
in file . If not supplied, a file called config.sys
if opened in the current directory.
loadfile The loadfile (explained at CTRL-x) is named
If this option is omitted, the file is looked for
under the name load.cmd in the current directory.

Axel ([email protected])

 December 30, 2017  Add comments

Leave a Reply