abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 17:22 | Bezpečnostní upozornění

V balíčkovacím systému APT používaném v Debianu a z něj vycházejících linuxových distribucích byla nalezena bezpečnostní chyba CVE-2019-3462. Útočník může vzdáleně spustit libovolný příkaz pod právy roota.

Ladislav Hagara | Komentářů: 0
dnes 17:00 | Nová verze

Canonical oznámil vydání Ubuntu Core 18. Nová verze Ubuntu Core vychází z Ubuntu 18.04 LTS a podporována bude 10 let. Jedná se o placenou podporu. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

Ladislav Hagara | Komentářů: 0
dnes 15:31 | Nová verze

Vyšlo Pharo 7.0 (otevřená implementace Smalltalku). Nyní je kompletně bootstrapováno ze zdrojových kódů spravovaných Gitem, má nové nástroje na procházení a editaci kódu a přináší mnoho dalších změn a oprav. Popis novinek v češtině.

Pavel Křivánek | Komentářů: 0
dnes 02:22 | Nová verze

Byla vydána verze 4.5 linuxové distribuce Parrot (Wikipedie). Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii.

Ladislav Hagara | Komentářů: 2
včera 17:22 | Pozvánky

V sobotu 23. února se uskuteční 6. ročník WordCampu – největší konferenci o WordPressu v ČR. Ke konferenci probíhá i soutěž typu CTF (Capture The Flag) o volné vstupenky, kde si lze zkusit zneužít běžné bezpečnostní chyby.

smíťa | Komentářů: 0
včera 17:11 | Pozvánky

Letošní ročník konference Prague PostgreSQL Developer Day se bude konat 13. a 14. února v prostorách FIT ČVUT. Program konference najdete na stránkách konference, stejně jako registrační formulář.

TomasVondra | Komentářů: 0
včera 16:55 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě v nástroji pro správu databází v jednom PHP souboru Adminer. Chyba je už půl roku opravena. Stačí Adminer aktualizovat.

Ladislav Hagara | Komentářů: 3
20.1. 18:33 | Nová verze

Byla vydána nová stabilní verze 2.7 svobodné decentralizované mikroblogovací platformy a sociální sítě podobné Twitteru Mastodon (Wikipedie). Detailní přehled novinek na GitHubu.

Ladislav Hagara | Komentářů: 0
20.1. 00:22 | Nová verze

Byla vydána nová vývojová verze datového formátu a souvisejících nástrojů Relational pipes. Verze v0.9 obsahuje vstupní moduly pro fstab, CSV, XML a příkazový řádek; výstupní moduly pro CSV, XML, ODS (ODF), GUI (Qt), hodnoty oddělené nulovým bajtem a tabulkový výstup do konzole. Relační data lze upravovat relačními příkazy grep, cut a sed.

xkucf03 | Komentářů: 64
19.1. 18:33 | Zajímavý software

Podman dospěl do verze 1.0.0. Jedná se o nástroj umožňující vytvářet a provozovat kontejnery, aniž by uživatel potřeboval práva roota.

Ladislav Hagara | Komentářů: 1
Používáte USB Type-C?
 (20%)
 (16%)
 (11%)
 (12%)
 (38%)
 (4%)
 (43%)
Celkem 457 hlasů
 Komentářů: 0
Rozcestník

Tmux: Klávesové zkratky a kombinace CLI s GUI

26.4.2018 08:00 | Přečteno: 2125× | cli | Výběrový blog | poslední úprava: 27.4.2018 10:06

Tmux je užitečný nástroj pro práci s více panely v jednom okně terminálu a pro ssh připojení na vzdálené servery. Ale jeho ovládání pomocí klávesových zkratek je občas problematické (a to i přestože obecně preferuji klávesnici před myší). Chtěl bych se zde podělit s jedním možným způsobem pro vylepšení.

Článek předpokládá základní povědomost o práci v terminálu a tmuxu. Na internetu lze nalézt plno článků s úvodem do tmuxu, proto se základům nebudu věnovat a přejdu rovnou k věci. Ovládání tmuxu pomocí klávesových zkratek je rychlý způsob. Problém je v tom, že tmux tak často nemusím ovládat, tudíž zkratky vždycky zapomenu a nějaké procvičování se moc nevyplatí. To je rozdíl například oproti editaci textu pomocí vimu, kde se úsilí věnované naučení zkratek vrátí.

