Úvodní stránka

rkEdit 4.7

rkEdit je plnohodnotný multifunkční editor se zvýrazněnou syntaxí, který kromě jiného umožňuje psát dokumenty či zdrojové texty programů, bez problémů je nechat přeložit externím překladačem a následně spustit. Dovoluje editování více souborů najednou, oplývá jednoduchým ovládáním (otevírání, zavíraní, práce s bloky - sloupcové i řádkové, seznam nejpoužívanějších souborů, odsazování řádků a další), makra na vkládání data a času, zvětšování či zmenšování písma, vyhledávání a nahrazování, export do HTML a RTF, třídění, podpora češtiny, šablony a další. Všechny soubory je možné ukládat do projektů, mít vlatní ToDo seznam apod. K tvorbě tabulek slouží Průvodce tvorbou tabulky. Pro případné další rozšíření je možné napsat si uživatelský skript. Pracujete-li s databázemi, je možné se k nim připojit pomocí plug-inů a provádět různé operace.

Seznam základních témat nápovědy

  • Vlastnosti programu

  • Požadavky na systém

  • Klávesové zkratky

  • Proč zrovna rkEdit?

  • Pro koho je rkEdit určen?

  • Co je rkEdit (vnitřnosti)?

  • Příklady použití

  • Databázové moduly

  • Uživatelské skripty

  • Nastavení typů souborů

  • Třídění

  • Podpora češtiny

  • Podpora XML

  • Šablony

  • Projekty

  • Průvodce tvorbou tabulky

  • Historie aneb co je nového

  • ToDo List aneb co může být v další verzi

  • Seznam známých chyb

  • Opravené chyby

  • Neznámé chyby?

  • Ocenění, zpětná vazba

  • Otázky a odpovědi

Licence

Tento program je FreeWare s jediným omezením: zašlete mi informaci o tom, že rkEdit používáte. Šířen smí být pouze tak, jak byl stažen ze své hlavní stránky, tedy se všemi soubory a adresáři v nezměněné podobě. Při používání nesmí být porušen žádný zákon platný v dané zemi.

Konference

