File:  [Public] / Amaya / amaya / HTMLT.T
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Wed Nov 20 00:41:55 1996 UTC (27 years, 7 months ago) by cvs
Branches: OPERA
CVS tags: Start_Nov_20_96
Opera tree

		{ I. Vatton 	 Novembre 1994-1995-1996  }

TRANSLATION HTML;

LINELENGTH 78;	  { Longueur maximale d une ligne }

BUFFERS
   NomImage(Picture);	{ Tampon pour le nom de l image }

CONST
   QuoteF  = '"';
   C_Style = ' style="';

RULES

 HTML : BEGIN
	Create '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Draft//EN">\12';
	Create '<HTML>\12';
	Create '</HTML>\12' After;
	END;

 HEAD:	BEGIN
	Create '<HEAD>\12';
	Create '</HEAD>\12' After;
	END;

 Document_URL:
	BEGIN
	Remove;
	END;

 TITLE:	BEGIN
	Create '<TITLE>';
	Create '</TITLE>\12' After;
	END;

 ISINDEX: BEGIN
	Create '<ISINDEX';
	IF Prompt
	   BEGIN
	   Create ' prompt="';
	   Create Prompt;
	   Create QuoteF;
	   END;
	Create Attributes;
	Remove;
	Create '>\12';
	END;

 BASE:	BEGIN
	Create '<BASE ';
	Create Attributes;
	Remove;
	Create '>\12';
	END;

 Styles:BEGIN
	Create '<STYLE';
	IF Notation
	   BEGIN
	   Create ' type=';
	   Create Notation;
	   END;
	Create Attributes;
	Create '>\12';
	Create '</STYLE>\12' After;
	END;

 StyleRule:
	BEGIN
	IF Selector
	   BEGIN
	   Create Selector;
	   Create ' { ';
	   Create ' }\12' After;
	   END;
	END;

 SCRIPT: BEGIN
	Create '<SCRIPT';
	Create Attributes;
	Create '>\12' After;
	END;

 META: BEGIN
	Create '<META';
	Remove;
	Create Attributes;
	Create '>\12' After;
	END;

 LINK:	BEGIN
	Create '<LINK';
	Remove;
	Create Attributes;
	Create '>\12' After;
	END;

 BODY:	BEGIN
	Create '<BODY';
	Create Attributes;
	Create '>\12';
	Create '</BODY>\12' After;
	END;

 H1:	BEGIN
	Create '<H1';
	Create Attributes;
	Create '>';
	Create '</H1>\12' After;
	END;

 H2:	BEGIN
	Create '<H2';
	Create Attributes;
	Create '>';
	Create '</H2>\12' After;
	END;

 H3:	BEGIN
	Create '<H3';
	Create Attributes;
	Create '>';
	Create '</H3>\12' After;
	END;

 H4:	BEGIN
	Create '<H4';
	Create Attributes;
	Create '>';
	Create '</H4>\12' After;
	END;

 H5:	BEGIN
	Create '<H5';
	Create Attributes;
	Create '>';
	Create '</H5>\12' After;
	END;

 H6:	BEGIN
	Create '<H6';
	Create Attributes;
	Create '>';
	Create '</H6>\12' After;
	END;

 BaseFont:
	BEGIN
	Create '<BASEFONT';
	Remove;
	Create Attributes;
	Create '>\12';
	END;

 Italic_text:
	BEGIN
	Create '<I';
	Create Attributes;
	Create '>';
	Create '</I>' After;
	END;
 Bold_text:
	BEGIN
	Create '<B';
	Create Attributes;
	Create '>';
	Create '</B>' After;
	END;
 Teletype_text:
	BEGIN
	Create '<TT';
	Create Attributes;
	Create '>';
	Create '</TT>' After;
	END;
 Struck_text:
	BEGIN
	Create '<STRIKE';
	Create Attributes;
	Create '>';
	Create '</STRIKE>' After;
	END;
 Big_text:
	BEGIN
	Create '<BIG';
	Create Attributes;
	Create '>';
	Create '</BIG>' After;
	END;
 Small_text:
	BEGIN
	Create '<SMALL';
	Create Attributes;
	Create '>';
	Create '</SMALL>' After;
	END;
 Subscript:
	BEGIN
	Create '<SUB';
	Create Attributes;
	Create '>';
	Create '</SUB>' After;
	END;
 Superscript:
	BEGIN
	Create '<SUP';
	Create Attributes;
	Create '>';
	Create '</SUP>' After;
	END;

 Emphasis:
	BEGIN
	Create '<EM';
	Create Attributes;
	Create '>';
	Create '</EM>' After;
	END;
 Strong:
	BEGIN
	Create '<STRONG';
	Create Attributes;
	Create '>';
	Create '</STRONG>' After;
	END;
 Def:
	BEGIN
	Create '<DFN';
	Create Attributes;
	Create '>';
	Create '</DFN>' After;
	END;
 Code:
	BEGIN
	Create '<CODE';
	Create Attributes;
	Create '>';
	Create '</CODE>' After;
	END;
 Sample:
	BEGIN
	Create '<SAMP';
	Create Attributes;
	Create '>';
	Create '</SAMP>' After;
	END;
 Keyboard:
	BEGIN
	Create '<KBD';
	Create Attributes;
	Create '>';
	Create '</KBD>' After;
	END;
 Variable:
	BEGIN
	Create '<VAR';
	Create Attributes;
	Create '>';
	Create '</VAR>' After;
	END;
 Cite:
	BEGIN
	Create '<CITE';
	Create Attributes;
	Create '>';
	Create '</CITE>' After;
	END;

 Font_: BEGIN
	Create '<FONT';
	Create Attributes;
	Create '>';
	Create '</FONT>' After;
	END;

 Applet: BEGIN
	Create '<APPLET';
	Create Attributes;
	Create '>\12';
	Create '</APPLET>\12' After;	
	END;

 Parameter: BEGIN
	Create '<PARAM';
	Remove;
	Create Attributes;
	Remove;
	Create '>\12';
	END;

