FAR Manager

V souvislosti s rychle se blížícím vydáním další „velké“ verze Total Commanderu mě napadlo, že bych mohl sepsat něco málo o svém oblíbeném správci souborů. Je jím poměrně málo známý a ještě méně oblíbený FAR Manager, původně dítko Eugena Roshala (autor RARu), později vyvíjený skupinou FAR Group a nyní už i open-source. Nepřeženu, když napíšu, že jde o daleko nejdůležitější program v mém počítači a že do značné míry určuje, jaké programy a dokonce i jaké operační systémy používám nebo jsem ochoten používat.

Hlavní okno FARu

Rovnou na začátku musím zdůraznit jednu věc: FAR Manager není program na občasné používání. Je to program určený na masivní správu souborů a víceméně se předpokládá, že ho budete používat i jako náhradu shellu. Tomu je přizpůsobený jeho vzhled i celé jeho ovládání, které je všechno možné, jen ne jednoduché na naučení. Pokud chcete jen jednou za občas přesunout pár souborů, tak se vám FAR naprosto nemůže vyplatit, protože ho buď nebudete schopni ovládat efektivně, nebo bude množství času vložené do učení naprosto neúměrné dosaženému výsledku. Přístup „jen tak si to vyzkouším, jestli mi to nebude vyhovovat“ nutně povede k tomu, že FAR zavrhnete, protože vám vyhovovat nebude – za těch pár hodin nebo dní se ho nenaučíte natolik, aby vyvstaly jeho přednosti (jen tak pro srovnání – FAR používám velmi intenzivně něco přes 11 let a stále je v něm řada oblastí, na které jsem ani nesáhl). Naprostou iluzí pak je zkoumání menu, co vlastně program umí – v menu nenajdete ani desetinu jeho funkcí.

Na tomto místě bývá v článcích o složitých programech dobrým zvykem napsat, že jde o program pro profesionály a tak naznačit dvě věci: Že pro skutečného profesionála by tohle všechno nebyl problém a na druhou stranu, že kdo používá něco jiného, tak skutečný profesionál není; to všechno v co nejobecnějším smyslu slova „profesionál“. Obojí je pochopitelně naprostý nesmysl – zdaleka ne každý profesionál má čas (a důvod) věnovat tolik sil programu, který pro něj třeba bude úplně okrajový, a spousta jiných programů poskytne i profesionálům naprosto srovnatelné služby. Pokud vám svými funkcemi vyhovuje Total Commander nebo Altap Salamander, není pravděpodobné, že by vám přechod na FAR nějak dramaticky pomohl; pokud se ovšem cítíte těmito programy omezováni, stojí možná FAR Manager za úvahu.

Proč možná? Protože FAR rozhodně není vhodný univerzálně. Abyste ocenili jeho vlastnosti, měli byste splňovat aspoň jeden z následujících předpokladů (a nejlépe oba):

  1. Ve správci souborů trávíte značnou část svého počítačového času. Nejde jen o přesuny souborů sem a tam, ale hlavně o tom, že je pro vás správce souborů prostředím, ze kterého spouštíte všechny ostatní programy. Příklad s hudbou: Tradiční přístup k pouštění hudby je ten, že ze Start menu spustíte přehrávač, v něm otevřete knihovnu a vyberete, co se má přehrát. Přístup, ve kterém využijete vlastnosti FARu, je ten, že ve FARu otevřete adresář s hudbou a zavoláte přehrávací program s příslušnými parametry.

  2. S předchozím souvisí druhá věc: FAR je velmi silně orientován na práci s příkazovou řádkou. To je ostatně důvod, proč běží v textovém režimu – protože tak je provázanost s konzolí největší. Pokud máte FAR využít, znamená to používat co nejvíce programy ovládané z příkazové řádky, pro jejichž spouštění pak FAR vytvoří ideální podmínky. Můžete namítnout, že příkazová řádka jde použít i v ostatních správcích, a budete mít pravdu – jde to. Že je to zoufale neohrabané už je jiná otázka. FAR řeší i takové zdánlivé drobnosti, jako že Windows používají jinou kódovou stránku v grafickém a jinou v textovém prostředí. Je to prkotina? Zkuste si napsat funkční dávkový soubor, který naplánuje spouštění nějaké aplikace každý pracovní den (at 19:00 /interactive /every:Po,Út,St,Čt,Pá nějaká_aplikace), v nějakém jiném správci a pak si o tom můžeme popovídat.

