Herodes
H T M L V I E W 1.0.C

Search for english text in file htmlv_e.htm

OBSAH:
  • 1 Co to je?
      1.1 Poznámky k programu
      1.2 Verze programu:
          1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.0.A, 1.0.B, 1.0.C
      1.3 Užívání programu
  • 2 Spouštění
      2.1 Požadavky na HW/SW
      2.2 Odkazy
  • 3 Ovládání
      3.1 Klávesnice
  • 4 Autor

    1 CO TO JE?

    Program Herodes HTML View 1.0 slouží k "rychlému" zobrazování, a tedy i čtení, souborů v jazyce HTML. Uživatelské prostředí se snaží být co nejpodobnější standartnímu prohlížeči obyčejných textů v souborovém manažeru Volkov Commander.

    Program zvládá pouze základy HTML, proto nepomýšlejte na správné zobrazování tabulek (bylo okleštěno na minimum), rámečků apod. a už vůbec nečekejte správnou interpretaci dynamického HTML. Ono totiž vytvořit "překladač" tak "anarchistického" a zmatečného jazyka, jakým HTML bezesporu je, je dosti náročné a jeden smrtelník (já) to nemůže zvládnout. Také interpretace některých tagů je dosti svérázná, neboť nemám žádnou oficiální (ale i neoficiální) příručku HTML, takže celou strukturu HTML i funkčnost tagů jsem odpozoroval z konkurenčních prohlížečů (Netscape Navigator). Ale i přesto jsem se snažil o maximální funkčnost programu a doufám, že moji práci oceníte...

    1.1 Poznámky k programu

    Několik poznámek, které se mi už nepodařilo nějak smysluplně zahrnout do tohoto dokumentu:

  • Není dostatečně ošetřena blbuvzdornost, proto zadávejte (zvláště v přík. řádce) parametry přesně tak, jak jsou popsány.
  • Program interpretuje mnoho tagů jen částečně a některých si nevšímá vůbec.
  • Zná tyto tagy: A, BR, CENTER, DIV, DL, FRAME, FRAMESET, HR, HTML, IMG, LI, META, P, PRE, SCRIPT, TABLE, TD, TITLE, TR
     , &#xxx;, <, &rt;, >, & a "
    <!-- a -->
    Moc toho neni...

    1.2 Verze programu

    Stručný vývoj tohoto programu:

    Verze 1.0.1

  • Velikost zdrojáku (.BAS(!)): 8 408b
  • Tato verze pouze obsahovala některé základní procedury pro výpis na obrazovku, nebyla však funkční...

    Verze 1.0.2

  • Velikost zdrojáku (.BAS(!)): 10 954b
  • Přidáno uživatelské rozhraní připomínající Volkov Commander
  • HTML se již zpracovává, zatím se pouze odstraní tagy. Vyjímkou jsou BR, CENTER a HR
  • Dokument se načítá a upravuje předem (při načítání nelze číst)

    Verze 1.0.3

  • Velikost zdrojáku (.BAS(!)): 25 989b
  • První verze s aktivními odkazy
  • Přidána citlivost na tagy P, HTML, TITLE, &nbsp;, &lt; a &gt;

    Verze 1.0.4

  • Velikost zdrojáku (.BAS(!)): 40 628b
  • Zrychleno načítání
  • Přidán procentuální ukazatel při načítání
  • Ošetření proti chybám (teprve po 4092 chybných instrukcích se ukončí běh programu)

    Verze 1.0.5

  • Velikost zdrojáku (.BAS(!)): 48 544b
  • Opraveno nezobrazování mezer v odstavci, který je ve zdrojovém kódu rozdělen na více řádků
  • Přidáno rozpoznávání kódování
  • Rozpoznání dalších tagů: META, LI a &rt;

    Verze 1.0.6

  • Velikost zdrojáku (.BAS(!)): 52 062b
  • První verze s průběžným zobrazováním načítaného textu
  • Odstraněna chyba v načítání pozice odkazu

    Verze 1.0.7

  • Velikost zdrojáku (.BAS(!)): 52 396b
  • Zpřesněno načítání tagů
  • Průběžné zobrazování funguje i při spuštěné diskové cache

    Verze 1.0.8

  • Velikost zdrojáku (.BAS(!)): 62 079b
  • Změněno nahrávací jádro (programátorsky přehlednější (ale ne o moc ;-)) a relativně asi o 10% rychlejší)
  • Program si odteď vytváří swapy v adresáři C:\ (dříve si je vytvářel v aktuálním adresáři, což např. znemožňovalo čtení vícesouborových HTML dokumentů přímo z CD apod.)
  • Odstraněny chyby při čtení znaků & a ;
  • Nyní již funguje čeština a speciální znaky (&...) i uvnitř tagů (v odkazech)
  • Odstraněna povinnost uvozovek u parametru v tagu
  • Opravena chybná interpretace tagů HR a P
  • Přidány tagy DIV, DL, PRE, TABLE, TD, TR, &amp; a &quot;
  • Program bere ohled na poznámky (<!-- -->) a nevšímá si scriptů (alespoň doufám).
  • Zobrazování podverze programu na obrazovce
  • Zvýšen počet možných chyb na 8192 (viz verze 1.0.4)

    Verze 1.0.9

  • Velikost zdrojáku (.BAS(!)): 73 208b
  • Možnost nastavení adresáře pro odkládání souborů
  • Opravena jedna z mnoha chyb při načítání všech tagů.
  • Byla mírně vylepšena interpretace těchto tagů: TABLE, TD, DIV a A
  • Vylepšeno načítání tabulek (každé políčko může mít svoje zarovnávání) (Ale v důsledku toho tabulky, které mají být uprostřed, jsou zarovnány. Logicky.).
  • Opravena chyba při vracení se na stejnou stránku (soubor), ale na jinou "kapitolu" (tag <A NAME...>)
  • "Podvědomé" počítání obrázků (tag IMG) pro statistiku.
  • Program skáče do podadresářů, pokud jsou v odkazech zadány (zatím nefunguje vracení se do adresářů pomocí tlačítka F2, kromě úplně prvního souboru (u něj se program pokouší zjistit cestu přes služby DOSu => může to blbnout).
  • Přidána možnost "odskočení si" do DOSu pomocí tlačítka F9.
  • Pod klávesovou zkratkou [Ctrl]+[F1] se nyní skrývá stručná statistika o souboru.

    Verze 1.0.A

  • Velikost zdrojáku (.BAS(!)): 85 618b
  • Pro možné včlenění do jiných programů přidána možnost změny velikosti zobrazovacího okna a s tím související nastavení.
  • Podle velikosti tohoto okna je také nastaveno rozlišení.
  • Brutálně zrychleno zobrazování a o něco míň brutálně zrychleno načítání.
  • Opravena interpretace tagu PRE a P
  • Zlepšeno zobrazování tagu &#xxx;
  • Přidáno (nebo spíše odebráno) zobrazování scriptu v tagu SCRIPT

    Verze 1.0.B

  • Velikost zdrojáku (.BAS(!)): 91 364b
  • Přidáno rozpoznání dokumentů, obsahujících rámečky (frames).
  • Zpřesněno načítání tagu HR
  • Možnost vypnutí ukládání obsahu obrazovky na začátku a konci programu (pomalé počítače).
  • Opravena chybka při načítání rozměrů zobrazovacího okna v parametru /s. Rozměr x2 se zobrazoval o jeden znak kratší než byl zadán.

    Verze 1.0.C

  • Velikost zdrojáku (.BAS(!)): 102 471b (obsahuje krátké popisky, aby se v tom něgdo aspoň trochu vyznal)
  • Začal jsem šířit s tímto programem i zdroják, ať se pobavíte.
  • Zpřesněno načítání tagu P - už to umí i zarovnávat do bloku (např. tento dokument)

    1.3 Užívání programu

    Tento program je volně šiřitelný (freeware). Žádná jeho součást nesmí být použita ke komerčním účelům. Vyprošuji si jakékoliv zasahování do programu. Vzhledem k tomu, že je šířen i zdroják, je jasný, že jeho části něgdo použije. Takže, člověče, pokud máš čisté úmysly a nehodláš prostřednictvím svého programu (jenž obsahuje části tohoto mého programu) dostávat peníze (nebo jiné "platidlo" - třeba ovce, voly, data,...) nebo tropit zlo, klidně to použij, ale aspoň mi jej pošli, abych viděl, co a jak...


    3 SPOUŠTĚNÍ

    Program se spouští z příkazové řádky s jedním a více parametry:
    htmlview <název souboru> [/t<odkládací cesta>] [/s<x1>,t<y1>,t<x2>,t<y2>] [/h] [/c] [/v] [/b] [/m] [/k|/l|/i|/w]
    První parametr je celkem jasný - název HTML souboru, jež má být prohlížen.
    Volitelný parametr /t, udává adresář, ve kterém si má program vytvářet pracovní (temp) soubory. Implicitně je nastaven na C:\. Další volitelný parametr obsahuje rozměry prohlížecího okna ve formátu x1,y1,x2,y2 (implicitně jsou nastaveny na 1,2,80,23). Čísla musí být oddělena čárkou bez mezery. Volitelný parametr /h zajišťuje skryté menu už při startu programu (zobrazuje se pouze prohlížecí okno; stejný výsledek jako u tlačítka [F4]). Volitelným parametrem /c se dá vypnout zobrazování copyrightu na konci programu a viditelné hlášení chyb (kvůli zabudování do jiných programů). Volitelný parametr /v pouze načte tu část HTML textu, která se vejde na obrazovku a ukončí program bez smazání obrazovky (taktéž kvůli zabudování do jiných programů). Parametr /b vypíná ukládání obsahu obrazovky na začátku a jeho zobrazení na konci programu (na pomalejších počítačích tato "srandička" zabírá dost času...). Parametrem /m lze nastavit programový buffer na odkazy a návěstí (implicitně 2000). Poslední volitelný parametr udává, v jakém kódování se bude zobrazovat na monitoru čeština (/k - bří Kamenických, /l - Latin2, /i - ISO 8859-2, /w - Windows 1025). Pokud jej nezadáte, program se pokusí zobrazovat text bez hacku a carek. Program totiž (podle tagu META) rozpoznává (pouze) české kódování ve standartech ISO 8859-2 a Windows 1250. Implicitně při spuštění programu je (vzhledem ke statistice, kterou jsem si udělal) nastaveno kódování Windows 1250 (bohužel, ale v našich končinách nejběžnější...). Tolik ke kódování dokumentu. Pokud jde o výstup na obrazovku, přidává se ještě Latin2 a kódování bratří Kamenických. Jestliže tedy chcete české znaky vidět na monitoru, zadejte parametr s lomítkem a písmeno za ním (shodné se začátečním písmenem jednotlivých kódování) určuje, v jakém kódování se bude provádět výstup. Pokud parametr nezadáte, program se bude snažit kódování odstranit, tj. provést výstup bez českých znaků (bez hacku a carek).

    Po spuštění programu následuje příprava tabulek pro konverzi češtiny (chvilička). A pak se začne načítat a průběžně zobrazovat dokument. (Jak se v něm pohybovat je popsáno v kapitole Ovládání.) Vzhledem k tomu, že je tento program vytvořen (a hlavně zkompilován) v Qbasicu, i u krátkých HTML dokumentů trvá velmi dlouho jejich úplné načtení. Průběžné zobrazování to jenom zpomaluje (asi o 15%), a proto mi napište, zda je tato funkce opravdu tolik potřebná, anebo jestli ji v zájmu větší rychlosti oželíte.

    2.1 Požadavky na HW/SW

    Herodes HTML View 1.0 je vytvořen v Qbasicu, jehož compiler potřebuje MS DOS 2.10 a vyšší. Dále doporučuji trochu základní paměti, barevnou obrazovku a rychlejší (Pentium, ale to není podmínkou, jde o čas) počítač.

    POZOR! Program si vytváři swapy (pracovní soubory) v adresáři C:\. Jejich velikost je přibližně stejná jako velikost prohlíženého HTML dokumentu. Musí být na disk C: umožněn přístup ke čtení i zápisu. Pokud pracujete například v síťovém prostředí, kde není umožněn zápis na C:\, použijte parametr /t z příkazové řádky a nastavte jej na cestu, do které máte 100% přístup.

    2.2 Odkazy

    Původně jako srandičku, později (když se ukázalo, jak je to složité) jako jednu z hlavních částí programu jsem přidal také aktivní HTML odkazy. Jejich pomocí se lze pohybovat mezi dokumenty, které máte na disku. Program NEpracuje s připojením na internet, a tudíž nemůže načíst dokument, který u vás fyzicky neexistuje! Proto pomocí odkazů skákejte jen tam kam víte (to je ale věta ...;-)). A pokud vás odkazy budou štvát (docela to zpomaluje scrolling), nebo se budou špatně zobrazovat, lze je "vypnout" pomocí klávesy [F8]. Jestliže dokument obsahuje odkazy v podobě obrázků, tabulek a jiných objektům HTMLView je nedokáže zobrazit, a proto se vypisují pouze v dolním, stavovém, řádku a jsou označeny jako "Hidden Skip:" (kdežto ostatní odkazy pouze jako "Skip:").


    3 OVLÁDÁNÍ

    Vzhledem k tomu, že program se chce co nejvíce přiblížit Volkov Commanderu (viz kap. 1), i ovládání bude podobné. Vypustil jsem ovládání myší, neboť mi to připadalo zbytečné (a ještě ke všemu do tak pomalého programu přidávat další "zatěžující" prvek je skoro sebevražda). Zbývá tedy pouze klávesnice:

    3.1 Klávesnice

    [F10] nebo [Esc] - ukončí program

    šipky nahoru a dolu - pohyb v textu nahoru a dolu po řádcích
    [PgUp] a [PgDown] - pohyb v textu nahoru a dolu objednu obrazovku
    [Tab] - pohyb mezi jednotlivými odkazy
    [Shift] + [Tab] - "nastaví" obrazovku na aktuální pozici odkazového kurzoru
    [F6] - nastaví aktuální pozici odkazového kurzoru na první odkaz začínající na obrazovce (jestliže takový existuje)

    [F1] - Zobrazí (velmi) stručnou nápovědu
    [Ctrl]+[F1] - Zobrazí statistiku prohlíženého souboru
    [F2] a [F3] - Pohyb mezi jednotlivými dokumenty, které byly načteny po aktivaci odkazu, dopředu a dozadu
    [F4] Skryje, nebo ukáže menu vrchní lištu a další prvky, které s prohlíženým textem nesouvisejí.
    [F5] - zkonveruje HTML dokument do obyčejného ASCII textu. Tato funkce je zpřístupněna až po úplném otevření dokumentu. Po jejím spuštění se objeví dialog, kde se nastavuje šířka (ve znacích - 80 znaků je šířka obrazovky v DOSu) zarovnávání textu (parametr Width of text) a také výstupní soubor (parametr Filename). Tlačítko [Ok] akci potvrdí, [Cancel] zruší.
    [F7] - Nalezne text v HTML dokumentu
    [F9] - Skočí do DOSu (pokusí se spustit command.com) [F8] - Vypne zobrazování odkazů v dokumentu


    4 AUTOR

    Tento program jsem udělal a to v Qbasicu, což je sebevražda. Doufám, že se vám líbil a že vám alespoň k něčemu byl. Mě dodal zkušenost, že se do takovejch věcí už radši nebudu pouštět (eště by to byl příště compiler C++ v Qbasicu ;-) - speciální počítačovej humor pro Cobenanta ;-)) huh <->). No, mějte se rádi, milujte se a množte se a tak vůbec.


    Menuju se Honza Frič, žiju v Čechách a mám emajl, kterej už vybírám.

    HOnza FRič, <zuzu@prog.cz>
    <http://members.prog.cz/zuzu>
    Herodes Software, <http://www.herodes.8m.com>