DefIcons – rozpoznávání typů souborů
Asociace výchozích programů k jednotlivým typům souborů je v dnešní době běžná věc na mnoha platformách. Většinou se tak děje na základě třímístné přípony souboru, kdy např. k příponě .png přiřadíte svůj vlastní oblíbený prohlížeč. AmigaOS má tento systém trochu složitější, ale v mnohém zároveň i lepší. Rozpoznávání typů souborů není omezeno jen na příponu souboru, ale lze nastavit i rozpoznávání podle informací v samotné hlavičce souboru. Lze tak dosáhnout toho, že přípona souboru není vůbec směrodatná a Amiga dokáže rozpoznat typ souboru dokonce i bez ní.
Asociace typů souborů v AmigaOS je složena ze dvou částí – editoru DefIcons a následné úpravě výchozí ikony. Ale začnu postupně…
Editor DefIcons
Pro asociaci souborů je v AmigaOS určen konfigurační editor DefIcons, což je zkratkou pro default icons, čili výchozí ikony pro nejrůznější typy souborů.
Samotný editor je řešen hodně jednoduše a definice nového typu souboru je otázka pár minut. Už v základním nastavení obsahuje definice mnoha typů souborů, ovšem k některým z nich chybí výchozí ikona a tudíž systém nemá nastaven žádný výchozí program k jejich zpracování. U ostatních souborů je nastaven jako výchozí prohlížeč systémový MultiView pracující s datatypy (o tom možná zase někdy přístě).
V levé části editoru naleznete již definované typy souborů, rozdělené do přehledných kategorií. Pokud na některý z těchto typů kliknete myší, v pravé části okna se objeví definované akce. Zde můžete definovat typ souboru podle řetězce v hlavičce souboru, masky (přípony), velikosti, atributů nebo makrotřídy. Úplně nejsnadnější je typ souborů nechat systém naučit. K tomu stačí mít několik souborů stejného typu, kliknout na tlačítko Naučit… a systém sám zjistí podobnosti a podle nich nastaví vyhledávaný řetězec. Pokud to není možné, lze nastavit klasicky masku (příponu) souboru.
Nejsnáze k pochopení to bude asi vysvětlit přímo na příkladu.
Přidáváme nový typ souboru a výchozí program
Jako příklad jsem se rozhodl přidat nový typ souboru, kterým je hudební modul ve formátu Cinemaware a jeho otevření v programu Tunenet s pluginem UADE.
Jako první musíme vytvořit nový typ souboru. Toho dosáhneme tak, že klikneme v levé části okna na tlačítko Přidat. Následně v poli Název zadáme příponu souboru (v našem případě cin) a potvrdíme klávesou Enter.
Nyní bude potřeba zadat způsob, jakým bude docházet k detekci tohoto typu souborů. Pokud máme k dispozici několik souborů daného typu, můžeme použít tlačítko „Naučit…„. otevře se souborový dialog, kde označíme minimálně dva soubory stejného typu.
Editor vypíše všechny podobné části souboru (obr.2), ale v našem případě nás zajímá hlavně údaj 0 „IBLK“. Je to první řetězec v hlavičce souboru, který je u daného typu souboru vždy stejný. Všechny ostatní řádky lze vymazat pomocí tlačítka Odebrat.
Nicméně, protože jsem si na to prostě už zvykl, můžeme si přidat i rozpoznávání podle přípony nebo předpony souboru. Tlačítkem Přidat… nejdříve vytvoříme podmínku NEBO a následně MASKA. Jak vidíte na obr.3, definice masky je už standardní podle AmigaDOSu.
Samotná definice typu souboru je pouze polovina práce. Ke každému definovanému typu souboru je nutné vytvořit ještě výchozí ikonu a nastavit v jakém programu ho chceme otevírat. A právě k tomu slouží ikony s ve tvaru def_xxx.info, které najdete ve složce ENVARC:Sys (SYS:Prefs/Env-Archive/Sys/).
Pokud tedy vytváříme nový typ souboru, který tuto ikonu ještě definovánu nemá, musíme jí vytvořit (pokud výchozí ikonu typ souboru už má, stačí 2x kliknout na název typu a otevřou se vlastnosti výchozí ikony). Označíme svůj datový typ a v menu Ikona zvolíme položku Upravit. Tím se automaticky vytvoří výchozí ikona. Tady není třeba dělat vůbec nic a editor můžeme zavřít (obr.4).
Nyní stačí 2x klinout na nově definovaný typ souboru a tentokráte se již zobrazí klasické informace o ikoně (obr.5) pro daný typ souboru. Zde už jde snadno změnit ikonu výchozí ikony a hlavně nastavit přiřazený program, který se po dvojkliku na daný soubor provede.
Jak vidíte, pro hudební moduly ve formátu Cinemaware mám nastavený přehrávač Tunenet s UADE pluginem. Změny stačí už jen Uložit a vše je hotovo. Nyní si správnou funkčnost vyzkoušíme. No a jelikož jsou výchozí ikony nahrávány při startu systému, nevyhneme se restartu počítače.
Po něm se už u neznámých souborů zobrazí námi definovaná ikona a po dvojkliku se spustí námi definovaný program a modul se přehraje (obr.7).
Závěr
Tímto způsobem lze vytvořit nové nebo upravit již stávající asociace všech typů souborů pod AmigaOS 4.x. Samozřejmně, aby byly použity výchozí ikony, nesmí mít soubor svou vlastní ikonu. V současné chvíli je tak jediným omezením u výchozích ikon nemožnost nastavení parametrů v ikoně (tooltypů). Toto je však už nahlášeno a snad to bude někdy v budoucnu i opraveno.
S nastavením asociací si lze hodně vyhrát a určitě by něpotěšilo nastavovat všechno znovu při každé přeinstalaci nebo pádu systému. Naštěstí vytvoření zálohy není vůbec složité. Stačí si jen uložit soubor deficons.prefs a všechny ikony ve formátu def_xxx.info z adresáře ENVARC:Sys (SYS:Prefs/Env-Archive/Sys/).
K dokonalosti chybí už jen nějaké pěkné ikony, kterých je naštěstí dost na OS4Depot.