#ifdef COUGAR
 Object: BEGIN
	Create '<OBJECT';
	Create Attributes;
	Create '>\12';
	Create '</OBJECT>\12' After;	
	END;
#endif
 Paragraph: BEGIN
	if not firstwithin List_Item and not firstwithin Definition
	   BEGIN
	   Create '<P';
	   Create Attributes;
	   Create '>';
	   Create '</P>' After;
	   END;
	Create '\12' After;
	END;

 TEXT_UNIT: BEGIN
	IF *Style\240 and not Within HEAD
	    BEGIN
	    Create '<SPAN';
	    Create Attributes;
	    Create '>';
	    Create '</SPAN>' After;
	    END;
	IF *Class and not Within HEAD
	    BEGIN
	    Create '<SPAN';
	    Create Attributes;
	    Create '>';
	    Create '</SPAN>' After;
	    END;
	IF Within Text_Area
		Remove;
	IF Within Text_Input
		Remove;
	END;

 Definition_List: BEGIN
	Create '<DL';
	Create Attributes;
	Create '>\12';
	Create '</DL>\12' After;
	END;

 Term:	BEGIN
	Create '<DT';
	Create Attributes;
	Create '>';
	Create '</DT>\12' After;
	END;

 Definition: BEGIN
	Create '<DD';
	Create Attributes;
	Create '>';
	Create '</DD>\12' After;
	END;

 Unnumbered_List: BEGIN
	Create '<UL';
	Create Attributes;
	Create '>\12';
	Create '</UL>\12' After;
	END;

 Numbered_List:	BEGIN
	Create '<OL';
	Create Attributes;
	Create '>\12';
	Create '</OL>\12' After;
	END;

 Address: BEGIN
	Create '<ADDRESS';
	Create Attributes;
	Create '>\12';
	Create '</ADDRESS>\12' After;
	END;

 Menu:	BEGIN
	Create '<MENU';
	Create Attributes;
	Create '>\12';
	Create '</MENU>\12' After;
	END;

 Directory: BEGIN
	Create '<DIR';
	Create Attributes;
	Create '>\12';
	Create '</DIR>\12' After;
	END;

 List_Item: BEGIN
	Create '<LI';
	Create Attributes;
	Create '>';
	END;

 Preformatted: BEGIN
	NoLineBreak;
	Create '<PRE';
	Create Attributes;
	Create '>';
	Create '</PRE>\12' After;
	END;

 Pre_Line : BEGIN
	IF NOT FIRST
		Create '\12';
	END;

 Horizontal_Rule: BEGIN
	Create '\12<HR';
	Create Attributes;
	Remove;
	Create '>\12';
	END;

 Form: BEGIN
	Create '<FORM';
	Create Attributes;
	Create '>\12';
	Create '</FORM>\12' After;
	END;

 Option_Menu: BEGIN
	Create '<SELECT';
	Create Attributes;
	Create '>\12';
	Create '</SELECT>\12' After;
	END;

 Option: BEGIN
	Create '<OPTION';
	IF Selected
		Create ' selected';
	Create '>\12';
	END;

 Toggle_Menu: BEGIN
	Create '<!--Toggle_Menu-->\12<PRE>\12';
	Create '</PRE>\12' After;
	END;

 Toggle_Item: BEGIN
	Create '\12' After;
	END;

 Radio_Menu: BEGIN
	Create '<!--Radio_Menu-->\12<PRE>\12';
	Create '</PRE>\12' After;
	END;

 Radio_Item: BEGIN
	Create '\12' After;
	END;

 Text_Input_Line: BEGIN
	Create '<!--Text_Input_Line-->\12<P>\12';
	Create '</P>\12' After;
	END;

 Command_Line: BEGIN
	Create '<!--Command_Line-->\12<P>\12';
	Create '</P>\12' After;
	END;

 Text_Area: BEGIN
	Create '<TEXTAREA';
	Create Attributes;
	Create '>';
	Create '</TEXTAREA>';
	END;

 Checkbox_Input: BEGIN
	Create '<INPUT type=CHECKBOX';
	Create Attributes;
	Create '>';
	Remove;
	END;

 Radio_Input: BEGIN
	Create '<INPUT type=RADIO';
	Create Attributes;
	Create '>';
	Remove;
	END;

 Text_Input: BEGIN
	Create '<INPUT type=TEXT';
	Create Attributes;
	Create '>';
	Remove;
	END;

 Hidden_Input: BEGIN
	Create '<INPUT type=HIDDEN';
	Create Attributes;
	Create '>';
	Remove;
	END;

 Password_Input: BEGIN
	Create '<INPUT type=PASSWORD';
	Create Attributes;
	Create '>';
	Remove;
	END;

 File_Input: BEGIN
	Create '<INPUT type=FILE';
	Create Attributes;
	Create '>';
	Remove;
	END;

 Reset_Input: BEGIN
	Create '\12<INPUT type=RESET';
	Create Attributes;
	Create '>';
	Remove;
	END;

 Submit_Input: BEGIN
	Create '\12<INPUT type=SUBMIT';
	Create Attributes;
	Create '>';
	Remove;
	END;

 Block_Quote: BEGIN
	Create '<BLOCKQUOTE';
	Create Attributes;
	Create '>\12';
	Create '</BLOCKQUOTE>\12' After;
	END;

 PICTURE_UNIT: BEGIN
	Create '<IMG';
	Create Attributes;
	Create '>' After;
	if NOT within Paragraph
		Create '\12' After;
	END;

 Anchor: BEGIN
	Create '<A';
	Create Attributes;
	Create '>';
	Create '</A>' After;
	END;

 MAP:
	BEGIN
	Create '<MAP';
	Create Attributes;
	Create '>\12';
	Create '</MAP>\12' after;
	END;

 AREA:
	BEGIN
	Create '<AREA';
	Create Attributes;
	Remove;
	Create '>\12';
	END;