Tmux používám při vývoji aplikací. Například pro jeden projekt je potřeba spustit docker kontejnery, backend server, kompilační smyčku pro frontend a css styly. Pro ulehčení používám tmux skript, kdy jedním příkazem nahodím celé prostředí a vidím všechny výpisy z logů přehledně v panelech v rámci jednoho terminálu. Většinou mi vyhovuje výchozí rozložení, ale třeba jednou do měsíce je potřeba přeskupit panely. Protože jde o situaci která nastává velmi málo tak tu zkratku pro přepnutí vždycky zapomenu a musím hledat v manuálu, což zdržuje.

Srovnání CLI a GUI

Tento problém je klasickou ukázkou dilematu mezi příkazovým řádkem a grafickým rozhraním. Klávesové zkratky a CLI jsou mocnější a rychlejší, ale mají časové nároky na počáteční naučení a paměť uživatele. GUI je naopak méně flexibilní a pomalejší, ale člověk zvládne pracovat bez větší počáteční investice nebo pokud daný program používá po delší době. Další častý problém CLI programů je organizace příkazů/argumentů v manuálových stránkách. Ty jsou často seřazeny abecedně, takže je to z logického pohledu přeházené a je těžké si udělat přehled co vlastně všechno program umí.

Ideální je podle mě se snažit zkombinovat to nejlepší z CLI a GUI. Tedy možnost ovládat klávesovými zkratkami a příkazy, ale ať je k dispozici i nějaké interaktivní rozhraní, které dovoluje funkce objevit v rámci programu.

Experimentální menu pro tmux

Jako experiment jsou zkusil vytvořit interaktivní nabídku pro ovládání tmuxu. Používám dolní lištu statusu pro zobrazení nabídky a vlastní bindingy pro ovládání.

Menu se zobrazí klávesovou zkratkou podobně jako je pořeba tmux prefix. Jako výchozí jsem zvolil Alt+/ (zkratka pro zobrazení nabídky v Google Docs), ale je možné si nastavit vlastní. Hlavní menu je roztříděné podle logických kategorií - panel, layout, window, session. Po výběru v hlavním menu se zobrazí další menu, kde už jdou vybírat jednotlivé akce. Na screenshotu je vidět menu jako oranžový panel dole:

Hlavní menu

Například zmáčknu l a dostanu menu pro práci s layoutem:

Layout menu

Zde zmáčknu například šipku doprava, layout se rozdělí a otevře se další panel napravo od aktuálního.

Následuje seznam výchozích akcí, které pokrývají moje používání tmuxu:

Výhodou je že i když si člověk nepamatuje klávesové zkratky tak je schopen program ovládat (stačí si pamatovat jednu zkratku pro otevření menu). Dále jsou zkratky zapamatovatelnější a pokročilí uživatelé mohou používat klávesové zkratky bez koukání do menu bez vlivu na rychlost. Pro příklad porovnání různých akcí:

Otevření nového okna:

Horizontální rozdělení layoutu:

Závěr

Kompletní konfiguraci je možné stáhnout z githubu.

Další varianta která mě napadla by bylo používat jako zkratky pro akce v menu výchozí zkratky tmuxu. Takto by šlo využívat menu, ale člověku by se pomalu vrývaly do paměti výchozí zkratky. Menu nepokrývá velkou část, ale ne celou funkčnost tmuxu. Podělte se v diskuzi pokud zde chybí nějaké často používané funkce, případně další způsoby jak se vypořádat s klávesovými zkratkami.

Jako příklad jsem zvolil tmux, ale podobný přístup by bylo možné aplikovat i pro jiné programy. Domnívám se, že je často schůdnější cesta doplnit grafické interaktivní prvky do CLI programů, než se snažit přidat programovatelnost do čistě grafických aplikací.

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

