Autor: Michal Pohořelský Uveřejněno: CHIP 02/97, str. 108-109 Boxer a pan Edáček
Kvalitní textový editor je aplikací, která rozhodně nesmí chybět žádnému uživateli operačního systému. Ačkoliv každý grafický i textový OS Vám nabídne vlastní integrovaný editor, ve většině případů jeho možnosti nestačí potřebám běžného uživatele. A proto se dostávají ke slovu aplikace profesionální (MS Word, WordPerfect) nebo sharewarové (Boxer, MicroEMACS). V systému OS/2 Warp CZ můžete díky integrovaným Windows 3.1 používat velkou většinu běžně dostupných profesionálních i sharewarových editorů. Protože však bylo o vlastnostech komerčních programů napsáno velké množství článků i knih (MS Word 6.0), budeme zde srovnávat dva sharewarové editory, které byly vytvořený přímo pro systém OS/2. Porovnávané programy samozřejmě patří mezi 32-bitové aplikace s plnou podporou systémů HPFS a FAT.
BOXER/OS2 verze 7.0 (BOXER)
Editor BOXER, který byl v roce 1994 prohlášen za nejlepší sharewarový editor v USA a obdržel prestižní ocenění SIAW (Shareware Industry Award Winner), existuje ve třech různých verzích. Verze BOXER/DOS představuje textový DOS editor pro nepříliš náročné uživatele, který umí využít pouze základní paměť (640 KB). BOXER/TKO je také textový DOS editor, který však umí využít paměť XMS i EMS a dovoluje editovat soubory velké až 24 MB (velikost je limitována RAM). BOXER/TKO je kompatibilní s Windows 3.1 i s OS/2 VDM relací a v plné míře využívá DPMI paměť. BOXER/OS2 je verze editoru optimalizovaná pro systém OS/2, která má mnoho společných rysů s verzí BOXER/TKO.
Všechny tři verze editoru, které mohou být umístěny v jednom společném adresáři, podporují pouze ASCII text. Ačkoliv je BOXER zaměřený na lid programátorský, najdete v něm řadu funkcí, které byste ve svém českém grafickém editoru (T602, MAT, Klasik) hledali marně. Podrobná nápověda ke každé funkci v menu je samozřejmostí. Všechny operace modifikující jakýmkoliv způsobem text podléhají komfortní dvojici příkazů UNDO / REDO, která je schopna zachytit až 4095 posledních editačních změn. Při editaci můžete využít funkce pro swapování a klonování jednotlivých řádek. Uživatel může pomocí standardních příkazů Cut, Copy a Paste uchovávat jednotlivé části textu v 26 (!) nezávislých schránkách (clipboardech). Funkce Cut-Append a Copy-Append navíc umožňují přidávat do již zaplněné schránky další text. K dispozici je mocný soubor funkcí pro globální vyhledávání a nahrazování textu či jiných znaků (EOF,FF,ESC apod.) ve všech otevřených souborech najednou (funkce Search All, Replace All). Každý programátor určitě ocení barevné zvýrazňování klíčových slov v následujících programovacích jazycích:
C a C++, PASCAL, Ada, Modula 2, QuickBASIC 4.5, AutoLisp, MS FORTRAN, MVS Cobol 2, DBASE, FOXPRO 2.5, PROGRESS 6.0, Paradox 4.0 PAL, OS/2 REXX, DOS Batch soubory, 4DOS/4OS2 Batch soubory, LaTeX a několik dalších. Škoda jen, že zatím chybí podpora nového hitu - jazyka JAVA.
Přínosem při kompilaci zdrojového kódu je také automatický skok na řádku s chybou, což výrazně usnadní odstraňování všech chyb. Boxer podporuje téměř neomezený počet oken, které se všechny, v případě potřeby, mohou synchronně posouvat určeným směrem, což opět může značně usnadnit vytváření programu. Kromě toho se vybrané okno může (bez asistence uživatele) automaticky posouvat určeným směrem a rychlostí (funkce Auto-Scroll).
Při práci s textem je možné definovat řádkový i sloupcový blok. Na textový blok je potom možné aplikovat mnoho funkcí (např. zde můžeme definovat tabulátory). Zabudovaný kalkulátor sice pracuje pouze na příkazovém řádku, ale kromě základních funkcí umí také pracovat v hexadecimální, oktalové a binární soustavě. Do jeho výbavy patří také logický AND, logický OR a bitové posuny doprava či doleva. Funkce Multiply je výhodná, když potřebujeme zadaný znak několikrát za sebou opakovat. Pravítko (Ruler) nám zase pomůže precizně pracovat s textem či semigrafikou při důležitých úpravách. V BOXERu pochopitelně nechybí ani ASCII tabulka vyjádřená v decimální, hexadecimální, oktalové i binární soustavě. Naprostou samozřejmostí je rovněž dvojice funkcí pro vkládání aktuálního datumu a času. Komfortní výbavu BOXERu dále doplňuje jednoduchý kalendář, funkce simulující psací stroj (Typewriter) a integrovaný režim pro inteligentní kreslení semigrafických obrazců. Teď už se zbývá krátce jenom zmínit o dalších 4 menu :-).
V menu Goto najdete velký počet funkcí pro skok kurzoru na pevně určená místa v otevřeném souboru (Začátek / Konec souboru, slovo Vpravo / Vlevo, Začátek / Konec řádky apod.). Uživatel si však sám může definovat až 20 dalších pozic, které považuje při přesouvání v textu za důležité. V menu WP se ukrývá několik funkcí pro nastavení tiskových kódů, šířky textu, centrování řádků a přeformátování vybraného textu. K rozsáhlému nastavení prostředí editoru slouží menu Options. V menu Macro je k dispozici devět funkcí, které vám maximálně usnadní vytváření, odlaďování a používání maker. V nejnovější verzi editoru je totiž možné používat až 100 aktivním maker najednou.
Celkově je možné říci, že BOXER/OS2 je téměř dokonalým programem, který svými schopnosti překonává řadu komerčních editorů.
Mr. ED verze 1.12 (ED)
Editor ED je mnohem profilovanějším programem než BOXER. ED pracuje pouze v grafickém prostředí WPS a je určen téměř výhradně programátorům (podporuje také pouze ASCII). ED má sice o hodně méně funkcí než Boxer, ale jeho uživatelé nepochybně ocení implementované výhody grafické prostředí a několik specializovaných programátorských nástrojů, které v BOXERu nenajdete.
Plocha aplikačního okna ED je rozdělena na tři části. V horní třetině najdete celkem devět menu a nástrojovou lištu. Nástrojovou lištu je možné velmi komfortně nakonfigurovat včetně libovolného pořadí ikonek nebo přidání dalších ikonek uživatelem. Při používání lišty pomáhá programátorovi bublinková nápověda. Druhou třetinu okna tvoří editační okno (okna), kde se zobrazují načtené textové soubory. V editačním okně funguje silná podpora techniky přetahování myší (Drag and Drop). Dolní třetinu okna tvoří konfigurovatelná informační řádka. ED přímo podporuje následující programovací jazyky:
C a C++, JAVA, Pascal, Ada, OS/2 REXX a LaTeX.
Výčet podporovaných jazyků sice není vůči BOXERu nijak oslnivý, ale právě podpora Javy znamená, že ED možná bude patřit mezi důležité pomůcky každého vývojáře při vývoji nějaké nové a skvělé aplikace pro OS/2 4.0 (Merlin). ED navíc respektuje souborový formát Unixu (zatímco v OS/2 jsou řádky ukončeny znaky CR+LF, v Unixu jsou řádky ukončeny jenom znakem LF), takže s ním můžete vytvářet programy (pochopitelně v C/C++) také pro LINUX či jiný oblíbený Unix systém. V editoru ED všechny operace modifikující text podléhají dvojici příkazů UNDO / REDO, která je schopna zachytit až 400 posledních editačních změn. Standardní příkazy Cut, Copy a Paste je možné používat k uchování části textu do jedné schránky (clipboardu). Funkce Append navíc umožňuje přidávat (bez vymazání označeného bloku) do již zaplněné schránky další text. Pro práci s blokem textu nabízí ED kromě běžných funkcí také možnost posouvat celý blok doleva nebo doprava o jeden sloupec.
Mnoho možností má vývojář také při vyhledávání a nahrazování textu či jiných znaků (LF,CR,FF), ale hlavní předností editoru je Section Browser. Section Browser je členité dialogové okno, které umí přehledným způsobem zobrazit všechny sekce (podprogramy) v programovacím jazyku nebo třeba v CONFIG.SYS souboru. Pokud vytvářený program nebo text je dlouhý, můžeme si nastavit libovolný počet značek, které nám později výrazně usnadní přesouvání v souboru (nejsme omezeni na 20 jako u Boxeru). Pro další použití mohou být navíc značky uloženy v EA (extended file attributes). Jestliže při vytváření programu máme nejasnou představu o možnostech určitého příkazu, stačí zvolit funkci Help on keyword (horká klávesa CTRL+H), která nám automaticky zavolá dostupnou externí nápovědu (včetně REXX příkazů a funkcí). Součástí editoru je samozřejmě i pět výkonných funkcí pro vytváření a používání maker, ale BOXER nabízí lepší makro-funkce. Na druhou stranu ED není ovšem limitován počtem aktivních maker. Profesionál pracující v C/C++ (Pascal začíná ztrácet na významu) přitom nepochybně ocení následující integrované funkce:
Tool manager - představuje členitý dialog umožňující libovolné spouštění, přidávání, modifikování, vymazávání (z seznamu) a kopírování vybraného kompilátoru nebo jiné utility.
Output window - zobrazuje textové zprávy, které produkuje spuštěný (přes Tool manager) kompilátor. Zprávy mohou být barevně odlišeny podle závažnosti (zpráva o chybě při kompilaci bude určitě červená). Po ukončení kompilace je možné okamžitě začít opravovat případné chyby pomocí funkcí Previous error a Next error.
Celkově je možné říci, že ED je výkonný specializovaný editor pro vyspělé programátory.