{ ---- Tables ---- }

 Table:
	BEGIN
	Create '\12<TABLE';
	Create Attributes;
	Create '>\12';
	Create '</TABLE>\12' after;
	END;

 CAPTION:
	BEGIN
	Create '<CAPTION';
	Create Attributes;
	Create '>';
	Create '</CAPTION>\12' after;
	END;

 Table_head:
	Remove;

{ provision for Cougar
 thead:
	BEGIN
	Create '<THEAD';
	Create Attributes;
	Create '>\12';
	Create '</THEAD>\12' after;
	END;

 tfoot:
	BEGIN
	Create '<TFOOT';
	Create Attributes;
	Create '>\12';
	Create '</TFOOT>\12' after;
	END;
 tbody:
	BEGIN
	Create '<TBODY';
	Create Attributes;
	Create '>\12';
	Create '</TBODY>\12' after;
	END;
}

 Table_body:
	Get tfoot;

 Table_row:
	BEGIN
	Create '  <TR';
	Create Attributes;
	Create '>\12';
	Create '  </TR>\12' after;
	END;

 Data_cell:
	BEGIN
	Create '<TD';
	Create Attributes;
	Create '>';
	END;

 Heading_cell:
	BEGIN
	Create '<TH';
	Create Attributes;
	Create '>';
	END;

 Table_foot:
	BEGIN
	Remove;
	END;

 Division: BEGIN
	Create '\12<DIV';
	Create Attributes;
	Create '>\12';
	Create '</DIV>\12' After;
	END;

 Center: BEGIN
	Create '\12<CENTER';
	Create Attributes;
	Create '>\12';
	Create '</CENTER>\12' After;
	END;

 Invalid_element: BEGIN
	NoTranslation;
	Create Content;
	Remove;
	Create Attributes;
	Create '>';
	END;

 Comment\240: BEGIN
	NoLineBreak;
 	Create '<!--';
	Create '-->\12' after;
	END;

 Comment_line: BEGIN
	if not last create '\12' after;
	END;

