# Editor-Text-Makros fr AGNUS ab v0.95
# letzte nderung: 30.04.1998, VH
#
# Inhalt: Makros fr  - C, C++, Object C
#                     - Pascal
#                     - Fortran
#                     - ST-Guide
#                     - HTML
#
#
# Das Format ist mit Absicht an QED angelehnt, jedoch etwas flexibler:
#
# Syntax: # Kommentar
#         $<ext1> <ext2> ... Beginn einer Liste mit makros
#           <ext>: gltige Extensionen, * fr alle (nur am Ende sinnvoll!)
#         ~<Zeichen1><Zeichen2> ... in Makros gltige Sonderzeichen
#         <Krzel>=<Wert>
#           In <Wert> wird mit
#             oder ~ der Curser neu positioniert.
#            ^^ ein neue linksbndige Zeile begonnen.
#            ^! eine neue eingerckte Zeile begonnen.
#            ^> eine neue eingerckte Zeile begonnen und einen Tab nach rechts gerckt.
#            ^< eine neue eingerckte Zeile begonnen und einen Tab nach links gerckt.
#
#**************************************************************************
#************************  Textmakros fr C  ******************************
#*************  teilweise auch fr C++, Object C, Java  *******************
#**************************************************************************
$C CC CPP M I H JAVA JAV J
~{}
()	={^>~^<}
{}	={^>~^<}
b	=boolean
br	=break;
by	=byte
c	=char
ca	=case ~ :
cb	=const byte
cl	=class ~^!{^! private:^!protected:^!public:^<};
co	=const
d	=double
de	=default:
def	=#define 
e	=else
el	=else if (~)
ex	=extern
f	=FALSE
fi	=FILE* 
fl	=float
fo	=for (~=;;)
fpr	=fprintf(~,"\n",);
fsc	=fscanf(~,"",);
fu	=~()^!{^>^<}
g	=GLOBAL
i	=if (~)
in	=#include <~.h>
i<	=#include <~.h>
i>	=#include <~.h>
inc	=#include "~.h"
i"	=#include "~.h"
l	=long
ll	=long long 
loc	=local
m	=int main(int argc,char *argv[],char *envp[])^!{^>~^!return 0;^<}
n	=NULL
p	=printf("~");
pri	=printf("~");
pr	=void ~()^!{^>^<}
r	=return ~;
s	=short 
sc	=scanf("~",);
si	=sizeof(~)
sin	=signed 
st	=struct ~^!{^>^<};
sw	=switch (~) {^>case :^<}
t	=TRUE
ty	=typedef 
tys	=typedef struct ~^!{^>^<};
ub	=unsigned byte 
ui	=unsigned int 
ul	=unsigned long 
ull	=unsigned long long 
un	=unsigned 
us	=unsigned short 
uw	=unsigned word 
wh	=while (~)
w	=word 
v	=void 
#
#
#**************************************************************************
#***********************  Textmakros fr Pascal  **************************
#**************************************************************************
$PAS P
a	=ALPHA
b	=begin
bo	=BOOLEAN
by	=BYTE
c	=CHAR
cs	=case ~ of
df	=otherwise:
e	=end;
ei	=else if (~)
ee	=end else
eeb	=end else begin
el	=else
f	=false
fi	=FILE OF 
fit	=TEXT
fu	=function ~():;
i	=if (~)
it	=INTEGER
l	=LONG_INTEGER
m	=maxint
pr	=procedure ~();
r	=read(~);
re	=REAL
rl	=readln(~);
s	=STRING
s255	=STRING[255]
so	=sizeof (~)
t	=true
w	=write(~);
wl	=writeln(~);
#
#
#**************************************************************************
#***********************  Textmakros fr Fortran  *************************
#**************************************************************************
$F FOR
~<>=
<	=.lt. 
<=	=.le. 
=	=.eq. 
<>	=.ne. 
><	=.ne. 
!=	=.ne. 
>=	=.ge. 
>	=.gt. 
a	=.and. 
c	=complex 
ch	=character 
ch2	=character*20 
ch4	=character*40 
ch8	=character*80 
chb	=character*255 
cm	=common 
co	=continue
d	=double precision 
df	=double precision function ~()
di	=dimension ~()
do	=do ~=,,
e	=equivalence (~)
f	=.false.
fo	=format(~)
fu	=~function ()
g	=goto ~
i	=if (~)
if	=integer function ~()
ii	=if (~) ,,
it	=integer 
i1	=integer*1 
i2	=integer*2 
i3	=integer*4 
l	=logical 
lf	=logigal function ~()
m	=subroutine main()
n	=.not. 
o	=.or. 
p	=program main
pr	=subroutine ~()
r	=read(0,~)
re	=real 
rf	=real function ~()
rt	=return
s	=subroutine ~()
t	=.true.
w	=write(0,~)
#
#
#**************************************************************************
#***************  Textmakros fr ST-Guide-Hypertexte  *********************
#**************************************************************************
$STG
1	=@database "~"
2	=@author "~"
3	=@subject "~"
4	=@$VER: 
af	=@autorefoff
an	=@autorefon
ai	=@{I}~@{i}
ab	=@{B}~@{b}
al	=@alabel "~"
au	=@{U}~@{u}
e	=@endnode
en	=@endnode
h	=@help "~"
i	=@index "~"
img	=@image ~ 0
l	=@line 1 73 0 0 7
la	=@label "~"
li	=@{"~" link ""}
n	=@node "~"
ne	=@next "~"
p	=@pnode "~"
pr	=@prev "~"
pn	=@pnode "~"
t	=@tabsize 
w	=@width 
x	=@xref "~"
#
#
#**************************************************************************
#***************  Textmakros fr WWW-Hypertexte (HTML)  *******************
#**************************************************************************
$HTML HTM
# Rumpf einer HTML-Datei
HTML	=<HTML><HEAD>^^	<TITLE>~</TITLE>^^</HEAD><BODY>^^	^^</BODY>^^</HTML>
# Text-Lyout
ADDRESS	=<ADDRESS>~</ADDRESS>
AL	=ALIGN=LEFT
AR	=ALIGN=RIGHT
AC	=ALIGN=CENTER
AT	=VALIGN=TOP
AM	=VALIGN=MIDDLE
AB	=VALIGN=BOTTOM
QUOTE	=<BLOCKQUOTE>~</BLOCKQUOTE>
CENTER	=<CENTER>~</CENTER>
H1	=<H1>~</H1>
H2	=<H2>~</H2>
H3	=<H3>~</H3>
H4	=<H4>~</H4>
H5	=<H5>~</H5>
H6	=<H6>~</H6>
NOBR	=<NOBR>~</NOBR>
# Text-Attribute
P	=<P ALIGN="~"></P>
B	=<B>~</B>
BIG	=<BIG>~</BIG>
CITE	=<CITE>~</CITE>
CODE	=<CODE>~</CODE>
DFN	=<DFN>~</DFN>
EM	=<EM>~</EM>
I	=<I>~</I>
KBD	=<KBD>~</KBD>
PRE	=<PRE>~</PRE>
SAMP	=<SAMP>~</SAMP>
SMALL	=<SMALL>~</SMALL>
STRONG	=<STRONG>~</STRONG>
SUB	=<SUB>~</SUB>
SUP	=<SUP>~</SUP>
TT	=<TT>~</TT>
VAR	=<VAR>~</VAR>
# Aufzhlungen, Listen
DIR	=<DIR>^^<LI>~^^<LI>^^</DIR>
MENU	=<MENU>^^<LI>~^^<LI>^^</MENU>
OL	=<OL>^^<LI>~^^<LI>^^</OL>
UL	=<UL>^^<LI>~^^<LI>^^</UL>
DL	=<DL>^^<DT>~^^<DD>^^<DT>^^<DD>^^</DL>
# Tabellen
TABLE	=<TABLE BORDER=1>^><CAPTION>~</CAPTION>^!<TR><TD></TD><TD></TD></TR>^<</TABLE>
TABLE22	=<TABLE BORDER=1>^><CAPTION>~</CAPTION>^!<TR><TD></TD><TD></TD></TR>^!<TR><TD></TD><TD></TD></TR>^<</TABLE>
TR	=<TR>~</TR>
TD	=<TD>~</TD>
TH	=<TH>~</TH>
# sonstige
A	=<A HREF="~"></A>
AN	=<A NAME="~"></A>
IMG	=<IMG SRC="~" ALT="" ALIGN= BORDER=0>
MAP	=<MAP>^><AREA SHAPE="rect" COORDS=",,," HREF="">^<</MAP>
