Renkuosi klaviatūrą

S
  • 3 Sau '17

Renkuosi iš Logitech Comfort K280E ir Microsoft Wired Keyboard 600.
Aš naudoju lipnius klavišus (Sticky keys). Ar klavišas Fn tap pat bus prie Sticky Keys kaip Alt, Ctrl ir Shift? Kaip suderinamumas su Ubuntu?

T
Techtronic
Mindaugas N.
  • 3 Sau '17

Labas,

Nelabai supratau del FN klaviso, neturi tokio klaviso sie keyboardai. Sticky keys aktyvuoti galima System Settings > Universal Access:

Sticky keys

Placiau: https://help.ubuntu.com/stable/ubuntu-help/a11y-stickykeys.html

Microsoft kaip bebutu keista, keyboardus, mouse ar webcam'us gamina tikrai gerai, teko tureti ir tikrai likau patenkintas. Turbut vertetu daugiau atkreipti demesi i tokias klaviaturas kurios turi daugiau klavisu tam, kad galmetu juos "bind" i tam tikras funkcijas kas pagreitintu bei padetu atlikti uzduotis.

S
  • 16 Sau '17

Nusipirkau Logitech K280E. Klaviatūra labai gera, bet reikia laikyti nuspaudus klavišą FN klaviatura-logitech-comfort-keyboard-k280e.JPG
Gal įmanoma padaryti, kad šio klavišo nereikėtų laikyti?

T
Techtronic
Mindaugas N.
  • 2
  • 16 Sau '17

Tas klavisas nera FN, jis vadinasi Menu Key
Menu Key

FN Klavisas (kitaip function key) kuris dazniausiai naudojamas laptopos'e atrodo taip:

FN KEY

Jeigu yra aktyvuota StickyKeys funkcija tai nuspaudus modifier key (Shift, Ctrl arba Alt) jis bus aktyvus iki tol kol bus paspaustas kitas klavisas (neskaitant modifier keys?). So, as vis dar nesuprantu ka norima padaryti...

P.S. Gal uzteks ignoruoti ir pradesim atsakyti i klausimus, a tai bus kaip ubuntuforumš.org (niekas nenores daugiau padeti) :-)

S
  • 2
  • 17 Sau '17

Menu key pas mane yra su Ctrl (FN+Ctrl). Vietoje Menu key yra FN key.
FN key yra modifier key.

T
Techtronic
Mindaugas N.
  • 17 Sau '17

FN key yra modifier key.

Taip, FN klavisas yra vienas is modifier keys.

Menu key pas mane yra su Ctrl (FN+Ctrl). Vietoje Menu key yra FN key.

Ok, gal ant keyboard'o tik nupaisyta kad ten "FN" ar ir sistema mato, kad atskiri klavisai (naudok xev) ? Nes greiciausiai sistema mato kaip paprasta keyboard'a su Menu klavisu, jeigu taip tai teks bind Menu key + F* kombinacijas paciam.

Parasiau maza how-to (greiciau FAQ), gal pravers kam.

Aktyvuoti Sticky keys

Kad aktyvuoti Sticky Keys funkcija pakanka parasyti terminale komanda:

xkbset sticky
  • sticky - Sticky keys funkcija.
  • latchlock - Paspaudus kelis kartus klavisas bus sulaikytas iki tol kol bus paspaustas kitas modifier key.
  • twokey - Paspaudus modifier key ir bet kuri kita klavisa sticky keys bus laikinai sustabdytas.

Jeigu norima aktivuoti funkcija tai rasoma be - (minus). Tarkim aktyvuoti sticky bei latchlock, bet be twokey:

xkbset sticky -twokey latchlock

Kaip pakeisti layout (kalba/tipa/varianta/modeli) ?

Pavyzdžiui jeigu norima tureti pirma layout US, o tada LT galima naudotis setxkbmap komanda:

setxkbmap -layout "us,lt"

Taip pat galime nustatyti kokiu budu mes keisime layouta (Ctrl+Shift):

setxkbmap -layout "us,lt" -option "grp:ctrl_shift_toggle"

Na o tam kad matytume kuris layout'as naudojamas (svies Scroll LED prie LT layout'o):

setxkbmap -layout "us,lt" -option "grp:ctrl_shift_toggle,grp_led:scroll"

Jeigu naudojamas keyboard nera QWERTY, o tarkim AZERTY, pakeisti galima tokiu budu:

setxkbmap -variant azerty

Modelio keitimas:

setxkbmap -model pc105
  • pc104 - Standartinis US (buna ir pc101).
  • pc105 - Europietiskas.
  • pc106 - Korea.
  • pc107 - Brazilia.
  • pc109 - Japanija

Jeigu nesate tikras koks pas jus naudojamas, tai gal ji aptinka teisingai pati sistema:

setxkbmap -print

Kaip pakeisti kartojimo delay/rate ?

As naudoju repeat 300, o delay 35 (nera nieko blogiau uz leta keyboarda!), nustatau su xset:

xset r rate 300 35

Kaip surasti klavisu pavadinimus?

Tam yra patogus instrumentas xev. Jeigu domina tik keyboard ivykiai(events) galime su grep komanda pasiimti tik tai ko mums reikia:

xev | grep keysym

Bus matoma terminale kokius klavisus paspaudeme:

    state 0x10, keycode 38 (keysym 0x61, a), same_screen YES,
    state 0x10, keycode 38 (keysym 0x61, a), same_screen YES,
    state 0x10, keycode 56 (keysym 0x62, b), same_screen YES,
    state 0x10, keycode 56 (keysym 0x62, b), same_screen YES,
    state 0x10, keycode 54 (keysym 0x63, c), same_screen YES,
    state 0x10, keycode 54 (keysym 0x63, c), same_screen YES,
    state 0x10, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
    state 0x11, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
    state 0x11, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
    state 0x11, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
    state 0x11, keycode 36 (keysym 0xff0d, Return), same_screen YES,
    state 0x11, keycode 36 (keysym 0xff0d, Return), same_screen YES,

a, b, c, Shift_L (kaires puses shift), Shift_R (desines puses shift), ir tada paspaudziau Return (Enter).

Kaip Map/Re-Map klavisus?

Pirma teks gauti esama kaymap'a, tai padaryti galima jau su zinoma setxkbmap komanda:

setxkbmap -print

Gausime toki pati arba panasu rezultata:

xkb_keymap {
    xkb_keycodes  { include "evdev+aliases(qwerty)"    };
    xkb_types     { include "complete"    };
    xkb_compat    { include "complete+ledscroll(group_lock)"    };
    xkb_symbols   { include "pc+us+lt:2+inet(evdev)+group(ctrl_shift_toggle)"    };
    xkb_geometry  { include "pc(pc105)"    };
};

Pakeiciame xkb_symbols kad butu (darasiau +local):

    xkb_symbols   { include "pc+us+lt:2+inet(evdev)+group(ctrl_shift_toggle)+local"    };

ir saugome i faila ~/.xkb/keymap/custom. Sukuriame nauja faila ~/.xkb/symbols/local kuriame nurodome ka norime pakeisti:

xkb_symbols "local" {
    key <MENU> {
        type= "ONE_LEVEL",
        symbols[Group1]= [            Alt_R ]
    };
};

Tokiu budu pakeisime klavisa Menu i desines Alt. Aktyvuojame pakeitimus su komanda:

xkbcomp -w0 -I$HOME/.xkb -R$HOME/.xkb keymap/custom $DISPLAY

Tikrinam ar veikia:

xev | grep keysym
    state 0x10, keycode 135 (keysym 0xffea, Alt_R), same_screen YES,

NOTE: Naudojant sticky keys arba mapinant modifier keys galimos keistos problemos, nesivarginkite kurti Xorg bug'u, ju jau ir taip sukurta simtai...
NOTE: Kiekviena karta paleidus X sesija teks paleisti sia komanda.

Daug placiau apie tai rasoma Arch wiki - Keyboard configuration in Xorg

Kaip ta pati padaryti naudojant Unity, Gnome Shell, KDE...

Mano aprasytas budas gali neveikti, nes tokie desktopai buna kad ignoruoja tai ka jiems nurodo Xorg, viska daro savaip.
Bet, Unity ar tai KDE galima aktyvuoti Sticky Keys, keisti repeat delay/rate ir panasiai, turi jie tam draugiska grafine aplinka.

S
  • 17 Sau '17

Bent jau pas ThinkPadus, paspaudus Fn+Esc, funkciniai klavišai tampa funkciniais, o ne media klavišais. Nežinau ar tai veiks su tavo klaviatūra.

T
Techtronic
Mindaugas N.
  • 18 Sau '17

Negaliu ir as ka patarti kai nezinau kaip Xorg mato tokia klaviatura, temos autorius turi daug "namu darbu" dabar :-)