ATTRIBUTES

 http_equiv: BEGIN
	Create ' http-equiv="';
	Create http_equiv;
	Create QuoteF;
	END;

 meta_name: BEGIN
	Create ' name="';
	Create meta_name;
	Create QuoteF;
	END;

 meta_content: BEGIN
	Create ' content="';
	Create meta_content;
	Create QuoteF;
	END;

 REL:	BEGIN
	Create ' rel="';
	Create REL;
	Create QuoteF;
	END;

 REV:	BEGIN
	Create ' rev="';
	Create REV;
	Create QuoteF;
	END;

 HREF_ :
	BEGIN
	NoTranslation;
	Create ' href="';
	Create HREF_;
	Create QuoteF;
	END;

 background_ :
	BEGIN
	Create ' background="';
	Create background_;
	Create QuoteF;
	END;

 BackgroundColor :
	BEGIN
	Create ' bgcolor="';
	Create BackgroundColor;
	Create QuoteF;
	END;

 TextColor :
	BEGIN
	Create ' text="';
	Create TextColor;
	Create QuoteF;
	END;

 LinkColor :
	BEGIN
	Create ' link="';
	Create LinkColor;
	Create QuoteF;
	END;

 VisitedLinkColor :
	BEGIN
	Create ' vlink="';
	Create VisitedLinkColor;
	Create QuoteF;
	END;

 ActiveLinkColor :
	BEGIN
	Create ' alink="';
	Create ActiveLinkColor;
	Create QuoteF;
	END;

 BaseFontSize:
	BEGIN
	Create ' size=';
	Create BaseFontSize;
	END;

 Font_size :
	BEGIN
	Create ' size="';
	Create Font_size;
	Create QuoteF;
	END;

 color :
	BEGIN
	Create ' color="';
	Create color;
	Create QuoteF;
	END;

 Align = left_:
	Create ' align=left';

 Align = center_:
	Create ' align=center';

 Align = right_:
	Create ' align=right';

 NoShade:
	Create ' noshade';

 Size_: BEGIN
	Create ' size="';
	Create Size_;
	Create QuoteF;
	END;

 Width__: BEGIN
	Create ' width="';
	Create Width__;
	Create QuoteF;
	END;

 codebase: BEGIN
	NoTranslation;
	Create ' codebase="';
	Create codebase;
	Create QuoteF;
	END;

 code:	BEGIN
	Create ' code="';
	Create code;
	Create QuoteF;
	END;

 applet_name: BEGIN
	Create ' name="';
	Create applet_name;
	Create QuoteF;
	END;

 Param_name: BEGIN
	Create ' name="';
	Create Param_name;
	Create QuoteF;
	END;

 Param_value: BEGIN
	Create ' value="';
	Create Param_value;
	Create QuoteF;
	END;
