6022HTM - konvertor formátu Text602 na HTML

Program 6022HTM.COM převádí texty napsané v dosové verzi českého textového editoru Text602 (c) Software 602, s.r.o. do formátu HyperText Markup Language používaného zejména pro publikování na internetu.
Tento program je dovoleno neomezeně bezúplatně šířit včetně komerčního prostředí (freeware).
Minimální požadavky na systém

6022HTM je dosový program, který se spokojí s procesorem Intel 8088, 64KB volné paměti a operačním systémem MS-DOS 3.3 nebo vyšším. Pracuje samozřejmě i v dosovém okně Windows nebo OS/2. Instalace programu spočívá v jeho nahrání do libovolného adresáře, nejlépe uvedeného v proměnné PATH=.


Syntaxe parametrů

Název vstupního souboru je třeba zadat jako parametr z příkazové řádky. Jako druhý nepovinný parametr lze zadat název výstupního souboru. Při vynechání jména výstupního souboru se použije shodné jméno, jaké má vstupní soubor a přípona bude změněna na HTM. Určení disku a cesty k souborům lze vynechat, v tom případě bude použit aktuální adresář. Dlouhé názvy souborů nejsou podporovány.
Pokud výstupní soubor existoval před zahájením konverze, obsluha bude upozorněna varovnou zprávou Výstupní soubor již existuje. Přepsat? (A/N). Tento interaktivní dotaz lze potlačit použitím přepínače /O.
Výstupní soubor je kódován podle normy ISO-8859-2. Přidáním parametru /W lze vyžádat převedení výsledku do kódu Windows CP1250. V obou případech bude do záhlaví HTML přidána odpovídající značka charset.
Uvedením přepínače /D na příkazové řádce se vygeneruje soubor 6022HTM.602, který právě čtete (dokumentace ve formátu Text602). Ostatní nedefinované přepínače, např. /?, způsobí zobrazení stručné nápovědy. Na pořadí parametrů v rámci příkazové řádky nezáleží. Místo uvozujícího lomítka lze použít znaménko minus.

Oba následující příklady jsou syntakticky správné a funkčně shodné:
        6022HTM /O A:\DOPIS.TXT DOPIS.HTM
        6022HTM a:\dopis.txt  -overwrite


Konverzní pravidla

1. Název HTML stránky
Jako název stránky uváděný v záhlaví HTML souboru ve značkách <TITLE>, </TITLE> bude použit text uvedený tečkovým příkazem @HE, kam se v prostředí T602 zadává z položky menu
F10>Dokument>Stránka>záhlaví Nahoře. Není-li záhlaví definováno, bude použit první řádek textu.
Ostatní tečkové příkazy včetně vložených obrázků se ignorují.

2. Kódování
Vstupní kód (Kamenických, Latin2 nebo KOI8 ve verzi Software602) je detekován prostřednictvím tečkového příkazu @CT 0..2 a převeden na ISO-8855-2, případně Windows CP1250. Znaky, které se v těchto výstupních kódových stránkách nevyskytují, jsou převáděny na mnemonické symboly, např. &alpha;, &Ntilde; apod. Rámečkové znaky jsou nahrazeny symboly +, -, |, tučné rámečky hvězdičkou *.

3. Zalamování textu
Měkké konce řádků jsou nahrazeny normální dvojicí CR+LF, konec odstavce generuje značku <BR> s výjimkou preformátovaného textu (písmo Elite). Měkké dělení slov je odstraněno, pevná mezera je nahrazována mnemonickým symbolem &nbsp;.

4. Hypertextové odkazy
Konvertor 6022HTM detekuje výskyty potencionálních odkazů na internetové zdroje, tzv. URL, a převádí je na "živé" odkazy pomocí značek <A HREF="URL"> URL </A>. Detekují se odkazy začínající metodou  ftp://,  gopher://,  http://,  mailto:,  news:,  rlogin:, telnet://tn3270: nebo wais://.

5. Font
Písmo v základní šířce 10 CPI (PICA) je ponecháno beze změn a bude tedy HTML prohlížečem zobrazováno implicitním proporcionálním fontem.
Text deklarovaný v šířce 12 CPI (Elite) je při konverzi obklopen značkami <PRE>Elite</PRE> a je proto zobrazen neproporcionálním fontem se zachováním rozvržení řádek. Pokud se tedy mají správně zobrazit rámečky a podobná ASCII grafika, měla by být ve vstupním textu obklopena značkami pro písmo Elite, tj. Ctrl-P>E.
Kondensované písmo je obklopeno značkami <SMALL>Condens</SMALL>, takže je zobrazováno drobnějším proporcionálním písmem.

