Contents of the MACROS.DOC file
QMacros -- Miscellaneous Macro Files for QEdit
A collection of keyboard macro files for use with
QEdit, the Quick Editor, by SemWare.
Date: June 27, 1990
QEdit(R) and QMac are Copyright (C) 1985-1991 by
Applied Systems Technologies, Inc. (dba SemWare(R))
All Rights Reserved
QEdit and SemWare are registered trademarks of
Applied Systems Technologies, Inc.
QEdit has a very useful macro language built in. However, many
users are not aware of its capabilities and therefore do not take
advantage of it.
Included with this file are various macros that have been created
for use with QEdit for DOS v2.1, QEdit for OS/2 v1.5, and QEdit
TSR v1.1. Each provides some useful capability or automates some
task not already built-in to QEdit.
All are useful in and of themselves, but they are most useful as
examples of what is possible with QEdit's macro language. By
examining these macros, you can discover some of the things that
are possible, and use this knowledge to create better macros for
your own use.
In particular, see the CHANGE.QM and SCRATCHS.QM for examples of
the use of the new Jump, JTrue and JFalse commands that are new
to the latest versions of QEdit. These allow you to creat macros
that loop, or that modify their behavior based on what happens.
You will need a copy of QMac, version 2.1 or higher, for use with
these macros. This should be included with this file, look for
QMAC.EXE and QMAC.DOC.
The following macro files are provided:
MACROS.DOC this file
MACROS.QM a collection of miscellaneous short macros
BIGFIND.QM an external find/grep macro
CHANGE.QM an automated search/replace on up to 100 files
QASCII.QM an ASCII chart macro
QASCII.LST the ASCII chart itself
SCRATCHS.QM a macro to automatically load scratch buffers
SCRATCHS.LST a sample scratch buffer data file
For most of these files, you will need to use the QMac utility to
convert them to a "binary" macro file before you can use them
with QEdit. You should read QMAC.DOC for details, but here are
some quick instructions. For example, to make use of the Ascii
Chart macro, you need to convert QASCII.QM to a loadable macro
Issue the following command at the DOS prompt:
QMAC QASCII.MAC QASCII.QM /B /A-
QMac will build QASCII.MAC from the information in QASCII.QM.
Now, from inside QEdit, you can issue the command MacroRead
, and specify QASCII.MAC, to load the macro into QEdit
For convenient use of macros of this type, QEdit version 2.08 or
higher (and QEdit for OS/2, and QEdit TSR), has two command line
switches. The /L switch will load a macro file into QEdit on
startup, so the macros will be ready for your use as soon as you
enter the editor. For example, if you type at the DOS prompt:
Q myfile.txt /Lmymacros.mac
then the macros in the file MYMACROS.MAC will be loaded into
QEdit along with the text file MYFILE.TXT.
The /E switch will EXECUTE the first macro in the named
file, and then discard it. Both /L and /E require a binary macro
file name immediately after the switch and you can use a
different or the same file name on both switches, if you combine
You may wish to supply a full drive and directory specification
for your macro files when using /L and /E, so that QEdit can find
This file contains a variety of short macros that were submitted
by users. These are all short enough so they can be put in your
keyboard definition file, or used separately via QMac.
Some of the macros in this file include column copying and
deleting commands, automatic loading of help or macro files, and
a way to reload the current file from disk to get a fresh copy.
See the comments inside MACROS.QM for further details.
This macro interfaces one of several external file searching
programs with QEdit. With it, you can do "regular expression"
searching, even though QEdit does not have this capability built
The macro behaves differently than QEdit's own search and
replace, because of the nature of external searching utilities.
It must invoke the external program to do all the searching, then
present the final results to you.
The macro is structured so that a screen filled with the found
text appears at the end of the search. You move the cursor to
the line you would like to the cursor to be positioned on, and
press Return. QEdit will take you to that position in your
Three separate macros are present in this file. You should choose
the one that matches the external find utility that you plan to
use. The first one uses the FIND command that comes with MS-DOS
and PC-DOS. The second one uses a free program called FGREP that
can be found on many BBS's. The third one can be used with most
popular GREP utilities, including the ones that Borland and
Microsoft supply with their language products.
Chose the macro that matches your search utility, convert it to a
binary macro, and load it into QEdit. See the comments inside
BIGFIND.QM for further details.
This macro allows you to do a global search and replace on any
number of files, all from the QEdit command line (or from
inside QEdit). It is a good example of how auto-execute macros
can be used to make QEdit automate various tasks.
Normally, you invoke this macro from the DOS command line, by
calling up QEdit as follows:
Q first.fil second.fil third.fil /Echange.mac
The macro will pause and prompt you for a search and replace
operation, just as it would in QEdit. Answer the prompts
normally, or press to abort the process.
When the prompts are completed, the macro will proceed to execute
that search and replace globally across all the files you loaded
via the command line. When the last file is saved to disk, the
editor will exit back to DOS, or to the EditFile prompt
(depending on how you have it configured).
Thus, through this macro you can use QEdit as a command line
utility to do search and replace operations on hundreds of files
at a time! Be careful, though: since the replace operation does
not pause at each replacement, you could potentially change many,
many files in one operation with this macro. Be sure you are
using the right set of files!
These macros implement a "built in" ASCII table for QEdit.
It allows you to place the cursor on a key to be looked up, press
one key, and have the Decimal, Hexadecimal, Binary, and English
representation of that character appear. The format of the ASCII
chart is completely up to the user, but a sample file is supplied
You will probably need to edit the macros in QASCII.QM to include
the full drive, directory and name of your QASCII.LST file, so
the macros will work equally well from any directory. As is, the
macros assume that QASCII.LST is always present in the current
The QASCII.LST file is free-form, with one ASCII character
represented per line. The only restriction is that each
character appear between parentheses in QASCII.LST, only once.
The Control-F4 macro requires that the ASCII character itself
appear in Column 24 of each line, and that the first ASCII
character appears on line 6 of the file. If you change the
format of the ASCII chart, you will have to edit the third macro
appropriately, particularly the GotoLine and GotoColumn commands.
The rest of each line in QASCII.LST can contain numeric or other
descriptions of that ASCII character, subject to your whim. The
sample QASCII.LST displays the character in Decimal, Hexadecimal,
Binary, and by Name.
Due to restrictions on ASCII text files, and the way QEdit reads
them, the Carriage Return, Line feed and Tab characters cannot
appear "literally" in the QASCII.LST file. The sample file has
these characters translated to 00h, but their descriptions are
left in for completeness.
There are three macros supplied. The first one will "look up"
the character under the cursor, bringing the ASCII chart up on
the screen as a window below the current one.
The second one also looks up the current character, but it
displays the results in a box near the cursor line. Press
or to continue editing.
The third macro opens the ASCII chart and places the cursor in
it. The user can then scroll to a desired ASCII character, and
then press . The ASCII character on the cursor line will
be inserted in your original file for you. This is intended as
an easier way to find and insert certain characters that are
difficult to type.
Try all three macros out to see which one(s) you like best. See
the comments inside QASCII.QM for further information.
This macro is an auto-execute macro for use with the /E
switch in QEdit. Its purpose is to prepare a set of named
Scratch Buffers by loading them with pre-set text from a file.
Scratch Buffers are very handy for storing often used text,
but unfortunately they are lost when you exit QEdit. Using
this macro, you can have a permanent copy of your scratch
buffers kept in an editable disk file, and have them loaded
into the appropriate spots every time QEdit loads.
This could be very handy with QEdit TSR. By executing this macro
when you load QEdit TSR, the loaded scratch buffers would be
available for use in the editor until you turn your computer off
or purge QEdit TSR from memory.
This macro loads your scratch buffers from a file called
SCRATCHS.LST. You chould edit the macro in SCRATCHS.QM before
translating it with QMac, to include the full drive and directory
of your SCRATCHS.LST file. As is, the macro assumes that this
file is always present in the current directory.
This is automated through use of the /E command line switch of
QEdit. You can invoke QEdit as follows:
Q myfile.txt /Escratchs.mac
and the SCRATCHS macro will automatically execute, preparing your
scratch buffers for use in editing.
If you invoke QEdit via a batch file, you can arrange for the /E
parameter to be supplied every time without having to type it,
saving some trouble. Or, you can use utilities like CED, PCED,
4DOS or ANARKEY to supply the /E parameter for you automatically.
See inside SCRATCHS.QM for details on its use.
SCRATCHS.LST is a sample data file for use with this macro, edit
this to include your scratch buffer text.
Several of these files were originally submitted by users on
SemWare's BBS. Thanks to the users who contributed, and others
for their input.
If you have any questions or suggestions, please contact:
4343 Shallowford Road
Marietta, GA 30062-5022
Voice Phone: (404) 641-9002 9 a.m to 5 p.m. E.T., Mon-Fri.
BBS Phone: (404) 641-8968, 1200/2400/9600 HST bps, .
24 hours, 7 days per week
FAX: (404) 640-6213, 24 hours, 7 days per week.
Version 1.00 -- Nov-1989
Version 2.10 -- Feb-1990
CHANGES.QM and SCRATCHS.QM modified to take advantage
of new Jump commands in QEdit.
* * * end * * *