home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware 1 2 the Maxx
/
sw_1.zip
/
sw_1
/
OS2
/
MSQ2_1P.ZIP
/
MSGEDSQ.DOC
< prev
next >
Wrap
Text File
|
1992-05-11
|
90KB
|
2,078 lines
Msgedsq 2.1
FTSC + Squish Compatible Message Editor
Copyright (c) 1991-92, John Dennis;
All Rights Reserved.
Written by Jim Nutt, mods by John Dennis
MsgAPI Copyright (c) 1991, Scott Dudley
C o n t e n t s
───────────────────────────────────────────────────────────────
Notes Concerning Copyright . . . . . . . . . . . . . . . . . 1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
Document Conventions . . . . . . . . . . . . . . . . . . 2
Memory Considerations . . . . . . . . . . . . . . . . . 2
Share Support . . . . . . . . . . . . . . . . . . . . . 3
Configuration Options . . . . . . . . . . . . . . . . . . . . 3
Installation . . . . . . . . . . . . . . . . . . . . . . 3
Command Line . . . . . . . . . . . . . . . . . . . . . . 3
Configuration File . . . . . . . . . . . . . . . . . . . 3
Name . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Address <address> . . . . . . . . . . . . . . . . . . . 4
Alias <alias,name,<[address]|[UUCP]>,subject[,]]> . . . 4
Help Files . . . . . . . . . . . . . . . . . . . . . . . 4
Outfile <filename> . . . . . . . . . . . . . . . . . . . 4
Include <filename> . . . . . . . . . . . . . . . . . . . 5
Lastread <filename> . . . . . . . . . . . . . . . . . . 5
Echotoss <filename> . . . . . . . . . . . . . . . . . . 5
Primary and Secondary Userlist . . . . . . . . . . . . . 5
Nodepath <path to nodelists> . . . . . . . . . . . . . . 5
Nodelist <domain name> <base name> <sysop file name> . . 5
AreaFile <s[quish]|a[area]> [[path][filename]] . . . . . 6
Useroffset <offset into sql file> . . . . . . . . . . . 6
QQuotes . . . . . . . . . . . . . . . . . . . . . . . . 6
SqlLast . . . . . . . . . . . . . . . . . . . . . . . . 7
Video <type> . . . . . . . . . . . . . . . . . . . . . . 7
Colors <type> <foreground>[+]/<background>[+] . . . . . 7
Monochrome Monitors . . . . . . . . . . . . . . . . . . 8
Attribution <attribution line> . . . . . . . . . . . . . 8
Reply Functions Config . . . . . . . . . . . . . . . . . 9
AlterFunc <function> <action(s)> . . . . . . . . . . . . 9
Switches . . . . . . . . . . . . . . . . . . . . . . . 10
Quote <quote string> . . . . . . . . . . . . . . . . . 11
Margins . . . . . . . . . . . . . . . . . . . . . . . 11
Area Definitions . . . . . . . . . . . . . . . . . . . 12
Mail . . . . . . . . . . . . . . . . . 12
Echo . . . . . . . . . . . . . . . . . 12
Uucp . . . . . . . . . . . . . . . . . 12
News . . . . . . . . . . . . . . . . . 12
Origin <origin line> . . . . . . . . . . . . . . . . 13
Uucp <address> . . . . . . . . . . . . . . . . . . . . 14
Domain <address> . . . . . . . . . . . . . . . . . . . 14
Gate <gate type> . . . . . . . . . . . . . . . . . . . 14
Editkey and Readkey . . . . . . . . . . . . . . . . . 14
Function . . . . . . . . . . . . . . . . . . . . . . . 14
Using Msgedsq . . . . . . . . . . . . . . . . . . . . . . . 15
Screen Format . . . . . . . . . . . . . . . . . . . . 15
Basic Usage (Or: a small primer) . . . . . . . . . . . . . 15
Quotes & Text Formatting . . . . . . . . . . . . . . . 16
Network Addressing (And Gates) . . . . . . . . . . . . . . 17
Network Gating . . . . . . . . . . . . . . . . . . . . 18
Zone Gating . . . . . . . . . . . . . . . . . . . 18
Domain Gating . . . . . . . . . . . . . . . . . . 18
Host Routing . . . . . . . . . . . . . . . . . . 19
Carbon Copies . . . . . . . . . . . . . . . . . . . . . . . 19
Cross Posting . . . . . . . . . . . . . . . . . . . . . . . 20
Internet and Msgedsq . . . . . . . . . . . . . . . . . . . 21
Msgedsq and Points . . . . . . . . . . . . . . . . . . . . 21
Default Reader Key Definitions . . . . . . . . . . . . . . 22
Edit Mode Key Definitions . . . . . . . . . . . . . . . . . 24
Redefining the Keyboard . . . . . . . . . . . . . . . . . . 25
Function Key Macros . . . . . . . . . . . . . . . . . 25
Caveats . . . . . . . . . . . . . . . . . . . . . . . 25
Contacting the Author . . . . . . . . . . . . . . . . . . . 26
Hints/Panic Questions Etc. . . . . . . . . . . . . . . . . 26
Hints . . . . . . . . . . . . . . . . . . . . . . . . 28
Appendix A: Key Function Names . . . . . . . . . . . . . . 29
ReadKey Commands . . . . . . . . . . . . . . . . . . . 29
EditKey Commands . . . . . . . . . . . . . . . . . . . 29
Msgedsq 2.1 Documentation Page 3
┌─────────────────────────────────────┐
│▒▒ Notes Concerning Copyright ▒▒│
└─────────────────────────────────────┘
As this is a *free* editor, support is not feasible, nor will any
be given. Use this program at your own risk; the author(s) will
be held responsible for any damage that *may* have been caused
directly, or indirectly, from the use of this program. It is not
even guaranteed to occupy space on your HD - you assume all
responsibility for any damages consequential, inconsequential or
unrelated when you decide to run this program.
Having said that, see the end of this document for what support I
will attempt to give.
This program is *free* for all use. If you wish to distribute it
to other people, NO fee may be charged. The exception to this is
delivery costs (mail, cost of diskettes etc.), and the access fee
some BBS's charge. Distributed copies may differ only in the
archiver used; you MUST include all the files that came with the
original archive. You can do what you like with the copy you
intend to use.
This used to be a "Public Domain" editor; but because parts of
the executable are Copyrighted (c) by other parties, this is NOT
possible anymore. It is free, and I intend it to stay that way.
(Plus this stops someone taking selling it for profit - unlikely,
but you never know).
If you have any problems or queries regarding this, you can
contact me (John Dennis) using the e-mail addresses below. Please
note that Jim Nutt does not have anything to do with this
version, so please don't bother him with my bugs :-) Also, see
section on contacting the author (me).
John Dennis
FidoNet: 3:690/613.6@fidonet
IntlNet: john@miyu.dialix.oz.au
Any Trademarks are Copyright (c) of their respective owners.
Thanks must go to Jim Nutt who put the Msged 2.00 src and
documentation in the public domain... Without him, this program
would be nothing. Thanks also to all those people who release
freeware software...
I would also like to thank Scott Dudley, the guy who designed &
built the squish format, *and* he released the src of the MsgAPI,
making it real easy to add Squish support.
And thanks to all those people who've taken the time to find bugs
and tell me about them, putting up with the large net delay and
the even larger (:-) release delay. I would like to release
versions more frequently; but the simple fact is that i'm still a
beginner as a programmer - i'm sure everyone would prefer to have
non-buggy versions less often.
Msgedsq 2.1 Documentation Page 1
┌────────────────────────┐
│▒▒ Introduction ▒▒│
└────────────────────────┘
Msgedsq is a message editor for Fidonet (and compatible)
network(s). It is derived from Msged, a program written by Jim
Nutt, and was subsequently modified until it reached the state
you see it in now. It is MEANT to operate in the same way --
plus or minus a few new features as Msged 2.07 (A later version
of the same program, by Jim Nutt). The biggest feature of this
program is the support for the new msgbase format, used by
Maximus CBCS, and otherwise know as Squish <tm>. Other features
are functions found in commercial or shareware editors which I
liked & wanted (but didn't wish to pay for).
The features of Msgedsq (briefly) are:
- Small & fast.
- Supports the popular Fido (*.msg) and Squish Msg
formats.
- Message sizes limited only by memory.
- Support for UUCP and NEWS RFC-822 gated messages.
- Handles Zone Gating, Host Routing and Domain Gating
automatically (no user intervention).
- Has configurable reply/quote functions, as well as
configurable information strings.
- Supports sharing conventions for all msgbase types.
- OS/2 16bit version (exactly the same).
- Completely redefinable keyboard.
- Supports multiple usernames
- Has aliases for quick header entry.
- Multi-network support across the board (echomail,
netmail...).
- Version 7 Nodelist support.
+ More...
Document Conventions
Some conventions will be observed in this document; keypress
instructions will look like this: <alt><s>, which instructs you
to hold down the key labelled Alt and press the letter S. Fido
refers to the *.msg msgbase type and Squish refers to the Squish
msgbase type. <address> refers to an address, up to 5D. "..."
(ellipsis) means you can have as many of that option as you like.
Memory Considerations
Msgedsq needs about 180k to run, but it will use all available
memory when reading/editing messages. Therefore, if you are
planning to read/write very large messages, you should have a
corresponding amount of free RAM. I suggest about 220k; you'll
never run out of memory in Fidonet areas, but if you are reading
64k messages, add another 70k to that figure.
Msgedsq 2.1 Documentation Page 2
Share Support
Full sharing of both Fido and Squish msgbases are supported for
DOS 3.3 and above. Naturally, Share.exe must be loaded to make
this effective and this is STRONGLY recommended when running
under a multi-tasker (of any description). Sooner or later nasty
things will happen to your msgbases if you don't. What the
heck - share only takes up 7k or thereabouts...
┌──────────────────────────────────┐
│▒▒ Configuration Options ▒▒│
└──────────────────────────────────┘
Installation
Installing Msgedsq shouldn't be too hard; simply use the
provided config file and edit it to your heart's content. The
squish.cfg file that comes with the SquishMail processor can be
used for area definitions, as well as the areas.bbs file (used by
practically everything on earth). Hopefully when everything is
configured you'll simply type "msged" at the DOS command line.
Command Line
Msgedsq takes two parameters on the command line: the first is
the name of the config file, and the second is the areas.bbs or
squish.cfg file. You cannot have the second without the first;
see the later section on the "areafile" config line. If you wish
to have different people using the same program, it's easiest to
path msged.exe with the config file in the current directory
(msged loads it from the current dir by default). This would be
easier than editing the executable file.
┌ Command Line Syntax ─────────────────┐
│ msged [<config file> [areafile]] │
└──────────────────────────────────────┘
Configuration File
The config file is processed from top to bottom; the placement
of verbs in the provided file generally have a purpose. The
moral is: don't move things round unless you know what you're
doing :-)
Name <username> ...
───────────────────
This is fairly obvious; put your full name here. The first name
specified will be the default name. You can define more if you
like (ten maximum), and you can change to these during execution:
the <ctrl><u> function brings up a pick list for you to choose.
Msgedsq 2.1 Documentation Page 3
Address <address> ...
────────────────────────────────────────────
Your network address(es), up to 5D. You can define as many as
you like & can choose between them during execution (<ctrl><w>).
Alias <alias,name,<[address]|[UUCP]>,subject[,]]> ...
───────────────────────────────────────────────────────────
Aliases are used to simplify the entry of names, addresses and
subjects, rather like macros useable in Carbon Copies and normal
msg header entry. This way, you simply type in the alias, press
enter, and the rest is filled in for you. Internet addressing is
supported as well (see config file for example).
Help Files
──────────
These are names of external files containing help (or whatever
you put in them), that will be called to the screen when pressing
<alt><h>. Some example files are provided. "rhelp" will be read
when in reader mode (Ie: not editing a message). "ehelp" will be
read when editing a message. If the text in the file is greater
than your page length, it will page down at every keypress, the
<q> key will cause it to quit and return to the reader/editor.
Outfile <filename>
──────────────────
Msgedsq handles exports in a variety of ways when you press
<alt><w>. You can send the text to any character device,
including files, printers and comports; you just specify the name
(However, beware of critical errors: they will mess up the screen
format). You can overwrite or append to an existing file, with
or without added carriage returns, with message header or
headless unformatted text, an attribution line header and each
line quoted or straight from the message. All this is done from
the reader, exports from within the editor are always straight
text (and must have been cut from the message using the cut key).
Outfile is the default filename for export (you can change this
when you press <alt><w> during execution).
Putting a "+" in front of the filename will cause the text to be
appended to the file. Otherwise the file will be overwritten.
Putting a "?" in front of the filename indicates you want to be
asked whether to append or not, and how to write out the file.
Some menus will appear and you choose the action you want.
If you append a ",t" to the end of the filename, the message will
be exported in plain ASCII form with the message header. Carriage
returns and linefeeds will be added to the end of each line. If
you append a ",q" to the end of the filename, the text will be
exported in quote format. This means that an attribution line
Msgedsq 2.1 Documentation Page 4
will be added to the beginning of the message and each line will
be preceded by the quote string.
Include <filename>
──────────────────
This will include the filename and parse it as a configuration
file. The statement can be placed anywhere within the msged.cfg
config file.
Lastread <filename>
───────────────────
Msgedsq creates a file to keep track of the last read message in
Fido (Only! Squish areas have their own lastread file name which
is not alterable), areas. This lets you specify the name of that
file. Often handy if you have two sysops and don't want to stuff
up each others' lastreads.
Echotoss <filename>
───────────────────
This file is appended to every time you exit from Msgedsq; it
contains a list of the *echomail* areas you entered messages in;
one per line. Echomail processors use this information to speed
up the scanning out of echomail.
Primary and Secondary Userlist
──────────────────────────────
This is the name of the userlist(s) used for looking up the
addresses of names you enter in the message header. This file is
normally created by your nodelist compiler, but it can be created
by anything. Each line must be EXACTLY THE SAME LENGTH and
sorted. The names should be left justified, with the addresses
beginning after column 40. Both are optional, with the first one
being checked first, then the second one will checked if the name
is not found in the first list.
Nodepath <path to nodelists>
────────────────────────────
Put the path to the version 7 nodelists here. If you have more
than one, they should all be in the same directory.
Nodelist <domain name> <base name> <sysop file name> ...
────────────────────────────────────────────────────────
Any version 7 nodelists are entered here. The domain name is the
name of the domain (used only when picking which nodelist to use
for lookup), the base name is the name minus the extension (ie.
nodex), and the sysop file name is the name of the sysop lookup
Msgedsq 2.1 Documentation Page 5
file. Msgedsq will only use one file for lookup, and by default
this is the first nodelist in the config file. You really only
have to bother with more than one if the zones in one domain
interfere with the zones in the other(s) - otherwise you simply
put all the domains in one nodelist.
AreaFile <s[quish]|a[area]> [[path][filename]]
──────────────────────────────────────────────
You can tell Msgedsq to look for area information (Echomail and
Netmail) in other files besides the configuration file. Because
the config file is parsed from top to bottom, the positioning if
this line determines where the areas (defined in these files),
will appear in the pick list. If you specify a name, it will use
it or search for the default names (AFTER it has processed the
rest of the file). The default file names are: squish.cfg or
areas.bbs, depending on what type you chose. Please note that
you can only read one type of file. See "Area Definitions"
section for more hints on usage.
Msgedsq will obtain all area addressing information from the
squish.cfg and areas.bbs file ("-p<node>" in both files), and
will assume this address when you enter the areas. Passthru
areas will NOT be read into the picklist - they are ignored.
If you wish to use the command line, you mustn't specify a
filename on this line, because it will use this name over the
command line (this is ok, because it will also search for the
default names if one has not been specified). You can get round
this by using other config files or not specifying a name.
Whichever you prefer.
Useroffset <offset into sql file>
─────────────────────────────────
This applies only to squish areas, and tells Msgedsq what record
(not byte! each record is 4 bytes), to use in the squish lastread
files. Please remember this is zero based, ie: the first record
is zero (and this is usually the sysop record on most systems).
QQuotes
───────
As default, this is commented out, giving an operation much the
same as Maximus v2.0, that is: when quoting, quotes will not have
the quote prefix added to the line (text will, tho). With this
enabled, Msgedsq will attempt to find the first ">" and place
another ">" behind it on lines already quoted.
┌ Example ─────────────┐
│ " CV>> what?" │
└──────────────────────┘
Msgedsq 2.1 Documentation Page 6
SqlLast
───────
Msgedsq operates the same Maximus with this line *commented out*.
It will save the message you are currently reading, so when you
return to that area, you will go to that message. With this line
*uncommented*, the highest numbered message read will be saved,
so you can miss messages when re-entering an area if you had
<crtl><rght arrow>'ed before, but had not read as far when you
went back to the downlink and continued reading.
Video <type>
────────────
You can use either bios or direct screen writes to control your
screen. Bios is naturally very slow, so use direct if at all
possible (which it will be, unless you have a non-standard PC, or
a weird card). At startup it will obtain the screen dimensions
from the bios, and will use those dimensions. Therefore you can
use whatever weird dimensions you like (100x60, 80x43 etc). The
OS/2 version ignores these settings, but still gets the current
mode of the screen.
Colors <type> <foreground>[+]/<background>[+]
─────────────────────────────────────────────
The first word after "color" is the name of the color used in
certain specifications. The first word after that is the
foreground colour, and the background colour is separated by a
"/" character. If a "+" trails the colour then it is a high
intensity version of that colour.
Normal
This colour is used for text that you, or others have
typed. This will account for most of the text that you,
or others have typed.
Information
This colour displays information generated by Msgedsq,
usually information of some sort.
Warnings
This colour alerts you to potentially destructive
commands. It's also used for informational messages.
Quotes
This colour denotes quoted text. Msgedsq decides if
line is a quote by looking for a ">" character in the
first 6 characters. Please note that lines considered
as quotes are treated differently when wrapping lines
greater that the screen length or quote/right margin.
Blocks
This colour designates an anchor block, used when
editing messages, for cutting out text.
Msgedsq 2.1 Documentation Page 7
Highlighted Text
This colours is for items/lines that are highlighted.
(Ie: menus etc).
The available Colours are:
bla[ck], blu[e], gre[een], whi[te], red, cya[n], yel[low] and
mag[enta]
Monochrome Monitors
───────────────────
You'll have to play with this to get what you want. Remember
that monochrome monitors only have 4 colours (incl. reverse and
intense). Try this for starters:
┌───────────────────┐
│ Normal whi /bla │
│ Warn bla /whi │
│ Quote whi /bla │
│ Block bla /whi │
│ Info whi /bla │
│ Hilite Bla /whi │
└───────────────────┘
Attribution <attribution line>
──────────────────────────────
An attribution line is a line containing information about the
message being quoted (the header details). This line is inserted
at the beginning of the quoted message. You can insert your own
text in this line and control the placement of information (or
lack of it) in the line via tokens. Tokens represent the point
where the information is inserted - they are preceded by the '%'
[percent sign]; the escape sequence signalling the existence of a
token.
The available tokens are:
┌─────┬───────────────────┬─────┬─────────────────────────────┐
│ %f │ origin name │ %a │ origin address │
│ %t │ destination name │ %g │ destination address │
│ %u │ user name │ %o │ user address (current area) │
│ %_ │ space │ %n │ time now (system formatted) │
│ %e │ current echo name │ %i │ first name (origin) │
│ %% │ '%' │ %wm │ weekday [message] │
│ %dm │ day [message]│ %ym │ year [message] │
│ %mm │ month [message]│ %hm │ hour+minutes [message] │
│ %wn │ weekday [now]│ %dn │ day [now] │
│ %yn │ year [now]│ %mn │ month [now] │
│ %hn │ hour+minutes [now]│ │ │
└─────┴───────────────────┴─────┴─────────────────────────────┘
Msgedsq 2.1 Documentation Page 8
Reply Functions Config
──────────────────────
With this version of msgedsq, you can now change the strings
inserted into messages by some of the reply functions (this is
separate to the attribution line discussed above). These lines
of text are actually attribution lines and use the same tokens.
Each line corresponds to an action (of a function / procedure) in
the operation of msgedsq, so they're only inserted when you
invoke that function (please note that the actions by functions
can also be altered - see next config section). The lines
available are:
Forwardline <attribution line>
Inserted when forwarding and redirecting messages. This
is not really a reply function, but it's nice to be
able to alter the string. Note that this string also
applies to redirecting as well.
Followup <attribution line>
Inserted when doing a followup or reply/comment.
(Message is addressed to the TO: name).
ReplyArea <attribution line>
Inserted when replying to a message in another area.
ReplyExtra <attribution line>
Inserted when any function has the "Extra" attribute to
it. This is user definable for whatever reasons/text
you want.
AlterFunc <function> <action(s)>
────────────────────────────────
You can change the actions of any of the 4 reply functions (tho
they're already set to the normal actions by default). Please
note that this binds to that function regardless of what the key
assignment is. The functions that can be used are:
<alt><q> or "ReplyQuote"
<alt><n> or "ReplyOtherArea"
<alt><u> or "ReplyFollow"
<alt><y> or "ReplyExtra"
The other functions <alt><e> and <alt><r> are not definable. The
config verb is "AlterFunc", followed by the function name (above,
in quotes), and then the actions you wish it to do. The actions
available are:
Q - quote msg and insert normal attribution line
A - ask for area & insert "ReplyArea" attribution
F - followup & insert "Followup" attribution (address to TO:)
E - insert "ReplyExtra" attribution
Note that with the attribution lines a blank line is allways
inserted between each one inserted.
Msgedsq 2.1 Documentation Page 9
Switches
────────
These items are available/switchable in the <alt><s> function in
the reader. They are things you may want to change during the
course of operation, without exiting Msgedsq. They all default
to ON. Items marked with a <*> are not to be fooled with unless
you know what you're doing (Ie: at your own risk; weird things
may happen). All Items are on by default -- you must put "no
<switch>" in the cfg file to turn it off. The switches are:
Msgids <*>
Msgids are used to identify the origin of a message,
and as such, are VERY useful for most editors. Msgedsq
uses this information when doing things like
forwarding, replying / quoting / following up. It is
*especially* useful in netmail areas. Therefore, do
not turn this off unless you are communicating with
some braindead/ancient utility or mailer.
Seen-Bys
With this uncommented, Msgedsq will not display seeby-
by information when reading/editing messages.
(Specifically, it will discard this information when
reading the message from disk).
Confirm
This will cause a confirmation message to be displayed
with certain operations (like aborting message entry,
deleting messages and so-on). With this line
uncommented, Msgedsq will NOT ask you any questions
when doing ANYTHING. (except editing an already-sent
message).
Showaddr
When operating in a multi-network environment, it is
often handy to know what address you are currently
using. With this line commented an address will appear
on the right-hand side of the line displaying the
current area.
Nettear
A tearline can be appended in netmail areas if this
line is commented in.
Savecc
In normal CC (Carbon Copy) operation, a duplicate of
the original message is saved for re-editing sending
(along with the normal messages that are sent out).
You can stop this by uncommenting this line.
Opusdate <*>
This will stop the date_written and date_arrived fields
being written to. This only applies to Fido areas.
Msgedsq 2.1 Documentation Page 10
Softcr <*>
This doesn't actually do anything at the moment, but if
you uncomment it, messages with passages of wrapped
text will lose spaces at the end of lines.
Tearline
This option causes tearlines (and origin lines) to be
appended to the end of echomail areas. If "nettear" is
also on, this will work in netmail areas.
Strip <*>
This is a dangerous option, and I think I should remove
it (but haven't got round to it). With this
uncommented, ^a kludges will NOT be stripped from
messages when *writing* them out. The effect is that
you will get duplicates of any info that Msgedsq
decides to write itself when you change a message.
Quote <quote string>
────────────────────
This should be a sequence of characters that you would like to
the place at the beginning of each quoted line of text. There are
some tokens that are replaced with initials:
& - Replaced with all initials in quoted name.
_ - Signifies a space.
^ - Signifies first initial.
* - Signifies second initial.
Please be minimal in what you use - no point in wasting
bandwidth. See section on quoting for more info.
Margins
───────
These margins are used when editing and reading messages. If you
change the screen size while in a DOS shell, be aware that only
the new length of the screen will be used. The margins will stay
the same.
Right <right margin>
The right margin will be used for normal text (anything
non-quoted), when reading and editing messages. It's
probably best to use a value close to the width of your
chosen video mode.
Quoteright <margin to quote to>
This margin is used when quoting messages. ALL text in
the quoted message will be wrapped to this margin. Use
a value about 3/4 of the right margin, so other editors
can quote your message without disturbing your quotes.
Tabsize <tabsize>
This is ONLY for use when you press the <tab> key; the
tab will be expanded into the number of spaces you
Msgedsq 2.1 Documentation Page 11
specify here. Tab characters in other messages are not
expanded.
Area Definitions
────────────────
Even though you can use a squish config file or an areas.bbs file
for area definition, you will undoubtedly wish to define other
areas not in those files. Duplicate areas are detected only when
the path is the same, and if this is the case, the flags of the
later will be added to the former. The syntax is:
<basetype> <msgtype> [flags] <desc> <path> [tag] [addr]
┌─ For Example ─────────────────────────────────────────────────┐
│ squish echo "Region 55 Chat" d:\r55_chat r55_chat 3:690/626│
│ fido mail pk "Netmail" d:\net │
└───────────────────────────────────────────────────────────────┘
The <basetype> can be either "fido" or "squish", depending
on what msgbase type it is. If it is squish, then "path"
must be the full base name (The path + name minus the
extension). The "msgtype" can be one of the following:
Mail
Used for netmail areas. Addresses will be
displayed for both origin and destination, and
asked for in message header entry. The userlist
file(s) will be also used to look up addresses.
You can also use this for uucp mail, as this is
where it is usually sent from (you can use a
separate type for this, but it's often easier this
way). Note that the crosspost function will not
work to this areas of this type. A tag is not
necessary.
Echo
Can be used for echomail and news groups.
Crossposting can be done between such areas. Tags
ARE necessary, and if not defined, can cause weird
results.
Uucp
These are much the same as netmail areas, except
the normal method of displaying the address and
name has changed. You will see the internet
address and then the name it's addressed to in
brackets. Such areas rely on the text "From: "
and "To: " being placed in the message somewhere.
All messages are addressed to the uucp gate you
specified, you then scan these msgs out as a
netmail area (using your favourite mail
processor). Tearlines are not appended.
News
Similar to UUCP ares except that the messages are
not addressed to the uucp-gate. Usually you treat
Msgedsq 2.1 Documentation Page 12
this kind of area as and echomail area with your
mail processor. The advantage being you get a msg
header style better suited to internet/news msgs.
Tearlines are not appended.
[flags] is optional and defines the bits to be set
automatically when creating a message in that area. You can
turn these bits off and others on when you edit the msg
header, if you so wish. The bits you can actually set are:
┌ Flags ────────────┐
│ p - priv │
│ h - hold │
│ c - crash │
│ k - kill/sent │
│ d - direct │
└───────────────────┘
<desc> is the description of the area, enclosed by quotes,
so you can have embedded spaces. The description will
appear when you use the <alt><a> function (default), with
the pick list that appears.
The location of the msgbase is defined by <path>, which is a
full path, including drives. If the area is of squish type,
the path must include the base name of the area, for
example:
┌─ For Example ─────────────────────────────────────────────┐
│ d:\msg\c_echo ; squish area, resides in \msg dir │
│ d:\msg\c_echo ; fido area, resides in \msg\c_echo dir│
└───────────────────────────────────────────────────────────┘
[tag] is necessary for echomail areas; it is used in quite a
few functions, including the creation of the echomail
tosslog. The tag of an area will be the name of the area,
as used by your favourite echomail processor.
[addr] is the 5D address to use for this area; this address
will be used for origin lines, ^aMSGIDs and anything that
requires an address. It does not have to be one of your
aka's, although it is probably wise to do so (so you can
change the area back, if you decide to change the address of
the area). The address is only used in echomail and netmail
areas; if the area is echomail, the address must follow the
tag, if netmail, there must be NO tag.
Origin <origin line>
─────────────────────
Your origin line is a line of text appended to the end of
messages (if you have this feature turned on), that identifies
your system. Remember that the address and the " * Origin:" text
have to fit on the same line, so keep it short and sweet. The
entire origin line should NOT add up to more than 80 characters.
Msgedsq 2.1 Documentation Page 13
Uucp <address>
──────────────
A uucp gate is where uucp (email) messages are sent, to be gated
into the Internet. This is the 4D address of the gate. It
should be in the same domain as you (you can try otherwise, but
no guarantees). See section on Internet usage.
Domain <address>
────────────────
A domain gate is similar to a uucp gate, except the gate is with
a network using a fidonet technology network. (They usually use
the same software). Messages sent with the destination domain
equal to the domain on one of these domain gates will be sent to
corresponding address, with a ^aDOMAIN kludge inserted into the
message. See section on netmail usage. You MUST specify the
domain.
Gate <gate type>
────────────────
This is the bit that confuses many people (including me :-).
There are a number of ways to gate messages: domains are as above
but gating zones is a different kettle of fish. When fidonet
wasn't so big, zone information was hard to get, and mail to a
different zone had to be achieved by zone gating. The mail is
addressed to the zone gate, and a ^aINTL kludge is inserted
(which specifies the address you want to send the message and
your address). The zone gate system would then send the mail to
the other zone, and readdress it to the original address.
Msgedsq handles all this automatically for you so you don't have
to worry about it; you just enable it.
Editkey and Readkey
───────────────────
These will be discussed in the section about redefining the
keyboard.
Function
────────
This will be discussed in the same section as above.
Msgedsq 2.1 Documentation Page 14
┌───────────────────────┐
│▒▒ Using Msgedsq ▒▒│
└───────────────────────┘
Msgedsq (and msged) operate in their own peculiar way, a way
rather different to other editors (as you may have noticed). The
keyword here is `speed' - msgedsq is meant be small, fast, highly
configurable and quick to operate. Unfortunately, as the
features pile on, the size increases, and consequently the speed
decreases. We have done our best to compromise.
The editor operates in two modes: Reader and Editor. The reader
is operative when you're browsing through your msgbase(s), editor
when editing messages -- both have a different set of functions
and key assignments. But first up, please note: when you fire up
Msgedsq, the first screen to appear is informational, showing
your current setup. It will remain until a key is pressed -- you
should pay attention and ensure it is correct.
Screen Format
The display is kept as simple as possible -- all information
needed is in the top six lines. For example:
┌────────────────────────────────────────────────────────────┐
1│ 001/003 Wed Apr 22 1992 22:33 │
2│ From: John Dennis of 3:690/626.4@fidonet │
3│ To: Count Zero of 99:999:999.9@cyberspace │
4│ Subj: Ok, I want a Job! │
5│ Attr: privileged │
6│ netmail ______________________________________ 3:690/626.4 │
│ Sorry, this is a case of no-can-do; you don't have enough │
│ experience for the job. Don't call me, I'll call you :-) │
└────────────────────────────────────────────────────────────┘
-Shortened to fit-
Going down from the top, explaining each line:
1 # of current message, total # msgs, date & any msg links
2 Origin of the message & address
3 Destination & address
4 Subject
5 Any attributes
6 Separator for header & text. Also has current area & address
Any links to other messages will appear after the date & time
with filled-in arrows pointing in their direction. Please note
that you can turn off the display of the current address - it's
only really necessary when you're running a multiple-network
setup.
Basic Usage (Or: a small primer)
Msgedsq is fairly easy to use in reader mode: simply use the
left and right arrows to move between messages. You add <ctrl>
to those keys when you wish to follow a reply thread/chain. The
Msgedsq 2.1 Documentation Page 15
<pgup>, <pgdn>, <up arrow> and <dn arrow> keys are used for
viewing the current message. When you are finished with an area,
<alt><a> will bring up the list of areas; and you can change to
any of these. Exit is achieved by pressing <esc> till you get
out.
When you exit an area (via <alt><a> or <esc>), the number of the
last message read is saved in the lastread file. This number is
used when to bring you back to that message when you re-enter the
area. So be careful that you exit on the message you want to (Or
else you may lose your position).
The list function - <alt><l> - is very handy for quickly browsing
through the messages in the current area. Messages addressed to
you are highlighted so you can quickly view them without reading
the whole message area. The config file comes configured so that
a press of the enter key will bring you back to the starting
message in the area (the first message read upon entering the
area). Combine these two, and you can read your messages
quickly, press enter so as to return to the starting message,
then go check another area without losing any of your unread
messages.
There are a number of keys used for entering messages, the most
commonly used ones being:
<alt><e> - A new message.
<alt><r> - Reply to the current message (but not quote).
<alt><q> - Reply to current msg and include it as a quote.
<alt><n> - ditto, but put reply in another area.
<alt><u> - Send comments to the addressee of the current
message, quoting current message.
<alt><y> - ditto but put msg in another area.
For the reference to the key definitions, see the section
"Default Reader Key definitions". Please note: if you have
quoted a message, msgedsq will automatically strip all text after
the last line of text when saving the message (text is not a
quote, and not a blank line [no text at all]). If want a blank
line before the tearline, you must ensure that line of text has a
carriage return at the end of it. This is not hard: simply press
return at the end of that line. If you want two blank lines
before the tearline, I suggest you make a macro that puts a space
after the last blank line.
Quotes & Text Formatting
Quotes can cause a lot of trouble for message editors. Normal
messages are supposed to be paragraphs of text terminated by a
hard carriage return (produced when pressing the enter key). The
purpose of this is to allow editors to wrap the text on the
display to any desired margin (this also includes quoting).
Unfortunately, many editors do not comply with this and terminate
all lines with a hard return, effectively making each line a
paragraph; causing no end of troubles when one tries to wrap the
text to a margin other than the length of the line.
Msgedsq 2.1 Documentation Page 16
Msgedsq attempts to get around this by reformatting the text as
it quotes it. It works most of the time, but sometimes goes bye-
bye to mars; in which case you may have to manually edit the
quote. To help with this, you are provided with special mode
that is active whenever you are editing a quote (the line will be
displayed in the quote color); it works the same as normal text,
except that words are wrapped after the quote prefix (obtained
from surrounding lines). You do not have to worry about creating
the quote prefix yourself in most circumstances. The only
exception is the <enter> key: it will split the line at the
current cursor position and create a new, unquoted line with the
remaining text from the previous line.
Please remember that the quoted lines are treated differently to
normal text; if Msgedsq considers the line a quote, it will copy
the quote prefix to any wrapped lines, sometimes causing a large
mess (if the line isn't a quote). This generally doesn't happen,
as a quote must follow certain rules to be considered one:
o There must be no '<' before the first '>'
o Punctuation characters, except '@' and ' ' and ':' are not
allowed.
o There can only be alphanumeric chars before the '>', subject
to the above exceptions.
o The first '>' must be within the first 11 characters of the
line.
It works most of the time, excepting the weird quote prefixes
some people use from time to time. Quote margins should be
around 65, as most editors use an 80 column display.
┌────────────────────────────────────────────┐
│▒▒ Network Addressing (And Gates) ▒▒│
└────────────────────────────────────────────┘
When reading messages in both netmail and echomail, the address
of the sender is displayed after his/her name. Msgedsq does it's
best to make sure this address is correct, but it's probable that
it will stuff up every now and again. Particularly on messages
from other zones (and networks) that don't have any ctrl-a
information. This isn't so common these days, and Msgedsq makes
sure it *always* puts in this information in it's own messages.
If you're running more than one network you can use the <ctrl><w>
function to choose the address you want to use. Msgedsq will use
this address when reading messages, so that any information not
present will come from *your* address. Commonly the zone is not
present, so your zone will be used. For example:
You're reading messages from zone 28 (another network) and
these messages don't have any ctrl-a info. Your current
address is 3:690/626.4 - all these other-zone messages will
have zone 3 instead of 28. (Because the zone info is not
present in the messages themselves). If you change your
address to your zone 28 aka, then all messages will have the
correct zone.
Msgedsq 2.1 Documentation Page 17
This tends to be a problem because zone/point/domain information
for messages is not transmitted in packets. The only solution is
to have ^a (or ctrl-a) kludges with this information. The common
ones are (and msgedsq uses these):
MSGID The origin of the message (up to 5D).
REPLY The origin of the message this is a reply to (5D)
INTL The destination and origin of the message (3D).
FMPT Point number of the origin.
TOPT Point number of the destination.
DOMAIN Destination domain and address and the origin domain
and address.
The whole idea is that msgedsq gets all the network information
from these klugdes, and fills it all in for you. It works *most*
of the time. When the information is incorrect you'll have to
address the message manually (you have to do this when entering a
new message anyway). Remember that what you see on the screen is
what msgedsq thinks the address is.
If you haven't noticed already, msgedsq WILL allow default
addresses for areas -- please look-up the section on area
definitions.
Network Gating
Msgedsq does three types of gating, zone, domain and internet.
Zone and Domain gating are used when addressing within fidonet
technology networks; internet gating is a bit different and
cannot be mixed with the other methods (see separate section
"Internet and Msgedsq"). Please note that if a message is marked
"crash" or "direct" it will NOT be gated.
Zone Gating
Zone gating is well known, and used to be practically the
only way to get messages into another zone. This is because
while a message is in transit only 2D addressing information
is retained in the message header (the net and node). So,
to get a message to another zone (without directly sending
it), you have to send it to a zone gate; a system specially
set up to handle such mail routing. Each zone has gates into
other zones already setup with predetermined addresses.
When you have the "gate" config verb set to "zones" or
"both" msgedsq will automatically send the message to the
correct gate. The message will contain a ctrl-a kludge
(^aINTL) which contains the 3D destination address of your
message. When the message is sent into the other zone it
will be readdressed to the original destination using this
information.
Domain Gating
What is it? Domain gating allows us to communicate with
other fidonet technology networks -- generally needed when
the "other" network uses the same zones as we do. Usually
you send the message to the gate system (the one that
transfers mail between the two domains), which then takes
Msgedsq 2.1 Documentation Page 18
your message and readdresses it within the other domain. To
do this we need a ^aDOMAIN kludge which contains the
destination domain's address (as well as your own address),
as well as your own.
To enable this ability, you must put the domain gates in
your config file: the 4D address of the domain gate, and
the name of the domain it represents. You must also have
the "gate" config verb set to either "both" or "domains".
With this done, msgedsq will gate any messages being written
to disk with a destination domain listed as one of the
gates. For this to occur, the destination domain must be
different to your own.
Host Routing
This seems to be the "modern" replacement of zone gating and
works on a similar principle. Instead of being routed to
the zone gate, the message is forwarded to the nearest gate
(which may be much closer - there are about 5-6 systems
between mine and the Oz-US zone gate; there are closer
systems which call the States). There doesn't seem to be
any documentation on how this works but from what I can
gather (don't take this as gospel :-), systems simply
"forward" the mail till it gets to the destination. It's
called "host routing" because the mail is passed on to each
system's upline host, or bossnode.
You can do this in msgedsq by putting "gate none" or "gate
domains" in the cfg file. In this case, Msgedsq will leave
the binary address as-is (but still insert the ^aINTL
kludge); there should be no problems.
┌────────────────────────┐
│▒▒ Carbon Copies ▒▒│
└────────────────────────┘
Carbon copies, or "CC:'s" as they're commonly known, are simply a
way of sending copies of the same message to a list of people. A
CC: will work in all area types, but the addressing side is only
useful in netmail/uucp areas. Their operation is simple: you
enter the list of names, with each line preceded by "cc:", enter
the text of the message and save it. Msgedsq will stop looking
for names on the first line NOT beginning with "cc:". The rest
is automated.
┌ Example ──────────────────────────┐
│ cc: joe bloe!3:1/1, fred smith │
│ cc: mike, jd │
└───────────────────────────────────┘
The '!' character delimits an address for the preceding name, if
this is specified the name will NOT be looked up. If an address
is not present, first the aliases will be checked, then the
current nodelist, then the usual fidouser.lst. Note that with
Msgedsq 2.1 Documentation Page 19
aliases, the alias is replaced with the name, as in the
following:
(using above; assuming message was addressed to John Dennis)
┌────────────────────────────────────────────────────┐
│ * Original to: John Dennis at 3:690/626.4 │
│ CC'd to: joe bloe, fred smith, mike mad, │
│ john@miyu.dialix.oz.au │
└────────────────────────────────────────────────────┘
As you will have noticed, the "cc:" lines are deleted and a copy
of the new message is sent to all those listed in the "cc:"
lines. If you have "no savecc" commented then you will also get
a copy of the original message, marked "sent" (which you can edit
and re-send). The other messages are marked kill/sent.
The text should begin straight after the last "cc:" line as a
blank line is inserted after the last line entered. If the names
will not fit on the first line (they extend past the right
margin) then it will they will be wrapped to the next line. This
short form is used because normal (read: the old msged way)
looked pretty terrible & took up lots of msg text real estate.
You can use UUCP addresses as both aliases and normal entry. If
you wish to enter a bangpath, you MUST precede it with a '@'
("at" sign), or it will be confused with a fidonet address (don't
worry, it will be stripped).
┌──────────────────────────┐
│▒▒ Cross Posting ▒▒│
└──────────────────────────┘
Cross posting is similar to Carbon Copies, except the message is
posted to the *same* addressee in multiple areas. It ONLY works
in echomail areas (because it uses the echomail TAG name). Entry
is similar to Carbon Copies:
┌ Example ───────────────────────────┐
│ xc: tub, maxdev, muffin, squish │
│ xc: maxutil, blah, baka │
└────────────────────────────────────┘
Msgedsq will stop looking for areas when it finds the first line
without "xc:" in the first three chars. The "xc:" lines will be
expanded to this:
┌─────────────────────────────────────────────────────┐
│ * Crossposted to areas TUB, MAXDEV, MUFFIN, SQUISH, │
│ MAXUTIL, BLAH, BAKA │
└─────────────────────────────────────────────────────┘
If you specify an area that doesn't exist the name will remain in
the list (you won't be given an error msg :-). Again, this
reduced format was chosen to reduce the amount of space taken up,
and increase readability. Advice: don't crosspost to too many
Msgedsq 2.1 Documentation Page 20
areas; or you will probably incur someone's wroth (which may or
may not be a bad thing... :).
┌─────────────────────────────┐
│▒▒ Internet and Msgedsq ▒▒│
└─────────────────────────────┘
Msgedsq is sort-of<tm> compatible with messages gated to/from the
internet. This means, is that the internet messages must be
stored in fidonet format, generally following the format UFGATE
and FredGate use (popular gating programs). You can enter
internet messages in both UUCP and netmail areas; it's your
choice, tho netmail is probably easiest to work. Smart addresses
are simply entered in the destination/origin name fields.
Addressing is handled by msgedsq - you cannot enter them once
msgedsq realizes you have entered a internet address.
From there you simply type in the text of the message and save
it. When it is saved, a "To: " line is added to the beginning of
the text and the destination name field is replaced with "UUCP".
The destination address used is the uucp gate defined in the
config file.
When replying to messages gated from internet, the internet
address is automatically obtained from any "From: " lines in the
message's text and used for the reply.
┌───────────────────────────┐
│▒▒ Msgedsq and Points ▒▒│
└───────────────────────────┘
Points can work in two ways; the old fashioned fakenet method or
the newer (and nicer) 4D way. If you have to run a fakenet,
simply define it in the config file and don't worry about it.
You still MUST to define your "real" point address; this is so
that your origin line and ctrl-a kludges use it. The pointnet
will be placed in the binary header in all messages not marked
"crash" or "direct". If you have a bossnode running squish and
bink 2.5, then will be able to run a point address without any
trouble (You have to set it up correctly tho - There is a program
called ESC (written by Glen Gilbert) that can manage all this for
you). Please note, that if you're using a fakenet you *must*
also put it in the squish.cfg file.
Other combinations of mailers/tossers may not work so well; i'm
reasonably sure you can manage 4D with FrontDoor. It really
depends on what your boss runs.
Msgedsq 2.1 Documentation Page 21
┌─────────────────────────────────────────┐
│▒▒ Default Reader Key Definitions ▒▒│
└─────────────────────────────────────────┘
Msgedsq is in reader mode at all times except when you're
actually editing a message. These keys are redefinable, unless
otherwise specified. See Appendix A for function names.
Up Arrow Scrolls the message up one line.
Down Arrow Scrolls the message down one line.
<pgdn> Display the next page of the current message.
<pgup> Displays the previous page of the current message.
<alt><e> Enter a new message in the current area.
<alt><r> Reply/no quote to FROM name.
<alt><q> Reply/quote to FROM name.
<alt><u> Reply/quote to TO name.
<alt><n> Reply/quote to FROM name in another area.
<alt><y> Reply/quote to TO name in another area.
<alt><w> Writes the current message to device.
<alt><m> Move/forward/copy message.
<m> - Move a message to a selected area.
<c> - Copy a message to another area.
<f> - Forward a message to another person.
<r> - ditto, but make it from user.
<alt><c> Change header/text of msg, time not updated.
<alt><d> Deletes the current message.
<alt><v> Toggle display of hidden information.
<alt><f> Search for text thru current area.
Right Arrow Move to the next message in the current area.
Left Arrow Move to the previous message in the current area.
<msg number> Move to the specified message number.
<alt><a> Change area; Picklist will be displayed;
<home> Move to the first area in the list.
<end> Move to the last area in the list.
<pgup> Move the cursor up one page.
<pgdn> Move the cursor down one page.
Up Arrow Move the previous area.
Dwn Arrow Move to the next area.
<enter> Selects the area the cursor is on.
<esc> Returns to the current area.
<*> Scan all available areas for messages.
<+> Moves to the next area with unread messages.
<-> Moves to the previous area with unread messages.
<alt><l> Lists (one per line) msgs in current area;
Up Arrow Move up one message
Dwn Arrow Move down one message
<pgup> Move up one page in the listing.
<pgdn> Move down one page in the listing.
<alt><a> Toggles display-addresses (netmail).
<esc> Abort.
<enter> Goto area.
Msgedsq 2.1 Documentation Page 22
<ctrl><Lft> Move to prev msg in the current message thread.
<ctrl><Rght> Move to next msg in the current message thread.
<tab> Unconditionally go to next message in msg thread.
<home> Move to the first msg in the current msg thread.
<end> Move to the highest numbered message you've read.
<alt><s> Displays/alter switches.
<ctrl><a> Pick Attribution line.
<ctrl><w> Change current address.
<ctrl><n> change current nodelist.
<ctrl><u> Change current username.
<alt><h> Read help file.
<!> Execute a dos command.
<alt><o> Shell to the operating system.
<esc> Exit msgedsq.
Msgedsq 2.1 Documentation Page 23
┌──────────────────────────────────────┐
│▒▒ Edit Mode Key Definitions ▒▒│
└──────────────────────────────────────┘
Edit mode is operative when editing messages. They are all
redefinable. See Appendix A for function names.
<alt><c> Cut Anchor To Current Line.
<alt><p> Paste Clipboard Into Text.
<alt><i> Import A Textfile.
<alt><w> Export Message Text To A File.
<ins> Toggle Insert/Typeover Mode.
<tab> Insert Spaces To Next Tab.
<Enter> Break Line At Cursor.
<bckspc> Backspace And Delete or (<ctrl><h>).
<del> Delete Character Under Cursor.
<crtl><t> Delete Word.
<alt><k> Delete To End Of Line.
<alt><d> Delete Current Line.
<esc> Exit To Reader Without Saving.
<alt><s> Save Message, Return.
<alt><1> Execute a single DOS command.
<alt><o> Shell To DOS.
Lft Arrow Move Cursor One Left.
Rt Arrow Move Cursor One Right.
Up Arrow Move Up One Line.
Down Arrow Move Down One Line.
<ctrl><pgup> Move To Top Of Screen.
<ctrl><pgdn> Move To Bottom Of Screen.
<pgup> Move Up One Page.
<pgdn> Move Down One Page.
<ctrl><Lft> Move Left One Word.
<ctrl><Rt> Move Right One Word.
<ctrl><home> Move To First Line Of Message.
<ctrl><end> Move To Last Line Of Message.
<home> Go To Beginning Of Line.
<end> Go To End Of Line.
<alt><b> Count bytes in message.
<ctrl><u> Undelete line.
<alt><q> Toggle quote status of line.
Msgedsq 2.1 Documentation Page 24
┌───────────────────────────────────┐
│▒▒ Redefining the Keyboard ▒▒│
└───────────────────────────────────┘
Almost all keys are redefinable, with the exception of menu
selection, scrolling & paging, help and field editing keys.
Don't reassign keys to combinations that include escape or you
won't be able to exit.
Defining keys assignments in the configuration file requires that
you know the extended ASCII codes of the keys. A small utility
called keycode.exe has been included for that purpose: run it,
record what the keypresses produce and then exit by typing 'q'.
Key assignments are made in this form:
readkey keycode command
readkey 0x000d alast
or
editkey keycode command
editkey 0x0016 undelete
The keycode must be in the format shown above (hexadecimal).
Function Key Macros
Msgedsq is capable of executing macros, a pre-recorded set of
keystrokes that can be executed by pressing one key. Macros are
assigned to the function keys and their <crtl> <alt> and <shift>
counterparts; 40 in all. Function is a special case, it is
executed on startup. The rest are:
1-10 <f1> - <f10>
11-20 <shift><f1> - <f10>
21-20 <ctrl><f1> - <f10>
31-40 <alt><f1> - <f10>
The function number is preceded by "function" and trailed by the
macro itself. Keystroke numbers are limited only by available
memory - it is possible to store a canned message as a macro.
Caveats
Macros are active throughout msgedsq's operation. Recursive
macros are not supported. Generally you can abort a macro by
pressing <esc>, but this is not guaranteed :-) The autostart
function requires an extra char at the beginning - it will be
eaten, so anything can be used.
Msgedsq 2.1 Documentation Page 25
┌────────────────────────────────────┐
│▒▒▒ Contacting the Author ▒▒▒│
└────────────────────────────────────┘
When contacting me for help, please think about whether you can
get an answer locally first; it saves everyone trouble. You can
send me messages in the MSGED_ECHO and netmail. I can also be
contacted in TUB and MUFFIN, but please do this only as a last
resort, and if the subject is related to these areas. If you do
use TUB/MUFFIN, please make sure you put "Msgedsq"+version in the
subject line. Email is fine (internet).
If you've previously sent me requests for features and they never
appeared (and I said yes :-), send me another msg; I get a lot
of netmail, and sometimes I simply forget to answer them or lose
them (as of this writing I just lost 170 netmails :-( ).
Likewise if you never get a reply to a msg - although be aware
that I try not to answer msgs that look like they don't need
answering.
Bug reports/feedback is/are always welcome. If you can, send me
as much info as possible, rather than "it's broke!" (A waste of
everyones' time).
Most of all: _RTM_ before calling (please!).
┌───────────────────────────────────────┐
│▒▒ Hints/Panic Questions Etc. ▒▒│
└───────────────────────────────────────┘
Q. My othernetwork<tm> mail gets scanned out to my Fido
address! What the @#!*)$* is happening here?!
A. You must include all your addresses in the squish config
file. The area definitions in the squish config file must
have a -p<node> with node being the primary address for that
area. After you've checked that, check out the msgedsq
config files; if you're using squish.cfg for area
definitions, you shouldn't have any trouble. If not, make
sure you have the address on the area definition lines (see
section on area definition).
Set the show addresses switch on and go to the area in
question & have a look. If it's a netmail area, check that
you've got your squish routing file correct. If your using
FD, you should have no worries as long as the aka's have
been defined in the FDsetup proggy. Failing all this, ask
someone... :-)
Q. I'm a point and my mail bounces back to me from my bossnode!
A. Your bossnode probably hasn't got 4D setup completely; if
your mail is coming to you with your fakenet in the seenbys,
use AddToSeen (in squish.cfg) with your fakenet address. I
have yet to see a true 4D system setup :-/
Msgedsq 2.1 Documentation Page 26
Q. My messages are being routed to the zonegate, even though I
have "gate none" in my msgedsq config file. OR: My messages
aren't being routed to the right zone (when you see the
address when squish squashes the netmail area).
A. Make sure you've got all the gaterouting stuff in squish.cfg
either setup correctly, or commented out. You can see the
binary address in netmail areas when you do an <alt><l>. If
you're a point and you have pointnet defined in msged.cfg
(and you're setup as 4D in squish), make sure you have the
fakenet addr defined as an Address in squish.cfg. This gets
pretty confusing, I know, but it's all a matter of setting
squish so that it knows where the addresses in your msg are
coming from.
Q. My mailer is barfing on some really weird zones and point
addresses from my *.msg netmail areas. This never happened
until I used msgedsq!
A. Some mailers (and editors) use and undefined part of the
*.msg header for zone and point information. Msgedsq (and
Maximus, Squish and many others) use this for the
date_written and date_arrived fields. You can turn this off
by putting "no opus" in your msgedsq config file.
Q. I keep on losing my cursor when I shell to dos and then
return...
A. Due to the large number of cards floating about, msgedsq is
only (known to be) compatible with EGA and VGA video
adapters. If you can provide me with a way (in asm, or C)
to identify your card *and* turn off/on the cursor, I will
attempt to put it in future versions of msgedsq.
Q. When squish is tossing in the background I sometimes get
empty areas, even tho I know there are messages in them.
A. Squish (from what I can observe), keeps as many areas open
when tossing to the msgbases; and when open it locks them
from access to other programs. If this happens, you will
have to retry opening the area (<alt><a> and picking it
again), until squish has finished with it. If squish locks
a msgbase while you are in it, you may have troubles writing
to the msgbase. I would suggest that you NOT write while
the msgbase is locked, although it should be safe (Msgedsq
does use the MsgAPI released by Scott).
Of course, you can't tell if the msgbase is locked until
something happens... Msgedsq will try to detect this and
will stop and then ask you to try writing again.
Q. I was in an area and squish was running in the background.
When I tried to go to the next msg/prev msg, msgedsq locked
up & required reboot to continue...
A. Msgedsq did NOT lock up; simply, the messages that it was
trying to go to (stored in internal list) were not there
anymore; squish probably deleted them (kill/sent). To get
Msgedsq 2.1 Documentation Page 27
out of this, use <alt><l> to find a message that is there,
and then re-scan the area.
Q. I'm trying to send msgs to a UUCP gate, and the msgs seem to
be not set up right... I have the domain gates set up in the
config file!
A. UUCP and domain gating are NOT compatible, or even the same
thing! Domain gating is only for messages into FTN
networks; UUCP gating requires a few other kludges for it to
work. You MUST set up the UUCP gate (UUCP <gate>) in
msged.cfg for it to work. Addresses are entered in the name
field (ie: john@miyu.dialix.oz.au), not the address field.
Hints
Points: If you can (bossnode running 4D aware mailer /
tosser) then remove pointnets from sight in
msged.cfg. If you have to (areafix?) then use the
pointnet as another address, and switch to it when
needed.
Multitasking: If you're running a multi-tasking system with
users online, and squish tossing etc; you should
rescan the current area if you know some new msgs
have been written (and you want to read them).
Msgedsq keeps an internal list of msgs, and this
will need to be updated to reflect the msgs every
now and again...
Msgedsq 2.1 Documentation Page 28
┌───────────────────────────────────────────┐
│▒▒ Appendix A: Key Function Names ▒▒│
└───────────────────────────────────────────┘
ReadKey Commands
next_area goto Next area with unread msgs.
last goto highest read message in area.
view toggle veiwing of hidden notes.
search find a text string.
reply reply to current message (no quote).
export erite current message.
list list messages in area.
exit exit program.
next go to next message.
followup reply/comment to TO: name.
first goto first message in msgbase.
chnodel change lookup nodelist.
previous goto previous message.
link_to goto up-link for message.
home goto first message in reply chain.
delete delete current message.
quote reply/quote current message.
dos do a dos command.
change change current message.
prev_area goto previous area with unread messages.
chngaddr change current address for area.
attrib choose attribution line.
slast goto last message in area.
name change the username.
areas change area (with picklist).
link_from link downwardsfrom current message.
shell go to an operating shell.
newmsg create a new message.
move get move menu.
config change msged switches.
null do nothing.
scan scan areas for new messages.
repoth reply to message in another area.
u-next go to uplink from current msg (no menu).
astart go to first msg read when entering area.
EditKey Commands
backspace move vursor back one, deleting current char.
left move cursor left one char.
wordright move cursor one word right.
newline add a hard return and goto begining of next line.
down move cursor down one line.
pgdn move cursor down one page.
goeol move cusor to end of line.
anchor create anchor for cut/paste.
quit quite the message editor.
import import text (from file) into editor.
shell goto operating system shell.
insert toggle insert mode.
tab move cursor tab spaces to right.
Msgedsq 2.1 Documentation Page 29
top goto top of page.
first move cursor to top of message.
del delete char under cursor.
toggleq toggle quote status of line.
deleol delete everything to end of line.
right move cursor right one char.
wordleft move cursor left one word.
up move cusror up one line.
pgup move cursor up one page.
delline delete current line.
cut cut from current line to the anchor point and add
to the clipboard.
paste paste from clipboard to current position.
abort abort editing of message.
export write text in clipboard to file, or if no text in
clipboard, write whole message.
gobol move cursor to the beginning of line.
undel undelete line (last 30 are saved).
null do nothing.
bottom move to the bottom of page.
last move tolast line in message.
killword kill word under cursor.
bytecount display total bytes in message.
/* owari {end} */
Msgedsq 2.1 Documentation Page 30