Dost strašení. Co vám FAR přinese, když se rozhodnete ho opravdu používat? (Jen věci, které jinde nenajdete.)

  1. Perfektní ovládání. FAR je celý psaný tak, aby měl úplně všude konzistentní ovládání. Každé editační okno má historii (vlastní nebo sdílenou s jinými obdobnými okny – tzn. výběr cílového adresáře pro kopírování a pro přesun souborů mají historii sdílenou, ale jinou než třeba okno pro vyhledávání souborů). Pokud má klávesa nějakou funkci, tak má tuto (nebo obdobnou) funkci všude, kde to jen trochu jde (tzn. F8 slouží k mazání souborů, ale zrovna tak dobře dokáže mazat FTP servery z adresáře, poštu z mailserveru nebo ukončovat aplikace ze správce procesů; CTRL+[ vloží plnou cestu levého panelu nejen do příkazové řádky, ale i do okna s cílem kopírování nebo do editoru – a je jí jedno, jestli ten levý panel je adresář na disku, síťová cesta nebo třeba FTP). Všechno je dělané tak, aby šlo používat výhradně klávesnici a aby to šlo rychle.

  2. Makra. Makra souvisí s ovládáním, ale zaslouží si zmínku mimo. Kdykoliv můžete zmáčknout klávesu CTRL+tečka a FAR od té chvíle zaznamenává všechny zmáčknuté klávesy. Když znovu zmáčknete CTRL+., zeptá se na klávesu, pod kterou má makro uložit – a po stisknutí této klávesy pak vždy provede dané makro. Předefinovat tak jde jakákoliv klávesa. Nelíbí se vám třeba, jak funguje standardní kopírování souborů? Tak si sežeňte nebo napište vhodný plugin, nadefinujte si makro, které po stisku F5 zavolá tento plugin a správně nastaví parametry, a je hotovo – už se bude volat váš kopírovací dialog místo standardního.

  3. Pluginy. Pluginy dneska podporuje každý druhý program a samozřejmě i správci souborů. Nevím však o žádném, který by měl takové možnosti jako FAR – jeho pluginy totiž mohou dělat úplně všechno. Běžnou funkcí jsou „panelové pluginy“, které umožní otevřít v levém nebo pravém panelu něco, co FAR samotný neumí – třeba obsah komprimovaného archívu, adresář FTP serveru, seznam běžících procesů nebo seznam zpráv na mailserveru. Můžete mít plugin, který reaguje na příkazy na příkazové řádce. Lze napsat plugin, který zobrazí nějaké okno a něco v něm provede. Existují pluginy, které nemají žádné viditelné okno, ale ovlivňují okna existující (například označí soubory podle nějakého kritéria nebo zvýrazní syntaxi nebo soubory).

    Vlevo adresář FTP serveru, vpravo seznam procesů

    Vlevo adresář FTP serveru, vpravo seznam procesů

  4. Editor. FAR má bez nadsázky vynikající editor. Velikost souboru je omezena velikostí volné paměti, ale ničím jiným. V editoru fungují všechny obvyklé funkce, které v programátorských editorech čekáte, a umí i řadu specialit, které tak běžné nejsou – třeba přepínání mezi kódovými stránkami nebo podporou pro sloupcové bloky (fantasticky užitečná funkce, když ji zrovna potřebujete). Pokud něco neumí, doplníte to pluginem – tak lze editor obohatit třeba o zvýrazňování syntaxe nebo o regulární výrazy.

  5. Uživatelská menu. Uživatelská menu jsou v souborových manažerech známou funkcí přinejmenším od starého Norton Commandera. FAR ovšem umí věci, nad kterými by Nortonu šla hlava kolem – třeba ta menu skriptovat, vyžádat si uživatelův vstup, předat volanému programu seznam označených souborů atd. Mám například udělanou položku menu, ktera si vyžádá label a když ho potvrdím, nechá příslušným programem vypálit všechny označené soubory na CD, které pojmenuje zadaným labelem. Nebo položku, která do aktivního panelu rozbalí všechny archívy z pasivního panelu. Atd.

  6. Užitečné drobnosti. FAR má celou řadu funkcí, které dělají úplné prkotiny, ale zjišťuji, že když je nemám, jsem jako bez ruky. Seřadit výpis souborů tak, aby na začátku byly všechny spustitelné soubory? Nebo všechny označené soubory? Zavolat na všechny označené soubory nějaký příkaz? Vložit celou cestu (nebo jen adresář, nebo jen název) k označenému souboru do místa, kam zrovna píšu? Znovu označit soubory, které byly označené před poslední operací? Kopírovat jeden soubor do víc míst? Určit si, jak se mají nastavovat práva u kopírovaných souborů? Všechno jde, když se chce…

  7. Možnost výberu. Možnosti pluginů vedou k tomu, že skoro u všech operací má uživatel na výběr z víc variant. Chcete přenášet soubory? Můžete využít integrovaného FTP klienta, ale můžete také použít alternativní FTP plugin nebo si třeba nainstalovat plugin pro SCP. Nelíbí se vám, jak funguje standardní kopírování souborů – že třeba nemá frontu nebo práci na pozadí? Můžete použít jeden z řady pluginů, které tyto věci řeší – a ve spolupráci s makry tyto pluginy můžete namapovat na standardní klávesy F5, F6, takže vás po chvíli ani nenapadne, že to nejsou „nativní“ verze… Pluginů pro vyhledávání jsou celé hromady, stejně jako různých kalkulaček nebo přejmenovávacích pluginů. A kdyby selhalo všechno ostatní, napsat vlastní plugin je docela snadné…

S FARem pochopitelně o něco přijdete. Musíte se například smířit s čistě textovým prostředím, to znamená oželet ikonky (nahradí je obarvování souborů), grafická menu (nicméně o menu Exploreru na pravém tlačítku přijít nemusíte, od toho tu je EMenu plugin…), šipčičky a další podobné vylomeniny (i když… existuje i plugin pro zobrazování obrázků přímo v okně FARu…); vesměs se bez toho dá žít, mě osobně chybí jenom proporciální písmo, se kterým se na obrazovku vejde mnohem víc textu. Přijdete o některé funkce – FAR například neimplementuje porovnání souborů podle obsahu nebo synchronizaci adresářů (porovnání adresářů ale ano) – vychází zde z unixové filozofie, že každý program by se měl specializovat na svoje funkce a ty okrajové předat dalším specializovaným programům. Mě osobně dost mrzí to, že ve standardním nastavení sice FAR umí prohlížet základní archívy, ale ne z nich rozbalovat programy – na to už potřebujete rozbalovací program (nebo vhodný plugin).

Pro mě asi nejvážnější nedostatek je ten, že FAR vůbec neuvažuje práci v portable režimu – všechna nastavení si ukládá do registru. Existuje pro to odůvodnění (těch nastavení je tak strašně moc, že by INI nebo XML soubory byly nepoužitelně pomalé), ale to vám příliš nepomůžete, když chcete spustit FAR a přitom nechcete, aby na počítači zanechal stopy. Zvlášť to zamrzí u FTP účtů, které nejsou nijak šifrovány, jen heslo je lehce zakódované, aby nebylo bezprostředně čitelné. Aspoň že ta nastavení jsou ukládána do HKEY_CURRENT_USER, takže nebývá problém s právy, ale stejně…

Několik zajímavých pluginů:

Colorer

Colorer slouží ke zvýrazňování syntaxe hlavně v editoru (umí i zvýrazňovat soubory v panelech, ale to zvládá sám o sobě i FAR). Podporuje obrovské kvantum různých typů souborů a dovoluje snadno definovat nové. Velmi rozumně přitom funguje na dvou úrovních – odděluje samotný popis souboru od grafické reprezentace. V praxi to znamená, že řeknete, že „tohle je číslo, tohle je symbol, takhle vypadá párová závorka“, a v úplně samostatném souboru definujete, že „číslo se vykreslí zeleným písmem na bílém pozadí“.

Colorer v akci

Expression Calculator

E.C. je (překvapivě) kalkulátor, do kterého zadáte výraz a dostanete výsledek. Umí všechny možné operace, můžete si ho doplňovat o vlastní funkce. Výsledky zobrazuje i v binárním a hexadecimálním režimu a umí pracovat s hodně velkými čísly, takže se skvěle hodí pro výpočty, jak dlouho odolá vaše osmdesátiznakové náhodné heslo útokům NSA 🙂

Expression Calculator

FAR Commands

FAR Commands je plugin, který se dodává přímo v základní instalaci a který mě dlouhá léta míjel. Slouží k ovládání některých funkcí FARu z příkazové řádky. Například příkaz far:edit <for /? zavolá příkaz for s parametrem /?, jeho výstup si uloží do dočasného souboru a tento soubor následně otevře v editoru. Fantasticky to usnadňuje práci s commandlajnovými utilitami – prostě si jejich nápovědu otevřete do editoru nebo do prohlížeče a pak už jen opisujete nebo kopírujete…

FAR Navigator

Alternativní FTP klient se spoustou sympatických možností (třeba velice užitečná možnost hned při začátku stahování říct, co má dělat se soubory, které už na disku jsou). Samozřejmostí je možnost naťukat si na příkazovém řádku příkaz ručně s tím, že ho FAR Navigator přepošle dotyčnému serveru. Podporováno je i procházení WWW.

FRename

Velice šikovný nástroj pro hromadné přejmenovávání souborů. Jména označených souborů otevře v editoru ve dvou sloupcích – v prvním je původní jméno, v druhém jméno nové. Vy ten seznam libovolným způsobem upravíte k obrazu svému a až s tím skončíte, plugin soubory přejmenuje. Výhodou je, že tak můžete snadno přejmenovat cokoliv na cokoliv, nejste vázáni na ta přejmenování, na která pamatoval autor pluginu. Většinu běžných věcí vyřešíte klidně i jen s regulárními výrazy.

MailView

Umožňuje prohlížet soubory poštovních programů (The Bat, Outlook Express apod.), jako kdyby to byly archívy.

Named Folders

FARovská odpověď na „oblíbené adresáře“. Dovoluje vytvářet seznamy oblíbených adresářů a pak na ně rychle skákat. Velkým plusem je to, že vytvářet i používat lze tyto oblíbené i z příkazové řádky: cd::název vytvoří záložku na aktuální adresář pod názvem „název“ a cd:název na ni skočí.

Regular Expression Search and Replace

je doslova pluginové monstrum: Do celého FARu přidává podporu pro regulární výrazy. Můžete je využívat v prohlížeči, editoru (i pro nahrazování), ve vyhledávání souborů (ALT+F7), v označování souborů (numerické Plus) atd. Implementace je to velice dobrá, pro veškeré svoje úpravy e-booků jsem zatím nenašel nic lepšího. Fungují i takové zběsilosti jako nahrazování regulárního výrazu ve všech souborech odpovídajících zadaným parametrům, to všechno včetně víceřádkových regulárních výrazů apod. Krásně se tím dají zprasit všechny soubory na disku, pokud trochu zazmatkujete 🙂

Service Manager

Service Manager umožňuje spouštět, zastavovat, vytvářet, mazat, přejmenovávat, upravovat atd. služby systému Windows, tj. zhruba o polovinu víc, než umí Ovládací panely -> Nástroje pro správu -> Služby. Nádavkem mají ti odvážnější možnost to samé provádět i přímo s ovladači (víte třeba, že ve Windows XP je standardně nainstalován ovladač pro SafeDisc, i když na daném počítači nikdy nebyla spuštěná žádná hra?

Temporary Panel

je další zajímavý standardní plugin. Vytvoří prázdný panel, do kterého můžete „nakopírovat“ libovolné soubory a pak s nimi normálně pracovat, jako kdyby byly všechny na jednom místě. Třeba je všechny najednou někam zkopírovat.

 

FAR toho umí ještě strašně moc. Má jenom tu nevýhodu, že jak si na jeho funkce zvyknete, začnou vám ve všech konkurenčních produktech strašně chybět (teď jsem zrovna potřeboval něco commandlajnového udělat na počítači vybaveném Salamandrem; nakonec to dopadlo tak, že jsem si radši spustil CMD a naťukal všechno v něm, než abych se mořil s otřesnou spoluprací tohoto manažeru s konzolí). Já mám třeba čas od času cukání přejít na Linux, přece jen je mi filozoficky velice blízký, ale vždycky se zastavím hned na první otázce: „A je pro něj FAR?“ Není. Tudíž pro mě tento operační systém není použitelný.

Podobné příspěvky:

13 Responses to “FAR Manager”

  1. avatar Zedňa napsal:

    Ja take FAR pouzivam od jeho pocatku. Pro porovnani dvou souboru pouzivam PSPad s parametrem /D, zde je prikaz do uzivatelskeho menu {F2}: „C:\Program Files (x86)\PSPad editor\pspad.exe“ /D !#!/!-! !^!/!-!
    Drive jsem pouzival WinDiff: windiff !^!/!-! !#!/!-!

  2. avatar pepak napsal:

    robertn: FAR3 je portable „sám od sebe“, všechna svá nastavení má v SQLite databázi, která může být uložena i přímo v adresáři FARu. Je na to nastavení v ini souboru.

    FAR2 portable není. Před časem jsem se zabýval možností mu tu přenositelnost vnutit zvenku. Dělal jsem to pomocí technologií „API hooking“, kdy jsem FARu nahrazoval přístup do skutečného Windowsového registru přístupem do mého simulovaného registru. Docela dobře to i fungovalo, ale nikdy jsem se nedostal k tomu, abych to dokončil, protože jsem ztratil důvod to dělat (už se nepřipojuju na počítačích, které mi neříkají „pane“).

  3. avatar robertn napsal:

    Klep(e?)toX:
    1. Vývoj FARu neskončil, poslední verze je zrovna z dneška 😉 – viz http://www.farmanager.com/download.php?l=en.
    2. Bylo by možné příležitostně zveřejnit návod na to, jak se vytvoří přenositelná verze FARu? Osobně ho taky používám všude a kouzlím tedy s registry, to určitě není optimální..

  4. avatar KlepetoX napsal:

    Nevím, jestli je ještě smysluplné reagovat na starý příspěvek z 24.7.2009, ale přesto se může hodit:

    Porovnání dvou souborů – buď označených v jednom panelu, nebo z obou panelů pod kurzorem

    Pomocí pluginu Visual Compare přímo ve FARu:

    macro:post Esc clip(5) CtrlIns print(„vc:“) $If (APanel.SelCount==2) ShiftIns $Else $If (PPanel.Left) Tab CtrlAltF CtrlAlt; Tab $Else CtrlAltF CtrlAlt; $End $End Enter

    Totéž, ale pomocí WinMerge:

    macro:post Esc clip(5) CtrlIns print(„%farhome%\\utils\\winmergeportable.exe“) Space $If (APanel.SelCount==2) ShiftIns $Else $If (PPanel.Left) Tab CtrlAltF CtrlAlt; Tab $Else CtrlAltF CtrlAlt; $End $End Enter

    Ovšem nejlepší je Beyond Compare, který umí porovnat i víc jak 2 označené soubory:

    macro:post Esc clip(5) CtrlIns “ print(„C:\\Program Files (x86)\\Beyond Compare 3\\BCompare.exe“) “ Space $If (APanel.SelCount>1) ShiftIns $Else $If (PPanel.Left) Tab CtrlAltF CtrlAlt; Tab $Else CtrlAltF CtrlAlt; $End $End Enter

    Řádky stačí přidat do uživatelského menu nebo makro nahrát na jakoukoli zkratku.

  5. avatar KleptoX napsal:

    Ahoj Pepaku. Dík za moc hezkej článek o FARu. Takže přece jen nejsem sám, kdo ho používá 🙂 Bez FARu bych už s počítačem snad ani neuměl zacházet, je to pro mě opravdu základní a perfektní nástroj. Udělal jsem si i přenosnou verzi, kterou nosím všude sebou a používám i na jiných počítačích. Škoda jen, že jeho vývoj prakticky skončil a oficiálního vydání verze 3 se nejspíš nedočkáme.

  6. avatar pepak napsal:

    Ten můj plugin se dá stáhnout i ode mě: FAR Manager: Synchronize Directory
    Ale fakt je, že už ho nevyvíjím – Maximus to zvládá mnohem lépe než já.

  7. avatar Anders napsal:

    FAR pouzivam asi 12 let. Je pro me nenahraditelny. Napriklad F3 na oznacenych souborech a slozkach spocita velikosti – to je vcelku bezne. Ale to, ze tohle funguje i v archivech, i na FTP dokonce i na SSH, to je unikatni. A takhle je to ve FARu se vsim 😉

    Jediny chybejici plugin je k porovnavani slozek nejak podobne jako v totalcommanderu ale „Pepak“ nelenil a napsal jej:
    http://forum.farmanager.com/viewtopic.php?p=50134#p50134
    a „Maximus5“ jej prepal do unicode a vyvyji jej dale:
    http://forum.farmanager.com/viewtopic.php?f=39&t=4479&sid=5eab16101f9e2d94517898783c877a0a&start=15

  8. avatar LANCE napsal:

    FAR je fajn, já ho pužívám zatím jako nováček, ale vyhovuje mi, vytvořil jsem si uživatelské menu, tam nejpoužívanější programy. je daleko rychlejší použít klávesovou zkratku, či pohodlně kopírovat, než se nechat blokovat grafickými problémy viz windows, kopírování z okna do okna, okna překáží apod. Stále se v něm učím a dal bych mu tak 80% některé věci mi nevyhovují

  9. avatar Petr Zaoral napsal:

    I já hlasuji pro FAR. Uvedené vlastnosti zdaleka nevyužívám (a ani jich většinu neznám), ale stejně mi vyhovuje lépe než TC. Hlavně na něj dobře vidím 🙂

  10. avatar Martin Rašovský napsal:

    Pod vše výše uvedené se mohu jen podepsat, používám ho cca 10 let a uvedené potřehy by se daly tesat do kamene. 😉

    Ještě bych zmínil Registry Browser plugin, ocenil jsem ho i při dolaďování všech nastavení FARu v souvislosti s vytvářením náhrady portable verze FARu. Registrům se samozřejmě nedá vyhnout (tedy předpokládám, že ne), ale použil jsem možnost spustit FAR s parametrem /u Jmeno, takže si FAR nastavení uloží v HKCU a HKLM do větve Software\Far\Users\Jmeno. Stačí tak mít „runimage“ na flashce, při spuštění (.bat) se zajistí oblíbená nastavení nahráním do příslušné větve registru, při ukončení se zase vše uklidí, včetně cache. Lze to využít i na stroji, kde již je FAR inslalován, ale kde chci použít svoji verzi (kvůli nastavení, pluginům, tad.). Stávající instalace tímto postupem nebude ovlivněna. No jak je na tomto příkladu vidět, s FARem všechno jde, když se chce. 🙂

  11. avatar pepak napsal:

    Odvážlivci a/nebo uživatelé pluginu FAR Navigator, kteří by chtěli přejít na FAR 2.0, si mohou stáhnout moji aktualizaci standardního FTP Pluginu, která obsahuje možnost „Newer“ v dialogu dotazu na přepsání souboru (pokud je zdrojový soubor novější než cílový, tak se přenese, jinak se přeskočí).

  12. avatar pepak napsal:

    Jeden takový plugin jsem kdysi zkoušel, ale nebylo to ono – zrovna v tomhle použití konzole docela vadí, protože na obrazovku se vejde podstatně méně textu. V současné době to řeším pomocí WinMerge (http://winmerge.sf.net) a vhodně nastaveného user menu (winmerge "!.!" "!#!\!^!.!" porovná soubor, na kterém je kurzor, se stejně pojmenovaným souborem v pasivním panelu; šla by i varianta winmerge "!.!" "!#!\!.!" pro porovnání souboru, na kterém je kurzor, se souborem pod kurzorem v pasivním panelu). Úplně mě to neuspokojuje, radši bych standardní plugin, ale lepší než drátem do oka…

  13. avatar Karel Klimo napsal:

    Dobrý den,
    se zájmem jsem si přečetl vaše pojednání o souborovém manažeru FAR.
    Program též používám, nepodařilo se mi sehnat plugin, který by porovnal obsah dvou txt souborů podobně jako je to v TC. Nevíte o nějakém řešení?
    Díky KK.

Leave a Reply

Themocracy iconWordPress Themes

css.php