26.4.2018 11:38 Aleš Kapica | skóre: 48 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Vryj si je do paměti.
26.4.2018 13:08 ram3n
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
ha.. ha... ha....
26.4.2018 13:45 Aleš Kapica | skóre: 48 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Dobrá rada nad zlato, ne? ;-) Jediná osvědčená metoda k zapamatování klávesových zkratek (které nelze přemapovat) je – aktivně tu aplikaci používat.
26.4.2018 23:32 pc2005 | skóre: 37 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Bedňa avatar 26.4.2018 21:45 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Rozťahané bez podkategŕií, sorry nečítal som. Tmux používam na SSH Ctrl+B D. Potom tmux attach a to je tak všetko. Asi si to potom prečítam, ale chcelo by to fakt učesať.
KERNEL ULTRAS video channel >>>
27.4.2018 10:07 Jakub D | skóre: 1 | blog: entropic
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Díky za komentář, přidal jsem nadpisy a úvod zkrátil. Tak to snad bude přehlednější.
Bedňa avatar 29.4.2018 01:08 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Tak fajn, som si to prečítal, ale doplnil by som tu o jedno jednoduché riešenie.

V domovskom priečinku by som si spravil adresár shortcuts a do neho dal súbor tmux atď. Keby som si na klávesovú skratku nevedel spomenúť, tak by som napísal cat ~/shortcuts/tmux a mám vyststaráno :-) Veci idú robiť aj jednoducho a primitívne.

Ďalšie riešenie je pozadie s klávesovými skratkami a určite tu mohlo padnúť aj viacero iných nápadov, že mať jednu klávesovú skratku a tá vypíše klávesové skratky z rovna k tomu s čím pracujem a tak.

Zdraví Bedňa.
KERNEL ULTRAS video channel >>>
29.4.2018 13:26 ehm
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Jeho řešení se mi zamlouvá daleko víc. Článek jsem četl ještě před úpravami a četlo se mi to dobře.
Bedňa avatar 29.4.2018 22:50 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
OK, každému vyhovuje nejaké riešenie. Mne stačia aj textové súbory. Samozrejme si to môžem nabinovať na klávesovú skratku a zautomatizovať si to pre všetky programy.

Čo aktívne používam si klávesové skratky pamätám, je pravda že napríklad Blender som už hádam rok nezapol a tu sa mi hodí ak to vypľujem jedným príkazom.
KERNEL ULTRAS video channel >>>
30.4.2018 12:08 BFU
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Souhlas, hezky clanek. Mozna by bylo fajn tohle upstreamovat, pokud to teda je mozne, urcite by se naslo vic uzivatelu co by to ocenilo.

Neinteraktivni tapeta nebo textovy soubor se tomu nemuze rovnat, to je naprostej bullshit.
Bedňa avatar 30.4.2018 23:53 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: Tmux: Jak si zapamatovat klávesové zkratky?
Ja osobne si pamätám klávesové skratky zo všetkého čo aktívne používam, mno občasne siahnem aj po sftvéri kde nie som doma, tak si to zdokumentujem.

Má to výhodu, že tam použiješ aj grep a klávesovú skratku máš na ranu.

Ja netvrdím že to jeho riešenie je zlé len som pridal svoje, tak ma nekamenujte priatelia.

A označenie bullshit si fakt vážim, dokonca rozmýšľam, že si takto moje riešenia začnem označovať.
KERNEL ULTRAS video channel >>>
29.4.2018 07:43 KS | skóre: 10 | blog: blg | Horní polní u západní dolní
Rozbalit Rozbalit vše Re: Tmux: Klávesové zkratky a kombinace CLI s GUI
I když tmux používám prakticky 100% času práce s počítačem, tak ovládání jsem neměnil. Přišlo mi použitelné a teď už o něm ani nemusím přemýšlet. Myslím si, že tyto úpravy ovládání sice mohou mít malý vliv na produktivitu, ale když se člověk dostane k cizímu systému nebo chce rychle poradit kolegovi, tak má problém. Podobně to vidím třeba i s přizpůsobením vimu.
Pochybnost, nejistota - základ poznání
k3dAR avatar 4.6.2018 22:52 k3dAR | skóre: 52
Rozbalit Rozbalit vše Re: Tmux: Klávesové zkratky a kombinace CLI s GUI
no a nebo byobu ;-)
porad nemam telo, ale uz mam hlavu... nobody

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.