Ito ang command na xkeycaps na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
xkeycaps - graphical na ipakita at i-edit ang X keyboard mapping
SINOPSIS
xkeycaps [-toolkitoption ...] [-opsyon ...]
DESCRIPTION
Ang xkeycaps Ang programa ay nagpapakita ng isang keyboard. Ang paglipat ng mouse sa ibabaw ng isang key ay naglalarawan sa
keysyms at modifier na nabubuo ng key na iyon. Ang pag-click sa kaliwa sa isang susi ay ginagaya ang a
Kaganapan ng KeyPress. Ang pag-click mismo sa isang key ay maglalabas ng isang menu ng mga operasyon, kabilang ang a
command na baguhin ang mga keysyms na nabuo ng key. Ang programang ito ay, sa bahagi, a
graphical na front-end sa xmodmapNa (1).
Opsyon
xkeycaps tumatanggap ng lahat ng karaniwang opsyon sa toolkit, at tinatanggap din ang sumusunod
na pagpipilian:
-keyboard keyboard-pangalan or -kbd keyboard-pangalan
Tinutukoy ang uri ng keyboard na ipapakita. Mayroong maraming iba't ibang mga computer
mga keyboard sa mundo, at xkeycaps dapat malaman kung alin ang iyong ginagamit upang
gumana nang tama. Ang kaso ay hindi mahalaga kapag tinukoy ang isang pangalan ng keyboard.
Kung tumatakbo ka sa console display ng isang Sun o HP, kung gayon xkeycaps habilin
direktang tanungin ang nakalakip na keyboard hardware upang matukoy kung anong keyboard ka
gamit. Ngunit kung tumatakbo ka nang malayuan, o sa ibang uri ng makina, dapat
tumukoy ng keyboard kahit papaano.
-tulong
Naglilista ng mga kinikilalang halaga para sa -keyboard pagpipilian.
-gutterwidth numero or -gw numero
Tinutukoy ang bilang ng mga pixel ng espasyong iiwan sa pagitan ng bawat key.
-font fontname
Tinutukoy ang font na gagamitin upang ipakita ang mga keycap.
Ang mga sumusunod na karaniwang X Toolkit command line argumento ay karaniwang ginagamit sa xkeycaps:
-display host:dpy
Tinutukoy ng opsyong ito ang X server na kokontakin.
-geometry heometrya
Tinutukoy ng opsyong ito ang gustong laki at posisyon ng window.
-bg kulay
Tinutukoy ng opsyong ito ang kulay na gagamitin para sa background ng window. Ang default
ay mapusyaw na kulay abo.
-fg kulay
Tinutukoy ng opsyong ito ang kulay na gagamitin para sa foreground ng window. Ang default
ay itim.
-bw numero
Tinutukoy ng opsyong ito ang lapad sa mga pixel ng hangganan na nakapalibot sa window.
-xrm resourcesstring
Tinutukoy ng opsyong ito ang isang resource string na gagamitin. Ito ay lalong kapaki-pakinabang para sa
pagtatakda ng mga mapagkukunan na walang hiwalay na mga opsyon sa command line.
DISPLAY
Ang ibabang bahagi ng window ay isang pagguhit ng isang keyboard. Sa kaliwang tuktok ng bawat key ay
naka-print ang string na aktwal na lumilitaw sa ibabaw ng key. Sa kanang ibaba
ng key ay ang (hexadecimal) keycode na nabuo ng key na ito.
Sa tuktok ng screen ay ilang linya ng text na naglalarawan sa key sa ilalim ng mouse (o
ang pinakahuling na-type na key.) Ang mga linyang ito ay:
KeyCode: Ipinapakita nito ang text na naka-print sa pisikal na key, at ang keycode na nabuo
sa pamamagitan ng key na iyon sa hex, decimal, at octal.
KeySym: Ipinapakita nito ang hanay ng mga KeySyms na kasalukuyang nabubuo ng key na ito.
ASCII: Ipinapakita nito ang katumbas ng ASCII ng key na ito, na isinasaalang-alang ang
kasalukuyang mga modifier key na naka-down.
Mga Modifier: ipinapakita nito ang mga bit ng modifier na nabubuo ng key na ito. Kung nabuo ang isang susi
modifier, ito ay tulad ng chord-key Ilipat or Kontrolin.
AutoRepeat: Kung sinasabi ng X server na ang key na ito ay awtomatikong umuulit. sabi ko ``claim''
dahil ang OpenWindows X server lang ang na-encounter ko kung saan
tumpak ang impormasyong ito. Ang per-key na autorepeat na flag ay tila halos-
hindi pinansin ng lahat.
UTOS
Mayroong ilang mga pindutan sa kaliwang sulok sa itaas ng window. Sila ay:
Huminto
Lumabas sa programa.
piliin Keyboard
Nagpa-pop up ang isang dialog box kung saan maaari mong baguhin kung aling keyboard ang ipapakita. Ang kaliwa
Ang hanay ay naglilista ng mga kilalang uri ng mga keyboard, at ang kanang hanay ay naglilista ng mga kilala
mga layout (mapping) ng mga keyboard na iyon.
uri At Bintana
Pagkatapos piliin ito, hihilingin sa iyong mag-click sa ibang window. Pagkatapos gawin ito,
Ang pag-click sa mga key sa display ng keyboard ay gayahin ang mga pangunahing kaganapan sa window mo
pinili. Ang pagpili sa root window o ang xkeycaps pinapatay ito ng window.
Kung gumagamit ka ng window manager (halimbawa, TWM(1)) kung saan maaari mong i-lock ang
naka-focus ang keyboard sa isang window at nag-click pa rin sa ibang mga window nang hindi nakatutok
baguhin, pagkatapos ay magagawa mo ang parehong bagay sa pamamagitan lamang ng pagtuon sa isa pang window
at pag-click sa mga susi sa xkeycaps window.
Ibalik ang default mapa
Ibinabalik ng command na ito ang keyboard sa default na estado nito. Kung ipapatupad mo ang utos na ito
habang nagpapakita ng keyboard na hindi ang uri ng keyboard na talagang ginagamit mo,
ang iyong keymap ay nasa isang walang katuturang estado. Walang paraan para sa xkeycaps para sabihin kung ano
keyboard na iyong ginagamit maliban sa pagkuha ng iyong salita para dito, kaya huwag magsinungaling.
Sumulat Pagbubuhos
Ang utos na ito ay nagsusulat ng isang xmodmap input file na kumakatawan sa kasalukuyang estado ng
keyboard (kabilang ang lahat ng iyong mga pagbabago) sa isang file sa iyong home directory. Tandaan na
HINDI isinulat ng command na ito ang default na keymap para sa ganitong uri ng keyboard maliban kung ikaw
nag-click sa Ibalik ang Default na Mapa dati.
Ang file ay tatawagin .xmodmap-hostname, Kung saan hostname ay ang pangalan ng makina
tumatakbo ka na. Babalaan ka nito kung mayroon nang file.
Sinenyasan ka nito ng isang dialog box: maaari kang magsulat ng isang xmodmap file na kumakatawan
ang estado ng bawat key, o maaari kang magsulat ng mas maliit na file na naglalarawan lamang ng
mga pagbabago.
Ang ideya ay na sa naaangkop na startup script, ikaw ay magdagdag ng isang linya tulad ng
xmodmap /.xmodmap-`uname -n`
sa naaangkop na init file, upang ang mga pagbabago sa keyboard ay ginawa sa bawat oras
mag-log in ka. (Kung hindi ka sigurado kung saan pupunta ang command na ito, tanungin ang iyong system
administrator, dahil iyon ay may posibilidad na mag-iba sa bawat site.)
Ang pag-click sa kaliwa sa isang susi ay ginagaya ang a Keypress kaganapan. Ang pagbitaw ng buton ay nagsa-simulate ng a
KeyRelease kaganapan. Kung nag-click ka pakaliwa sa isang key at igalaw ang mouse habang nakababa ang button,
Keypress at KeyRelease Ang mga kaganapan ay gagayahin sa bawat key na ililipat mo ng mouse.
Isipin ang mouse bilang iyong daliri: kung i-drag mo ang mouse sa maraming key, pupunta sila
pababa at pataas.
Ang pag-click sa kaliwa sa isang key na nauugnay sa mga modifier bits (gaya ng Shift o Control)
nagiging sanhi ng ``lock'' na susi pababa. Ang pag-click sa kaliwa muli ay naglalabas ng susi. Sa ganitong paraan, ikaw
maaaring makabuo ng mga key-chord gamit ang mouse: upang makabuo Control-C, i-click ang kaliwa sa Kontrolin
susi, at pagkatapos ay mag-click sa C susi. Mag-click sa Kontrolin muli upang i-on ang control modifier
off.
Pag-type ng susi sa tunay keyboard simulates a Keypress/KeyRelease pares ng kaganapan sa parehong
paraan na ginagawa ng pag-click sa isang key.
Maaari mo ring pagsamahin ang input ng mouse at keyboard: halimbawa, kung gagamitin mo ang mouse upang pumili
ang Ilipat key, at mag-type ng character, ang event na ginagaya ay magkakaroon ng Ilipat
set ng modifier. At kung pipigilan mo ang tunay Kontrolin key, at i-click ang C susi sa
bintana, a Control-C mabubuo ang kaganapan. (Ipagpalagay, iyon ay, na ang iyong window manager
ay hindi humarang sa control-left-button para sa sarili nitong mga layunin.)
Ang pag-click sa kanan sa isang key ay nagpa-pop up ng isang menu ng mga command para sa ibinigay na key. Sila ay:
Palitan Keys
Pagkatapos piliin ang item na ito sa menu, hihilingin sa iyong mag-click sa isa pang key. Yung susi at
ang susi kung saan mo dinala ang menu ay ipapalit. Binabago nito ang keyboard
pagmamapa kaagad.
Kopyahin Key
Pagkatapos piliin ang item na ito sa menu, hihilingin sa iyong mag-click sa isa pang key. Ang susi na iyon ay
gawing kopya ng susi kung saan mo dinala ang menu. Iyon ay, ang dalawang susi
bubuo ng parehong hanay ng mga keysym at modifier. Binabago nito ang keyboard
pagmamapa kaagad.
Huwag paganahin ang Key
Ang susi kung saan mo inilabas ang menu ay gagawin upang bumuo ng walang keysyms at hindi
mga modifier. Binabago nito kaagad ang keyboard mapping.
Ibalik ang Key Upang default
Ang susi kung saan mo inilabas ang menu ay maibabalik sa default na estado nito; hindi
iba pang susi ay babaguhin. Talagang binabago nito ang kasalukuyang pagmamapa ng keyboard.
Patnugutan KeySyms of Key
Ito ay nagpa-pop up sa "Edit Key" na window, na nagbibigay-daan sa iyong arbitraryong baguhin kung alin
keysyms at modifier na nabuo ng key na ito.
Sa kaliwang bahagi ng window ay ang listahan ng mga keysyms na kasalukuyang key na ito
bumubuo. (Ang isang susi ay maaaring makabuo ng hanggang walong keysyms; ang interpretasyon ng mga ito
keysyms ay inilarawan sa X protocol na dokumento, at ay summarized mamaya sa
KEYSYMS AT MGA KEYCODE seksyon ng man page na ito.)
Ang pangalawang column ay isang multiple-choice na listahan ng walong modifier bits na ang key na ito
maaaring makabuo. Halimbawa, kung gusto mong kumilos bilang ``control'' key ang isang key, ikaw
dapat piliin ang Kontrolin modifier
Ang ikatlo at ikaapat na column (ang mga scrolling list) ay para sa pagpapalit ng keysym
nauugnay sa susi. Kapag pumili ka ng keysym-position mula sa unang column, ang
character set at keysym ay ipapakita sa mga scrolling list. Ang pag-click sa a
keysym sa column na ``KeySym'' ay i-install ang keysym na iyon sa naka-highlight na slot sa
ang unang hanay.
Upang pumili ng keysym mula sa ibang set ng character, mag-click sa pangalan ng set ng character
ang pangalawang hanay. (Ang Latin1 at Keyboard ang mga set ng character ay ang pinakakaraniwan
ginamit.)
Sa ibaba ng window ay may tatlong mga pindutan: Magpawalang-saysay, pagkalaglag, at Ok. Ang pag-click sa Magpawalang-saysay
ibinabalik ang Edit Key window sa kasalukuyang estado ng key na pinag-uusapan. pagkalaglag magsasara
ang Edit Key na window nang hindi gumagawa ng anumang mga pagbabago. Ok isinasara ang Edit Key window at
ini-install ang iyong mga pagbabago (ang kasalukuyang pagmamapa ng keyboard ay binago.)
KEYSYMS AT MGA KEYCODE
Upang epektibong ma-edit ang iyong keyboard mapping, may ilang termino na kailangan mong maging pamilyar
na may:
KeyCode Ito ay isang raw scan-code na binabasa mula sa keyboard; bawat pisikal na susi sa
Ang keyboard ay may ibang numero na nauugnay dito; ang pagmamapa na ito ay hindi maaaring
nagbago (pero ok lang.)
Sa pangkalahatan, ang bawat keyboard ay may sariling hanay ng mga KeyCode, kaya naman gagawin mo ito
marahil ay kailangang magkaroon ng ibang keymap para sa bawat system na iyong ginagamit.
KeySym Ito ay isang simbolo na maaaring mabuo sa pamamagitan ng isang pindutin ng isang key sa
keyboard: halimbawa, lahat ng letra, numero, at bantas ay keysyms, at iba pa
ay mas abstract na mga bagay tulad ng ``shift'' at ``control''.
Ang bawat KeyCode (iyon ay, key sa keyboard) ay nauugnay sa ilang partikular na KeySyms.
Ang KeySyms ay kung ano ang nagbibigay sa mga susi ng kanilang mga semantika (at gumagawa ng A key
isang A), hindi ang KeyCodes.
Karaniwan ang mga key ay nauugnay sa isa o dalawang keysyms, na tumutugma sa
mga simbolo na nabuo kapag pinindot ang key, at kapag pinindot ito habang ang
pinipigilan ang shift key. Mayroong isang espesyal na kaso, na kung ang susi
naglalaman lamang ng isang KeySym, at ito ay isang titik, pagkatapos ay ang Shift key ang gumagawa ng
halatang bagay na ginagawa ng isa sa mga titik.
KeyCap Hindi dapat malito sa KeySyms, ito ay tumutukoy sa teksto na naka-print sa
mga pisikal na key: ito ay hindi nababago (maliban kung ipininta mong muli ang iyong keyboard...)
Chord Ang terminong ito ay tumutukoy sa isang hanay ng dalawa o higit pang mga susi nang sabay-sabay na pinipigilan (ni
pagkakatulad sa mga keyboard ng piano.) Lahat maliban sa isa sa mga susi ay karaniwang
Mga Susi ng Modifier. Minsan konstelasyon ay ginagamit upang mangahulugan ng parehong bagay.
Baguhin Key
Ito ay isang susi tulad ng shift o kontrol, na ginagamit upang baguhin ang interpretasyon
ng iba pang mga susi na sabay na pinipigilan. Sa pangkalahatan, ang pagpindot sa a
modifier key nang hindi rin pinindot ang isang non-modifier key ay walang magagawa.
Ang isang key ay isang modifier key kung ito ay may isang Modifier KeySym dito. (Higit na partikular,
kung ang KeyCode ng key na iyon ay nauugnay sa isang Modifier KeySym.)
Baguhin KeySym
Ang KeySym ay isang modifier keysym kung mayroon itong Modifier Bit na nauugnay dito. pero,
ang mga patakaran ay medyo mas kumplikado kaysa doon. Ito ay mas madaling ilarawan sa pamamagitan ng
halimbawa:
Para kumilos ang isang susi gaya ng inaasahan ng isang shift key na kumilos, dapat ang keycode
itakda ang Shift modifier bit; at ang susi ay dapat bumuo ng isa sa mga keysym
Shift_L at Shift_R. Kung ang alinman sa mga ito ay hindi totoo, ang susi ay hindi gagana bilang
isang shift key.
Katulad nito, ang isang control key ay dapat na mayroong Control modifier set, at gumamit ng isa sa
ang mga keysyms Control_L o Control_R.
Ipinahihiwatig nito na kung gusto mong palitan ang iyong shift at control key, gagawin nito
hindi sapat para ipagpalit lang ang kanilang mga modifier bits: dapat mong palitan ang kanilang mga keysyms bilang
mabuti. Kung papalitan mo lang ang mga bit ng modifier, maaaring mukhang gumagana ito sa una, ngunit
iba pang mga bagay ay hindi gumagana.
Ang mga key tulad ng Meta (at Super, Hyper, atbp.) ay medyo mas kumplikado (tingnan sa ibaba.)
Baguhin kaunti
Ang mga modifier bit ay mga katangian na maaaring magkaroon ng ilang partikular na keysym. Ilang modifier bits
may mga paunang natukoy na semantika: Shift, Lock, at Control. Ang natitirang modifier
bits (Mod1 hanggang Mod5) ay may mga semantika na tinutukoy ng mga key kung saan
sila ay nauugnay.
Ibig sabihin, ang Control modifier ay nangangahulugan ng Control kung ito ay naka-attach sa Control_L o
Control_R, at ilegal sa ibang lugar.
Ngunit ang ibig sabihin ng Mod1 ay Meta kung ito ay nakakabit sa Meta_L o Meta_R; ngunit ito ay nangangahulugan na Alt
kung ito ay naka-attach sa Alt_L o Alt_R; o Hyper na may Hyper_L o Hyper_R; at kaya
sa. (Gayunpaman, hindi ito maaaring ikabit sa Control_L, dahil ang Control
nagsalita na ang modifier para sa mga keysym na iyon.)
Kung iniisip mo na ang lahat ng ito ay walang katuturang kumplikado... tama ka.
X PROTOKOL DOKUMENTO ON KEYMAPS
Ang sumusunod ay isang mas tumpak na teknikal na paliwanag kung paano gumagana ang keymapping. Ito
ang paglalarawan ay mula sa dokumentong X Protocol, at muling na-print dito para sa iyong kaginhawaan:
Ang isang listahan ng KeySyms ay nauugnay sa bawat KeyCode. Kung ang listahang iyon (hindi pinapansin ang trailing
Walang Simbolo entries) ay isang solong KeySym ``K'', kung gayon ang listahan ay ituturing na parang ito ang
listahan ``K Walang Simbolo K Walang Simbolo''. Kung ang listahan (hindi pinapansin ang trailing Walang Simbolo mga entry) ay a
pares ng KeySyms ``K1 K2'', pagkatapos ay ituturing ang listahan na parang ito ang listahan ``K1 K2 K1
K2''. Kung ang listahan (hindi pinapansin ang trailing Walang Simbolo entries) ay isang triple ng KeySyms ``K1 K2
K3'', pagkatapos ay ituturing ang listahan na parang ito ang listahan ``K1 K2 K3 Walang Simbolo''.
Ang unang apat na elemento ng listahan ay nahahati sa dalawang grupo ng KeySyms. Pangkat 1
naglalaman ng una at pangalawang KeySyms, ang Group 2 ay naglalaman ng ikatlo at ikaapat na KeySyms.
Sa loob ng bawat pangkat, kung ang pangalawang elemento ng pangkat ay Walang Simbolo, pagkatapos ay ang grupo
dapat ituring na parang ang pangalawang elemento ay kapareho ng unang elemento, maliban
kapag ang unang elemento ay isang alpabetikong KeySym ``K'' kung saan parehong maliit at
ang mga uppercase na form ay tinukoy. Sa kasong iyon, ang grupo ay dapat tratuhin na parang ang
ang unang elemento ay ang lowercase na anyo ng ``K'' at ang pangalawang elemento ay ang
uppercase na anyo ng ``K''.
Ang mga karaniwang tuntunin para sa pagkuha ng isang KeySym mula sa isang kaganapan ng KeyPress ay gumagamit lamang ng
Pangkat 1 at Pangkat 2 KeySyms; walang ibinigay na interpretasyon ng iba pang KeySyms sa listahan
dito. (Iyon ay, ang huling apat na KeySyms ay hindi ginagamit.)
Aling pangkat ang gagamitin ay tinutukoy ng estado ng modifier. Ang paglipat sa pagitan ng mga grupo ay
kinokontrol ng KeySym na pinangalanan Mode_switch.
Sa pamamagitan ng paglakip sa KeySym na iyon sa ilang KeyCode at paglakip sa KeyCode na iyon sa alinman sa
nagbabago mod1 sa pamamagitan ng mod5. Ang modifier na ito ay tinatawag na ``group modifier''. Para sa anumang
KeyCode, Group 1 ay ginagamit kapag ang group modifier ay naka-off, at Group 2 ay ginagamit kapag ang
naka-on ang modifier ng pangkat.
Sa loob ng isang pangkat, kung aling KeySym ang gagamitin ay tinutukoy din ng estado ng modifier. Ang una
Ginagamit ang KeySym kapag ang Ilipat at Ikandado naka-off ang mga modifier. Ginagamit ang pangalawang KeySym
kapag ang Ilipat naka-on ang modifier, o kapag ang Ikandado Naka-on ang modifier at ang pangalawang KeySym
ay uppercase na alpabeto, o kapag ang Ikandado naka-on ang modifier at binibigyang-kahulugan bilang
ShiftLock. Kung hindi, kapag ang Ikandado naka-on ang modifier at binibigyang-kahulugan bilang Capslock,
ang estado ng Ilipat Ang modifier ay unang inilapat upang pumili ng isang KeySym, ngunit kung iyon
Ang KeySym ay lowercase alphabetic, pagkatapos ay ang kaukulang uppercase na KeySym ay ginagamit
sa halip.
ICCCM ON ANG PALITAN ANG Pagma-map
Ang sumusunod ay isang mas tumpak na teknikal na paliwanag kung paano ang mga modifier key
binibigyang kahulugan. Ang paglalarawang ito ay mula sa Inter-Client Communications Conventions Manual,
at muling na-print dito para sa iyong kaginhawaan:
Sinusuportahan ng X11 ang 8 modifier bits, kung saan ang 3 ay paunang nakatalaga sa Ilipat, Ikandado at Kontrolin.
Ang bawat modifier bit ay kinokontrol ng estado ng isang set ng mga key, at ang mga set na ito ay
tinukoy sa isang talahanayan na na-access ni GetModifierMapping() at SetModifierMapping().
Ang isang kliyente na kailangang gumamit ng isa sa mga paunang itinalagang modifier ay dapat ipagpalagay na ang
Ang talahanayan ng modifier ay nai-set up nang tama upang makontrol ang mga modifier na ito. Ang Ikandado
ang modifier ay dapat bigyang kahulugan bilang Caps Ikandado or Ilipat Ikandado ayon sa mga keycode sa
kasama sa controlling set nito XK_Caps_Lock or XK_Shift_Lock.
Dapat matukoy ng mga kliyente ang kahulugan ng isang bit ng modifier mula sa mga keysyms na ginagamit
kontrolin ito.
Isang kliyente na nangangailangang gumamit ng dagdag na modifier, halimbawa meta, dapat:
I-scan ang mga kasalukuyang modifier mappings. Kung nakahanap ito ng modifier na naglalaman ng keycode
na kinabibilangan ng hanay ng mga keysym XK_Meta_L or XK_Meta_R, dapat nitong gamitin ang modifier na iyon
bit.
Kung walang umiiral na modifier na kinokontrol ng XK_Meta_L or XK_Meta_R, dapat
pumili ng hindi nagamit na modifier bit (isa na may walang laman na hanay ng pagkontrol) at:
Kung mayroong keycode na may XL_Meta_L sa hanay ng mga keysyms nito, idagdag ang keycode na iyon sa
ang set para sa napiling modifier, pagkatapos
kung mayroong keycode na may XL_Meta_R sa hanay ng mga keysyms nito, idagdag ang keycode na iyon sa
ang set para sa napiling modifier, pagkatapos
kung wala pa ring laman ang controlling set, makipag-ugnayan sa user para pumili ng isa o
higit pang mga susi upang maging meta.
Kung walang hindi nagamit na modifier bits, hilingin sa user na gumawa ng corrective action.
Ang nasa itaas ay nangangahulugan na ang mod1 hindi nangangahulugang ibig sabihin ng modifier meta, bagaman ang ilan
mga aplikasyon (tulad ng TWM at emacs 18) ipagpalagay na. Alinman sa limang hindi nakatalagang modifier
Ang mga bit ay maaaring mangahulugan ng Meta; ang mahalaga ay ang isang modifier bit ay nabuo ng isang keycode na kung saan
ay nakatali sa keysym Meta_L or Meta_R.
Samakatuwid, kung gusto mong gumawa ng ``meta'' key, ang tamang paraan ay ang pagpasok ng keycode
tanong bumuo ng pareho a meta keysym, at ilang dating hindi nakatalagang modifier bit.
ANG MODE_SWITCH KEYSYM
Kung sakaling hindi magkaroon ng kahulugan ang nasa itaas, what the Mode_switch Ang keysym ay, karaniwang, kumilos
bilang karagdagang uri ng shift key. Kung mayroon kang apat na keysyms na naka-attach sa A key, kung gayon
ang apat na keysym na iyon ay maa-access ng mga chords: A; Shift-A, Mode_Switch-A; at
Mode_Switch-Shift-A, ayon sa pagkakabanggit.
Tulad ng anumang Modifier Key, para gumana ang Mode_switch, dapat itong may kalakip na modifier bit
dito. Kaya, pumili ng isa sa mga bit na Mod1 hanggang Mod5 (alinman ang hindi nagamit) at ilakip iyon
sa Mode_switch key.
ANG MULTI_KEY KEYSYM
Hindi dapat malito sa Mode_switch, Multi_key nagbibigay-daan sa input ng maramihang mga character
mga sequence na kumakatawan sa isang character (keysym.) Isang mas tradisyonal na pangalan para dito
maaaring naging keysym Sumulat.
Ang Multi_key keysym ay hindi isang modifier keysym. Ibig sabihin, para gumana ito ng maayos, ito
hindi dapat magkaroon ng anumang mga modifier bit na nauugnay dito. Ito ay dahil hindi ito a
``chording'' key: hindi mo ito pinipigilan kasama ng iba pang mga key. Sa halip, pindutin mo
Multi_key, pagkatapos ay bitawan ito, pagkatapos ay pindutin at bitawan ang isa pang key, at ang dalawa ay magbubunga
isang bagong karakter.
Halimbawa, ang isang tradisyonal na pagbubuklod ay para sa Multi_key, na sinusundan ng single-quote,
sinundan ng A upang makabuo ng Aacute keysym.
Hindi lahat ng vendor ay sumusuporta sa paggamit ng Multi_key keysym; sa partikular, Digital, Sun, at
Sinusuportahan ito ng HP, ngunit ang X Consortium ay hindi. (Ang dahilan nito, sinabi sa akin, ay iyon
Itinuturing na lipas na ang mga sequence ng ``Bumuo'; ang linya ng partido ay dapat mong gamitin
Mga Paraan ng Pag-input para gawin ito.)
Kung gumagana ang Multi_key ay isang pag-aari ng Xt library (hindi ang X server) kaya ito
posible na sa isang sistema, maaaring gumana ang Multi_key sa ilang mga application at hindi
iba pa (depende sa kung paano pinagsama-sama at na-link ang mga application na iyon.)
Kung gumagamit ka ng Lucid Emacs o XEmacs, maaari mong samantalahin ang mga Multi_key sequence kahit na
kung hindi ito sinusuportahan ng iyong bersyon ng Xt, sa pamamagitan ng paglo-load ng x-compose aklatan, na
ginagaya ang tradisyonal na gawi ng Xt. Para sa higit pang impormasyon, basahin ang komentaryo sa itaas ng
ang file na "/usr/local/lib/xemacs-*/lisp/x11/x-compose.el".
PATAY KEYSYMS
Ang mga patay na key ay gumagana nang katulad ng Multi_key, ngunit ang mga ito ay dalawang-keystroke na utos sa halip na tatlo.
Halimbawa, ang pagpindot sa Dead_tilde key, ilalabas ito, pagkatapos ay pinindot ang A susi ay
bumuo ng nag-iisang keysym Atilde. (Tinatawag silang ``dead'' keys dahil hindi nila ginagawa, ni
kanilang sarili, magpasok ng mga character, ngunit sa halip ay baguhin ang sumusunod na character na na-type. Pero HP
gustong tawagin silang ``mute'' sa halip na ``patay,'' walang duda upang maiwasang takutin ang
mga bata.)
Muli, hindi ito sinusuportahan ng lahat ng bersyon ng Xt library (ngunit maaaring gayahin ng
XEmacs.)
Tandaan din na ang iba't ibang mga vendor ay may iba't ibang mga pangalan para sa mga patay na keysyms. Halimbawa:
depende sa iyong vendor, bersyon ng X server, at sa yugto ng buwan, maaari mong makita iyon
ang pangalan ng ``dead-tilde'' ay Dead_Tilde, Dtilde, SunFA_Tilde, SunXK_FA_Tilde, DXK_tilde,
DXK_tilde_accent, hpmute_asciitilde, hpXK_mute_asciitilde, o kahit XK_mute_asciitilde.
Ang gulo! Kailangan mo lang itong subukan at makita kung ano ang gumagana, kung mayroon man.
MGA BAGAY KA HINDI PWEDE DO
Ang mga tao ay madalas na nagtatanong kung ang xkeycaps o xmodmap ay maaaring gamitin upang gumawa ng isang key na bumuo ng isang sequence ng
mga karakter. Sa kasamaang palad, hindi: hindi mo magagawa ang ganitong uri ng bagay sa pamamagitan ng pagmamanipula sa
mga keymap ng server. Ang modelo ng X keyboard ay hindi gumagana sa ganoong paraan.
Ang paraan upang gawin ang mga ganoong bagay ay ang magtakda ng mga mapagkukunan ng pagsasalin sa mga partikular na widget. Mayroon itong
na gagawin sa isang application-by-application na batayan. Halimbawa, ganito ang gagawin mo
kumbinsihin xterm(1) upang ipasok ang string susunod kapag pinindot mo ang F17:
xterm*VT100.Translations: #override \
F17: string("susunod")
Ang iba pang mga application ay maaaring may iba't ibang mekanismo para magawa ang parehong bagay, at
maaaring hindi ito sinusuportahan ng ilang application. Suriin ang mga nauugnay na man page para sa
mga detalye.
Gayundin, hindi mo makumbinsi ang isang key na bumuo ng isa pang key na may mga modifier (halimbawa,
hindi mo maaaring gawing Ctrl-A ang F1 maliban sa paggamit ng mga pagsasalin, tulad ng nasa itaas.)
Hindi rin posible na gawing isang pindutan ng mouse ang key ng keyboard.
TALUNAN VENDORS
Parehong ipinapadala ng HP at SuSE ang kanilang mga system na may mga sirang setting ng keyboard bilang default. sila
dapat talagang mas nakakaalam, ngunit hindi nila alam.
Tulad ng ipinaliwanag sa itaas, ito ay hindi naipalilawanag pag-uugali para sa isang modifier bit na ibabahagi sa pagitan ng dalawa
mga susi na may magkakaibang semantika.
Bilang default, ginagamit ng HP mod1 para sa parehong meta at Mode_switch. Nangangahulugan ito na imposible
para sa isang programa na sabihin ang pagkakaiba sa pagitan ng, halimbawa, Meta-X at Mode_switch-X.
Kaya, para maayos ang gulo na ito, kailangan mong bigyan ang Mode_switch key ng ibang modifier bit
(mode2, halimbawa.) O, maaari mo lamang itong alisin sa keymap nang buo.
Ang SuSE Linux ay mas sira pa kaysa sa HP: samantalang ang default na keymap ng HP ay naglalaman lamang
isang bug, ang default na mapa ng SuSE ay naglalaman ng tatlong ganap na magkakaibang mga error!
Una, ang kanilang default na keymap ay mayroong Kontrolin modifier na nakakabit sa parehong Kontrolin susi at
ang Multi_key. Ito ay ganap na baliw, dahil hindi lamang Multi_key hindi isang control key,
hindi man lang a chording susi! Dapat ay wala itong anumang modifier bits na nakakabit dito.
Pangalawa, nakakabit sila mod1 sa Meta_L at din sa Alt_R. Iniisip ng ilang tao na ``meta'' at
Ang ``alt'' ay kasingkahulugan, ngunit ang katotohanan ay hindi sumasang-ayon ang X Window System. Ang mga iyon ay
natatanging mga susi. Posibleng magkaroon ng parehong ``meta'' at ``alt'' key sa keyboard sa
sa parehong oras, at magkaroon ng mga programa na bigyang-kahulugan ang mga ito nang malinaw. Pero syempre kung sila lang
huwag magbahagi ng parehong bit ng modifier, na ginagawang ang interpretasyon ng bit na iyon
malabo.
Pangatlo, nakakabit sila mod5 Sa pareho Scroll_Lock at upang Hyper_R, na mali sa mga dahilan
dapat sa ngayon ay halata na.
Ang pinakamadaling paraan upang ayusin ang iyong configuration ng SuSE ay ang: alisin kontrol mula Multi_key;
baguhin ang kaliwang Alt key para makabuo Alt_L sa halip ng Meta_L; at tanggalin ang Hyper_R keysym
mula sa keyboard.
Kung mayroon kang anumang paghila sa mga vendor na ito, hinihikayat ko silang hikayatin silang kunin ang mga ito
kumilos nang sama-sama.
X Kayamanan
XKeyCaps nauunawaan ang lahat ng pangunahing pangalan ng mapagkukunan at mga klase pati na rin ang:
*Keyboard.keyboard (klase Keyboard)
Aling keyboard ang ipapakita; ito ay katulad ng sa -keyboard opsyon sa command-line. Kung
hindi ito tinukoy, ang default na keyboard ay hinuhulaan, batay sa vendor ng server
string ng pagkakakilanlan.
*Keyboard.Keyboard.selectCursor (klase Panturo)
Ang cursor na gagamitin kapag pumipili ng key o window gamit ang mouse. Ang default ay ang
crosshair cursor.
*Keyboard.Key.highlight (klase likuran)
Ang kulay na gagamitin upang i-highlight ang isang key kapag ito ay depress. Kung ito ay katulad ng sa
kulay ng background ng susi, ito ay naka-highlight sa halip na may pattern ng stipple.
*Keyboard.Key.keycapColor (klase harapan)
Ang kulay para ipinta ang keycap string.
*Keyboard.Key.keycodeColor (klase harapan)
Ang kulay upang ipinta ang numero ng keycode.
*Keyboard.Key.borderColor (klase kulay)
Ang kulay ng kahon sa paligid ng bawat susi.
*Keyboard.Key.keycapFont (klase Font)
Ang font na gagamitin sa pagguhit ng keycap string.
*Keyboard.Key.keycodeFont (klase Font)
Ang font na gagamitin upang iguhit ang numero ng keycode.
*Keyboard.Key.borderWidth (klase Int)
Ang kapal ng kahon sa paligid ng bawat susi.
*Keyboard.Key.gutterWidth (klase Int)
Ilang pixel ang maiiwan sa pagitan ng key na ito at sa magkatabi nito sa kanan at ibaba.
Ang klase ng bawat key widget ay ``Key,'' gaya ng nakikita mo sa itaas. Ang pangalan ng bawat susi ay ang
(mga) string na naka-print sa mukha nito. Kaya kung gusto mo (halimbawa) ang Ilipat mga susi upang magkaroon
mas malawak na mga hangganan, maaari mong tukuyin iyon gamit ang
xkeycaps*Keyboard.Shift.borderWidth: 2
MGA PAGKILOS
Posibleng i-rebind ang mga aksyon na nangyayari kapag pinindot ang key o mouse button o
pinakawalan. Ang mga pagkilos na ito ay magagamit sa Keyboard widget:
HighlightKey(kalagayan, arg)
Inilalagay nito ang susi na pinag-uusapan sa naka-highlight na estado.
Kung hindi argumento ay ipinasa sa pagkilos na ito, pagkatapos ay ang susi ay tinutukoy ng kaganapan kung saan
hinihikayat ang pagkilos na ito. Kung ang aksyon na ito ay hinihimok ng a Keypress or KeyRelease kaganapan, ang
Ang key-widget ay ang susi na naaayon sa susi na kinakatawan ng kaganapan. Kung ito ay a
Pindutin ang Pindutan, ButtonRelease, O PointerMotion kaganapan, pagkatapos ay ang key-widget ay ang isa
sa ilalim ng mouse.
Ang argumento maaaring isa sa mga salita mouse, naka-highlight, O ipinapakita, ibig sabihin ang susi
sa ilalim ng mouse, ang susi na pinakahuling naka-highlight, o ang susi sa kasalukuyan
inilarawan sa lugar na ``Impormasyon'' sa tuktok ng window, ayon sa pagkakabanggit.
Ang kalagayan maaaring isa sa mga salita ifmod, unlessmod, iftracking, maliban kung sinusubaybayan,
kung naka-highlight, O maliban kung naka-highlight. Kung ifmod ay tinukoy at ang susi na pinag-uusapan
(tulad ng tinutukoy ng argumento o sa pamamagitan ng invoking event) ay hindi isang modifier key, kung gayon
ang aksyon na ito ay hindi naisakatuparan. Ang unlessmod kabaligtaran ang kundisyon. Ang iftracking
at maliban kung sinusubaybayan pinapayagan ka ng mga kundisyon na gumawa ng ilang aksyon kung (o maliban kung) ang susi
ay `` sinusubaybayan '' gamit ang mouse (tingnan sa ibaba.) Ang kung naka-highlight at
maliban kung naka-highlight Binibigyang-daan ka ng mga aksyon na gawin ang ilang bagay kung (o maliban kung) ang susi
tanong ay kasalukuyang nasa naka-highlight na estado.
UnhighlightKey(kalagayan, arg)
Inilalagay nito ang susi na pinag-uusapan sa hindi naka-highlight na estado. Ang mga argumento ay tulad ng nasa itaas.
ToggleKey(kalagayan, arg)
Ginagawa nitong mai-highlight ang susi kung ito ay hindi naka-highlight, o hindi naka-highlight kung ito ay
naka-highlight. Ang mga argumento ay tulad ng nasa itaas.
SimulateKeyPress(kalagayan, arg)
Ang pagkilos na ito ay gumagawa ng isang Keypress kaganapan na naaayon sa susi ay synthesize sa
focus window. Ang mga argumento ay tulad ng nasa itaas.
SimulateKeyRelease(kalagayan, arg)
Ang pagkilos na ito ay gumagawa ng isang KeyRelease kaganapan na naaayon sa susi ay synthesize sa
focus window. Ang mga argumento ay tulad ng nasa itaas.
TrackKey(kalagayan, arg)
Ginagawa nitong ``sinusubaybayan'' ang susi na pinag-uusapan, na nangangahulugang ang paglipat ng
mouse off dito ay gayahin ang isang button-release aksyon, at pagkatapos ay gayahin a
pindutan-pindutin ang aksyon sa key kung saan inilipat ng mouse. Ang pagkilos na ito ay maaari lamang
mahihingi mula sa a Pindutin ang Pindutan or ButtonRelease kaganapan.
UntrackKey(kalagayan, arg)
Dahil dito, hindi na masusubaybayan ang susi na pinag-uusapan.''
DescribeKey(kalagayan, arg)
Ang pagkilos na ito ay nagiging sanhi ng pagpapakita ng susi at ng mga binding nito sa seksyong ``Impormasyon' sa
tuktok ng window, kung hindi pa ito inilarawan doon.
Ang mga default na aksyon para sa Keyboard widget ay:
: DescribeKey(mouse, unlessTracking) \n\
\
: HighlightKey() \
DescribeKey(unlessMod) \
DescribeKey(ipinapakita) \
SimulateKeyPress() \n\
\
: UnhighlightKey() \
DescribeKey(ipinapakita) \
SimulateKeyRelease() \n\
\
: HighlightKey(unlessMod) \
ToggleKey(ifMod) \
TrackKey(unlessMod) \
SimulateKeyPress(ifHighlighted) \
SimulateKeyRelease(unlessHighlighted) \n\
\
: UntrackKey(naka-highlight) \
SimulateKeyRelease(naka-highlight, unlessMod) \
UnhighlightKey(naka-highlight, unlessMod) \n\
\
: XawPositionSimpleMenu(keyMenu) \
MenuPopup(keyMenu) \n
Kung ayaw mong mailarawan ang isang susi sa bawat oras na gumagalaw ang mouse sa ibabaw nito, maaari mong alisin
ang aksyon. Sa kasong iyon, dapat kang magdagdag DescribeKey() sa
at aksyon.
Kung gusto mong ilarawan ang susi sa ilalim ng mouse kahit na gumagalaw ang mouse na may a
button pababa, pagkatapos ay alisin ang maliban sa Pagsubaybay parameter mula sa DescribeKey aksyon na nakatali sa
.
Kung ayaw mong mag-toggle ang mga modifier key, palitan ang Pindutan1 mga aksyon sa
xkeycaps*Keyboard.actions: #override \
: HighlightKey() \
TrackKey(unlessmod) \
SimulateKeyPress() \n\
: UntrackKey(naka-highlight) \
SimulateKeyRelease(highlight) \
UnhighlightKey(naka-highlight) \n
Tandaan na ang mga pagkilos na ito ay umiiral sa Keyboard widget, wala sa Key mga widget. kung ikaw
magdagdag ng mga aksyon sa Key widgets, ang mga bagay ay hindi gumagana.
Kapaligiran
DISPLAY
para makuha ang default na host at display number.
XENVIRONMENT
upang makuha ang pangalan ng isang resource file na nag-o-override sa mga pandaigdigang mapagkukunan na nakaimbak sa
RESOURCE_MANAGER property.
XKEYSYMDB
upang makuha ang lokasyon ng XKeysymDB file, na naglilista ng mga keysyms na partikular sa vendor.
Mga pag-upgrade
Ang pinakabagong bersyon ay palaging matatagpuan sa
http://ftp.debian.org/debian/pool/main/x/xkeycaps/
Gumamit ng xkeycaps online gamit ang mga serbisyo ng onworks.net