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í
×
    včera 14:22 | Zajímavý projekt

    Jack Dorsey představil (𝕏) open source týmovou komunikační platformu Buzz (GitHub) s cílem snížit závislost na Slacku a GitHubu.

    Ladislav Hagara | Komentářů: 13
    23.7. 23:00 | Nová verze

    Poštovní klient Thunderbird byl vydán v nové verzi 153 s kódovým názvem Meadow. Jedná se o ESR (Extended Support Release) vydání. Přehled novinek v poznámkách k vydání. Vylepšuje OAuth. Thundermail lze používat bez instalace doplňku.

    Ladislav Hagara | Komentářů: 0
    23.7. 22:22 | Zajímavý článek

    AI tento rok naplno vtrhla do vývoje softwaru a výrazně ovlivňuje také open source projekty. Jiří Eischmann v příspěvku Jak mění AI open source na svém blogu rozebírá několik trendů, které v open source v poslední době v souvislosti s AI pozoruje, a jak tyto trendy svět otevřeného softwaru mění (Inflace projektů, Zahlcení kontroly, Klesající motivace zveřejňovat kód).

    Ladislav Hagara | Komentářů: 15
    23.7. 22:00 | IT novinky

    Evropská komise (EK) vyměřila americké internetové společnosti Google pokutu 890 milionů eur (21,5 miliardy Kč) za porušení unijního nařízení o digitálních trzích (DMA). Firma se podle unijní exekutivy provinila tím, že ve vyhledávači Google Search upřednostňovala vlastní služby a že podnikům ukládala omezení, která jim bránila nasměrovat spotřebitele k alternativním, často levnějším nákupním kanálům na platformě Google Play.

    … více »
    Ladislav Hagara | Komentářů: 2
    22.7. 19:44 | IT novinky

    Samsung na akci Galaxy Unpacked July 2026 (YouTube) představil své nové telefony Galaxy Z Fold8 Ultra, Fold8 a Flip8, hodinky Galaxy Watch Ultra2 a Watch9 a chytré brýle ve spolupráci s Gentle Monster a Warby Parker.

    Ladislav Hagara | Komentářů: 0
    22.7. 16:11 | IT novinky

    Po pěti letech vývoje vyšla česká počítačová hra Scarlet Deer Inn (ProtonDB). Scarlet Deer Inn je vyšívaná temná středověká pohádka. Zatímco život ve zdánlivě obyčejné vesnici se točí kolem běžných povinností a sousedských drbů, v podzemí se skrývají zlověstná tajemství.

    Ladislav Hagara | Komentářů: 2
    22.7. 13:33 | IT novinky

    Představen byl Raspberry Pi Touch Display 2 s uhlopříčkou 10 palců a rozlišením 1200 × 1920 pixelů. Cena je 80 dolarů.

    Ladislav Hagara | Komentářů: 8
    22.7. 13:22 | Komunita

    RPCS3 (Wikipedie), tj. open source emulátor Sony PlayStation 3, snížil minimální požadavky. Nově jsou podporovány starší grafické karty ATI Radeon řady HD 2000, 3000 a 4000 z let 2007 až 2009. Na PC běží už 75 % všech her pro PlayStation 3. V budoucnu bude RPCS3 fungovat bez firmwaru z PS3. V RPCS3 byl implementován systémový modul cellSysmodule (𝕏).

    Ladislav Hagara | Komentářů: 2
    22.7. 11:00 | Zajímavý software

    Vyšel open-source nástroj winetop (MIT) — nativní CLI/TUI pro sledování a ukončování Wine, Proton, Lutris, Heroic a Bottles sezení. Seskupuje procesy podle WINEPREFIX / Steam AppId, umí bezpečně zabít jen hru (včetně Steam reaperu) a nabízí i skriptovatelné příkazy (list, kill, orphans, …). Balíčky jsou mimo jiné na crates.io, Copru (dnf copr enable kovariadam/winetop), PPA ppa:kovariadam/winetop a AUR (winetop-bin).

    kovariadam | Komentářů: 0
    22.7. 02:44 | IT novinky

    Ve spolupráci společností OpenAI a Work Louder byla představena (𝕏) hardwarová klávesnice Codex Micro pro práci s AI agenty. Cena klávesnice je 230 dolarů.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (30%)
     (5%)
     (6%)
     (2%)
     (15%)
     (24%)
    Celkem 2217 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Pystromo - šikovné (pře)mapování kláves

    2. 2. 2012 | David Kolibáč | Návody | Hardware | 3601×

    Původním cílem projektu Pystromo bylo vytvoření nástroje umožňujícího nastavení kláves na herním zařízení Belkin Nostromo n52, jehož variantu n52te si v tomto článku představíme. Vedle toho se také podíváme na možnosti použití programu Pystromo, který nakonec můžeme použít k „přeprogramování“ funkce tlačítek na takřka libovolném vstupním zařízení.

    Obsah

    Belkin SpeedPad n52te

    Mezi hráči si vydobyla nemalou popularitu zařízení jako Logitech G13 nebo právě řada Nostromo od Belkinu, resp. Razeru. Jde o minimalistické klávesnice pro jednu, obvykle levou, ruku. Právě pro hráče je podstatná možnost nastavit si funkce jednotlivých kláves, případně jejich kombinací, což na MS Windows obstarává specializovaný software od výrobce. Jak to ale souvisí s GNU/Linuxem, který se nedá považovat za typickou herní platformu? Důvody jsou dva úzce provázané. Za prvé jsou takováto zařízení řešena poměrně ergonomicky oproti většině běžných klávesnic, za druhé si jde na klávesy navázat klávesové zkratky nebo makra. Využití to najde při práci se specializovaným softwarem nebo třeba i obyčejným webovým prohlížečem.

    Belkin n52te se od asi nejpopulárnějšího modelu n52 liší jen v detailech jako podsvícení, firmware atp. Je to na první pohled docela zvláštní zařízení s futuristickým tvarem. Matná opěrka slouží pro opření levé dlaně, palec padne na čtyřsměrnou křížovou páčku a zbývající prsty pokryjí pole s klávesami. Je to velice pohodlné — především díky provedení opěrky, jež je jednak pogumovaná (hodí se v případě potící se dlaně), jednak nastavitelná do jedné ze dvou pozic podle délky prstů (aby pohodlně dosáhly na všechna tlačítka).

    Na spodní straně najdeme přepínač, kterým se zapíná podsvícení. Ale osobně jej prakticky nevyužívám, jelikož klávesy jsou pokryty prsty, takže na ně není vidět, podsvícení kolečka mi zase tak kritické nepřipadá a z polohy, v níž sedím, není pozorovatelné ani podsvícení prostoru mezi klávesami. Navíc bych ocenil, kdyby mi do obličeje neustále nesvítila dioda umístěná vedle palce. Když už jsme u toho, další „módní“ záležitost, totiž lesklý černý plast, zde výjimečně příliš nevadí, protože na povrchu nezůstávají vidět otisky prstů.

    Ale konečně k tomu nejpodstatnějšímu, totiž klávesám. Je jich celkem patnáct a k tomu čtyřsměrná páčka, jedno tlačítko vedle ní a kolečko jako u myši. Trojice kláves v sloupci nejvíce vlevo (v režii malíčku) se ve výchozím stavu chová jako Tab, Caps Lock a Shift; dalších jedenáct kláves zastupuje levou část QWERTY, tu v hrách nejvyužívanější, tedy po řádcích QWER, ASDF a ZXC; poslední klávesa se nachází pod kloubem palce a hlásí se jako mezerník. Tyto klávesy jsou běžné membránové a mají výraznou odezvu. Kolečko u ukazováčku hlasitě „cvaká“ a jde poměrně ztuha stisknout — chová se jako běžné kolečko myši. Zbývá nám tlačítko u palce, to se hlásí jako Alt a je to obyčejné tlačítko (nikoliv jako u klávesnice), a nakonec páčka pro palec — bříško prstu padne přesně na hrubý klobouček a dá se tak snadno pohybovat (ve výchozím stavu kurzorovými šipkami).

    Ohledně přítomných ovládacích prvků nemám velké výhrady. Opěrka dlaně je skvělá, přístup ke klávesám je také velice dobrý, byť tu a tam lehce narážím problém s nedostatečnou délkou svých prstů. Ocenil bych snazší manipulaci s kolečkem, ovšem jsem si vědom toho, že to by šlo spíše proti hernímu využití. Taktéž bych byl rád (a nejsem sám) za kvalitnější klávesy s mikrospínači s lineárním průběhem stisku (vizte např. modifikaci).

    Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te Belkin SpeedPad n52te

    Pystromo

    link

    A nyní se pojďme podívat na Pystromo. Poslední verze (s označením 0.6.0) je staršího data, ale stále by měla posloužit. Ke stažení ji najdeme na Launchpadu, na balíčky si musíme nechat zajít chuť.

    Aktualizace: Pystromo je dávno neudržovaný software, ale zastoupí ho např. novější Input Remapper, Kanata, keyd nebo KMonad.

    Instalace

    Instalace je poměrně jednoduchá:

    1. Zavedeme modul uinput, tedy se superuživatelskými právy provedeme modprobe uinput a pro příště přidáme uinput na nový řádek do souboru /etc/modules.
    2. Rozbalíme stažený archiv. Pokud nechceme Pystromo spouštět se superuživatelskými právy, zkopírujeme do /etc/udev/rules.d/ soubor 52-pystromo.rules (resp. 52-pystromo-debian.rules v případě Ubuntu/Debianu nebo 52-pystromo-suse.rules v případě OpenSUSE) z adresáře config v archivu. (Nechceme-li restartovat systém, pravidla uvedeme v platnost příkazy udevadm control --reload-rules a udevadm trigger.) Na tomto místě považuji za vhodné podotknout, že se jedná o potenciální bezpečnostní riziko, neboť se tím uživatelům zpřístupňují „syrová“ data ze vstupních zařízení.
    3. Konfiguraci udržujeme typicky v adresáři ~/.config/pystromo/.

    Soubory aplikace Pystromo

    Použití

    link

    Základním programem je pystromo-remap.py — stará se o samotné přemapování kláves. Volá se zpravidla pystromo-remap.py -m soubor, což provede mapování podle pravidel uvedených v zadaném souboru. Argument -m můžeme použít vícekrát najednou. Další (volitelné) argumenty jsou -R (program pak kontroluje, zda se konfigurační soubor nezměnil — jestliže ano, pak se podle toho zachová) a -v (vypisuje informace o běhu programu, dá se použít jednou až třikrát najednou a podle toho jsou vypisované informace detailní).

    Užitečný může být démon pystromo-mon.py, který sleduje běžící procesy a v závislosti na nich volá démona pystromo-remap.py. To znamená, že si můžeme zvolit specifická nastavení pro různé aplikace. Konfiguruje se to v souboru ~/.config/pystromo/monitor.conf, příp. v souboru předaném při spuštění démona: pystromo-mon.py -c soubor — takovýcho souborů můžeme opět předat více. Pozoruhodný je také argument -a, který způsobí, že démon sleduje procesy všech uživatelů. A samozřejmě nechybí argument -v s obvyklým významem.

    Pravděpodobně budeme chtít spustit Pystromo při každém přihlášení či startu grafického prostředí, takže se podle toho zařídíme.

    Konfigurace

    link

    Nejprve k nastavení pystromo-mon.py — ukázkový konfigurační soubor je config/monitor.conf a obsahuje následující pravidla:

    *=config/test.map
    kcalc=config/saitek-p2500.map
    kcalc=config/n50.map
    

    Myslím, že význam je zřejmý. První řádek způsobí, že se v každém případě pro přemapování použije konfigurační soubor config/test.map. Další řádky pak říkají, že po dobu běhu procesu (zde se jménem kcalc) poběží navíc pystromo-remap.py s konfigurací ze souborů config/saitek-p2500.map, resp. config/n50.map.

    Nakonec ale to nejzajímavější, tedy konfigurace samotného přemapování (omlouvám se za podivné počeštění, ale stručné a přitom výstižné synonymum mě nenapadlo). V souboru config/test.map najdeme celou řadu příkladů, zde uvedu stručnou kuchařku.

    Nejprve musíme definovat zařízení, která nás budou zajímat — přitom budeme potřebovat nejlépe výstup příkazu lsusb. Na začátku konfiguračního souboru tedy uvedeme blok (může jich být i více) jako následující:

    # Nostromo n52te
    [Device:n52te]
    vendor=0x050d
    product=0x0200
    

    Na prvním řádku je komentář pro snazší orientaci, nás bude zajímat až to další. Na druhém řádku zařízení přiřazujeme jméno n52te, pomocí nějž k němu budeme posléze přistupovat. Na dalších dvou řádcích specifikujeme, podle čeho se má zařízení identifikovat — viz výstup lsusb: Bus 005 Device 003: ID 050d:0200 Belkin Components (číslo před dvojtečkou označuje výrobce, číslo za ní konkrétní model; 0x přidáváme do konfiguračního souboru proto, že jde o čísla v šestnáctkové soustavě).

    Dále konfigurační soubor obsahuje bloky uvozené řádkem [Map:zařízení], kde zařízení nahradíme jménem, které jsme zařízení přiřadili (viz např. [Device:n52te] výše), nebo ho necháme prázdné, pak se následující přemapování budou vztahovat na všechna zařízení (specifikovaná výše v konfiguračním souboru).

    Tyto bloky obsahují samotná pravidla pro přemapování. Ta mají obecně tvar dvojic klávesa:cíl, kde

    • část vlevo je kód, který vrací hardwarová klávesa, resp. jméno, které ho zastupuje — kód zjistíme např. z výstupu programu showkey, odpovídající jméno vyhledáme v souboru lib/constants.py;
    • dvojtečka může být nahrazena znakem „rovná se“ a plní funkci oddělovače;
    • pravá část udává, na co se klávesa přemapuje, jak se bude hlásit v systému — opět jde obecně o konstanty ze souboru lib/constants.py.

    Například můžeme chtít, aby se klávesa Caps Lock chovala jako Ctrl. Docílíme toho řádkem KEY_CAPSLOCK:KEY_LEFTCTRL. To je docela jednoduché, ale Pystromo umožňuje i složitější záležitosti — několik příkladů:

    KEY_CAPSLOCK, KEY_BACKSPACE:KEY_LEFTCTRL
    Caps Lock a Backspace se budou chovat jako Ctrl
    KEY_LEFTMETA, KEY_RIGHTMETA:
    deaktivujeme obě klávesy Windows
    KEY_LEFTSHIFT + KEY_RIGHTSHIFT:KEY_CAPSLOCK
    současné stisknutí obou kláves Shift bude znamenat Caps Lock
    KEY_LEFTMETA:KEY_LEFTALT + KEY_F2
    levá klávesa Windows se bude chovat jako stisknutí levé klávesy Alt a F2 současně
    KEY_RIGHTMETA:KEY_LEFTALT + KEY_F2. KEY_RIGHTMETA
    pravá klávesa Windows se bude cyklicky chovat jako stisknutí levé klávesy Alt a F2 současně (pro liché stisky) nebo pravá klávesa Windows (pro sudé stisky) — podstatná je tečka mezi jednotlivými výrazy
    KEY_EJECTCD:KEY_LEFTSHIFT + KEY_A, KEY_H, KEY_O, KEY_J, KEY_LEFTSHIFT + KEY_1
    klávesa vysunutí mechaniky vypíše „Ahoj!“ (resp. postupně zašle kódy odpovídající uvedeným klávesám — pak záleží na rozvržení kláves, tedy na české QWERTZ (oproti americké QWERTY) by se v tomto případě vypsalo „Ahoj1“)
    KEY_EJECTCD:KEY_LEFTSHIFT + KEY_A, 1000, KEY_H, 1000, KEY_O, 1000, KEY_J, 1000, KEY_LEFTSHIFT + KEY_1
    klávesa vysunutí mechaniky vypíše „Ahoj!“ jako v předchozím příkladu, ovšem se sekundovými pauzami mezi znaky
    REL_WHEEL<=KEY_DOWN
    točení kolečkem „k sobě“ se bude chovat jako kurzorová šipka „dolů“
    KEY_RIGHTALT:KEY_LEFTSHIFT+2000
    stisknutí pravé klávesy Alt bude znamenat podržení levé klávesy Shift po dobu dvou sekund

    Další příklady najdete v souboru config/test.map — zahrnují např. rozsvícení informačních diod (Num Lock, Caps Lock apod.) nebo manipulaci s osami joysticku, ovšem ani jedno jsem nemohl vyzkoušet, protože jsem na to (a) neměl k dispozici hardware, nebo (b) mi to nefungovalo. Zajímavé je reálné využití Pystromo k umožnění ovládání Google Earth pomocí ovladače (gamepadu) z PlayStation 3.

    Ovšem Pystromo není bez chyby. Např. pokus o jakékoliv přemapování tlačítek trackballu Logitech TrackMan Marble mi způsobí zaseknutí kurzoru nebo pokud se pokouším nastavit cokoliv, aby to fungovalo jako kolečko myši, dočkám se posouvání pouze jedním směrem, nikoliv oběma.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    |🇵🇸 avatar 2.2.2012 00:06 |🇵🇸 | skóre: 94 | blog:
    Rozbalit Rozbalit vše Re: Pystromo - šikovné (pře)mapování kláves

    A jedna praktická ukázka:

    # apple-aluminium.map
    
    # Apple, Inc. Aluminum Mini Keyboard (ISO)
    [Device:apple-aluminium]
    vendor=0x05ac
    product=0x021e
    
    [Map:apple-aluminium]
    # swap right Meta and AltGr
    KEY_RIGHTMETA:KEY_RIGHTALT
    KEY_RIGHTALT:KEY_RIGHTMETA
    
    # pseudo-big-ass Enter instead of ISO
    KEY_BACKSLASH:KEY_ENTER
    # move backslash to the corner (Eject)
    KEY_EJECTCD:KEY_BACKSLASH
    # pseudo-ANSI left Shift instead of that ISO cripple
    KEY_102ND:KEY_LEFTSHIFT

    a pak

    $ ./pystromo-remap.py -m apple-aluminium.map
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.