Funkcie klávesnice

Sekcia: Konfigurácia 11.02.2009 | 19:44
Avatar matusroman Mandriva 2008  Používateľ
Dá sa nejakým spôsobom nadstaviť to, aby Linux využíval pomocné klávesy z klávesnice ? Myslím napríklad pridávanie hlasitosti a podobné funkcie ktoré vo Windowse rieši inštalácia CD dodaná ku klávesnici. Dá sa nadstaviť aspoň časť týchto pomocných kláves ?
    • Re: Funkcie klávesnice 11.02.2009 | 19:59
      mezek   Návštevník
      Skus viacej popisat aky mas operacny system a aky pocitac (PC/NB, procesor...)

      Napr. pre system Fedora na notebookoch Toshiba existuje balicek fnfx, ktory zapina (alebo umoznuje namapovat) funkcne klavesy.
    • Re: Funkcie klávesnice 11.02.2009 | 20:04
      WlaSaTy   Návštevník
      Ano, da sa to. Vela krat to ide automaticky (pokial vyrobca generuje stlacenie klavesy zodpovedajuce jej popisu) a obcas je to treba premapovat (ked su tie klavesy nezname).

      Mne napriklad stacilo vybrat ovladac klavesnice evdev a zodpovedajuci typ klavesnice a islo to aj same a bezbolestne. Gentoo.
      • Re: Funkcie klávesnice 11.02.2009 | 20:11
        Avatar matusroman Mandriva 2008  Používateľ
        No mne to automaticky nejde. Používam Mandrivu 2008 a laptop Acer TravelMate 2420. Písal si že sa to dá premenovať. A kde ?
        • Re: Funkcie klávesnice 11.02.2009 | 20:19
          WlaSaTy   Návštevník
          Pisal som ze sa to da premapovat, nie premenovat. Keby si to chcelpremenovat, tak si to mozes prelepit.

          Aky mas ovladac klavesnice pre xwindows? Je to pisane v /etc/X11/xorg.conf. Nemalo by tam byt kbd a ani keyboard ale evdev. Tolko na zaciatok. Potom je vhodne kuknut co o tych klavesach pise nastroj xev.
          • Re: Funkcie klávesnice 11.02.2009 | 20:30
            Avatar matusroman Mandriva 2008  Používateľ
            Ďakujem za rady. Pohral som sa s prepínaním typu klávesnice a nikde išlo to a inde zase ono. Nechal som si prepnuté na ten typ, kde my funguje skoro všetko.

            /etc/X11/xorg.conf =

            Section "InputDevice"
            Identifier "Keyboard1"
            Driver "kbd"
            Option "XkbModel" "microsoftprooem"
            Option "XkbLayout" "sk(qwerty)"
            Option "XkbOptions" "compose:rwin"
            EndSection

            Info s pod evdev =

            Section "InputDevice"
            Identifier "Mouse2"
            Driver "evdev"
            Option "bustype" "0x0003"
            Option "product" "0xc50e"
            Option "relBits" "+0+1+2"
            Option "HWheelRelativeAxisButtons" "7 6"
            Option "vendor" "0x046d"
            EndSection


            Myslíš, že pôjde nastaviť aj doposiaľ nefunkčné klávesy nejako dodatkovo ?
            • Re: Funkcie klávesnice 11.02.2009 | 21:35
              WlaSaTy   Návštevník
              Najprv by som sa chcel opytat preco mas stale pouzity ovladac klavesnice kbd a nie evdev, potom by som sa chcel opytat ake kody vypisuje ta klavesnica do programu xev (spusti kterm a do neho napis xev, potvrd to a pomackaj ich).

              PS.: priprav si livecd z ktoreho si to instaloval, a odzalohuj si ten subor niekam. hoci aj na usbcko, keby si sa uklepol ze nech tu zmenu mozes vratit do povodneho stavu.
              • Re: Funkcie klávesnice 11.02.2009 | 22:02
                Avatar matusroman Mandriva 2008  Používateľ
                Tak že ovládač kbd mám použitý preto lebo nemám ani šajn ako ho zmeniť na ten evdev. Ja čo som opísal zmeny, všetky som urobil za pomoci grafického prostredia v utilite Kontrolné centrum, hardware, klavesnica a tam som menil typ klávesnice, graficky. Šťuk, štuk :) No a ten xev neviem čo vypisuje lebo som ho skúšal spúšťať v konzole, ale nepozná taký príkaz konzola. No a ten druhý kterm v ktorom mám pustiť xev tiež nejde spustiť v konzole a nenašiel som ho v mojom PC vôbec.

                P.S. Nenašiel som = 1.) v konzole som zadal názov xev alebo kterm a stlačil Tab, nevylistovalo ho ani iba nikoľko písmen z názvu. 2.) V menu do vyhľadávača som zadal názov xev alebo kterm.
                • Re: Funkcie klávesnice 11.02.2009 | 22:30
                  WlaSaTy   Návštevník
                  Pri zmene ovladaca v konfiguraku ide obvykle o zamenu jedneho slova za druhe. Obidve uz poznas.

                  A ak nemas potrebny nastroj, tak si ho mozes predsa nainstalovat.

                  • Re: Funkcie klávesnice 12.02.2009 | 08:58
                    Avatar matusroman Mandriva 2008  Používateľ
                    Nainštaloval som xev, tu je výpis :

                    Outer window is 0x1e00001, inner window is 0x1e00002

                    PropertyNotify event, serial 8, synthetic NO, window 0x1e00001,
                    atom 0x27 (WM_NAME), time 1765878734, state PropertyNewValue

                    PropertyNotify event, serial 9, synthetic NO, window 0x1e00001,
                    atom 0x22 (WM_COMMAND), time 1765878734, state PropertyNewValue

                    PropertyNotify event, serial 10, synthetic NO, window 0x1e00001,
                    atom 0x28 (WM_NORMAL_HINTS), time 1765878734, state PropertyNewValue

                    CreateNotify event, serial 11, synthetic NO, window 0x1e00001,
                    parent 0x1e00001, window 0x1e00002, (10,10), width 50, height 50
                    border_width 4, override NO

                    MapNotify event, serial 12, synthetic NO, window 0x1e00001,
                    event 0x1e00001, window 0x1e00002, override NO

                    PropertyNotify event, serial 15, synthetic NO, window 0x1e00001,
                    atom 0x1af (_KDE_NET_WM_USER_CREATION_TIME), time 1765878734, state PropertyNewValue

                    ConfigureNotify event, serial 15, synthetic NO, window 0x1e00001,
                    event 0x1e00001, window 0x1e00001, (0,0), width 178, height 178,
                    border_width 0, above 0x420001b, override NO

                    ReparentNotify event, serial 15, synthetic NO, window 0x1e00001,
                    event 0x1e00001, window 0x1e00001, parent 0x12047cc,
                    (0,0), override NO

                    PropertyNotify event, serial 15, synthetic NO, window 0x1e00001,
                    atom 0x11f (_NET_WM_DESKTOP), time 1765878736, state PropertyNewValue

                    PropertyNotify event, serial 15, synthetic NO, window 0x1e00001,
                    atom 0x189 (_NET_FRAME_EXTENTS), time 1765878738, state PropertyNewValue

                    PropertyNotify event, serial 15, synthetic NO, window 0x1e00001,
                    atom 0x144 (_KDE_NET_WM_FRAME_STRUT), time 1765878738, state PropertyNewValue

                    PropertyNotify event, serial 15, synthetic NO, window 0x1e00001,
                    atom 0x187 (_NET_WM_ALLOWED_ACTIONS), time 1765878738, state PropertyNewValue

                    PropertyNotify event, serial 15, synthetic NO, window 0x1e00001,
                    atom 0x125 (_NET_WM_STATE), time 1765878738, state PropertyNewValue

                    PropertyNotify event, serial 15, synthetic NO, window 0x1e00001,
                    atom 0x91 (WM_STATE), time 1765878738, state PropertyNewValue

                    ConfigureNotify event, serial 15, synthetic YES, window 0x1e00001,
                    event 0x1e00001, window 0x1e00001, (3,869), width 178, height 178,
                    border_width 0, above 0x0, override NO

                    MapNotify event, serial 15, synthetic NO, window 0x1e00001,
                    event 0x1e00001, window 0x1e00001, override NO

                    VisibilityNotify event, serial 15, synthetic NO, window 0x1e00001,
                    state VisibilityPartiallyObscured

                    Expose event, serial 15, synthetic NO, window 0x1e00001,
                    (0,0), width 117, height 10, count 5

                    Expose event, serial 15, synthetic NO, window 0x1e00001,
                    (0,10), width 10, height 58, count 4

                    Expose event, serial 15, synthetic NO, window 0x1e00001,
                    (68,10), width 49, height 58, count 3

                    Expose event, serial 15, synthetic NO, window 0x1e00001,
                    (0,68), width 117, height 40, count 2

                    Expose event, serial 15, synthetic NO, window 0x1e00001,
                    (0,108), width 118, height 1, count 1

                    Expose event, serial 15, synthetic NO, window 0x1e00001,
                    (0,109), width 178, height 69, count 0

                    FocusIn event, serial 15, synthetic NO, window 0x1e00001,
                    mode NotifyNormal, detail NotifyNonlinear

                    KeymapNotify event, serial 15, synthetic NO, window 0x0,
                    keys: 0 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0
                    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

                    VisibilityNotify event, serial 15, synthetic NO, window 0x1e00001,
                    state VisibilityUnobscured

                    Expose event, serial 15, synthetic NO, window 0x1e00001,
                    (117,0), width 61, height 108, count 1

                    Expose event, serial 15, synthetic NO, window 0x1e00001,
                    (118,108), width 60, height 1, count 0

                    KeyRelease event, serial 27, synthetic NO, window 0x1e00001,
                    root 0x7e, subw 0x0, time 1765878815, (333,-593), root:(336,276),
                    state 0x10, keycode 36 (keysym 0xff0d, Return), same_screen YES,
                    " XLookupString gives 1 bytes: (0d) "
                    XFilterEvent returns: False

                    FocusOut event, serial 30, synthetic NO, window 0x1e00001,
                    mode NotifyNormal, detail NotifyNonlinear


                    Tento príkaz otvorí nejaké okienko so štvorcom a pri stáčaní kláves pribúdajú dáta. Dáta pribúdajú aj keď pohybujem kurzorom myšky v tom štvrčeku čo nabehne v okne.

                    Tu je výpis príkazu kterm :

                    Warning: Actions not found: begin-conversion
                    kterm: unable to open font "", trying "fixed"....
                    Warning: Actions not found: begin-conversion
                    "/etc/termcap", line 1883, col 962, terminal 'kterm': unknown % code p (0x70) in AB
                    "/etc/termcap", line 1883, col 976, terminal 'kterm': unknown % code p (0x70) in AF
                    Warning: Actions not found: begin-conversion

                    Tak že som z toho kakaový ...

                    • Re: Funkcie klávesnice 12.02.2009 | 10:17
                      Avatar matusroman Mandriva 2008  Používateľ
                      Skúsil som prepísať aj ten config, ešte šťastie, že som si to zálohoval, inak by som ťa nemal rád :D Padlo mi to, napísalo niečo také pri spúšťaní X serveru že : Nenašlo alebo sa neobjavila tabuľka ip6tab ak si to dobre pamätám.
                      • Re: Funkcie klávesnice 12.02.2009 | 15:12
                        WlaSaTy   Návštevník
                        mozem sa pozret doma ze ako to mam ja aby sme vylucili preklep v tom konfigu. ale ohladne toho xev, tak ten vypisuje eventy (akcie) ktore lozia cez xwindows. a v jeho vypise vidim stlacenie a pustenie jedinej klavesy, nemackal si vtedy enter? lebo mi nejde do hlavy ze by to nepisalo nieco taketo:

                        KeyRelease event, serial 31, synthetic NO, window 0x3000001,
                        root 0x76, subw 0x0, time 4187317033, (426,-553), root:(430,251),
                        state 0x10, keycode 158 (keysym 0x1008ff1b, XF86Search), same_screen YES,
                        • Re: Funkcie klávesnice 12.02.2009 | 18:40
                          Avatar matusroman Mandriva 2008  Používateľ
                          No reagovalo to na stalčenie klávesy, možno ctrl+c pre výber textu niečo aktivoval, ťažko povedať.
                          Skúsil som to znova odkopírovať :

                          atus@localhost ~]$ xev
                          Outer window is 0x5200001, inner window is 0x5200002

                          PropertyNotify event, serial 8, synthetic NO, window 0x5200001,
                          atom 0x27 (WM_NAME), time 1801009565, state PropertyNewValue

                          PropertyNotify event, serial 9, synthetic NO, window 0x5200001,
                          atom 0x22 (WM_COMMAND), time 1801009565, state PropertyNewValue

                          PropertyNotify event, serial 10, synthetic NO, window 0x5200001,
                          atom 0x28 (WM_NORMAL_HINTS), time 1801009565, state PropertyNewValue

                          CreateNotify event, serial 11, synthetic NO, window 0x5200001,
                          parent 0x5200001, window 0x5200002, (10,10), width 50, height 50
                          border_width 4, override NO

                          MapNotify event, serial 12, synthetic NO, window 0x5200001,
                          event 0x5200001, window 0x5200002, override NO

                          PropertyNotify event, serial 15, synthetic NO, window 0x5200001,
                          atom 0x1af (_KDE_NET_WM_USER_CREATION_TIME), time 1801009565, state PropertyNewValue

                          ConfigureNotify event, serial 15, synthetic NO, window 0x5200001,
                          event 0x5200001, window 0x5200001, (0,0), width 178, height 178,
                          border_width 0, above 0x2a0001b, override NO

                          ReparentNotify event, serial 15, synthetic NO, window 0x5200001,
                          event 0x5200001, window 0x5200001, parent 0x1400bf2,
                          (0,0), override NO

                          PropertyNotify event, serial 15, synthetic NO, window 0x5200001,
                          atom 0x11f (_NET_WM_DESKTOP), time 1801009568, state PropertyNewValue

                          PropertyNotify event, serial 15, synthetic NO, window 0x5200001,
                          atom 0x189 (_NET_FRAME_EXTENTS), time 1801009570, state PropertyNewValue

                          PropertyNotify event, serial 15, synthetic NO, window 0x5200001,
                          atom 0x144 (_KDE_NET_WM_FRAME_STRUT), time 1801009570, state PropertyNewValue

                          PropertyNotify event, serial 15, synthetic NO, window 0x5200001,
                          atom 0x187 (_NET_WM_ALLOWED_ACTIONS), time 1801009571, state PropertyNewValue

                          PropertyNotify event, serial 15, synthetic NO, window 0x5200001,
                          atom 0x125 (_NET_WM_STATE), time 1801009571, state PropertyNewValue

                          PropertyNotify event, serial 15, synthetic NO, window 0x5200001,
                          atom 0x91 (WM_STATE), time 1801009571, state PropertyNewValue

                          ConfigureNotify event, serial 15, synthetic YES, window 0x5200001,
                          event 0x5200001, window 0x5200001, (3,59), width 178, height 178,
                          border_width 0, above 0x0, override NO

                          MapNotify event, serial 15, synthetic NO, window 0x5200001,
                          event 0x5200001, window 0x5200001, override NO

                          VisibilityNotify event, serial 15, synthetic NO, window 0x5200001,
                          state VisibilityUnobscured

                          Expose event, serial 15, synthetic NO, window 0x5200001,
                          (0,0), width 178, height 10, count 3

                          Expose event, serial 15, synthetic NO, window 0x5200001,
                          (0,10), width 10, height 58, count 2

                          Expose event, serial 15, synthetic NO, window 0x5200001,
                          (68,10), width 110, height 58, count 1

                          Expose event, serial 15, synthetic NO, window 0x5200001,
                          (0,68), width 178, height 110, count 0

                          FocusIn event, serial 15, synthetic NO, window 0x5200001,
                          mode NotifyNormal, detail NotifyNonlinear

                          KeymapNotify event, serial 15, synthetic NO, window 0x0,
                          keys: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                          0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                          • Re: Funkcie klávesnice 12.02.2009 | 20:13
                            WlaSaTy   Návštevník
                            bud ti to utieklo alebo nemas korektne nacitany ovladac acerhk. zas tam nic dolezite nevidim.
                            • Re: Funkcie klávesnice 12.02.2009 | 20:44
                              Avatar matusroman Mandriva 2008  Používateľ
                              Ten ovládač acerhk neviem kde hľadať. Chcel som to doinštalovalť, ale nie je medzi aplikáciami. Čo by sa malo vylepšiť zmenou toho ovládača kdb na evdev ?
                              • Re: Funkcie klávesnice 12.02.2009 | 22:15
                                WlaSaTy   Návštevník
                                Ovladace sa nachadzaju v /lib/modules.

                                Inak tym ze zamenis zastarany ovladac kbd (alebo keyboard) za evdev nastane to ze budes pouzivat modernejsiu technologiu ktora reflektuje sucasny hardware.

                                • Re: Funkcie klávesnice 13.02.2009 | 10:07
                                  Avatar matusroman Mandriva 2008  Používateľ
                                  No pozrel som sa na tú adresu /lib/modules a našiel aom aj ten acerhk, ale neviem čo by som ja s tým mohol urobiť, nevyznám sa do toho. Neviem teda ani ďalší krok ktorý by som ja mal urobiť, aby som sa dostal k používaniu toho evdev ovládača. No ale myš je ovládaná pomocou toho ovládača evdev podľa toho výpisu z conf.cfg. Nechápem teda prečo to nejde na klávesnici ?
                                  • Re: Funkcie klávesnice 13.02.2009 | 13:51
                                    WlaSaTy   Návštevník
                                    ovladace sa nacitavaju pomocou prikazu modprobe alebo insmod.

                                    Ale k veci. Zatial si nenapisal ktore multimedialne tlacitka nefunguju. Pre funkciu obycajnych multimedialnych tlacitiek (ako napriklad zmena hlasitosti, dalsia pesnicka, ...) staci vybrat korektny typ klavesnice ako radil kolega podomnou. Ale ak chces spojazdnit tlacitka ktore zapnu napriklad webkamerku tak ze jej pustia napajanie cez USB, tak tie obvykle potrebuju obsluzny ovladac alebo obsluzvy program. V pripade toho aceru je to spomenuty ovladac ktoremu je obcas potrebne vnutit seriu notebooku pomocou parametra force_series.

                                    Takze ak s tym chces pomoct, tak skus opisat co si skusil, s akym vysledkom. Inak nie je jasne v ktorom kroku zlyhala autodetekcia a ktorym smerom sa orientovat.
    • Re: Funkcie klávesnice 13.02.2009 | 13:07
      Avatar Jaroslav Štulajter Mandriva 2009.1  Používateľ
      Vcera som to riesil najlepsie je si precitat clanok tento a este "pokracovanie" tento Moje badania skoncili vo chvyli ked som zistil ze po zapnuti Xkb (cez ovladacie centrum-> rozlozenie klavesnice) a instalacii xbindkeys (konzola->ako root user -> urpmi xbindkeys )a nastaveni klavesnice na PC 105 (cez ovladacie centrum-> rozlozenie klavesnice) sa klavesy rozbehali (niekedy je dobre dat jeden restart po nastaveniach ale to si iba myslim,neviem kedy presne sa to rozbehlo)
      Este podotknem ze klavesnicu PC 105 som dal preto ze na moj notas MSI nieje v zozname, skusal som vsak podla horeuvedenych linkov spravit si namapovanie mojej klavesnice ale dako som neuspel.
      ze ti klavesy generuju tie spravne keycody zistis cez spominane xev
      napr v mojom pripade mute (Fn+F9) ma keycode 160 a vidim ze ide spravne lebo mam priradene keysym XF86AudioMute
      KeyRelease event, serial 31, synthetic NO, window 0x4600001,
      root 0x13b, subw 0x0, time 7787353, (-207,427), root:(467,454),
      state 0x10, keycode 160 (keysym 0x1008ff12, XF86AudioMute), same_screen YES,
      XLookupString gives 0 bytes:
      XFilterEvent returns: False

      aby si si bol na istom pozri si este subor /usr/share/X11/xkb/keycodes/xfree86 prvy stlpec je format relativneho rozlozenia klaves na klavesnici a druhy je spominany keycode (v ukazke 160)
      vadsinou ma hodnotu <I20>
      teraz je cas na subor /usr/share/X11/xkb/symbols/inet, tam najdes ako su namapovanie tieto klavesy ak pouzijes klavesnicu PC 105 tak pre teba bude zrejme platit sekcia xkb_symbols "media_common" ak mas to stastie a tvoja klavesnia je v zozname podporovanych klavesnic (cize v ovladacom centre-> rozlozenie klavesnice si si mohol vybrat klavesnicu zodpovedajucu tvojmu modelu ) v subore /usr/share/X11/xkb/symbols/inet najdes sekciu s nazvom tvojej klavesnice, mozes tam skontorlovat ci nastavenie kodov a akcii sedi s tvojimy predstavami popripade zmenit akcie ako si to len zelas, zoznam moznych akcii:
      XF86Search,
      XF86AudioMedia,
      XF86WWW,
      XF86AudioPrev,
      XF86AudioNext,
      XF86AudioMute,
      XF86Calculator,
      XF86AudioPlay,
      XF86AudioPause,
      XF86AudioStop,
      XF86AudioLowerVolume,
      XF86AudioRaiseVolume,
      XF86Sleep,
      XF86Favorites,
      XF86Refresh,
      XF86Stop,
      XF86Forward,
      XF86Back,
      XF86Mail,
      XF86MyComputer

      Ako som povedal toto som vytiahol z hore uvedenych linkov takze skus naskor postup zapnut Xkb a nainstalovat xbindkeys nastavit klavesnicu zodpovedajucu tvojmu modelu alebo daku vseobecnu, ak ti to nepomoze daj sa do badania, kedze mas mandrivu cesty k suborom z clankov ti nebudu sediet, ale mas ich napisane v tomto prispevku Good luck
      • Re: Funkcie klávesnice 13.02.2009 | 19:48
        Avatar matusroman Mandriva 2008  Používateľ
        Tak ja sa vám chcem všetkým poďakovať a hlavne WlaSaTy mi hodne pomohol. Klávesnicu ktorú sme riešili je externá a ide mi na nej vlastne všetko potrebné k bežnéj práci. Za pomoci vašich rád sa rozbehla aj multimediálna časť klávesnice a niekoľko pomocných kláves ako home page a email... Je pravda, že pár ich ešte nefunguje, ale to zase až tak veľmi nevadí. Pozriem si tie články čo si sem vložil jarque keď bude viac času a ak sa rozhodnem pokračovať v skúšaní a nadstavovaní, tak napíšem ako sa mi darí.