#ifdef COUGAR
 classid: BEGIN
	Create ' classid="';
	Create classid;
	Create QuoteF;
	END;

 data: BEGIN
	Create ' data="';
	Create data;
	Create QuoteF;
	END;

 Object_type: BEGIN
	Create ' type="';
	Create Object_type;
	Create QuoteF;
	END;

 codetype: BEGIN
	Create ' codetype="';
	Create codetype;
	Create QuoteF;
	END;
#endif
 Title : BEGIN
	NoTranslation;
	Create ' title="';
	Create Title;
	Create QuoteF;
	END;

 Class: BEGIN
	IF Within TEXT_UNIT
	    BEGIN
	    Create '<SPAN class=';
	    Create Class;
	    Create '>';
	    Create '</SPAN>' After;
	    END;
	IF NOT Within TEXT_UNIT
	    BEGIN
	    Create ' class=';
	    Create Class;
	    END;
	END;

{ --- CSS : From Hakon Lie : new tag in HTML to use as a hook for
		       style information : <SPAN CLASS=foo> .. </SPAN>  ---- }
 Style\240:
	BEGIN
	IF Within TEXT_UNIT and not Within HEAD 
	    BEGIN
	    Create '<SPAN ';
	    Create C_Style;
	    Create Style\240;
	    Create QuoteF;
	    Create '>';
	    Create '</SPAN>' After;
	    END;
	IF not Within TEXT_UNIT and not Within HEAD
	    BEGIN
	    Create C_Style;
	    Create Style\240;
	    Create QuoteF;
	    END;
	END;

 BulletStyle = disc :
	Create ' type=disc';
 BulletStyle = square :
	Create ' type=square';
 BulletStyle = circle :
	Create ' type=circle';

 COMPACT:
	Create ' compact';

 NumberStyle = Arabic_ :
	Create ' type=1';
 NumberStyle = LowerAlpha :
	Create ' type=a';
 NumberStyle = UpperAlpha :
	Create ' type=A';
 NumberStyle = LowerRoman :
	Create ' type=i';
 NumberStyle = UpperRoman :
	Create ' type=I';

 Start > 1: BEGIN
	Create ' start="';
	Create Start;
	Create QuoteF;
	END;

 ItemStyle = disc :
	Create ' type=disc';
 ItemStyle = square :
	Create ' type=square';
 ItemStyle = circle :
	Create ' type=circle';
 ItemStyle = Arabic_ :
	Create ' type=1';
 ItemStyle = LowerAlpha :
	Create ' type=a';
 ItemStyle = UpperAlpha :
	Create ' type=A';
 ItemStyle = LowerRoman :
	Create ' type=i';
 ItemStyle = UpperRoman :
	Create ' type=I';

 ItemValue: BEGIN
	Create ' value="';
	Create ItemValue;
	Create QuoteF;
	END;

 METHODS: BEGIN
	Create ' methods="' After;
	Create METHODS After;
	Create QuoteF After;
	END;

 WidthElement: BEGIN
	Create ' width="';
	Create WidthElement;
	Create QuoteF;
	END;

 Script_URL: BEGIN
	Create ' action="';
	Create Script_URL;
	Create QuoteF;
	END;

 METHOD=Post_:
	Create ' method="Post"';

 METHOD=Get_:
	Create ' method="Get"';

 ENCTYPE: BEGIN
	Create ' enctype="';
	Create ENCTYPE;
	Create QuoteF;
	END;

 NAME: BEGIN
	NoTranslation;
	Create ' name="';
	Create NAME;
	Create QuoteF;
	END;

 Multiple:
	Create ' multiple';

 Default_Value: BEGIN
	Create ' value="';
	Create Default_Value;
	Create QuoteF;
	END;

 Rows: BEGIN
	Create ' rows=';
	Create Rows;
	END;

 Columns: BEGIN
	Create ' cols=';
	Create Columns;
	END;

 Checked = Yes_:
	Create ' checked';

 Area_Size: BEGIN
	Create ' size=';
	Create Area_Size;
	END;

 MaxLength: BEGIN
	Create ' maxlength=';
	Create MaxLength;
	END;

 SRC:	BEGIN
	Create ' src="';
	Create SRC;
	Create QuoteF;
	END;

 ALT:	BEGIN
	Create ' alt="';
	Create ALT;
	Create QuoteF;
	END;

 Alignment = Top_:
	Create ' align=top';
 Alignment = Middle_:
	Create ' align=middle';
 Alignment = Bottom_:
	Create ' align=bottom';
 Alignment = Left_:
	Create ' align=left';
 Alignment = Right_:
	Create ' align=right';

 Height_: BEGIN
	Create ' height="';
	Create Height_;
	Create QuoteF;
	END;

 Width_: BEGIN
	Create ' width="';
	Create Width_;
	Create QuoteF;
	END;

 Img_border: BEGIN
	Create ' border="';
	Create Img_border;
	Create QuoteF;
	END;

 hspace: BEGIN
	Create ' hspace="';
	Create hspace;
	Create QuoteF;
	END;

 vspace: BEGIN
	Create ' vspace="';
	Create vspace;
	Create QuoteF;
	END;

 ISMAP:
	Create ' ismap';

 USEMAP: BEGIN
	NoTranslation;
	Create ' usemap="';
	Create USEMAP;
	Create QuoteF;
	END;

 nohref:
	Create ' nohref';

 shape = rectangle:
	Create ' shape=rect';
 shape = circle:
	Create ' shape=circle';
 shape = polygon:
	Create ' shape=poly';

 coords: BEGIN
	Create ' coords="';
	Create coords;
	Create QuoteF;
	END;

 Border: BEGIN
	Create ' BORDER=';
	Create Border;
	END;

 Table_align = Align_left:
	Create ' align=left';
 Table_align = Center_:
	Create ' align=center';
 Table_align = Align_right:
	Create ' align=right';

 cellspacing: BEGIN
	Create ' cellspacing="';
	Create cellspacing;
	Create QuoteF;
	END;

 cellpadding: BEGIN
	Create ' cellpadding="';
	Create cellpadding;
	Create QuoteF;
	END;

 Position = Position_top:
	 Create ' align=top';
 Position = Position_bottom:
	 Create ' align=bottom';

 Row_align = Row_left:
	 Create ' align=left';
 Row_align = Row_center:
	 Create ' align=center';
 Row_align = Row_right:
	 Create ' align=right';
 Row_valign = Row_top:
	 Create ' valign=top';
 Row_valign = Row_middle:
	 Create ' valign=middle';
 Row_valign = Row_bottom:
	 Create ' valign=bottom';

 colspan: BEGIN
	Create ' colspan=';
	Create colspan;
	END;

 rowspan: BEGIN
	Create ' rowspan=';
	Create rowspan;
	END;

 Cell_align = Cell_left:
	Create ' align=left';
 Cell_align = Cell_center:
	Create ' align=center';
 Cell_align = Cell_right:
	Create ' align=right';

 Cell_valign = Cell_top:
	Create ' valign=top';
 Cell_valign = Cell_middle:
	Create ' valign=middle';
 Cell_valign = Cell_bottom:
	Create ' valign=bottom';
 Cell_valign = Cell_baseline:
	Create ' valign=baseline';

 Cell_width: BEGIN
	Create ' width=';
	Create Cell_width;
	END;

 Cell_height: BEGIN
	Create ' height=';
	Create Cell_height;
	END;

 Word_wrap = No_wrap:
	Create ' nowrap';

 Invalid_attribute:
	Create Invalid_attribute;

#include "Text_SGML.inc"

GraphTRANSLATE
	BEGIN
	'c' -> 'circle';
	'Q' -> 'circle';
	'R' -> 'rect';
	'C' -> 'rect';
	' ' -> 'rect';
	'P' -> 'rect';
	'p' -> 'polygon';
	'B' -> 'polygon';
	END;

END

Webmaster