Pro zájemce nejen o novinky týkající se rkEditu, ale také o diskusi nad produktem byly zřízeny dvě konference:

  • rkEdit@pandora.cz (archív dostupný na adrese http://www.pandora.cz/list/rkedit)

  • rkEdit-d@pandora.cz (archív dostupný na adrese http://www.pandora.cz/list/rkedit-d)

Konference rkEdit@pandora.cz je určena pro libovolnou diskusi nad rkEditem jako jsou návrhy na zlepšení, oznámení o nedostatcích a další.

Konference rkEdit-d@pandora.cz slouží pro zájemce o Alfa a Beta verze rkEditu. Zde posílám informace o průběžných verzích a zájemci mohou sledovat postupný vývoj a vyjadřovat se k němu. Tato konference není aktuální po celou dobu životnosti rkEditu, ale pouze občas.

Přihlášení do konferencí probíhá ve dvou krocích:

  1. Proveďte jednu z následujících tří možností

    • Pošlete mail na adresu mailman@pandora.cz s textem subscribe rkedit resp. subscribe rkedit-d

    • Vyplňte formulář přímo na Pandoře (http://www.pandora.cz)

    • Vyplňte formulář na stránce rkEditu resp. Alfa programu rkEditu.

  2. Dostanete mail z maillist serveru, na který prostě odpovězte. Přijde vám potvrzení o zařazení do konference.


Historie

  • 31. března 2003 Verze 4.7

    • Nové: Podpora ASP kódu v HTML stránkách. ASP kód je mezi řetězci <% a %> a <script runat="server"> a </script>, resp. <script runat='server'> a </script>.

    • Nové: Podpora UNICODE a UTF-8. Funguje stejně jako v případě načítání souborů z disku v kódování Kamenických, Latin2 či ISO 8859-2. Bližší informace v tématu Podpora češtiny.

    • Nové: Možnost zvolit si formát datumu pro operaci databázových modulů Copy grid to clipboard as INSERT commands... dostupnou v kontextovém menu datové mřížky. Bližší informace v tématu Základní nastavení.

    • Nové: Klávesová zkratka pro ToDo List, Ctrl+Shift+D

    • Rozšířeno: Adresář uvedený v projektovém nastavení má další význam. Při otevření projektu je při prvním použití Open a Save dialogu nastaven výchozí adresář právě na zmíněný adresář (je-li samozřejmě nastaven). Navíc pokud vytvoříte nový projekt, je automaticky nastaven výchozí adresář jako Defined by project file location.

    • Změněno: Pokud se má spustít dřívější instance a ta dostane seznam parametrů, zkusí se zobrazit jako top-most okno.

    • Opraveno: Při použití databázových pluginů v některých případech se po zobrazení výsledné datové sady zobrazil dialog s výjimkou (E099).

    • Opraveno: Pokud na záložce Computer zvolím tlačítko pro projektový adresář a nastavovaný adresář neexistuje (např. jde o nový, dosud neuložený projekt), dojde k výjimce.

    • Opraveno: Označit blok, přepnout se na projektový strom a zvolit příkaz copy (Ctrl+C) - dojde k výjimce (E101).

    • Opraveno: Zástupka %SELECTED= je case sensitive (nyní již není) (E102).

  • 5. března 2003 Verze 4.6

    • Nové: Možnost tisku pouze textu označeného v bloku.

    • Nové: Zobrazování seznamu záložek v okně.

    • Nové: Nová verze editační komponenty.

    • Nové: Pokud pracuji s datovou mřížkou nebo s popisem výsledné sady (umožňují jen některé databázové pluginy), tak pomocí Ctrl+C lze kopírovat obsah vybraného políčka.

    • Nové: V kontextovém menu souboru je záložka Pages, kde jsou všechny otevřené soubory.

    • Nové: Úvodní obrazovka.

    • Nové: Zástupky a proměnné typu %cosi% (používá se v šablonách, v nastavení pro překlad a uživatelských příkazů) - pokud nenajdu uvedenou zástupku (proměnnou) v definovaných proměnných, zkusí se použít proměnná systému.

    • Nové: V nastavení uživatelských příkazů je nyní možné určit, zda se zobrazí dialog, který čeká na dokončení běhu aplikace.

    • Změněno: Název zvýrazňovače pro Javascript změněn na JScript (JavaScript). Pokud jste používali starší verzi a chcete, aby se změna promítla i v typech souborů v Open/Save as dialogu, musíte v nastavení zvýrazňovače na záložce Extensions změnit Filter name.

    • Změněno: Pokud se do datové mřížky dostane datový typ memo, již se nezobrazuje text (MEMO), ale zobrazí se přímo obsah tohoto mema.

    • Změněno: Příkaz na vymazání atributu read-olny načteného souboru nyní provádí zapnutí/vypnutí tohoto atributu.

    • Opraveno: Pokud je otevřené Output okno, zavřou se všechny soubory a nakonec se chce zavřít i Output okno, dojde k výjimce (E095).

    • Opraveno: Pokud v nastavení zvýrazňovače změním Filter name, projeví se to až po restartu rkEditu (E096).

    • Opraveno: Pokud provedl dablklik pod slovem na posledním řádku soubor, jež nemá nastaven zvýrazňovač, dojde k výjimce (E097).

    • Opraveno: V případě zobrazení okna s výjimkou se špatně vykoná po kliknutí na odkaz s mailem spuštění standardního e-mailového klienta (E098).

    • Opraveno: Některé zvýrazňovače při dvojkliku na slovo jej neoznačí celé, pokud obsahuje znaky š, ž, ť (bez ohledu na velikost) (E089).

  • 3. února 2003 Verze 4.5

    • Nové: V projektovém stromě funguje přetahování souborů mezi projektem a „ostatními soubory“ pomocí myši. Je nutné si uvědomit, že pokud přetáhnete soubor, který není otevřen, z projektu do ostatních souborů, pak položka zmizí úplně (chová se to úplně stejně jako příkaz Delete file from project).

    • Nové: V kontextovém menu projektového stromu přibyl příkaz „Move all from Other files to project“, který všechny soubory, které spadaní pod větev Other files přesune do větve projektu.

    • Nové: Dvě nové klávesové zkratky:

      • Shift+Ctrl+E - zobrazí/schová Extended Window

      • Shift+Ctrl+T - zobrazí/schová Projektový strom

    • Upraveno: Pokud se databázový plugin snažil vložit víceřádkový text do svého okna, v některých případech se místo nového řádku pouze vložily dva obdélníčky. Nyní se vždy text správně rozdělí na více řádek.

    • Opraveno: TableWizard: pokud se jako zdroj dá ToDo list, tak u položek, které nejsou označeny jako splněny, udává datum splnění 31.12. 1899 (E094).

  • 13. ledna 2003 Verze 4.3

    • Nové: Soubory v projektovém stromě lze třídit dle názvu souboru (tak to bylo do teď), přípony (pokud jsou shodné, bere se v potaz i název) a data (pokud jsou shodné, bere se v potaz i název). Příkazy jsou umístěny v kontextové nápovědě. Pokud se zvolí jeden příkaz podruhé, dojde k setřídění v opačném pořadí.

    • Nové: Pro skriptování přibyly některé nové metody a objekty:

      • V objektu Editor metoda NewFileWithHighlighter

      • V objektu System metoda FileExists a FileToString

      • Objekty Variables a Constants pro trvalé uchovávání hodnot

      • Vše je popsáno v nápovědě ke skriptování. Taktéž je dobré se podívat na vlastnosti Version a SupportVersion objektu System, které s touto verzí nabyly na významu.

    • Rozšířeno: Pokud je použit zvýrazňovač HTML nebo PHP se zaškrtnutým Smart přepínači, pak šablony jsou nabízeny v závislosti na jazyku, na kterém se nachází kursor.

    • Opraveno: Pokud se použije příkaz "Save as" a zvolí se název souboru, který již existuje a není otevřen projekt, dojde k výjimce (E091).

    • Opraveno: Pokud uživatel jako zvýrazňovač zvolí HTML nebo PHP a je pro něj zaškrtnuto smart, není na to při otevření souboru brán ohled (E092).

    • Opraveno: News from Web: pokud nebyla žádná novinka v Newsech a uživatel nechtěl vidět starší, pak nebyl zapsán správný (tedy aktuální) datum posledního zjišťování novinek (E093).

  • 2. ledna 2003 Verze 4.2

    • Nové: Uživatel si může zvolit ukončování řádků (ve smyslu zda tam budou znaky CRLF, CR nebo LF). Jednak to jde u aktuálně otevřeného souboru pomocí kontextového menu nebo menu Edit a jednak si lze nastavit výchozí hodnotu v Základním nastavení v sekci Format.

    • Nové: Vyhledávání ve stylu MultiEditu: pomocí příkazu Select and search forward resp. backward se při první volbě označí slovo, na kterém je kursor, a při další volbě se vyhledá další (předchozí) výskyt téhož slova. Přikazy jsou v menu Search, klávesové zkratky jsou Ctrl+Alt+šipka dolu resp. nahoru.

    • Nové: Ukládání nastavení tisku (menu File, položka Page Setup).

    • Opraveno: Delete redundant spaces - problem, pokud je posledni řádek neprázdný (E088).

    • Opraveno: Pokud se uloží nový soubor nebo se provede příkaz Save as..., není tento soubor vložen do menu Reopen (E090).

  • 9. prosince 2002 Verze 4.1

    • Nové: Převody mezi číselnými soustavami (menu Special, položka Number system conversions...).

    • Rozšířeno: V Průvodci tvorbou tabulky lze jako zdroj uvést i ToDo list a databázovou mřížku.

    • Rozšířeno: Záložky, na kterých jsou napsána jména editovaných souborů, lze zobrazit i jako (plochá) tlačítka. Nastavení se provede v dialogu Main settings v sekci Gutter & File pages.

    • Rozšířeno: V menu File, podmenu Reopen lze nechat u souborů zobrazit i plnou cestu (v dialogu Main settings, sekce Others, zaškrtávací pole Show files' full path in Reopen menu.

    • Rozšířeno: ToDo List:

      • Označení ToDo položky jako hotové jde i pomocí kontextového menu nebo pomocí tlačítka na liště.

      • Po editaci či vytvoření ToDo položky na této zůstane kursor.

    • Rozšířeno: Soubor lze zavřít prostředním tlačítkem myši nebo při stisku levého tlačítka myši a současném stisku klávesy Alt. Při stisku pravého tlačítka myši (kontextové menu) na jazýčkem s názvem souboru nejprve aktivuje tento soubor, nad jehož záložkou bylo stištěno pravé tlačítko myši.

    • Rozšířeno: Při použítí vyhledávacího a nahrazovacího dialogu je položka "Selected text only" automaticky zaškrtnuta, je-li označen blok. Pokud žádný označen není, je tato položka nepřístupná (a nezaškrtlá).

    • Rozšířeno: Kontextové menu na editovám souboru v podmenu Block/Text operations obsahuje příkazy pro odsazení a přisazení bloku.

    • Upraveno: Po zvětšení či zmenšení písma (ctrl + num + resp. ctrl + num -) se může kursor dostat mimo obrazovku - nyní je zajištěno, aby byl vždy vidět.

    • Upraveno: ASCII table má definovanou minimální výšku.

    • Opraveno: Pokud se v záložce Computer smaže nebo přejmenuje soubor, rkEdit to nesprávně zobrazí (E087).

  • 1. prosince 2002 Verze 4.0

    • Nové: Skriptování - díky uživatelským skriptům lze dále rozšiřovat možnosti editoru.

    • Nové: Při otevřeném projektu a zobrazeném projektovém stromě se lze v tomto přepnout na další záložku (ty jsou umístěny dole), kde je možné procházet diskem (souborový průzkumník). Dvojité kliknutí otevře soubor v rkEditu, na pravé tlačítko se zobrazí systémové kontextové menu.

    • Nové: Možnost zjišťování aktuálních informací z Internetu (menu Help, položka News from web, nastavení probíhá v rámci Základního nastavení, sekce News from web).

    • Nové: Seznam otevřených oken (klávesová zkratka Alt+0, menu View, položka Windows list).

    • Nové: Statistika editovaného souboru - menu File, položka File statistics.

    • Nové: Pro pravou závorku lze dohledat levou párovou závorku (menu Search, položka Find matching bracket) - kurzor musí být před závorkou.

    • Nové: Veškerá uživatelská nastavení rkEditu jsou nyní v adresáři Settings (neplatí pro databázové moduly, zde je potřeba sledovat dokumentaci ke každému z nich).

    • Nové: Projekt má tzv. projektové nastavení, kde se nastavují základní vlastnosti aktuálního projektu.

    • Nové: V základním nastavení lze říct, aby si rkEdit nepamatoval poslední načtené soubory.

    • Nové: Součástí distribuce je mj. soubor PoweredByrkEdit.gif, které můžete začleňovat do svých produktů.

    • Rozšířeno: Při ukládání souboru je v Save dialogu nastaven filtr odpovídající aktuálnímu zvýrazňovači.

    • Rozšířeno: Zobrazovani textu <null> v databázové mřížce (má význam u databázových modulů).

    • Rozšířeno: Volitelné zvětšování/zmenšování seznamu databázových připojení.

    • Rozšířeno: Seznam databázových připojení se může zobrazit automaticky až při načtení všech modulů (nastavit lze v dialogu základní nastavení, sekce DBPlugins).

    • Rozšířeno: Šířku sloupců v aktuálně zobrazené datové mřížce lze upravit na základě zobrazených dat, po každém novém příkazu vracející datovou množinu lze toto zarovnání udělat automaticky (nastavit lze v dialogu základní nastavení, sekce DB Plugins).

    • Rozšířeno: Export databázové mřížky do Wordu a Excelu (dostupné přes kontextové menu na mřížce).

    • Rozšířeno: V extended window je nyní popup menu s možností toto okno skrýt.

    • Rozšířeno: Dialog Input text for template obsahuje ve svém záhlaví název šablony.

    • Upraveno: Změna menu Edit.

    • Upraveno: Pokud je otevřeno více souborů a jeden se zavře klávesovou zkratkou, pak se stane aktivní další soubor (dříve byl kurzor mimo editační komponentu).

    • Upraveno: Dialog základní nastavení.

    • Upraveno: Podpora XML. Některé nativní funkce byly zrušeny a jsou nahrazeny uživatelskými skripty. Vyšel jsem tak vstříc těm uživatelům, kteří podporu XML nepotřebují a tedy zbytečně zabírají prostor.

    • Upraveno: Po dokončení průvodce tvorbou tabulky se okno přeroluje na místo, kde je kursor.

    • Upraveno: Podpora XML je nyní zajišťována skripty.

    • Opraveno: Zdvojený hotkey v Search&Replace dialogu (Search a Select). (E076)

    • Opraveno: Pokud je defaultní tiskárna nastavená síťová a ta je vypnuta, dojde k výjimce při startu aplikace a tedy nedojde k její inicializaci (E078).

    • Opraveno: Některé potvrzovací dialogy jsou závislé na OS a dávají názvy tlačítek dle OS (teď je vše anglicky). (E079)

    • Opraveno: Pokud se editoru předhodí soubor jako parametr a ten není zadán plnou kvalifikovanou cestou, pak při případné změně adresáře (např. v Open dialogu) se soubor začne ukládat ve změněném (aktuálním) adresáři. Tohle vadilo např. ve Windows Commanderovi, pokud se rkEdit nastavil jako editor a uživatel chtěl editovat nový soubor (Shift+F4). (E081)

    • Opraveno: pokud je nastaveno kódování primárních souborů na ISO8859-2, nezaškrtne se správně položka menu (E082).

    • Opraveno: Když se odebírá z projektu soubor (v projektovém stromě), který není otevřen a současně je v seznamu nad ním nějaký další neotevřený soubor, je odstraněn tento (E035).

    • Opraveno: Ascii table: Pokud se stiskne klávesa, která má i svou hodnotu ve velkých (malých) písmenech, špatně se zobrazí aktivní znak (E067).

    • Opraveno: Pokud se dá Enhanced new a zvolí se první zvýrazňovač, pak je vybráno jako by se zvolilo No highlighter (E083).

    • Opraveno: Connection tool bar: pokud má být zobrazen automaticky při načtení pluginů, tak se to neprojeví v menu (popup a view)(E084).

    • Opraveno: Pokud je v projektu soubor typu \\server\... tak je sice správně uložen, ale již není načten, protože se zkomolí jméno (E085).

    • Opraveno: Pokud je nastaven sloupcový blok, žádný ale není označen a zvolí se konvertovat text z jednoho kódování češtiny do druhého, potvrdí se dotaz na celý text, tak to nezkonvertuje správně (vůbec) (E086).

  • 21.5. 2002 Verze 3.12

    • Nové: Nastavení zvýrazňovače i volitelně. Toho lze dosáhnout jednak při vytvoření nového souboru pomocí příkazu Enhanced new..., nebo kdykoliv během editace pomocí kontextového menu souboru a volby Change highlighter. Pokud je zvýrazňovač různý od standardního, je tato skutečnost zaznamenána a při dalším otevření soboru brána na zřetel. Takto si rkEdit standardně pamatuje 100 souborů.

    • Nové: V základním nastavení lze zvolit defaultní zvýrazňovač při volbě New z menu File.

    • Nové: Příkaz copy funguje i v output windows a textových výstupních oknech databázových modulů.

    • Rozšířeno: Pokud je nastaveno jiné kódování než default, pak při ručním převodu mezi kódováními se optat, zda opravdu udělat, když to po uložení bude změněné (může v tom být pěkný hokej).

    • Opraveno: Pokud se spustí rkEdit bez parametru a předtím nebyl otevřen žádný soubor ani projekt, nedojde k inicializaci hlavičky a patičky pro tisk. (E072)

    • Opraveno: Modifikovaný projekt -> zavření aplikace -> dotaz -> cancel -> přesto se aplikace ukončí (E069)

    • Opraveno: Multiple clipboard: při zobrazení je mimo pracovní plochu (v případě malých rozlišení) (E066).

    • Opraveno: Špatně funguje ctrl+šipka doleva či doprava na slovech s českou diakritikou (od verze 3.10 díky bové verzi SynEditu) (E073)

    • Opraveno: Pokud vyhledávám a nahrazuji dlouhý text (přes 100 znaků), dialog s dotazem se zobrazí někde úplně ve fuč (E055).

    • Opraveno: Pokud je již jednou ToDo položka označena jako Done, nelze ji „oddonovat“ (E058).

    • Opraveno: Pokud je u zvýrazňovače HTML nastavena vlastnosti Smart a vloží se tag skript, pak nesmí být case sensitive, jako je nyní (E068).

    • Opraveno: Příkaz Close block to XML tag špatně uchovává data zadaná do rozbalovacího seznamu (E053).

    • Opraveno: Pokud je dán jako parametr soubor s DOS 8.3 compatible cestou, a tento je již otevřen s dlouhou cestou, je otevřen znovu v novém okně (E011).

  • 12. 4. 2002 Verze 3.11

    • Nové: V nastavení je možnost, aby se v Open Dialogu vždy zobrazovala přednastavená přípona *.* bez ohledu na aktuální otevřený soubor.

    • Opraveno: V Settings dialogu se při některých změnách neaktivovalo tlačítko Apply (E065).

    • Opraveno: Pokud se přihlásím k jediné databázi a pak se odhlásím, spadne to při vypisování jména souboru do status baru - nenuluji počet rozšířených panelů (E064).

    • Opraveno: Menu View, položka TreeProject: nezobrazuje se (Un)checked (E063).

  • 1.4.2002 Verze 3.10

    • Nové: Podpora databázových modulů. Od této verze lze na základě dodaného modulu přistoupit ke zvolené databázi. Více v samostatném tématu.

    • Nové: Nová položka v menu File či v kontextovém menu souboru: příkaz Show file properties, který vyvolá systémový dialog s vlastnostmi souboru.

    • Nové: Při uzavření projektu se jeho název vloží do menu Dokumenty v nabídce Start (lze potlačit v Základním nastavení, záložka Sytem).

    • Nové: Ukázka nastavení editoru pro jazyk C#.

    • Nové: V nabídce View je položka Special chars - pokud je zaškrtlá, pak editor ukazuje i bílé znaky jako jsou konce řádků, mezery a tabelátory.

    • Nové: Zvýrazňovač AWK, IDL, Asm51 a C pro Siemens.

    • Nové: V nastavení editoru na záložce Editor 2 jsou dvě nové položky:

      • Enhanced home key: rozšíří chování klávesy Home - pokud jste uprostřed řádky s textem a na začátku jsou mezery, pak první stisk klávesy Home posune kursor na první znak na řádce, který není mezerou a až druhý stisk posune kursor na první pozici řádku. Opětný stisk klávesy Home posuje kursor zpět na první znak řádky, který není mezerou (a nechá se stále opakovat).

      • Autosize max left char: Pokud počet znaků na řádce překročí maximální počet (nechá se nastavit na téže záložce), bude toto číslo automaticky zvětšeno.

    • Nové: V systémovém okně rkEditu přibyla možnost míst editor stále na vrchu (Always on top).

    • Aktualizováno: hlavní editační komponenta SynEdit, tedy i částečně chování editoru při psaní textu.

    • Rozšířeno: Zvýrazňovač XML

    • Rozšířeno: Při posouvání myší vertikálním posuvníkem se pohybuje zobrazení čísla s posuvníkem, navíc se zobrazuje se horní i dolní číslo aktuální viditelné řádky.

    • Rozšířeno: Šipky u scrollbaru jsou zakázány, nemají-li smysl.

    • Rozšířeno: Pokud se v příkazech zvýrazňovačů zadá např. %SELECTED="C:\block.txt"% do příkazové řádky, pak rkEdit nejprve vytvoří uvedený soubor a až pak spustí zbytek příkazu.

    • Rozšířeno: ToDoList: zobrazuje se nyní i datum a čas splnění položky.

    • Opraveno: Pokud se změní zvýrazňovač a je současně s tím změněn i počet atributů, dojde ke špatnému načtení barev a atributů (nemělo na minulé verze vliv) (E061).

    • Opraveno: Pokud se stane ToDo položka done, pak se hodnota created at nastaví na hodnotu done at (E062).

  • 20. 2. 2002 Verze 3.05

    • Nové: Vícenásobný clipboard (podobně jako je např. v Microsoft Wordu XP). Tato vlastnost je standardně vypnutá, pro zapnutí použijte dialog pro nastavení editoru.

    • Nové: Lze nastavit jednak umístění „oušek“ s názvy souborů a jednak skutečnost, zda se mají zobrazovat v jedné řádce či v několika (pozor, v případě nastavení na pravé či levé straně je automaticky nastavena víceřádková vlastnost). Nastavení v základním nastavení editoru.

    • Nové: V ToDo seznamu se zobrazuje počet položek, kolik jich je skrytých a další.

    • Rozšířeno: Do ToolBaru Compile přibylo tlačítko "Compile & Run"

    • Opraveno: Nesjednocené informační popisky (Hint) u vyhledávání (E054)

    • Opraveno: Pokud v projektu vytvořím nový soubor (new file) a uložím jej, pak není v projektovém okně zatříděn (podobně příkaz save file as). (E060)

    • Opraveno: Dám si někam záložku, jdu jinam, označím text, vložím jej do schránky, přesunu se zpět na záložku a vložím text -> text je vložen na místo označeného bloku (E059)

    • Opraveno: Pokud je otevřen projekt, v něm je modifikovaný nový soubor, zvolí se ukončení aplikace a na dotaz, zda onen soubor uložit, se odpoví Ne, přesto se aplikace dále zeptá na název souboru (v případě, že nejde o nový soubor, pak si i přes odpověď Ne uloží) (E046)

    • Opraveno: rkEdit při spuštění z read only media (CD apod.) hlásí chyby (E057)

  • 9. 11. 2001 Verze 3.04

    • Nové: Nový ToolBar pro menu Compile

    • Opraveno: Pokud není nainstalována tiskárna, hází to chyby (E031)

    • Opraveno: Ne vždy se správně provede vyhledání a nahrazení (E009)

    • Opraveno: Table Wizard při generování pro XML z nějakého zdroje bere v potaz počet sloupců zadaných v průvodci a tedy nikoliv dle stavu došlých dat (E050)

    • Opraveno: Ve zvýrazňovači JScriptu při řetězci typu: "\"cosi\"" se slovo cosi neobarvilo jako řetězec (E051)

    • Opraveno: Zvýrazňovač C++: Pokud znak pro preprocesor (#) není prvním znakem na řádce (mezery se nepočítají), je přesto text označen jako direktiva, což je špatně (E052)

  • 29. 10. 2001 Verze 3.02

    • Nové: Zvýrazňovač pro jazyk C#.

    • Nové: Když je otevřen projekt, umístit jeho název do tlačítka v task baru.

    • Rozšířeno: Přepínání oken F6/Shift+F6 a Alt+šipka doleva resp. doprava (podpora Microsoft Office KeyBoard).

    • Opraveno: Pokud se v ASCII tabulce (double)klikne na oblast mimo znak, dojde k vyvolání neobsloužené výjimky (E045)

    • Opraveno: Smazání main file musí nastavit projekt jako modified (E047)

    • Opraveno: Pokud není přiřazen main file, přes to se zobrazuje jako povolený v menu Compile (E048)

    • Opraveno: Pokud je v cestě k rkEditu cesta, pak se u registrovaného typu souboru nezobrazuje správně ikonka (E049)

  • 22. 10. 2001 Verze 3.01

    • Rozšířeno: Z About boxu se dává do mailu i subject rkEdit s verzi EXE souboru

    • Opraveno: Pokud chtěl uživatel konvertovat soubor na disku do ISO 8859-2 či zpět, pak se to neprovedlo (E044)

    • Opraveno: Drobný překlep v nápovědě u šablon (E043)

    • Opraveno: Ačkoliv projekt nenxistoval, přesto se jakoby otevře (E042)

    • Opraveno: Last active file a Main File v projektu je stale s absolutni cestou (E041)

    • Opraveno: Pokud se klikne na e-mail v About na první stráce, nedojde ke správnému vypsání adresy v poštovním klientovi (E040)

    • Opraveno: Při zavírání souboru přes kontextové menu vyvolaného přímo na jazýčku u PageControlu dochází k Application Exception (E038)

    • Opraveno: Pokud je v cestě k rkEditu cesta, pak se u registrovaného typu projektu nezobrazuje správně ikonka (E037)

    • Opraveno: Pokud si nastavím SimpleWordWrap, tak při prvním načtení projektu to funguje ok, ale při uložení již tento atribut neuloží a tím dojde k jeho ztrátě (E033)

    • Opraveno: Při otevření projektu se většinou špatně nastaví lastopenedfile (E034)

    • Opraveno: Chybka ve zvýrazňovači Javy: pokud se vyskytne řádek typu
      println("This is a test\\"); //Hello
      pak jsou špatně interpretovány zpětná lomítka a text je označen jako řetězec až do konce (E036).

  • 1.10. 2001 Verze 3.0

    • Nové: Projekty: možnost definovat si projekty a pracovat s nimi. Více informací v samostatném tématu.

    • Nové: ToDo List (souvisí s projekty).

    • Nové: Průvodce tvorbou tabulky.

    • Nové: ASCII tabulka (menu Special, položka Ascii Table)

    • Nové: Mazání redundantních mezer (menu Special, položka Delete redundant spaces).

    • Nové: Na začátek řádky je možné přidat odrážky, číslování, znaky, ... (menu Special, položka Insert to begin of line).

    • Nové: Možnost zobrazení horizontálního pravítka.

    • Nové: Založeny dvě konference pro rkEdit (bližší informace na Úvodní stránce).

    • Rozšířeno: Možnost použití proměnných %input1% .. %input10% (viz Práce se šablonami)

    • Rozšířeno: Doplněny další příklady použití překladačů (HTML a SQL pro SQL Server 2000).

    • Rozšířeno: Povolen příkaz Select All při sloupcových blocích (změní blok na řádkový)

    • Rozšířeno: Automatická změna druhu bloku při stisknutém Altu a označování myší (s Altem se označuje sloupcový blok, bez něj řádkový).

    • Rozšířeno: Přidány některé atributy u zvýrazňovače TeXu.

    • Změněno: Volání nápovědy již neotevře konzolové okno

    • Změněno: Dříve konzolový HelpRunner je nyní grafický a spouští se tak, aby jeho okno nebylo vidět.

    • Opraveno: Pokud se dá příkaz Open file a vybere/ou se soubor(y), který/é je/jsou již otevřen(y), otevře/ou se znovu, tato chyba je zde zřejmě již od verze 1 (E029)

    • Opraveno: Špatný tab order v Extensions settings (E030)

    • Opraveno: Pokud se z hledače chyb vrátí -1,-1, kursor se přesune na začátek editovaného souboru (E028)

    • Opraveno: Při zvýraznění řádky s chybou se sice čeká na nějaký příkaz, ale kliknutím myši se zobrazení nezruší (E027)

  • 28.8. 2001 Verze 2.5

    • Nové: Po překladu či spuštění lze již nejen otevřít nějaký soubor v dalším okně, ale přibylo tzv. Output window, do kterého lze načíst soubor vzniklý v době překladu či běhu aplikace a pomocí DLL knihoven lze lokalizovat případnou chybu, která nastala. Bližší informace na speciální stránce. S tímto souvisí i zavedení několika příkazů v menu View: Toggle edit/output window a Show/Hide output window a přidání dalšího atributu, který určuje, jakou barvou se zvýrazní řádek s chybou.

    • Nové: Zavédena konstanta (zástupka) %FULLFILENAME%, která znamená '%FILENAME%'+'%FILEPATH%'+'%FILEEXT%' (má význam při překladu či spouštění externích aplikací)

    • Nové: Název aktivního otevřeného souboru lze zkopírovat do schránky (menu Edit, položka Copy actual filename)

    • Nové: Kromě exportu do souborů lze export provést i do schránky (menu Edit, položka Copy as HTML resp. Copy as RTF)

    • Nové: kontrola validnosti XML Dokumentu - bližší informace v tématu Podpora XML.

    • Nové: Otázky a odpovědi

    • Rozšířeno: Počet příkazů k jednotlivým příponám se zdvojnásobil

    • Opraveno: Chyby a překlepy v nápovědě, doufám, že všechny

    • Opraveno: Pokud jsou zavřeny všechna editační okna a zvolí se položka menu Compile, dojde k neobsloužení výjimky (E025)

    • Opraveno: Pokud jsou zavřeny všechna editační okna, zůstává ve statuvové řádce jméno a pozice naposledy otevřeného souboru (E026)

  • 22. 8. 2001 Verze 2.0

    • Nové: Šablony a věci kolem nich (viz Práce se šablonami)

    • Nové: Přetahování záložek (Drag and Drop) jako v Delphi 6

    • Nové: Akceptace klávesy Tab (viz Základní nastavení)

    • Nové: K tlačítku Save přidáno rozbalovací menu s podružnými příkazy

    • Nové: Možnost ovlivnit hodnoty MaxUndo a MaxLeftChar (viz Základní nastavení)

    • Nové: Vkládání GUID

    • Nové: Uzavření označeného bloku do XML tagu

    • Nové: U tisku lze vybrat rozsah stran

    • Nové: pokud se při kliknutí na záložku drží klávesa Alt, je inkriminovaný soubor zavřen

    • Vylepšeno: Zvýrazňovač ObjectPascalu: Podpora Delphi 6

    • Vylepšeno: Zvýrazňovač SQL: Podpora MS SQL 2000 dialektu

    • Vylepšeno: Dialog pro vyhledávání a nahrazování si pamatuje zadané řetězce i po ukončení aplikace

    • Vylepšeno: Příkazy Sort, Block to UpperCase apod., dříve fungující pouze pro označený text, nyní fungují i na celý dokument

    • Vylepšeno: typ bloku lze nastavovat globálně (viz Základní nastavení)

    • Opraveno: Třídění se k volbě CaseSensitive chová opačně, než má (E020)

    • Opraveno: Ačkoliv není přiřazen žádný překladač apod., přesto jsou akce Přeložit a spustit povoleny (E019)

    • Opraveno: Pokud není označen žádný blok, jsou přesto povoleny příkazy Sort, Block to UpperCase a další (E018)

    • Opraveno: Pokud se má třídit i poslední řádek a tento není prázdný, pak není zatříděn (E021)

  • 5.8. 2001 Verze 1.1

    • Nové: Dne 3. srpna 2001 získal rkEdit ocenění 5 slunečnic. Bližší informace zde.

    • Nové: položka menu Special

      • volání XML DocBook helpu (klávesová zkratka Ctrl+F1), v extended dialogu se zadává tento soubor (pozor na případné problémy, viz chyba číslo E012 ve Známých chybách)

      • převod textu do XML safe podoby (například & se převede na &amp; apod.) - Menu Special, položka Text to XML Safe form

      • převod češtiny na cestinu a mezi různými kódováními (podporovány jsou CP1250, Latin2, Kameničtí a ISO8859-2) - menu Special, položka Czech specialities, viz samostatné téma Podpora češtiny

      • Lze editovat soubory i s kódováním Latin2, Kameničtí a ISO 8859-2, aniž by bylo potřeba explicitně provádět konvertování. Stačí pouze v menu Special, položkou Czech specialities určit, v jakém kódování budou soubory do rkEditu načítány, viz samostatné téma Podpora češtiny

    • Nové: dvě nové klávesové zkratky Ctrl+Num+ a Ctrl+Num- zvětšování/zmenšování fontu editoru

    • Nové: Aplikace si pamatuje velikost a pozici okna, které se objevuje v době překládání a spouštění

    • Nové: možnost přechodu na libovolnou řádku (Menu Search, položka Go to line number, klávesová zkratka Ctrl+G).

    • Vylepšeno: Nová verze odchytávání neznámých chyb (JCL 1.11 Release)

    • Vylepšeno: Zbavení se odkazu IBTalku: odstraněny všechny zbytečné komponenty, kód a další, které s sebou rkEdit „vláčel“. Výsledný EXE soubor je díky tomu menší než předchozí verze.

    • Vylepšeno: Ctrl+šipky doleva a doprava (předchozí a následující slovo) - bere v potaz i češtinu

    • Vylepšeno: Nastavování barev. Kromě základních a systémových barev si může uživatel zvolit vlastní.

    • Opraveno: Chyba při exportu z XML do HTML/RTF (chyba E013)

    • Opraveno: Při příkazu Save All nezbělají všechny obrázky na záložkách (které jsou žluté), ale pouze u aktivního souboru. Ostatní zbělají až když se na ně uživatel přepne (uložení souboru samozřejmě proběhne). (chyba E014)

    • Opraveno: Pokud je aplikace minimalizovaná, uživatel se na ni přepne a mezitím byl(y) změněn(y) soubor(y), pak sice správně proběhne dotaz, ale je-li odpovězeno „No“, tak se neobnoví hlavní okno aplikace (chyba E015)

    • Opraveno: V případě volání příkazu "Text to XML Safe form" pouze na označený blok se místo standardizace provede převod na malá písmena (pokud se převádí celý text, je to ok) (Chyba E017)

    • ???Opraveno??? (aneb z pod okapu do deště): Občas aplikace při volání HTML nápovědy spadne bez jediného slova, neuložené změny jsou ztraceny, důvod neznámý, doporučuji před voláním uložit všechny změny. (Chyba E012). Bližší informace o problému v samostatné části.

  • 16.4. 2001 Verze 1.0: První veřejná verze. Aplikace vznikla z produktu IBTalk, což je program na přístup k databázovému serveru InterBase.


Proč rkEdit?

Nabízí se otázka a proč ne, ale otázkou odpovídat nebudu. Velkým důvodem, proč jej používat, je jeho cena (0 v jakékoliv měně s daní i bez daně).

Dále uvádím několik důvodů, proč jsem rkEdit naprogramoval:

  • Ani jeden editor, který jsem kdy zkusil, mi nevyhovoval.

  • Mohu si kdykoliv doprogramovat jakoukoliv funkci, kterou budu potřebovat a bude se chovat tak, jak chci. Každý jiný může vlastnosti editoru rozšířit díky uživatelskému skriptování.

  • Potřeboval jsem slušný editor se zvýrazněnou syntaxí a možnosti volat externí aplikace bez složitého nastavování.

  • Mohu přistupovat k databázím.

  • Další? Zatím mě nenapadá, ale určitě se něco najde...


Pro koho je rkEdit určen?

rkEdit může využít v podstatě kdokoliv, kdo potřebuje psát (plain) texty, které se neformátují jako například v Microsoft Wordu. Jsou to hlavně zdrojové textu různých programovacích jazyků, dávkové soubory, běžné textové soubory (na které se v nouzi nechá použít Notepad), XML soubory, články v TeXu a další. Hlavní oblasti působnosti jsou tři: programátorská, textová a ostatní běžné použití.

Programátorské využití

Kromě zvýrazněné syntaxe pro velké množství programovacích jazyků (přehled najdete ve Vlastnostech) je možné spouštět externí překladače, sledovat případné chyby v logovacím souboru, nechat si nastavit kursor přímo na chybu a další. Také lze přistupovat k databázím pomocí databázových modulů.

Textové využití

Pro „pisálky“ je připravena zvýrazněná syntaxe TeXu a XML. Díky volání externích programů je možné text převádět například do PDF či HTML a následně si to prohlédnout. Pomocí uživatelských skriptů lze volat např. kontextovou nápovědu.

Běžné použití

Ostatní mohou využívat kromě základních operací také konvertování bloků na velká či malá písmenka, třídění a další.


Vlastnosti aplikace

Vlastnosti programu

Následuje výpis některých vlastností programu, který obsahuje jednak zcela běžné popisy situací, ale také věcí, které mohou být na první pohled ukryty.

  • editování více souborů najednou, možnost jednoduchého ovládání (otevírání, zavíraní, práce s bloky - sloupcové i řádkové, seznam nejpoužívanějších souborů, odsazování řádků a další)

  • komfortní nastavování konfigurace přípon: pomocí dialogu na nastavení přípon lze mít pro každý typ souboru vlastní zvýraznění syntaxe, možnost překladu a další.

  • makra na vkládání data a času, zvětšování či zmenšování písma (viz také Klávesové zkratky)

  • vyhledávání a nahrazování

  • po přepnutí z jiné aplikace do této dojde k testu, zda nebyly změněny editované soubory a pokud ano, je možnost načíst aktuální verzi z disku

  • Třídění

  • Program si pamatuje editované soubory a po svém znovuspuštění je načte

  • Soubory lze zadávat jako parametry (pokud má soubor v názvu mezeru, je potřeba jej uvést do uvozovek)

  • Při otevírání souboru jich lze označit více (v Open Dialogu)

  • Podobně lze použít Drag´n´Drop a přetáhnout libovolné množství souborů do aplikace

  • Export do HTML a RTF

  • Lze si nechat program zaregistrovat na určené přípony

  • Nadstandardní podpora češtiny

  • Lze si definovat vlastní šablony

  • Nápověda

  • Šablony - jedinečná možnost, jak si zjednodušit práci

  • Překlad vašich zdrojových kódů a spouštění výsledné aplikace

  • Projekty - ukládání souborů pod jeden projekt, definování si ToDo seznamu apod.

  • Průvodce tvorbou tabulky - vytvořte si tabulku dle vlastního přání a naplňte ji daty.

  • Přístup k databázím

  • Uživatelské skriptování

Zvýraznění syntaxe je provedena pro tyto typy souborů:

  • Object Pascal

  • Delphi/C++ Builder Forms

  • C/C++

  • C#

  • C pro Siemens

  • x86 assembler

  • Fortran

  • Java

  • PHP

  • Perl

  • Python

  • JavaScript

  • MS VBScript

  • SQL

  • Progress

  • FoxPro

  • HTML

  • CSS

  • MS-DOS Batch files

  • INI files

  • Inno Setup

  • TeX

  • XML

  • AWK skripty

  • IDL CORBA


Podpora XML

Protože XML je fenoménem dnešní doby a sám jej používám, snažím se o alespoň částečnou podporu tohoto jazyka.

Podpora XML v rkEditu znamená následující:

  • zvýrazněná syntaxe

  • Kontrola validnosti XML Dokumentu (viz dále)

  • Díky skriptování lze doplnit další podporu. Společne s rkEditem je dodáván skript, který umožňuje tyto činnosti:

    • Převod textu do XML bezpečné podoby, tedy například převod znaku & na &amp; apod. (menu XML, položka Text to XML Safe form) a zpět

    • podpora XML DocBooku voláním nápovědy k tomuto DTD pomocí skriptování (viz funkce ContextHelp; bližší informace a odkazy týkajících se DocBooku lze nalézt na mých stránkách).

    • Uzavření textu do XML entity (menu XML, položka Close text to XML tag): tuto činnost typicky potřebuji, když zapomenu napsat text v elementu. Označím tedy blok textu a vyberu tento příkaz. Ten mi pak požadovaný text do elementu uzavře.

Kontrola validnosti XML Dokumentu

Při psaní XML dokumentů samozřejmě dochází k nechtěným chybám. Pokud chcete z rkEditu kontrolovat validnost, stačí postupovat podle následujících kroků:

  1. V adresáři společně se souborem rkEdit.exe je i soubor msxml.js. Nakonfigurujte si jej jako překladač XML dokumentu nebo jako jeden z uživatelských příkazů XML například takto:

    • cmd /C cscript //NOLOGO "C:\Program Files\rkEdit\msxml.js" "%FULLFILENAME%" > C:\TEMP\XML_RESULT.TXT

    • předchozí řádek spustí konzolový interpret Windows Host Script (je nutné jej mít nainstalovaný, ve Windows 2000 je to již automatické) a přesměruje výstup do souboru C:\TEMP\XML_RESULT.TXT

    • Tento soubor je vlastně logovací soubor, který necháme zobrazit v Output window (Výstupní okno). Zadejte jej tedy do vstupního pole Log file.

  2. V adresáři DLLs je soubor XML.DLL, který z textu ve Výstupním okně poznat řádek a pozici na řádku, na kterém došlo k případné chybě (jak takovou DLL vytvořit si přečtěte zde).

  3. Nyní je vše nakonfigurované (což se samozřejmě dělá pouze jednou) a můžete spustit překlad (resp. uživatelský příkaz). Pokud je vše nastavené správně, měl by se v případě chyby zvýraznit řádek s chybou (ukázku lze vidět na obrázku u tématu Hledáme chyby...)


Požadavky na systém

K používání rkEditu je potřeba alespoň následující minimální konfigurace:

  • Windows 98, 2000, NT, ME a XP

  • Procesor doporučovaný pro váš operační systém

  • Velikost paměti doporučovaná pro váš operační systém

  • 15 MB volného místa na disku

  • Monitor s rozlišením 640x480

  • Internet Explorer 5.x pro používání nápovědy a šablon

  • Microsoft Windows Script Host pro potřebu skriptování.

Doporučená konfigurace:

  • Windows 2000 či XP

  • CPU 500 a výše

  • 256 MB RAM (vychází z nároků operačního systému)

  • 15 MB volného místa na disku

  • Monitor s rozlišením 1024x768 s obnovovací frekvencí 85 Hz

  • Pro používání databázových modulů samozřejmě odpovídající plugin a databázového klienta.

  • Pro použití skriptování Microsoft Windows Script Host (bývá standardně instalováno s operačním systémem).


ToDo List

V tomto seznamu, který si neklade důraz na kompletnost, jsou požadavky (mé či uživatelů) na další vlastnosti programu. Neznamená to, že budou v další verzi, ale pouze to, že o nich vím a budu je postupně dodělávat. Seřazeny jsou podle toho, jak postupně přibývaly.

  • Při dotazu na znovunačtení souborů při přepnutí z jiné aplikace do rkEditu se neptat na soubory jednotlivě, ale v seznam. Stejně tak na uložení rozeditovaných souborů při zavírání editoru a projektu., přidáno 1.prosince 2002

  • Pokud edituju soubor, pak jej průběžně v daném intervalu ukládat jinam a při opravdovém uložení či zavření ten soubor „jinde“ smazat. Pokud při otevření soubor „jinde“ existuje, pak rkEdit zřejmě nebyl ukončen korektně a zeptat se na obnovu., přidáno 1.prosince 2002

  • Ukládat záložky, přidáno 1.prosince 2002

  • Skriptování:

    • Obrázky do menu

    • Toolbary, přidáno 1.prosince 2002

  • Svislá čára i na pravém okraji (využití např. ve Fortranu), zřejmě závislé na zvýrazňovači, přidáno 1.prosince 2002

  • Kódování češtiny umožnit zobrazovat ve stavovém řádku, přidáno 1.prosince 2002

  • Pokročilé vyhledávání

    • regulární výrazy

    • opakované hledání v bloku

    • hledat zpět

    • hledat ve všech souborech v projektu, otevřených souborech, ..., přidáno 1.prosince 2002

  • ToDo:

    • ToDoList: Export do html a spol.

    • ToDoList: Vyhledávání, přidáno 9. září 2002

  • Insert on begin of line: pamatovat si obsah dialogu, přidáno 9. září 2002

  • Kopie nastavení syntaxe do jiného zvýrazňovače, přidáno 9. září 2002

  • Označit dříve označený blok, přidáno 9. září 2002

  • Více svislých čar (v závislosti na příponě), přidáno 9. září 2002
  • Minimalizace do SysTraye, přidáno 1. dubna 2002
  • Inkrementální hledání, přidáno 1. dubna 2002
  • indikace bloku dole v liště, přidáno 22. října 2001
  • kontrola pravopisu, přidáno 22. října 2001
  • Podobně jako u maker by to chtělo parametry %input1%..%input10% při spouštění programů - může se zadávat třeba jméno a heslo při připojování do databází apod., přidáno 10. října 2001
  • Lokalizace do češtiny (velmi nízká priorita), přidáno 10. října 2001
  • Udělat lištu s tlačítky na spouštění externích aplikací, přidáno 10. října 2001
  • Posílání souborů e-mailem, přidáno 26.září 2001
  • Makra (záznam, spouštění, ukládání), přidáno 26.září 2001

  • Hledání chyb: přechod na další/předchozí chybu, přidáno 27. srpna 2001

  • Soubory, které nelze editovat, otevřít alespoň pro čtení (a nastavit jako Read-Only), přidáno 27. srpna 2001

  • Zavírání souborů, které nyní funguje pomocí Alt+Click udělat i na DoubleClick (volitelně, nechat si uživatele vybrat), přidáno 27. srpna 2001

  • Indentace a klávesa Tab: obojí různě nastavitelnou šířku, přidáno 22. srpna 2001

  • Parametry pro spouštění aplikací, přidáno 14. srpna 2001

  • Možnost nechat si uživatele definovat vlastní klávesové zkratky ke každému příkazu, přidáno 16. dubna 2001

  • Smart detecting při otevírání souboru s mezerou v cestě (pokud například první argument nebude existující soubor, zkusit to spojit s druhým, ...) - velmi nízká priorita

  • Autokompletace

  • Globální bookmarky

  • ...


Projekty

Při otevření či vytvoření nového projektu je na levé straně tzv. Projetkový strom (Project Tree View). Pokud otevřete soubor, je kromě vytvoření záložky s tímto také vložena větev do tohoto stromu. Pomocí pravého tlačítka se vyvolá kontextové menu, které obsahuje několik příkazů (tyto jsou také umístěny v liště Projektového stromu). Vedle projektového stromu lze zobrazit i jednoduchého průzkumníka, který se nachází na další záložce pojmenované Computer.

Projektový strom je rozdělen na dvě hlavní větve: Projektovou a Zbytkovou.

Projektová větev: V této větvi jsou uvedeny všechny souboru, které náleží do projektu bez ohledu na to, zda jsou či nejsou otevřené. Pomocí kontextového menu se lze na uvedený soubor přepnout (pokud není otevřen, otevře se). Jestliže zvolíte příkaz New, je vždy nový soubor umístěn sem.

Zbytková větev: Zde jsou uvedeny všechny ostatní soubory, které do projektu nepatří, ale jsou otevřené. Pokud je soubor zavřen, je odstraněna i příslušná větev. Pokud chcete soubor z této větvě přesunout do projektové a tedy zařadit jej do projektu, použijte kontextové menu nebo tlačítkové lišty.

Projekt lze kdykoliv uložit pomocí volby Save Project (as) z menu File. Stejně tak je projekt uložen po vyvolání příkazu Save All či při zavírání aplikace.

Informace o projektu, Work time

Společně s projektem se uchovávají některé další informace. Těmi jsou: kdo projekt vytvořil, [image] kdy jej vytvořil, kdo a kdy jej naposledy změnil a konečně jako dlouho se na projektu pracovalo. Jméno toho, kdo projekt vytvořil/změnil je identické s názvem účtu, pod kterým ke změně došlo.

Tzv. Work time, tedy čas práce na projektu, je počítán od vytvoření/otevření projektu a končí okamžikem jeho zavření. Tento čas se nepočítá v době, kdy rkEdit není aktivní (jste přepnutí do jiné aplikace).

Všechny tyto informace získáte z menu Project, položka Project's informations.

Nastavení projektu lze provést pomocí příkazu Project settings dostupného z menu Project.

Vlastní příkazy v menu Project

Ke každému projektu si můžete definovat libovolné množství příkazů, které mohou s projektem souviset. Typicky to může být build všech součástí, příprava projektu k prodeji, na vypálení CD a mnoho dalšího (záleží čistě jen na vás). Jednotlivé příkazy se definují v dialogu Project's Commands.

Upozornění: V příkazech projektu nemá cenu používat zástupky jako u příkazů - nejsou využity.

rkEdit, Projekty a parametry

Při spuštění se rkEdit řídí těmito pravidly:

  • Pokud je parametr právě jeden a je to projekt, je otevřen projekt.
  • Pokud není žádný parametr, pak se otevře buďto naposledy otevřený projekt nebo naposledy otevřené soubory. Pokud předtím nic otevřeno nebylo, vytvoří se jedna záložka s nepojmenovaným souborem
  • V ostatních případech se otevřou dříve otevřené soubory a dále se otevřou ty soubory, které byly předány jako parametr.

Další informace

  • Každý projekt má vlastní ToDo List.
  • Uložený projekt si pamatuje šířku Projektového stromu a to, zda byl viditelný či nikoliv.
  • Společně s informacemi o tom, jaké soubory byly otevřeny, se ukládá i pozice kursoru v nich a zda byl zvolen mód přepisu či vkládání.
  • Hlavní soubor (MainFile) je závislý na projektu a v projektovém stromě je označen tučně.
  • Při prvním spuštění verze rkEditu podporující projekty jste dotázáni na registraci přípony .rkp pro rkEdit (toho lze kdykoliv dosáhnout z menu Setting, položka Main settings záložka System).
  • Pokud máte otevřené nějaké soubory a chcete z nich udělat projekt, zvolte z menu Project položku Insert opened files to the new project.
  • Projekt kromě cesty a jména souboru má v sobě své jméno. To lze změnit z menu Project nebo v Projektovém stromě.

Jak funguje příkaz Save as

Poznámka: Tento příkaz je volán jednak odpovídající položkou v menu a jednak v případě, že chcete uložit soubor, který v rkEditu nově vytvořen (příkaz New).

Demonstrovat to budu na následujícím příkladě. Mějme otevřený projekt a v něm soubory ProjFileA a ProjFileB a Untitled1 (nový soubor). K tomu ještě ve zbytkové větvi soubory FileX a FileY.

1. Ukládání nového souboru a souboru ProjFileB

  • Uložení do souboru XYZ: Soubor bude samozřejmě uložen a položka v projektové větvi přejmenována
  • Uložení do souboru ProjFileA: Soubor ProjFileA bude přepsán a původní okno bude zavřeno. V projektové větvi zůstane nová verze tohoto souboru.
  • Uložení do souboru FileX: Soubor FileX bude přepsán a ze Zbytkové větve bude položka přesunuta do Projektové.

2. Ukládání souboru ve Zbytkové větvi (soubor FileY)

  • Uložení do souboru XYZ: Soubor bude samozřejmě uložen a položka ve Zbytkové větvi přejmenována
  • Uložení do souboru ProjFileA: Soubor ProjFileA bude přepsán a původní okno bude zavřeno. Položka se přesune do Projektové větve.
  • Uložení do souboru FileX: Soubor FileX bude přepsán novým souborem a původní soubor FileY bude uzavřen.


Projektové nastavení

Projektové nastavení určuje chování editoru při otevřeném projektu. Default directory ovlivňuje chování záložky Computer a výchozího adresáře dialogů pro otevření a uložení souboru. Po otevření projektu je při prvním použití Open a Save dialogu nastaven výchozí adresář právě na zmíněný adresář (je-li samozřejmě nějaký nastaven). Pokud vytvoříte nový projekt, je automaticky nastaven výchozí adresář jako Defined by project file location.

Default highlighter určuje zvýrazňovač, který se použije při vytvoření nového souboru.


Databázové moduly

Databázové moduly jsou v rkEditu zahrnuty od verze 3.10. Jedná se o speciální DLL knihovny, které umožňují přistupovat k databázím a poskytují různé výsledky editoru, který je následně prezentuje uživateli. Tyto DLL knihovny jsou zcela volitelné a tedy ti uživatelé, kteří databázový přístup nechtějí, knihovny stahovat nemusejí.

Databázových modulů může být v rkEditu libovolně mnoho, záleží jen na tom, kdo kdy jaké napíše a jaké vy sami budete potřebovat. Bližší informace jsou vždy na stránce produktu.

Co je potřeba udělat, abych mohl přistupovat k databázi?

Mít správnou verzi rkEditu, tedy minimálně verzi 3.10. Případné změny do budoucna jsou vždy oznámeny alespoň na stránkách produktu. Dále je potřeba mít stažený odpovídající databázový modul, který je nutné umístit do adresáře Plugins, jež musí být vytvořen v adresáři rkEditu (v adresáři Plugins pak lze již vytvářet libovolné adresářové struktury, rkEdit si modul již najde). Nyní zbývá mít odpovídajícího databázového klienta a samozřejmě účet na databázi.

V základním nastavení na záložce systém mj. určujete, zda se mají moduly vložit do editoru automaticky při spuštění či nikoliv. Pokud se moduly při spuštění nevloží, můžete tak učinit kdykoliv volbou příkazu z menu Plug-in.

Databázový modul v rkEditu

Jakmile rkEdit nalezne databázový modul, vytvoří pro něj podmenu v hlavním menu, ve kterém jsou příkazy exportované z modulu. Pokud si to modul přeje, je pro něj vytvořen i plovoucí nástrojová lišta, kterou lze na žádost uživatele schovávat a zase zobrazovat podobně jako ostatní lišty. Konečně poslední úprava v prostředí spočívá ve vytvoření vlastní záložky v rozšířeném záložkovém okně (viz následující obrázek):

Obsah této záložky se mění na základě operace, kterou zrovna provádíte a také na vlastním modulu, co vše umožňuje. Možnosti jsou celkem tři. První je zobrazen na předchozím obrázku a modul se může vkládat libovolné textové informace. Druhá možnost je databázová mřížka (viz následující obrázek):

Tato databázová mřížka má vždy kontextové menu, kde jsou příkazy pro export dat z mřížky do HTML tabulky, textových řádků oddělených oddělovačem či jako posloupnost SQL příkazů. Oddělovač pro druhý příkaz lze zvolit v základním nastavení na záložce DB Plug-ins. Výhodné je použít výsledek druhého příkazu jako vstup pro Průvodce tvorbou tabulky.

Poslední možný obsah záložky může vypadat následovně:

Jedná se o textovou mřížku, kterou opět lze exportovat, nastavení je shodné s předchozí databázovou mřížkou. Navíc, při kliknutí na název sloupce (včetně toho prvního) dojde k setřídění informací.

Několik připojení, více databázových modulů

Jeden databázový modul může umožňovat více připojení, podobně pokud máte více databázových modulů, lze se připojit k několika databázím. Z tohoto důvodu je v rkEdit v nástrojové liště speciální nabídka, která obsahuje všechna připojení, přičemž aktuální pro rkEdit je vždy právě jedno. Tedy to, které zobrazuje rozbalovací seznam nástrojové liště. Na základě toho jsou také povoleny či zakázány některé příkazy v menu ostatních modulů. Současně s tím je u všech akcí modulů, které nejsou v dané chvíli povoleny, dočasně neviditelná klávesová zkratka.

Závěrem

Za případné chyby uvnitř databázového modulu ručí jeho autor. Při ukončování rkEditu by měl modul provést odpojení pro všechna připojení, která vytvořil a zrušit všechny objekty, které vytvořil. Příkazy a způsob práce s vlastními příkazy modulu by měl vysvětlit jejich autor nejlépe v nápovědě.

Seznam nahraných modulů do rkEditu lze vidět v About boxu na záložce Plug-ins.


Nastavení barev

Nastavení barev pro jednotlivé druhy souborů není nic složitého. Po výběru typu souboru jsou k němu zobrazeny podporované atributy jako je komentář, rezervovaná slova a další. Ke každému tomuto atributu si můžete zvolit požadovanou barvu pozadí, barvu textu a styl fontu.

Možná neobvyklá je možnost zaškrtnutí Smart highlighting u některých typů souborů. Zajistíte tím, že zvýrazňovadlo se bude chovat chytřeji než obvykle. Jako příklad může být uvedeno PHP, kdy při zaškrtnutí se bude správně zobrazovat HTML mimo PHP uvnitř jediného souboru.

Popis dalších záložek lze najít v Nastavení přípon.


Základní nastavení

Základní nastavení aplikace se skládá ze stromu, jehož položky spolu nějakým způsobem souvisí. V následujícím textu je uveden popis všech částí, které lze nastavit.

Cursor

obsahuje nastavení tvaru kurzoru při vkládání textu (Insert cursor) a při jeho přepisování (Overwrite cursor). Find text at cursor při zaškrtnutí přenese slovo, na kterém je kurzor, do vyhledávacího dialogu při hledání.

Gutter & File pages

Gutter je pravý okraj editačního okna. Jeho nastavení spočívá v určení následujících vlastností

  • Visible: říká, zda má být viditelný

  • Autosize: pokud je zaškrtlé, mění automaticky svoji šířku dle informací v něm uvedených

  • Leading zeros: u čísel řádků zobrazí počáteční nuly

  • Show line number: zobrazuje čísla řádků

  • Start with zero: číslování řádků začíná nulou

  • Count of digits: maximální počet cifer v čísle řádky

File pages určuje pozici záložek s názvy souborů, jejich tvar a další chování. Některá nastavení se vylučují a proto se při nastavení jedné vlastnosti může změnit vlastnost jiná.

Tab Key & Limits

Nastavuje chování klávesy Tab a limity editoru.

Tab size určuje počet mezer, které se vloží při stisku klávesy Tabelátor. Pokud je zaškrtnuto Smart tabs, pak se na tuto hodnotu bere ohled pouze tehdy, nelze-li určit tabelaci podle předchozího textu.

Limity jsou:

  • Max undo: hloubka operace Undo.

  • Max left char: maximální počet znaků na řádek, které umožňuje rkEdit editovat. Znaky za touto hodnotou sice nejsou ztraceny, ale nelze je editovat (max. jsou na ně prováděny operace typu Text to UpperCase apod.). Toto omezení je kvůli zobrazování horizontálního posuvníku.

  • Chars per line: říká počet znaků na řádek, je zobrazeno svislou linkou. Používá se kvůli tiskárně (standardně 80 znaků na jeden tiskový řádek).

Highlighter & Clipboard

Default highlighter určuje standardní zvýrazňovač pro operaci New file. Toto nastavení lze v případě projektů potlačit.

Zaškrtnutí Multiple clipboard umožní používat násobnou schránku, kam lze ukládat zvolený počet textů (vše, co z editoru „putuje“ do schránky, se umístí i sem. Na posledních deset vložených se lze dostat i pomocí klávesových zkratek Ctrl+Alt+Shift+n, kde n je číslo od 0 do 9.

Format

Umožní nastavit ukončování řádků pro nově vytvořený soubor (podle pravidel Windows, Unixu nebo Macintoshe).

Other

  • Show writed text in list of templates: při výběru šablony lze nechat zobrazit nebo naopak skrýt již napsanou část jména šablony

  • Type of block is global: Určuje, zda změna bloku z řádkového na sloupcový a opačně bude mít význam pouze v aktuálním editačním okně nebo i ve všech ostatních oknech

  • Enhanced home key: rozšíří chování klávesy Home - pokud jste uprostřed řádky s textem a na začátku jsou mezery, pak první stisk klávesy Home posune kursor na první znak na řádce, který není mezerou a až druhý stisk posune kursor na první pozici řádku. Opětný stisk klávesy Home posuje kursor zpět na první znak řádky, který není mezerou (a nechá se stále opakovat).

  • Autosize max left char: Pokud počet znaků na řádce překročí maximální počet (nechá se nastavit na téže záložce), bude toto číslo automaticky zvětšeno.

  • Use *.* as default mask: Pokud je zaškrtnuto, pak se v Open Dialogu pro soubor vždy zobrazuje přednastavená přípona *.* bez ohledu na aktuální otevřený soubor. V opačném případě se zobrazuje přípona (maska) dle aktuálního otevřeného souboru.

  • Auto indent: dovolí automaticky přesunout kurzor po stisku klávesy Enter pod první znak předchozí neprázdné řádky.

  • Drag`n`Drop when editing: Dovoluje editační drag`n`drop.

  • Half page scroll: Klávesy Page Up a Page Down neprovedou přesun o celou stránku, ale pouze o její polovinu.

  • Load last opened files & project: Pokud je zaškrtlé, při dalším spuštění rkEditu načte dříve otevřené soubory, případně projekt.

Default Colors

obsahuje nastavení barev pro přípony, které program nezařadí do žádné z kategorií, kterou konfigurujete v nastavení přípon.

System

obsahuje informace zda používat jednu instanci (pozor, platí pouze pokud není otevřen projekt) a zda při dokončení překladu vyvolat systémový zvuk. Insert rkEdit project files into Documents menu umožňuje při uzavření projektu vložit jeho název (a cestu) do menu Dokumenty v nabídce Start. Load plug-ins automatically určujete, zda se mají moduly vložit do editoru automaticky při spuštění či nikoliv (pokud se moduly při spuštění nevloží, můžete tak učinit kdykoliv volbou příkazu z menu Plug-in).

Dále oplývá tlačítkem Register me as "Edit command" in default file context menu. Po jeho zvolení se program zaregistruje do kontextového menu každého souboru, a pokud jej vyvoláte, lze jej přes toto menu spustit. Není proto potřeba registrovat kde co. Poslední tlačítko - Register '.rkp' extension for rkEdit - asociuje příponu projektů s rkEditem.

News from web

rkEdit od verze 4 umožňuje zobrazovat novinky, které se stahují z Internetu. K tomu je potřeba zadat několik informací:

  • News language: jazyk, ve kterém chcete novinky získávat.

  • Interval: perioda, po které bude kontrolováno, zda nebyly umístěny na Internet nové informace.

  • When check: určuje, zda se program bude ptát po uběhnutí periody (zjišťuje se při spuštění editoru), zda získat nové informace nebo zda tak má udělat automaticky. Kdykoliv jindy lze použít položku News from web v nabídce Help.

  • Last seen: pouze ke čtení, říká, kdy naposledy byla provedena kontrola novinek.

  • Use proxy: pokud používáte pro přístup k Internetu přes proxy server, je nutné vyplnit požadované nastavení. Pozor, heslo je ukládáno v čitelné podobě!!!

DB Plug-ins

nastavuje způsob exportu mřížek - oddělovač buněk a informace, zda se má separátor vložit i na konec řádky. Podrobnější informace se dozvíte v tématu Databázové moduly.

Datetime format určuje způsob výstupu datového sloupce v datové mřížce při operaci Copy grid to clipboard as INSERT commands... dostupné v kontextovém menu datové mřížky. Formát se řídí definovanými pravidly. Např. pro Oracle lze použít 'TO_DATE' ("'"mm'/'dd'/'yyy"'", "'mm/dd/yy'").


Hledáme chyby ve zdrojových kódech

Běžná vývojové prostředí nejen že dokáží přeložit zdrojové kódy, ale umí i v případě chyb na tyto upozornit a nastavit kurzor na co nejbližší místo výskytu. Od verze 2.5 můžete tuto vymoženost používat i v rkEditu. V následujících řádcích bude celý princip vysvětlen.

Již od verze 1 bylo možné spouštět externí překladač a po jeho dokončení otevřít zvolený soubor. Tento soubor se otevřel jako další ze souborů. Uvedený způsob je stále použitelný, ale v současné verzi lze zvolit jiný - vylepšený - postup.

Při nastavování překladače či dalších uživatelských příkazů lze kromě jiného zadat tvz. Log file. Jedná se o libovolný soubor, typicky výstup překladače, který se po ukončení překladu či běhu jiné aplikace zobrazí ve speciálním okně pojmenovaném Output window (Výstupní okno). Jedná se o okno, které se zobrazí v dolní části editoru (viz obrázek).

To by ovšem nebylo nijak zajímavé, pokud by to bylo vše, co to umí. Pokud si obrázek prohlédnete podrobněji, zjistíte, že podle textu ve Výstupním okně je označen červeně řádek, který určuje chybu. Jak k tomu došlo?

Po načtení dat z logovacího souboru se rkEdit podívá do adresáře DLLs, zda tam není knihovna, která odpovídá aktuálnímu typu souboru (viz typy souborů). Pokud ano, předá se jí text z logovacího okna, ona jej zanalyzuje a pokud je to možné, vrátí pozici ve zdrojovém textu, kde k chybě došlo.

Standardní „balení“ rkEditu obsahuje takovouto podporu pro kontrolu validnosti XML dokumentu (bližší informace jak tuto funkci nastavit hledejte v tématu Podpora XML). V následujícím textu si ukážeme, jak si napsat vlastní určení místa chyby.

Vlastní určení místa chyby (programátorská dokumentace)

Vzhledem k tomu, že ani nedokáži zjistit, jaké překladače kdo používá, natož jaké mají výstupy, má každý možnost napsat si vlastní implementaci určení místa chyby. Stačí k tomu libovolný překladač pro 32-bitová Windows (Delphi, C++ Builder, MS Visual Studio, ...), jehož výsledkem může být DLL knihovna.

Jak má DLL knihovna vypadat

V adresáři Develop jsou umístěny čtyři soubory:

  • LogAnalyzatorsTypes.pas

  • LogAnalyzatorsTypes.h

  • xml.dpr

  • xml.cpp

V souborech LogAnalyzatorsTypes.pas (pro Delphi) a LogAnalyzatorsTypes.h (pro C a C++) jsou umístěny dva typy a jedna konstanta. Pokud se rozhodnete napsat si vlastní DLL, musíte exportovat funkci s názvem GetCapability(), která vrátí záznam typu TrkEditCapability. Záznam TrkEditCapability obsahuje dvě složky:

  • Version typu PChar, která musí být naplněna hodnotou odpovídající konstantě CurrentVersion uvedené ve zmíněných souborech

  • SupportedFunctionType, kde je určeno, zda se má volat funkce s parametrem typu TStringList nebo PChar (viz dále).

Druhou funkcí, která musí být exportována, je GetXYOfFirstError. Této funkci se jako jeden parametr dá text, který byl získán z logovacího souboru a ona vrátí jednak pozici chyby ve zdrojovém textu a pak pozici, kam se má posunout kursor ve výstupním okně (posun ve výstupním okně není zatím podporován, jedná se pouze o přípravu pro další verzi rkEditu). Podle hodnoty ve složce SupportedFunctionType se rkEdit dozví, jakým způsobem má předat text z logovacího souboru funkci GetXYOfFirstError. Ta může mít tedy dva tvary:

Zápis v Delphi:

function GetXYOfFirstError (const LogString: TStrings; var ErrX, ErrY, LogX, LogY: integer): integer; stdcall;

resp.

function GetXYOfFirstError (const LogString: PChar; var ErrX, ErrY, LogX, LogY: integer): integer; stdcall;

Zápis v jazyce C:

extern "C" __declspec(dllexport) int GetXYOfFirstError (const char *Text, int *ErrX, int *ErrY, int *LogX, int *LogY);

resp.

extern "C" __declspec(dllexport) int GetXYOfFirstError (const TStrings *Text, int *ErrX, int *ErrY, int *LogX, int *LogY);

Tvar s parametrem typu TStrings je určen pro překladače společnosti Borland a jejich knihovnu VCL. Parametr typu PChar je určen pro libovolné překladače umožňující tuto datovou strukturu, pro Windows nativní.

Funkce GetXYOfFirstError tedy zanalyzuje text, který dostane, a vrátí případnou pozici ve zdrojovém textu a ve výstupním okně. Návratová hodnota v případě úspěchu je 0 (nula), jinak je nenulová.

Pro každý typ souboru je potřeba mít vlastní DLL umístěnou v adresáři DLLs a pojmenovanou podle tabulky uvedené zde.

Důležité upozornění: V případě, že si napíšete vlastní DLL, ve které budou chyby, nemohu v žádném případě zaručit, že se rkEdit bude chovat korektně (záleží na závažnosti chyby). Dbejte proto na to, aby jste v knihovně žádnou chybu neměli.

Příklad DLL

V souborech xml.dpr a xml.cpp jsou přeložitelné ukázky, jak lze této technologie využít (ostatně soubor xml.dll je překladem souboru xml.cpp). Tvorba DLL souboru v Delphi je poměrně přímočará a jasná, proto se tu tím nebudu zabývat, ostatně příklad je samovypovídající.

Zajímavější je to s překladačem jazyka C, resp. C++. Díky společnosti Borland lze získat zdarma legální řádkový překladač právě jazyka C a C++ pro platformu Windows. Po jeho stažení a nainstalování je potřeba ještě vložit cestu do adresáře Bin do systémové proměnné PATH. Pokud jste například vše nainstalovali do adresáře C:\CPP55, pak do proměnné PATH přidejte cestu C:\CPP55\BIN. Nyní stačí vzít soubory xml.cpp a LogAnalyzatorsTypes.h a přeložit je následujícím příkazem:

bcc32.exe -tWD -ps -IC:\CPP55\Include -LC:\CPP55\Lib xml.cpp

  • bcc32.exe je řádkový překladač

  • parametr -tWD říká, že výsledkem bude knihovna DLL

  • parametr -ps zajišťuje odpovídající jmennou a volající konvenci

  • parametr -I říká cestu k include souborům, tedy zde do adresáře C:\CPP55\Include

  • parametr -L říká cestu ke knihovnám, tedy zde do adresáře C:\CPP55\Lib

  • a konečně xml.cpp říká, který soubor se vlastně překládá

Výsledkem je knihovna XML.DLL, kterou je potřeba umístit do adresáře DLLs.

Další konkrétní informace k souboru XML.DLL, resp. jak použít tuto knihovnu (či další) v prostředí rkEditu, je uvedeno v tématu Podpora XML.

Budoucnost

V některé z příštích verzích chci tuto technologii značně rozvést do podoby hledání předchozí či následující chyby, nevázat se pouze na jediný zdrojový soubor a další.


TableWizard

Průvodce tvorbou tabulky

Od verze 3 je součástí rkEditu tzv. Table wizard neboli průvodce tvorbou tabulky (menu Special, položka Table wizard). Jedná se o jednoduchou možnost vytvořit kód vlastní tabulky s tím, že může být ihned naplněná daty.

Tabulky lze vytvořit ve čtyřech mutacích:

  • HTML

  • XML DTD DocBook

  • Textová tabulka

  • LaTeX

Postup je velmi jednoduchý:

  1. Při spuštění průvodce si nejprve vyberte výslednou mutaci.

  2. Pokud chcete prázdnou tabulku, zvolte ve skupině Data source položku Empty table a ve skupině Table size určete velikost tabulky.

  3. Pokud chcete tabulku ihned naplnit daty, zvolte ve skupině Data source příslušný zdroj. Možnosti jsou následující:

    • označený blok
    • celý text
    • externí soubor
    • ToDo list (je možní použít pouze tehdy, je-li otevřen projekt, který má zadanou alespoň jednu ToDo položku
    • Databázová mřížka (má význam pouze u databázových modulů - musíte být připojení a mít v mřížce zobrazena data)
    Dále zvolte oddělovací znak (může být i řetězec, ne vždy to má význam). Zaškrtávací položka Trim data říká, že jednotlivým textům v buňkách budou z leva i z prava oříznuty mezery.

  4. Pomocí tlačítka Next postupujte až na konec průvodce (Result Source Code) - zde je samozřejmě potřeba znát význam jednotlivých polí pro danou mutaci.

  5. Na konci průvodce je v editačním poli zobrazen výsledek, který ještě můžete dále opravit.

Poznámka: Veškeré nastavení, které provedete, bude uloženo do INI souboru a při dalším spuštění průvodce bude vše, jak jste nechali při posledním spuštění.

Díky této možnosti můžete velmi jednoduše tvořit tabulky například získané z Excelu.

Příklad: mějme následující text (všimněte si, že v druhém ani třetím řádku nejsou zadány všechny hodnoty):

A; B; C

1;;2

;2;4

1;2;5

Označte jej jako blok a spusťte Průvodce tvorbou tabulky. Ve skupině Data source zvolte selected block. Separator bude středník. Pokud zvolíte například textový výstup, získáte následující tabulku:

/---+---+---\

| A | B | C |

+---+---+---+

| 1 |   | 2 |

+---+---+---+

|   | 2 | 4 |

+---+---+---+

| 1 | 2 | 5 |

\---+---+---/

Pokud chcete tabulku v HTML, může výsledek vypadat takto (včetně záhlaví):

<TABLE width="1" border="1" frame="box" cellspacing="1" cellpading="1">
  <CAPTION>Moje tabulka</CAPTION>
  <THEAD>
    <TR>
      <TH>A</TH>
      <TH>B</TH>
      <TH>C</TH>
    </TR>
  </THEAD>
  <TBODY>
    <TR>
      <TD>1</TD>
      <TD>&nbsp;</TD>
      <TD>2</TD>
    </TR>
    <TR>
      <TD>&nbsp;</TD>
      <TD>2</TD>
      <TD>4</TD>
    </TR>
    <TR>
      <TD>1</TD>
      <TD>2</TD>
      <TD>5</TD>
    </TR>
  </TBODY>
</TABLE> <!-- Moje tabulka -->

A v prohlížeči pak například takto:

Moje tabulka
A | B | C
1 |  | 2
 | 2 | 4
1 | 2 | 5


Šablony

Úvod

Šablony jsou nejvýraznější novinkou verze 2.0 a umožňují velmi příjemně ušetřit práci. Stačí napsat pár znaků a zbytek za vás vygeneruje rkEdit. Představte si, že napíšete například proc a aplikace za vás nejenže vygeneruje například tento text:

//---procedure Myproc, created at 11:40, 4. září 2001---

procedure Myproc;

begin {MyProc}

  |

end;{MyProc}

ale navíc dokáže postavit kursor na požadované místo a ještě automaticky doplnit tzv. proměnné (viz dále).

Co je k tomu potřeba? Každý typ souboru, který rkEdit podporuje, musí mít v adresáři Templates svůj soubor se šablonami (přesné názvy viz Typy souborů). Pokud tento neexistuje, vezme se soubor default.xml. (Pokud ani ten neexistuje, máte smůlu.)

V tomto souboru jsou definovány jednotlivé šablony (bude popsáno dále). Pokud tedy v textu stisknete klávesovou zkratku Ctrl+J, dojde k některé z následujících situací:

  • jestliže nestojíte na některém slově či stojíte uprostřed nějakého, zobrazí se seznam všech dostupných šablon a vy si můžete jednu vybrat

  • pokud stojíte na konci některého slova, pak:
    • pokud toto slovo jednoznačně identifikuje šablonu (slovo je zkratka šablony), tato šablona se provede (toto slovo může být i pouze předponou, ale jedinečnou)
    • pokud slovo je předponou některých ze zkratek šablon, jsou zobrazeny pouze tyto šablony
    • jinak se zobrazí všechny dostupné šablony

Uveďme to na příkladě.

Pokud máte šablony, které se aktivují slovy:

proc
ifs
ifc

pak pokud napíšete p, pr, pro či proc, aktivuje se první šablona. Pokud napíšete i či if, zobrazí se seznam o dvou položkách. Pokud napíšete ifs či ifc, aktivuje se druhá resp. třetí šablona. Pokud napíšete cokoliv jiného, získáte seznam všech tří šablon (algoritmus je stejný jako v případě Delphi).

Jak si napsat šablonu

Šablony jsou definovány v XML souboru, jehož struktura je popsána v souboru TEMPLATES.DTD. Ukázkou toho, jak takový soubor může vypadat, je soubor default.xml (je standardně dodáván s rkEditem), takže pokud XML neovládáte, může vám tento v lecčems pomoci. Způsob práce s těmito soubory byl popsán výše.

Za zmínku stojí tyto atributy elementu template:

  • shortcut - jde o jedinečný řetězec v rámci celého souboru šablon a říká, jaké slovo musí být napsáno, aby byla tato šablona aktivována (např. již zmíněné proc, ifs či ifc).

  • name - jde o jméno šablony, pod kterým bude uvedeno v rkEditu při výběru

  • inputdesc - nepovinný parametr související s proměnnou %input% (viz dále)

  • inputdescn - nepovinný parametr související s proměnnými %inputn% (viz dále)

Textem šablony může být v podstatě cokoliv, co má význam a nenaruší strukturu XML dokumentu. Místo, kam se má po provedení šablony umístit kurzor, se označí kolmítkem.

Pokud chcete vkládat znaky jako je <, >, & apod. pak musí samozřejmě dbát na to, aby nebyla narušena struktura XML dokumentu. Toho dosáhnete například tím, že si jako text šablony napíšete například:

<head><title>...</title></head>

označíte tento text jako blok a z menu Special zvolíte příkaz Text to XML safe form. Označený text se převede pomocí textových entit do takového stavu, ve kterém bude vše v pořádku a šablonu půjde načíst. V tomto případě do následující podoby:

&lt;head&gt;&lt;title&gt;...&lt;/title&gt;&lt;/head&gt;

Pokud editujete šablonu v rkEditu (v čem také jiném, že ;-), tak při testování jistě budete potřebovat tuto šablonu načítat znovu a znovu. K tomu slouží příkaz v menu Settings s názvem Refresh actual templates.

Používání proměnných

V jednotlivých šablonách lze používat i proměnné. V tomto případě se nejedná o žádnou XML vymoženost, ale o vymoženost rkEditu. Představte si, že potřebujete například u vašich nových podprogramů zadat nejen název, ale i datum a čas vytvoření a jméno tvůrce. Nebo v novém souboru v projektu zadáváte kromě ostatního svůj e-mail a další. Proč to dělat ručně, když to jde zautomatizovat?

Proměnná znamená libovolný text v těle šablony uzavřený do procentítek, tedy například %email%. V rkEditu si pak můžete definovat vlastní hodnoty pro každou proměnnou (viz dále). V jedné firmě pak lze mít jednu šablonu pro nespočetně lidí.

Názvy proměnných mohou být zcela libovolné (až na výjimky definované dále), vše závisí na vašich potřebách.

Jak si definovat hodnoty proměnných

V menu Settings je položka Edit templates' variables. Ta vyvolá dialog podobný tomuto:

Právě zde si definujte název proměnné a její hodnotu jako je to provedeno například u proměnné FirstName. Tato hodnota pak bude vyplněna za uvedenou proměnnou. Přidání další proměnné lze například stiskem kurzorové klávesy Šipka dolů na posledním řádku, smazání proměnné lze pomocí klávesové zkratky Ctrl+Del.

Vestavěné proměnné

V rkEditu jsou některé proměnné definovány automaticky a mají svůj specifický význam:

date | Vložení aktuálního datumu dle zadaného formátu. Pokud není žádný formát zadán, je vzat přednastavený ze systému. Formátovacím řetězcem lze říct, aby byl vložen i čas.
time | Vložení aktuálního času dle zadaného formátu. Pokud není žádný formát zadán, je vzat přednastavený ze systému. Formátovacím řetězcem lze říct, aby byl vložen i datum.
guid | Vloží nově vygenerované GUID
filename | Vloží název souboru (pokud je tento již uložen)
fullfilename | Vloží název souboru včetně cesty (pokud je tento již uložen)
input | Zde se uplatňuje atribut elementu template inputdesc. Při zadání této proměnné budete dotázáni na řetězec, který bude vložen místo této proměnné.
input1..input10 | Jestliže potřebujete od uživatele více než jeden vstup, pak místo proměnné input použijte až deset těchto proměnných. Od uživatele bude požadován vstup všech uvedených proměnných v jediném dialogu. Texty ke každému vstupu se budou brát z atributů alementu template nazvaných inputdesc1 až inputdesc10
block | Za tuto proměnnou bude vložen text, který je označen v bloku; obecně platí, že pokud je při vyvolání šablony označen blok, je tento nahrazen šablonou

Proměnné systému

Pokud rkEdit nenalezne název proměnné, snaží se zjistit, zde neexistuje i takové proměnná systému. Pokud existuje, pak je nahrazena právě její hodnotou. Příkladem může být např. proměnná systému %path%.

Příklad šablony

Mějme například tuto šablonu:

 <template shortcut="proc" name="Procedure" inputdesc="Enter procedure name:">

    //------------------------------------------------------------------

    //   Procedure %input%

    //   created by %firstname% %othername% %surname% at %date% %time%

    //   soubor: %filename%

    //------------------------------------------------------------------

    procedure %input%;

    const

      GUID = ['%guid%'];

    begin {%input%}

      |

    end; {%input%}

  </template>

Po spuštění této šablony budeme dotázání na zadání hodnoty proměnné input:

a následně se vygeneruje tento text:

//------------------------------------------------------------------

//   Procedure MyProc

//   created by Slávek %othername% Rydval at úterý, 14. 08. 2001 17:58.26

//   soubor:

//------------------------------------------------------------------

procedure MyProc;

const

 GUID = ['{BC75846B-9410-4877-9136-57EB73F0FC54}'];

begin {MyProc}

end; {MyProc}

Všimněte si několika věcí:

  • Neznámé proměnné zůstávají nedotčeny (pokud se nejedná o proměnné systému).

  • Na hodnotu proměnné input jste dotázáni pouze jednou, ale doplní se ve všech výskytech.

  • Kurzor bude na místě označeném v šabloně kolmítkem.

  • Nápovědný text daný atributem inputdesc je použit v dialogu.

  • Pokud si nadefinujete proměnné guid, filename apod., nic tím nezískáte, rkEdit má prioritu.


Skriptování

Skriptování je určeno pro uživatelské rozšíření chování aplikace o další možnosti jako je např. práce s textem. Pomocí jazyka JScript nebo VBScript si uživatel napíše skript, který pak lze vyvolat např. z nabídky menu.

Bližší informace a dokumentace jsou uvedeny v samostatném souboru rkScripting.chm dostupný např. z menu Help, položka Scripting Help (tato položka je vytvořena skriptem, pokud jste jej upravil, nemusí být na uvedeném místě dostupná; nápovědu pak naleznete v adresáři, do kterého jste umístili rkEdit).


Známé chyby

  • Chyba (E071): Pokud se otevře project, který je read only, pak již rkEdit nezavřu.

  • Chyba (E056): Pokud je rkEdit na sekundárním monitoru maximalizovaný a ukončí se, pak se po dalším spuštění objeví na primárním.

  • Chyba (E039): Pokud se rkEdit spustí z distribuce, dá se About, Ok, exit, spadne to (závisí to na ini souboru a sekcich [LastOpened] a [LastOpenedProjects].

  • Chyba (E016): Pokud se aplikace při Application.OnActivate ptá na Reaload souboru, mezitím se uživatel přepne jinam a pak zase zpět, a na dotaz o Reloadu odpoví „No“, tak se to optá ještě jednou.

  • Chyba (E010): nefunguje jediná instance v případě, že se vybere například v Průzkumníku několik souborů a dá se Edit with rkEdit (případně se spustí zaregistrované přípony)

Viz také Opravené chyby


Neznámé chyby?

Já plně doufám, že v aplikaci žádné skryté chyby nejsou. Pokud však přeci jenom k nějaké dojde, objeví se zpráva podobná následující:

V případě, že vás tento nepříjemný dialog překvapí, pošlete mi prosím jeho obsah včetně popisu, jak k chybě došlo (nejlépe, je-li postup vyvolání chyby opakovatelný).

Poznámka: Pokud chyba není až tak fatální, uvedený dialog se nemusí objevit.


Opravené chyby

  • E102: Zástupka %SELECTED= je case sensitive (nyní již není).

  • E101: Označit blok, přepnout se na projektový strom a zvolit příkaz copy (Ctrl+C) - dojde k výjimce.

  • E100: Pokud na záložce Computer zvolím tlačítko pro projektový adresář a nastavovaný adresář neexistuje (např. jde o nový, dosud neuložený projekt), dojde k výjimce.

  • E099: Při použití databázových pluginů v některých případech se po zobrazení výsledné datové sady zobrazil dialog s výjimkou.

  • E098: V případě zobrazení okna s výjimkou se špatně vykoná po kliknutí na odkaz s mailem spuštění standardního e-mailového klienta.

  • E097: Pokud provedl dablklik pod slovem na posledním řádku soubor, jež nemá nastaven zvýrazňovač, dojde k výjimce.

  • E096: Pokud v nastavení zvýrazňovače změním Filter name, projeví se to až po restartu rkEditu.

  • E095: Pokud je otevřené Output okno, zavřou se všechny soubory a nakonec se chce zavřít i Output okno, dojde k výjimce.

  • E089: Některé zvýrazňovače při dvojkliku na slovo jej neoznačí celé, pokud obsahuje znaky š, ž, ť (bez ohledu na velikost).

  • E094: TableWizard: pokud se jako zdroj dá ToDo list, tak u položek, které nejsou označeny jako splněny, udává datum splnění 31.12. 1899.

  • E093: News from Web: pokud nebyla žádná novinka v Newsech a uživatel nechtěl vidět starší, pak nebyl zapsán správný (tedy aktuální) datum posledního zjišťování novinek.

  • E092: Pokud uživatel jako zvýrazňovač zvolí HTML nebo PHP a je pro něj zaškrtnuto smart, není na to při otevření souboru brán ohled.

  • E091: Pokud se použije příkaz "Save as" a zvolí se název souboru, který již existuje a není otevřen projekt, dojde k výjimce.

  • E088: Delete redundant spaces - problem, pokud je posledni řádek neprázdný.

  • E090: Pokud se uloží nový soubor nebo se provede příkaz Save as..., není tento soubor vložen do menu Reopen.

  • E087: Pokud se v záložce Computer smaže nebo přejmenuje soubor, rkEdit to nesprávně zobrazí.

  • E084: Connection tool bar: pokud má být zobrazen automaticky při načtení pluginů, tak se to neprojeví v menu (popup a view).

  • E085: Pokud je v projektu soubor typu \\server\... tak je sice správně uložen, ale již není načten, protože se zkomolí jméno.

  • E086: Pokud je nastaven sloupcový blok, žádný ale není označen a zvolí se konvertovat text z jednoho kódování češtiny do druhého, potvrdí se dotaz na celý text, tak to nezkonvertuje správně (vůbec).

  • E081: Pokud se editoru předhodí soubor jako parametr a ten není zadán plnou kvalifikovanou cestou, pak při případné změněě adresáře (např. v Open dialogu) se soubor začne ukládat ve změněném. (aktuálním) adresáři. Tohle vadilo např. ve Windows Commanderovi, pokud se rkEdit nastavil jako editor a uživatel chtěl editovat nový soubor (Shift+F4).

  • E082: pokud je nastaveno kódování primárních souborů na ISO8859-2, nezaškrtne se správně položka menu.

  • E035: Když se odebírá z projektu soubor (v projektovém stromě), který není otevřen a současně je v seznamu nad ním nějaký další neotevřený soubor, je odstraněn tento.

  • E067: Ascii table: Pokud se stiskne klávesa, která má i svou hodnotu ve velkých (malých) písmenech, špatně se zobrazuje aktivní znak.

  • E083: Pokud se dá Enhanced new a zvolí se první zvýrazňovač, pak je vybráno jako by se zvolilo No highlighter.

  • E079: Některé potvrzovací dialogy jsou závislé na OS a dávají názvy tlačítek dle OS (teď je vše anglicky).

  • E078: Pokud je defaultní tiskárna nastavená síťová a ta je vypnuta, dojde k výjimce při startu aplikace a tedy nedojde k její inicializaci

  • E076: Zdvojený hotkey v Search&Replace dialogu (Search a Select).

  • E011: Pokud je dán jako parametr soubor s DOS 8.3 compatible cestou, a tento je již otevřen s dlouhou cestou, je otevřen znovu v novém okně.

  • E073: Špatně funguje ctrl+šipka doleva či doprava na slovech s českou diakritikou (od verze 3.10 díky bové verzi SynEditu).

  • E055: Pokud vyhledávám a nahrazuji dlouhý text (přes 100 znaků), dialog s dotazem se zobrazí někde úplně ve fuč.

  • E058: Pokud je již jednou ToDo položka označena jako Done, nelze ji „oddonovat“.

  • E068: Pokud je u zvýrazňovače HTML nastavena vlastnosti Smart a vloží se tag skript, pak nesmí být case sensitive, jako je nyní.

  • E053: Příkaz Close block to XML tag špatně uchovává data zadaná do rozbalovacího seznamu.

  • E072: Pokud se spustí rkEdit bez parametru a předtím nebyl otevřen žádný soubor ani projekt, nedojde k inicializaci hlavičky a patičky pro tisk

  • E069: Modifikovaný projekt -> zavření aplikace -> dotaz -> cancel -> přesto se aplikace ukončí.

  • E066: Multiple clipboard: při zobrazení je při malém rozlišení mimo plochu

  • E063: Menu View, položka TreeProject: nezobrazuje se (Un)checked.

  • E065: V Settings dialogu se při některých změnách neaktivovalo tlačítko Appy.

  • E064: Pokud se přihlásím k jediné databázi a pak se odhlásím, spadne to při vypisování jména souboru do status baru (nenuluji počet rozšířených panelů).

  • E062: Pokud se stane ToDo položka done, pak se hodnota created at nastaví na hodnotu done at.

  • E061: Pokud se změní zvýrazňovač a je současně s tím změněn i počet atributů, dojde ke špatnému načtení barev a atributů

  • E054: Nesjednocené informační popisky (Hint) u vyhledávání.

  • E060: Pokud v projektu vytvořím nový soubor (new file) a uložím jej, pak není v projektovém okně zatříděn (podobně příkaz save file as).

  • E059: Dám si někam záložku, jdu jinam, označím text, vložím jej do schránky, přesunu se zpět na záložku a vložím text -> text je vložen na místo označeného bloku

  • E046: Pokud je otevřen projekt, v něm je modifikovaný nový soubor, zvolí se ukončení aplikace a na dotaz, zda onen soubor uložit, se odpoví Ne, přesto se aplikace dále zeptá na název souboru (v případě, že nejde o nový soubor, pak si i přes odpověď Ne uloží)

  • E057: rkEdit při spuštění z read only media (CD apod.) hlásí chyby

  • E009: Ne vždy se správně provede vyhledání a nahrazení.

  • E031: Pokud není nainstalována tiskárna, hází to zvláštní dialogy.

  • E052: Zvýrazňovač C++: Pokud znak pro preprocesor (#) není prvním znakem na řádce (mezery se nepočítají), je přesto text označen jako direktiva, což je špatně.

  • E051: Ve zvýrazňovači JScriptu při řetězci typu: "\"cosi\"" se slovo cosi neobarvilo jako řetězec.

  • E050: Table Wizard při generování pro XML z nějakého zdroje bere v potaz počet sloupců. zadaných v průvodci a tedy nikoliv dle stavu došlých dat

  • E049: Pokud je v cestě k rkEditu cesta, pak se u registrovaného typu souboru nezobrazuje správně ikonka

  • E048: Pokud není přiřazen main file, přes to se zobrazuje jako povolený v menu Compile

  • E047: Smazání main file musí nastavit projekt jako modified

  • E045: Pokud se v ASCII tabulce (double)klikne na oblast mimo znak, dojde k vyvolání neobsloužené výjimky

  • E044: Pokud chtěl uživatel konvertovat soubor na disku do ISO 8859-2 či zpět, pak se to neprovedlo

  • E043: Drobný překlep v nápovědě u šablon

  • E042: Ačkoliv projekt nenxistoval, přesto se jakoby otevře

  • E041: Last active file v projektu je stale s absolutni cestou

  • E040: Pokud se klikne na e-mail v About na první stráce, nedojde ke správnému vypsání adresy v poštovním klientovi

  • E038: Při zavírání souboru přes kontextové menu vyvolaného přímo na jazýčku u PageControlu dochází k Application Exception

  • E037: Pokud je v cestě k rkEditu cesta, pak se u registrovaného typu projektu nezobrazuje správně ikonka

  • E034: Při otevření projektu se většinou špatně nastaví lastopenedfile

  • E033: Pokud si nastavím SimpleWordWrap, tak při prvním načtení projektu to funguje ok, ale při uložení již tento atribut neuloží a tím dojde k jeho ztrátě

  • E036: Chybka ve zvýrazňovači Javy: pokud se vyskytne řádek typu
    println("This is a test\\"); //Hello
    pak jsou špatně interpretovány zpětná lomítka a text je označen jako řetězec až do konce.

  • E032: Jestliže je soubor, který je v projektu, smazán, na to je spuštěn rkEdit a zase se ukončí, dojde k neobsloužení výjimky

  • E028: Pokud se z hledače chyb vrátí -1,-1, kursor se přesune na začátek

  • E030: Špatný tab order v Extensions settings

  • E027: Při zobrazení chyby se sice čeká na nějaký příkaz, ale kliknutí myší se to zobrazení nezruší

  • E029: Pokud se dá příkaz Open file a vybere/ou se soubor(y), který/é je/jsou již otevřen(y), otevře/ou se znovu, tato chyba je zde zřejmě již od verze 1

  • E026: Pokud jsou zavřeny všechna editační okna, zůstává ve status baru jméno a pozice naposledy otevřeného souboru

  • E025: Pokud jsou zavřeny všechna editační okna a zvolí se položka menu Compile, vyhodí to neobslouženou výjimku

  • E024: Pokud nejsou definovány žádné proměnné a dá se Ctrl+Del, vyšlehne to výjimku

  • E022: Pokud je v textu šablony komentář, dojde k neobsloužení výjimky

  • E023: Pokud při spuštění aplikace neexistuje soubor s uloženými stringlisty (find, replace, variables, ...) a uzivatel se pokusi vyhledavat ci editvat proměnné, dojde k neobsloužení výjimky

  • E020: Třídění se k volbě CaseSensitive chová opačně, než má

  • E019: Pokud není přiřazen žádný překladač apod., přesto jsou akce přeložit a spustit povoleny

  • E018: Pokud není označen žádný blok, jsou přesto povoleny příkazy Sort, Block to UpperCase a další.

  • E021: Pokud se má třídit i poslední řádek a tento není prázdný, pak není zatříděn.

  • E012: Občas aplikace při volání HTML nápovědy spadne bez jediného slova, neuložené změny jsou ztraceny, důvod neznámý, doporučuji před voláním uložit všechny změny. Pozor: problematika je složitější a je popsána v samostatné části.

  • E017: V případě volání příkazu "Text to XML Safe form" pouze na označený blok se místo standardizace provede převod na malá písmena (pokud se převádí celý text, je to ok)

  • E014: Při příkazu Save All nezbělají všechny obrázky na záložkách (které jsou žluté), ale pouze u aktivního souboru. Ostatní zbělají až když se na ně uživatel přepne (uložení souboru samozřejmě proběhne).

  • E013: Chyba při exportu z XML do HTML/RTF

  • E015: Pokud je aplikace minimalizovaná, uživatel se na ni přepne a mezitím byl(y) změněn(y) soubor(y), pak sice správně proběhne dotaz, ale je-li odpovězeno „No“, tak se neobnoví hlavní okno aplikace

Poznámka: seznam je dle časového pořadí odstranění chyby od nejpozději odstraněných do dříve odstraněných.


HTML Help a rkEdit

Volání HTML Helpu může být problémem. Verze rkEditu 1.0 a beta verze 1.1 měly následující nedostatek (přesný popis chyby):

E012: Občas aplikace při volání HTML nápovědy spadne bez jediného slova, neuložené změny jsou ztraceny, důvod neznámý, doporučuji před voláním uložit všechny změny.

Při podrobnějším zkoumání jsem přišel na to, že k tomuto efektu dochází díky rychlému volání exportované funkce z knihovny společnosti Microsoft několikrát za sebou. Důležité je říct, jak k tomuto rychlému volání dochází (jedná se o mé pozorování). Pokud uživatel stiskl klávesu F1 a ihned ji nepustil, pak mohlo dojít k tomu, že aplikace zavolala nápovědu a sama dále pokračovala v činnosti. Jenže klávesa byla pořád držena a tak aplikace znovu zavolala nápovědu a pokračovala v činnosti. Jenže... Toto vedlo k tomu, že se nápověda nestihla zinicializovat a při dalších voláních došlo k „nějaké“ poruše ve volané knihovně.

Dočasné řešení: Od verze rkEditu 1.1 (včetně) jsem použil trochu jiný způsob (ale bohužel opět založený na knihovně Microsoftu). Vytvořil jsem aplikaci, která spouští HTML Help (jmenuje se HelpRunner.exe). Tato aplikace musí být ve stejném adresáři jako je rkEdit.exe. Při volání nápovědy se nejprve spustí tato aplikace, která teprve zavolá vlastní nápovědu. Pokud spadne tato malá aplikace, rkEdit zůstane nedotčen a data nebudou ztracena. Nevýhodou je právě tato další aplikace, která se spouští. Dočasnost tohoto řešení spočívá v době, kterou bude:

  1. Microsoft potřebovat k opravě chyby

  2. Já potřebovat k nalezení jiného řešení

  3. Kdokoliv potřebovat k vyvrácení této mé domněnky a uvedením věci na pravou míru (prosím o případné informace na můj mail).

Upozornění: Pokud nepoužíváte nápovědu, právě popsaný problém se vás netýká.

Dodatek po dalších laděních: K popsané chybě Microsoftí knihovny dochází i za jiných okolností, rychlé spouštění je pouze urychlí.

Poznámka: HTML help bohužel musím podporovat, neboť je v něm napsána nápověda pro DocBook, který velmi často používám.


Klávesové zkratky

Klávesové zkratky a příkazy

Operace se soubory

Ctrl+N | Nový dokument (New)
Ctrl+O | Otevřít soubor (Open)
Strl+S | Uložení aktuálního souboru (Save)
- | Uložení aktuálního souboru pod jiným jménem (Save as)
- | Ulož všechny soubory (Save all)
Ctrl+F4 | Zavři aktuální sobor (Close)
- | Zavři všechny soubory (Close all)
- | Export do RTF či HTML (Export)
- | Znovunačtení souboru (Reaload)
- | Vymazání atributu Jen ke čtení (Clear Read Only Atribute)

Operace s projekty

Shift+Ctrl+N | Nový projekt (New project)
Shift+Ctrl+O | Otevřít projekt (Open project)
Shift+Ctrl+F4 | Zavřít projekt (Close project)
- | Uložit projekt pod jiným jménem (Save project as)
Shift+Ctrl+S | Uložit projekt (Save project)

Tisk

- | Nastavení tiskové stránky (Page setup)
- | Nastavení tiskárny (Printer setup)
Shift+Ctrl+P | Náhled tisku (Print preview)
Ctrl+P | Tisk (Print)

Editace

Ctrl+C | Kopírování bloku do schránky (Copy)
Ctrl+X | Vyjmutí bloku do schránky (Cut)
Delete | Smazání bloku (Delete)
Ctrl+V | Vložení textu ze schránky (Paste)
Ctrl+A | Označ vše (Select all)
Alt+BackSpace | Undo
Shift+Ctrl+Z | Redo
Shift+F7 (Ctrl+F8) | Přepínání na sloupcový blok (Column block)
Alt+U | Změna bloku na velká písmena (Block to upper case), bere se v potaz nastavení Locale
Alt+L | Změna bloku na malá písmena (Block to lower case), bere se v potaz nastavení Locale
Ctrl+I | Odsazení bloku (Indent block)
Ctrl+U | Zrušení indentace (Unindent block)
- | Třídění (Sort)
Ctrl+Shift+n | Uložení pozice kursoru (pozor, pouze po dobu existence instance), n=1..9
Ctrl+n | Návrat na dříve definovanou pozici kursoru
Ctrl+Num+ | Zvětšení písma o bod
Ctrl+Num- | Zmenšení písma o bod
Ctrl+J | Vyvolání šablony
Ctrl+W | Znovunačtení šablon pro aktuální typ souboru
Alt+kliknutí myši na záložce | Zavření souboru
Ctrl+Alt+Shift+0..9 | Vložení textu z násobné schránky (musí být aktivovaná).

Hledání/Nahrazování

Ctrl+F | Hledej (Search)
F3 (Ctrl+L) | Hledej další výskyt (Search next)
Shift+Ctrl+L | Hledej předchozí výskyt (Search previous)
Ctrl+Q | Najdi a nahraď (Seach and replace)
Ctrl+G | Jdi na řádek č. (Go to Line number)

Překlady

Ctrl+F9 | Přelož (Compile)
F9 | Spusť (Run)
Alt+F9 | Přelož a spusť (Compile and run)
- | Nastav aktuální soubor jako výchozí pro překlad (Set main file)
- | Nepoužívej výchozí soubor (Clear main file)
Ctrl+M | Otevři výchozí soubor (Open main file)

Uživatelské příkazy

Alt+F1 | Uživatelský příkaz 1
Alt+F2 | Uživatelský příkaz 2
Alt+F3 | Uživatelský příkaz 3
Ctrl+Alt+F4 | Uživatelský příkaz 4
Alt+F5 | Uživatelský příkaz 5
Alt+F6 | Uživatelský příkaz 6

Makra

F11 | Vlož datum (Insert date)
F12 | Vlož čas (Insert time)

Ostatní

F1 | Nápověda (Help)
Ctrl+F1 | Kontextová nápověda k DocBooku
Alt+F4 | Ukončení aplikace
F6 Alt+šipka doprava | Další okno (soubor)
Shift+F6 Alt+šipka doleva | Předchozí okno (soubor)


Formát datumu a času

c | Zobrazí datum a čas daný lokálním nastavením systému.
d | Zobrazí den v měsíci jako číslo bez předchozí nuly u čísel (1-31).
dd | Zobrazí den v měsíci jako číslo s předchozí nulou u čísel (01-31).
ddd | Zobrazí den v měsíci jako zkratku dne (závisí na lokálním nastavení počítače), tedy například po, ne či Sat, Tue apod.
dddd | Zobrazí název dne celým jménem (závisí na lokálním nastavení počítače), například Pondělí či Sunday.
ddddd | Zobrazí datum ve tvaru den.měsíc rok, vše čísly.
dddddd | Zobrazí datum ve tvaru den.měsíc rok, vše čísly kromě měsíce, který je názvem (závisí na lokálním nastavení počítače).
m | Zobrazí měsíc číslem bez předchozí nuly (1-12). Pokud ovšem předchozí formátovací řetězec je hh, budou zobrazeny minuty.
mm | Zobrazí měsíc číslem s předchozí nulou (01-12). Pokud ovšem předchozí formátovací řetězec je hh, budou zobrazeny minuty.
mmm | Zobrazuje zkráceně měsíc. Přesné zobrazení záleží na lokálním nastavení počítače. Zobrazení může být například Jan, Feb nebo římskými čísly.
mmmm | Zobrazí měsíc celým jménem (závisí na lokálním nastavení počítače).
yy | Zobrazuje dvouciferně rok (00-99).
yyyy | Zobrazuje čtyřciferně rok (0000-9999).
h | Zobrazí hodinu celým číslem bez předchozí nuly (0-23).
hh | Zobrazí hodinu celým číslem s předchozí nulou (00-23).
n | Zobrazí minutu celým číslem bez předchozí nuly (0-59).
nn | Zobrazí minutu celým číslem s předchozí nulou (00-59).
s | Zobrazí sekundu celým číslem bez předchozí nuly (0-59).
ss | Zobrazí sekundu celým číslem s předchozí nulou (00-59).
z | Zobrazí milisekundu celým číslem bez předchozí nuly (0-999).
zzz | Zobrazí milisekundu celým číslem s předchozí nulou (000-999).
t | Nastaví krátký formát času (závisí na lokálním nastavení počítače, většinou se jedná o hodinu a minutu).
tt | Nastaví dlouhý formát času (závisí na lokálním nastavení počítače, většinou se jedná o hodinu, minutu a sekundu).
am/pm | Zobrazí řetězec am resp. pm podle denní doby.
a/p | Zobrazí řetězec a resp. p podle denní doby.
ampm | Zobrazí řetězec am resp. pm podle denní doby (závisí na lokálním nastavení počítače).
/ | Zobrazí oddělovač datumu podle lokálního nastavení počítače.
: | Zobrazí oddělovač času podle lokálního nastavení počítače.
'xx'/"xx" | Řetězec mezi apostrofy či uvozovkami zobrazí bez formátování, takže lze použít i jinak nepřístupné znaky.

Poznámka: Pokud je formátovací řetězec prázdný, bude výsledek zformátován jako v případě řetězce c.


Nastavení překládání

Možnost překládat zdrojové texty posunuje aplikaci o notný krok dál od běžných editorů, které umí „jen“ editovat.

V uvedeném dialogu lze nastavit jednak aplikaci, kterou se překládá (řádek Compile), soubor, který se spouští po zadání příkazu Run.

Kromě toho lze po překladu otevřít soubor, kam například překladač dává chybové zprávy. Na obrázku je příklad nastavení překládání pro TeX, který automaticky generuje soubor s příponou .log.

Pokud zaškrtnete políčko Autoload, bude tento soubor otevřen automaticky. Jinak se bude ptát, zda jej opravdu chcete otevřít.

V případě generování souboru s chybovými hláškami apod. překladačem lze tento otevřít ve speciálním okně (popis viz Hledáme chyby ve zdrojových kódech). Název souboru se zadává do vstupní řádky nadepsané Log file.

Důležité je také editoru říct, co se má před spuštěním překladače či výsledného programu udělat s otevřenými soubory (uložit všechny změny, pouze aktuální soubor nebo nic).

Protože se překládání vztahuje k editovanému souboru, jehož název může být pokaždé jiný, lze použít zástupky: %filepath% je cesta souboru zakončená zpětným lomítkem, %filename% je název souboru a %fileext% je přípona včetně tečky. Pokud chcete použít celý název včetně cesty, můžete zkráceně použít zástupku %fullfilename%.

Dále lze v příkazu použít konstrukci %selected=filename%, která před spuštěním uloží označený blok aktuálního editoru do uvedeného souboru, vypustí uvedenou kosntrukci a spustí zbytek příkazu. Pokud je tedy příkaz např.:
cmd /c type c:\temp\blok.txt %selected=c:\temp\blok.txt%

pak se do souboru c:\temp\blok.txt uloží označený blok (pokud žádný označený není, vytvoří se prázdný soubor) a spustí se příkaz: cmd /c type c:\temp\blok.txt.

Konečně pokud použijete pro rkEdit neznámou zástupku, bude se rkEdit snažit nahradit ji pomocí hodnoty proměnné systému (např. %path% nahradí hodnotou vloženou do této proměnné).

Working directory určuje pracovní adresář překladače či přeloženého souboru při spuštění.

Pokud chcete, můžete tento systém rozšířit o možnost spouštět či otevírat další aplikace resp. soubory pomocí Uživatelských příkazů.

Popis dalších záložek lze najít v Nastavení přípon.


Nastavení přípon

Dialog nastavení přípon vyvoláte z menu Settings příkazem Extensions. Skládá se ze seznamu podporovaných typů souborů a čtyř až pěti záložek:

  • Colors: Nastavení barev

  • Extensions: Nastavení chování programu vzhledem k příponám (viz dále)

  • Compile & run: Nastavení překladů

  • Commands: Vlastní uživatelské příkazy

  • Extended: Rozšiřující nastavení pro vybrané typu souborů (v současné verzi pro soubory typu SQL)

Základní nastavení přípon se skládá z určení přípon, podle kterých program rozpozná, jaké zvýraznění syntaxe se má použít, kterou aplikací překládat a podobně.

Filter name je popis přípony, která se používá v dialozích otevření či uložení souboru a další.

V seznamu Extensions jsou všechny přípony, které jsou pro tento druh souborů akceptovatelné. Pokud se stane, že použijete stejnou příponu pro více druhů nastavení, bude brána v potaz ta, která je v levém seznamu nejvýše.

Jestliže zaškrtnete políčko Register with me, pak po zvolení tlačítka Register selected extensions budou přípony zaregistrovány v registrech systému Windows a následně po poklepání na soubory s uvedenou příponou například v Průzkumníku dojde ke spuštění editoru.


Oceniní a zpitná vazba

Ocenění a zpětná vazba

Získané ceny

Dne 3. srpna 2001 získal rkEdit nevyšší hodnocení serveru Slunečnice.

Vaše názory na rkEdit

  • „Jedeš jako pila :-) Diky za to, docela příjemně mi to usnadňuje činnost. Nový Plug-In Oracle je o dost lepší.“, Libor, 7. 3. 2003

  • „...nainstaloval jsem si Váš produkt rkEdit. Zatím jsem s ním nadmíru spokojen, myslím, že předčí řadu sharewarových produktů.“ Bedřich Havlíček, 5. března 2003

  • „zkouším od rána Váš program a vypadá to, že už nic dalšího hledat nebudu.“ Jan Černý, 5. března 2003

  • „Děkuji za to, že děláte rkEdit! Používám ho a doporučuji každému, komu by mohl být něco platný, byť třeba jen jako luxusní notepad ;-)“, Richard Holas, 20. února 2002

  • „Sháněl jsem různé editory pro vývoj a Váš editor mě velmi zaujal, nenašel jsem pro mé potřeby zatím nic lepšího. Začal jsem ho používat a jsem s ním velmi spokojen.“ Ing. Martin Kalina, 4. listopadu 2001

  • „Vyzkoušel jsem rkEdit 2.0, tedy vlastně ho používám už od 1.0, a moc se mi libí. Mimochodem, tak dobře zpracovaný help se jen tak nevidí.“ Petr Obermaier, 1. září 2001

  • „Koukal jsem na rkEdit a musím říci, že se mi moc líbí, je to pěkný kus dobře odvedené práce.“ Pavel Žampach, 28. srpna 2001

  • „Super věc, právě se zabydlel jednak na mém disečku a taky na mojí pracovně/cestovní ZIPajzně.“, Jiří Král, 16. srpna 2001

  • „..tiež som si chcel urobiť podobný editor na báze SynEditu, zdá sa že už je to neaktualné, Tvoj mi vyhovuje. Najviac oceňujem možnost otvorit viac súborov súčasně, a možnost kompilacie.“, Ivan Dulgerov, 17. července 2001

  • „Používám rkEdit asi týden a je to prima věc. Trochu mi tam chybí funkční TAB a po vložení textu ze schránky by kurzor mohl zůstat na jeho začátku.“, Tomáš Hojgr, 14. června 2001

  • „Tak za prvé je to ubohý soft a za druhé bych tam potřeboval dodělat...“, Petr Václavek 14. června 2001

  • „Předně chci vyslovit uznání za vytvoření tak zajímavého editoru. Nejsem programátor, ale ,pouhý uživatel‘, ... V poslední době jsem pátral po malých šikovných freeware editorech prostého textu s možností zvýrazňování syntaxe. Ze všech nalezených editorů je ve většině parametrů rkEdit nejlepší...“, Radim Gabriel, 28. května 2001

  • „Začal jsem používat Váš program rkEdit a jsem s ním velice spokojen. Již dlouho jsem hledal jednoduchý editor se zvýrazňováním syntaxe různých jazyků, ale nic použitelného jsem nenašel. Váš program splňuje téměř vše, co požaduji. Díky :-))“, Martin Vlk, 26. března 2001

Díky za každou připomínku.


Otázky a odpovědi

Elektronickou poštou dostávám otázky, které evidentně zajímá více uživatelů, proto je zde uvádím včetně odpovědí.

Otázka č. 1: Je možné volitelné dělení řádků (tzv. WordWrap)?

Odpověď: V současné době není tato funkce podporována a vzhledem k diskuzím v elektronické konferenci věnované SynEditu (editační komponenta, která je v rkEditu použita) to nevypadá, že opravdové zalamování bude v rozumné době implementováno. Bohužel je to jedna z mála věcí, kterou (ač bych rád) nelze do nejbližší další verze rkEditu zavést. Ovšem jedna malinkatá možnost tu přeci jenom je. Pokud do INI souboru aplikace do sekce Editor vložíte řádek SimpleWordWrap a hodnotu nastavíte na 1, bude rkEdit při psaní textu fungovat takto: pokud se napíše nějaký znak a kursor se dostane za svislou čáru určující počet znaků na řádek, program automaticky vloží to textu zakončení řádky na poslední mezeře na řádku. Pokud chcete stejné chování i v projektech, musíte do projektového souboru (soubor s příponou .rkp) umístit do kořenováho elementu project atribut s názvem simplewordwrap a hodnotu nastavit na jedničku. V obou případech se v žádném případě se ale nejedná o pravé zalamování, neboť je vložen tvrdý konec řádky. Pozor! Tuto funkci považuji za nedokumentovanou. Při použití funkce UnDo se špatně umístí kursor.

Otázka č. 2: Je možné libovolně přecházet mezi různými verzemi rkEditu?

Odpověď: Ze starší na novější vždy, zpětná kompatibilita je zajištěna. Z novější na starší je problém se souborem rkEdit.ibt, kde je uložené vaše nastavení přípon (barvy, překladače, ...). Pokud chcete přejít na starší verzi, buďto uvedený soubor smažte (čímž ovšem přijdete o své nastavení) nebo si ze starší verze tento soubor zazálohujte (za cenu, že při návratu nemusí nastavení přípon odpovídat aktuálnímu stavu). Od verze 4.0 je uživatelské nastavení v adresáři Settings, do té doby bylo v adresáři aplikace - i toto je potřeba vzít na vědomí. Vše ostatní je bez problémů.

Otázka č. 3: Podporuje rkEditu kódování UNICODE a UTF-8?

Odpověď: Ano, ale pouze částečně. Bližší informace v tématu Podpora češtiny.

Otázka č. 4: Proč u SQL syntaxe chybí klíčové slovo ADD?

Odpověď: Nechybí. Ve standardu SQL opravdu slovo ADD není, ale třeba v MS SQL existuje. Pokud chcete používat nějaký dialekt místo standardu, zvolte menu Settings, položka Extensions, vyberte příponu SQL a na záložce Extented požadovaný dialekt.

Otázka č. 5: Má rkEdit nějaké „Velikonoční vajíčko“?

Odpověď: Ano.

Otázka č. 6: Bude rkEdit portován na Linux?

Odpověď: Ne. rkEdit používá poměrně velké množství funkcí závislých na operačním systému, které na Linuxu poněkud chybí. Navíc autor Linuxu nerozumí, nemá jej nainstalovaný a v dohledné době s tím nehodlá nic dělat.

Otázka č. 7: Proč není databázový modul pro MySQL?

Odpověď: Databázové moduly, které dělám, vycházejí hlavně z mých potřeb, resp. podporované databáze jsou závislé na tom, které sám používám. V dnešní době je to hlavně MS SQL a Oracle. Pokud ale najdu dostatek času, udělám alespoň základní modul i pro MySQL.


Podpora češtiny

Od verze aplikace rkEdit 1.1 je podporována čeština v několika směrech:

  1. Možnost převádění mezi kódováními CP1250 (Windows), Latin2, Kameničtí a ISO 8859-2. Toho lze dosáhnout z menu Special, položky Czech specialities. Pokud je označen blok, bude převeden pouze on, jinak se aplikace zeptá, zda převést celý text.

  2. Pokud používáte jiné kódování než CP1250 (konkrétně Latin2, Kameničtí či ISO 8859-2), pak není potřeba provádět složité konverze ručně. V menu Special, položky Czech specialities lze nastavit, v jakém kódování jsou soubory na disku uloženy a aplikace sama provede při načtení konverzi do CP1250 a při ukládání zpět do původního formátu. Tím máte zajištěnou práci se schránkou i mezi jinými aplikacemi a přitom na disku je původní formátování!

  3. UNICODE a UTF - Od verze 4.7 je (byť částečně) podporováno kódování UNICODE a UTF-8. Nastavení funguje stejně, jako u kódování uvedeném v druhém bodě. Protože jsou však uvedená kódování dvojbajtová a rkEdit vnitřně pracuje pouze s jednobajtovými znaky, může během konverze dojít ke ztrátě dat. Mějte uvedenou skutečnost prosím na paměti.

Již ve verzi 1.0 bylo možné převádět označený blok na malá a velká písmena a také jej třídit. Tato funkce pracovala i s českými znaky a českým tříděním (záviselo to na národním nastavení operačního systému). Je samozřejmé, že tato funkčnost byla zachována i v následujících verzích.


Překládání souborů

V případě programování je zapotřebí naprogramovaný soubor přeložit. K tomu slouží položka menu Compile. Kromě základních příkazů Compile a Run (případně provedení obou akcí na stisk jedné klávesové zkratky) nabízí rkEdit rozšiřující možnosti kompilace.

Těmi je jednak možnost nastavit hlavní soubor projektu, jehož překlad resp. spuštění se bude provádět bez ohledu na editovaný soubor (tato možnost je známá mj. z překladačů firmy Borland) a jednak možnost zadat si otevření či spuštění dalších souborů.

Hlavní soubor se nastaví pomocí příkazu Set current file as default, který nastaví aktuální soubor jako hlavní. Od této doby již vyvolání příkazu na kompilaci resp. spouštění bude pracovat s tímto souborem (aniž by musel být otevřen v editoru), nikoliv s tím, který právě editujete.

Až vás tento soubor přestane bavit, použijte volbu Clear default file. Rychlé otevření hlavního souboru či přepnutí se na něj, je-li již otevřen, provedete pomocí příkazu Open default file.

Dalším rozšířením jsou uživatelské příkazy, které mohou buďto otevírat další soubory nebo spouštět externí aplikace. Zde je nutné podotknout, že tyto uživatelské příkazy (záměrně) neberou ohled na nastavení hlavního souboru. Názvy uživatelských příkazů je možné měnit.

Jak a kde si nastavit možnosti překladu se dozvíte v tématu Nastavení překládání a Nastavení uživatelských příkazů.


Poíklady použití

Příklady použití

Zde uvedu několik možností nastavení aplikace pro některé typy souborů tak, jak je používám já.

HTML

  • Compile nebo Run, to je jedno: C:\Program Files\Internet Explorer\IEXPLORE.EXE "%FULLFILENAME%"

XML

XML, resp. DocBook pro XML, používám k psaní článků, diplomky, dokumentace a další. Překládání mám do rtf a na výsledný soubor spouštím MS Word. Uživatelské příkazy mi jednak překládají XML do HTML a LaTeXu a třetí příkaz spouští HTML verzi. Jednotlivá pole jsou uvedena takto:

  • Compile: C:\SGML\bin\db2rtf.bat "%FILEPATH%%FILENAME%%FILEEXT%"

  • Run: C:\Program Files\Microsoft Office\Office\WINWORD.EXE "%FILEPATH%%FILENAME%.rtf"

  • User command 1: Convert to HTML: C:\SGML\bin\db2html.bat "%FILEPATH%%FILENAME%%FILEEXT%" "%FILEPATH%%FILENAME%.html"

  • User command 2: Convert to LaTeX: C:\SGML\bin\db2latex.bat "%FILEPATH%%FILENAME%%FILEEXT%" "%FILEPATH%%FILENAME%.tex"

  • User command 3: Run HTML: C:\Program Files\Internet Explorer\IEXPLORE.EXE "%FILEPATH%%FILENAME%.html"

TeX

Soubory TeXu resp. LaTeXu pro překlad volají standardní dávku cslatex, která provede přeložení do DVI a mj. vygeneruje soubor .LOG, který si nechávám otevírat. První uživatelský příkaz mi zdrojový soubor LaTeXu přeloží do PDF a druhý spustí Acrobat Reader na jeho prohlédnutí:

  • Compile: "C:\TeX\bin\win32\cslatex.bat" %FILENAME%

  • File to open after compile: %FILEPATH%%FILENAME%.log

  • Run: windvi -single "%FILEPATH%%FILENAME%.dvi"

  • User command 1: Convert to PDF: C:\TeX\bin\win32\pdfcslatex.bat %FILENAME%

  • User command 2: Run PDF: "C:\Program Files\Adobe\Acrobat 4.0\Acrobat\Acrobat.exe" "%FILEPATH%%FILENAME%.pdf"

SQL - MS SQL 2000

Váš skript lze spouštět/překládat pomocí řádkové utility OSQL například takto (pokud neznáte přesný význam některých parametrů, podívejte se do BooksOnline):

  • Compile: cmd /c osql -Uusername -Ppassword -dtempdb -w1000 -n -i"%FULLFILENAME%" > %FILEPATH%sqloutput.txt

  • Log file: %FILEPATH%sqloutput.txt

SQL - Oracle

Je potřeba mít nainstalovaného Oracle klienta a že rkEdit je v adresáři c:\rkEdit a má u sebe navíc adresář batch:

  • Compile (mezera mezi %FILEPATH% a %FILENAME% je schválně): c:\rkEdit\batch\compilepackage.bat username/password@oraclemachine %FILEPATH% %FILENAME%%FILEEXT%

  • Log file: C:\temp\compile.txt

Dávka compilepackage.bat vypadá následovně (případně si upravte cestu k SQLPLUS.EXE a případně upravte cestu k TEMP adresáři):

copy %2%3 C:\TEMP\%3 > NUL

type c:\rkEdit\batch\exit >> C:\TEMP\%3

c:\Oracle\Ora81\bin\SQLPLUS.EXE %1 "@C:\TEMP\%3" > C:\TEMP\COMPILE.TXT

c:\rkEdit\batch\dellines.exe C:\TEMP\COMPILE.TXT 13 frombegin

c:\rkEdit\batch\dellines.exe C:\TEMP\COMPILE.TXT 3 fromend

Dávka používá soubor exit, který vypadá následovně (na začátku musí být prázdný řádek!):

.

set arraysize 2

set maxdata 60000

set scan off

spool c:\temp\errors.lst

timing start

/

timing stop

show errors

spool off

exit

Dále se předpokládá, že SQLPLUS.EXE je v adresáři c:\Oracle\Ora81\bin.

V dávce se používá i soubor dellines.exe. Ten je dodáván společně s DLL knihovnou, která hledá případné chyby ve souboru, který z dávky „vypadne“. DLL je dostupná na stránce produktu v sekci stažení.

SQL - Sybase ASE 11.5

Zde se využívá řádkový příkaz ISQL, který se instaluje např. s klientem Sybase:

  • Compile:

    • spuštění celého skriptu: cmd /c c:\rkEdit\sql_sybase.cmd %FULLFILENAME%

    • spuštění pouze vybrané části sql skriptu: cmd /c c:\rkEdit\sql_sybase.cmd c:\BLOK.TXT %SELECTED=c:\BLOK.TXT%

  • Log file: c:\result.txt

přičemž soubor sql_sybase.cmd má následující obsah:

ECHO OFF

c:\sybase\bin\isql.exe -w 2000 -X -SSQL_SERVER -Ddata -i%1 -oc:\result.txt -Unekdo -Pneciheslo

Význam parametrů (bližší popis viz dokumentace)

  • -w 2000: se šířkou výsledku 2000 znaků

  • -X: se zašifrovaným přenosem hesla

  • -i%1: vstupní soubor jako parametr volání dávky = %FULLFILENAME% nebo %SELECTED=c:\blok.txt%

  • -oc:\result.txt: výstupní soubor

  • -SSQL_SERVER: přihlašuji se na server se jménem "SQL_SERVER"

  • -Ddata: přihlašuji se do databáze se jménem "data"

  • -Unekdo: přihlašuji se jako login se jménem "nekdo"

  • -Pneciheslo: heslo loginu "nekdo"

Poznámky:

  • Přepínače jsou CASE SENSITIVE.

  • Pro přepínače -i a -o (input a output file) je třeba, aby názvy souboru a adresářů v cestě NEOBSAHOVALY mezery, české znaky a byly na lokálním disku. Jinak ISQL nic neřekne a nic neprovede.

  • Jiné verze ISQL mohou podporovat více přepínačů.

C/C++

Překlad C/C++ můžete provádět pomocí volně stažitelného překladače od firmy Borland.

  • Compile: cmd /c bcc32.exe -tWD -ps -IG:\Borland\CPP55\Include -LG:\Borland\CPP55\Lib "%FILEPATH%%FILENAME%%FILEEXT%" > "%FILEPATH%OUTPUT.TXT"

  • File to open after compile: %FILEPATH%OUTPUT.TXT

  • Run: %FILEPATH%%FILENAME%.EXE

Pozor, je nutné mít nastavenou cestu do bin adresáře překladače, protože překladač potřebuje ještě další věci ke své činnosti a instalační program to automaticky neprovede.

C#

Je jasné, že musíte mít nainstalovaný překladač, který je součástí MS .NET Framework Software Development Kitu, který získáte zdarma na adrese http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml. Vlastní nastavení již může vypadat takto:

  • Compile: "c:\WINNT\Microsoft.NET\Framework\v1.0.3705\csc.exe" "%FULLFILENAME%"

  • Run: %FILEPATH%%FILENAME%.EXE


Rozšířené nastavení

Rozšířené nastavení je použito pouze u souborů typu SQL a určuje dialekt jazyka SQL, na který má brát „zvýrazňovadlo“ ohled.

Popis dalších záložek lze najít v Nastavení přípon.


Typy souborů

V případě rkEditu se lze setkat s těmito soubory:

Adresář, kde je rkEdit umístěn

rkEdit.exe | Vlastní spustitelný soubor.
licence.txt | Soubor s textem licence.
rkEdit.chm | Tato nápověda.
msxml.js | Soubor pro WHS, který zjišťuje validnost XML dokumentu.
HelpRunner.exe | Spouštítko nápovědy.
borlndmm.dll | Externí knihovna.
rkScripting.chm | Nápověda ke skriptování.
PoweredByrkEdit.gif | Ikonka, kterou můžete vkládat do svých projektů včetně odkazu na stránky editoru. Určitě mě to potěší.

Adresář Settings

rkEdit.ini | Soubor se základním nastavením.
rkEdit.ibt | Soubor s nastavením jednotlivých přípon.
rkEdit.sls | Uložení seznamů aplikace jako je find dialog, replace dialog, šablony a další.
tablewiz.ini | Nastavení Průvodce tvorbou tabulky.
plugins.ini | Nastavení databázových modulů z pohledu aplikace.
rkEdit.fhh | Historie nastavení jiných než standardních zvýrazňovačů.

Adresář Templates

templates.dtd | DTD soubor pro šablony.
default.xml | Standardní šablona.

Pokud chcete mít šablony pro některý jazyk, musíte vytvořit a umístit soubory s následujcíím názvem do uvedeného adresáře (bližší informace u popisu šablon):

Object Pascal | pascal.xml
Delphi/C++ Builder form definition | dfm.xml
C++ | cpp.xml
C# | cs.xml
C pro Siemens | csiemens.xml
x86 Assembler | asm.xml
51 Assembler | asm51.xml
Visual Basic | vbasic.xml
Fortran | fortran.xml
Java | java.xml
PHP | php.xml
Perl | perl.xml
Python | python.xml
JavaScript | jscript.xml
MS VBScript | vbscript.xml
SQL | sql.xml
Progess | progress.xml
Fox Pro | foxpro.xml
HTML | html.xml
CSS | css.xml
MS DOS - Dávky | batch.xml
INI soubory | ini.xml
Inno setup | innosetup.xml
TeX | tex.xml
XML | xml.xml
AWK skripty | awk.xml
CORBA IDL | idl.xml

Adresář DLLs

V tomto adresáři mohou být soubory, které se používají ve spojitosti s rkEditem:

Object Pascal | pascal.dll
Delphi/C++ Builder form definition | dfm.dll
C++ | cpp.dll
C# | cs.dll
C pro Siemens | csiemens.dll
x86 Assembler | asm.dll
51 Assembler | asm51.dll
Visual Basic | vbasic.dll
Fortran | fortran.dll
Java | java.dll
PHP | php.dll
Perl | perl.dll
Python | python.dll
JavaScript | jscript.dll
MS VBScript | vbscript.dll
SQL | sql.dll
Progess | progress.dll
Fox Pro | foxpro.dll
HTML | html.dll
CSS | css.dll
MS DOS - Dávky | batch.dll
INI soubory | ini.dll
Inno setup | innosetup.dll
TeX | tex.dll
XML | xml.dll
AWK skripty | awk.dll
IDL CORBA | idl.dll

Adresář Internal

Sem si rkEdit ukládá některé interní soubory.

Adresář Scripts

Zde jsou umístěny uživatelské skripty.


Třídění

Třídit lze pouze ty řádky, které jsou součástí bloku. Nezáleží na tom, zda blok začíná (resp. končí) na začátku (resp. konci) řádku nebo uprostřed.

Dialog, který třídění předchází, vám umožňuje určit způsob, kterým budou data řazena.

Základní třídění

Pokud zvolíte první záložku, program setřídí označené řádky vzestupně či sestupně s tím, že si m [image] ůžete zvolit, zda brát ohledy na velká či malá písmenka. To, jakým způsobem budou tříděna písmenka s národní abecedou, záleží podle nastavení Národního prostředí v Ovládacím panelu. Pokud tedy máte nastavenou češtinu, bude se třídit podle českých zvyklostí.

Rozšířené třídění

Jestliže máte například nějakou tabulku, kterou byste rádi setřídili podle dvou sloupců (a ještě k tomu jeden sloupec vzestupně a druhý sestupně), můžete použít rozšířeného třídění. U sloupce se určuje počáteční a koncová pozice, která je pro třídící algoritmus relevantní, způsob řazení a to, zda se má brát ohled na velikost písmen.

Pro národní znaky platí ta samá pravidla jako u základního třídění.


Nastavení uživatelských příkazů

Uživatelské příkazy

Uživatelské příkazy mohou rozšiřovat základní možnosti překládání. Můžete si nastavit, zda otevřít soubor či spustit vlastní aplikaci. Počet těchto příkazů je šest a definovat je lze na třech záložkách (viz obrázek).

Zadání těchto informací je poměrně jednoduché, pouze upozorňuji na potřebu zaškrtnout User defined command x, abyste mohli příkaz použít. Uvedený popis se pak objeví v menu Compile.

Význam vstupního pole Log file je totožné jako v případě překládání případně viz popis v tématu Hledáme chyby ve zdrojových kódech.

Zaškrtávací pole Wait for end zobrazí dialog čekající na dokončení běhu aplikace (pokud je typ uživatelského příkazu Open file, zaškrtávací pole nemá žádný význam). Zmíněný dialog obsahuje tlačítko pro násilné ukončení běhu příkazu a tlačítko pro ukončení čekání (spuštěný příkaz poběží dále).

Pozor na soubory, které mají v názvu či cestě mezeru. Pak je potřeba v případě spouštění uvést uvozovky, jak je uvedeno na obrázku.

Protože se překládání vztahuje k editovanému souboru, jehož název může být pokaždé jiný, lze použít zástupky: %filepath% je cesta souboru zakončená zpětným lomítkem, %filename% je název souboru a %fileext% je přípona včetně tečky. Pokud chcete použít celý název včetně cesty, můžete zkráceně použít zástupku %fullfilename%.

Dále lze v příkazu použít konstrukci %selected=filename%, která před spuštěním uloží označený blok aktuálního editoru do uvedeného souboru, vypustí uvedenou kosntrukci a spustí zbytek příkazu. Pokud je tedy příkaz např.:
cmd /c type c:\temp\blok.txt %selected=c:\temp\blok.txt%

pak se do souboru c:\temp\blok.txt uloží označený blok (pokud žádný označený není, vytvoří se prázdný soubor) a spustí se příkaz: cmd /c type c:\temp\blok.txt.

Konečně pokud použijete pro rkEdit neznámou zástupku, bude se rkEdit snažit nahradit ji pomocí hodnoty proměnné systému (např. %path% nahradí hodnotou vloženou do této proměnné).

Popis dalších záložek lze najít v Nastavení přípon.


Z čeho se rkEdit skládá

rkEdit je naprogramován v Delphi verze 5 a 6 a jeho původní (první) verze vyšla z IBTalku, což je aplikace na přístup k databázovému serveru InterBase. Dnes již díky databázovým modulům není IBTalk podporován.

Základem je editační komponenta SynEdit verze 1.1+ s některými vlastními úpravami. Kromě standardních komponent jsou ještě použity některé vlastní komponenty a pak knihovna JCL verze 1.22 včetně ladící části, komponenta Petra Voneše na spouštění externích programů a knihovna Synapse.

Pro volání HTML helpu je použita externí aplikace (export z knihovny Microsoftu plus objektové zapouzdření).

Skriptování používá Microsoft Windows Script Host.