Komentář k nejnovější verzi mapovacího souboru
Číslování a seznamy
Číslování muselo být dost drsným způsobem zredukováno. Původně číslovaný seznam (<ELIST>) jsem změnila na nečíslovaný (s odrážkami). U jednoduchých seznamů s jednou úrovní je to dobré řešení, problém ovšem nastává u dvouúrovňových seznamů – není totiž prostředek, kterým by šlo vyjádřit, že jde již o druhou úroveň. Proto ani nejde nastavit různé „efekty“ jako jiné odrážky, posunutí dále od okraje apod. Ve výsledku to vypadá tak, že první úroveň se jakoby nečísluje vůbec, nemá odrážky; číslována je až druhá úroveň. Toto řešení také není ideální, ale lépe to už asi nepůjde… :-(
Konce odstavců
Některé prvky v RTF vyžadují značku konce odstavce (typicky nadpisy, položky seznamu). U běžných odstavců je pak značka konce odstavce na začátku odstavce (!) – je to vlastně značka předchozího odstavce. Tato nesrovnalost je způsobena tím, že v RTF patří značka nového odstavce na konec odstavce, kdežto značka <PARA> v SGML souboru je na začátku odstavce. Tento způsob je schůdný, ale způsobuje to, že se za sebou mohou vyskytnou dvě značky konce odstavce (např. pokud po nadpisu následuje nový odstavec), čímž vznikne prázdný řádek. Není to sice správné, ale opět to asi lépe nepůjde…
Zvláštní znaky
Po převodu do RTF se ve výsledném souboru objevovaly značky jako [nbsp  ], což jsou znakové entity pocházející ze SGML souboru, které se nepřevedly. Proto jsem do mapovacího souboru doplnila i „pokyny“ i převodu nezlomitelné mezery, půlčtverčíkové pomlčky a značky paragrafu. (Doufám, že se správně převedou, i když to nejsou tagy uzavřené ve špičatých závorkách.)
U značek <REF> a </REF> jsou vždy tři znaky pro uvozovky – dva pro začátek a konec kódu, před třetími je umístěno zpětné lomítko, takže tento znak by neměl vadit. Jde o uvozovky, které se budou vyskytovat okolo hypertextového odkazu.
Mezery
Jen za pomoci mapovacího souboru nelze v RTF vyrobit nezlomitelné mezery, tento případ by se musel řešit nějakým programem. Takže jednopísmenné předložky a spojky budou další nesprávnou věcí, která se ve výsledku bude vyskytovat.
RTF je citlivé na mezery. Za příkazem pohltí pouze jednu mezeru, ostatní mezery ponechá. Pokud se tedy v SGML souboru vyskytuje delší sekvence mezer, objeví se tak i v RTF – jasný důkaz inteligence tohoto formátu :-( Zkusila jsem tedy SGML soubor převést do podoby, kde bude mít všude jen jednu mezeru (je v kódování Windows).
Doufám, že jsem do mapovacího souboru začlenila všechny změny a opravy, které jsem udělala. (Opravy jsem dělala přímo v RTF kódu, který je dost nepřehledný – snad žádný software dosud nepodporuje zvýraznění syntaxe RTF – a rozsáhlý, a teprve poté jsem vše přenášela do mapovacího souboru.) Pokud bych snad na něco zapomněla, nebude problém to do mapovacího souboru doplnit. Tentokrát by měl být výsledkem již použitelný RTF soubor.
Pokud by soubor opět vypadal děsivě, může to být tím že převodní program (pravděpodobně) přidává k výslednému souboru vlastní hlavičku a jeden pár složených závorek. Jestliže se tedy z výsledku odstraní úplně první a úplně poslední složená závorka a několik prvních řádků kódu s nastavením fontů (tak, aby RTF soubor začínal {\rtf1\ansi\deff0\deflang1029 atd.), měl by to být použitelný soubor.