Předchozí odstavec bude zopakován v písmu Elite:
Písmo v základní šířce 10 CPI  (PICA) je ponecháno beze změn a bude
tedy  HTML  prohlížečem   zobrazováno  implicitním  proporcionálním
fontem.
Text deklarovaný  v šířce 12  CPI (Elite) je  při konverzi obklopen
značkami  <PRE>Elite</PRE>  a  je  proto zobrazen neproporcionálním
fontem se  zachováním rozvržení řádek.  Pokud se tedy  mají správně
zobrazit rámečky a  podobná ASCII grafika, měla by  být ve vstupním
textu obklopena značkami pro písmo Elite, tj. Ctrl-P>E.
             ,
            /|      __
           / |   ,-~ /
          Y :|  //  /
          | jj /( .^
          >-"~"-v"
         /       Y
        jo  o    |
       ( ~T~     j
        >._-' _./
       /   "~"  |
      Y     _,  |
     /| ;-"~ _  l
    / l/ ,-"~    \
    \//\/      .- \
     Y        /    Y    -Row
     l       I     !
     ]\      _\    /"\
    (" ~----( ~   Y.  )
~~~~~~~~~~~~~~~~~~~~~~~~~~
Kondensované  písmo je  obklopeno značkami  <SMALL>Condens</SMALL>,
takže je zobrazováno drobnějším proporcionálním písmem.

Předchozí odstavec bude zopakován v písmu Condens:

Písmo v základní šířce 10 CPI (PICA) je ponecháno beze změn a bude tedy HTML prohlížečem zobrazováno implicitním proporcionálním fontem.
Text deklarovaný v šířce 12 CPI (Elite) je při konverzi obklopen značkami <PRE>Elite</PRE> a je proto zobrazen neproporcionálním fontem se zachováním rozvržení řádek. Pokud se tedy mají správně zobrazit rámečky a podobná ASCII grafika, měla by být ve vstupním textu obklopena značkami pro písmo Elite, tj. Ctrl-P>E.
Kondensované písmo je obklopeno značkami <SMALL>Condens</SMALL>, takže je zobrazováno drobnějším proporcionálním písmem.


6. Uživatelské fonty
Změny fontu definované v textu pomocí značek Ctrl-P>1..6 jsou převáděny na změny barvy písma:
UZV1=modré
UZV2=zelené
UZV3=modrozelené
UZV4=červené
UZV5=fialové
UZV6=žluté

7. Řezy písma
Podtržené písmo je obklopeno značkami <U>Underlined</U>, tučné písmo je převáděno pomocí značek <B>Bold</B>, kurzíva pomocí značek <I>Italic</I>, indexové písmo značkami <SUB>subscript</SUB> a <SUP>superscipt</SUP>, viz např. H2SO4, C2=A2+B2.
Vysoké písmo je zobrazováno fontem velikosti 5 pomocí značek <FONT SIZE=5>Double Height</FONT>, širokému písmu je přidělena velikost 6 značkami <FONT SIZE=6>Double Width</FONT> a tzv. velké písmo je zobrazováno v max.možné velikosti 7 pomocí <FONT SIZE=7>BIG</FONT>.

Symboly pro změny fontu Text602 (zejména Ctrl-P>) by měly být řádně ukončeny dalším zapsáním stejné značky. Konvertor 6022HTM doplňuje nespárované značky na konci dokumentu, ale neuzavření změny fontu ve zdrojovém textu může vést k neočekávaným výsledkům.

8. Kódová stránka
 20      40 @    60 `    80 Č    A0 á    C0 +    E0 α
 21 !    41 A    61 a    81 ü    A1 í    C1 +    E1 β
 22 "    42 B    62 b    82 é    A2 ó    C2 +    E2 Γ
 23 #    43 C    63 c    83 ď    A3 ú    C3 +    E3 π
 24 $    44 D    64 d    84 ä    A4 ň    C4 -    E4 Σ
 25 %    45 E    65 e    85 Ď    A5 Ň    C5 +    E5 σ
 26 &    46 F    66 f    86 Ť    A6 Ů    C6 ¤    E6 µ
 27 '    47 G    67 g    87 č    A7 Ô    C7 ò    E7 τ
 28 (    48 H    68 h    88 ě    A8 š    C8 ì    E8 Φ
 29 )    49 I    69 i    89 Ě    A9 ř    C9 P    E9 Θ
 2A *    4A J    6A j    8A Ĺ    AA ŕ    CA ¡    EA Ω
 2B +    4B K    6B k    8B Í    AB Ŕ    CB Ñ    EB δ
 2C ,    4C L    6C l    8C ľ    AC ¼    CC ¿    EC ω
 2D -    4D M    6D m    8D ĺ    AD §    CD ñ    ED φ
 2E .    4E N    6E n    8E Ä    AE «    CE è    EE €
 2F /    4F O    6F o    8F Á    AF »    CF ~    EF •
 30 0    50 P    70 p    90 É    B0 Ç    D0 ½    F0 =
 31 1    51 Q    71 q    91 ž    B1 Ç    D1      F1 ±
 32 2    52 R    72 r    92 Ž    B2 ù    D2      F2 >
 33 3    53 S    73 s    93 ô    B3 |    D3      F3 <
 34 4    54 T    74 t    94 ö    B4 +    D4      F4 |
 35 5    55 U    75 u    95 Ó    B5 ß    D5      F5 |
 36 6    56 V    76 v    96 ů    B6 £    D6      F6 ÷
 37 7    57 W    77 w    97 Ú    B7 Æ    D7      F7 =
 38 8    58 X    78 x    98 ý    B8 Ø    D8 à    F8 °
 39 9    59 Y    79 y    99 Ö    B9 Å    D9 +    F9 À
 3A :    5A Z    7A z    9A Ü    BA æ    DA +    FA ¯
 3B ;    5B [    7B {    9B Š    BB ø    DB *    FB |
 3C <    5C \    7C |    9C Ľ    BC å    DC *    FC ¨
 3D =    5D ]    7D }    9D Ý    BD      DD '    FD ²
 3E >    5E ^    7E ~    9E Ř    BE §    DE °    FE  
 3F ?    5F _    7F     9F ť    BF +    DF *    FF

                                                                 *