Aceasta este comanda xkeycaps care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS
PROGRAM:
NUME
xkeycaps - afișați și editați grafic maparea tastaturii X
REZUMAT
xkeycaps [-opțiunea trusei de instrumente ...] [-opțiune ...]
DESCRIERE
xkeycaps programul afișează o tastatură. Deplasarea mouse-ului peste o tastă descrie
keysyms și modificatori generați de cheia respectivă. Făcând clic stânga pe o tastă simulează o
Eveniment KeyPress. Făcând clic dreapta pe o tastă, apare un meniu de operațiuni, inclusiv a
comandă pentru a schimba simbolurile cheie pe care le generează cheia. Acest program este, în parte, a
front-end grafic pentru xmodmap(1).
OPŢIUNI
xkeycaps acceptă toate opțiunile setului de instrumente standard și, de asemenea, acceptă următoarele
opţiuni:
-tastatură nume-tastatură or -kbd nume-tastatură
Specifică tipul de tastatură de afișat. Există multe computere diferite
tastaturi din lume și xkeycaps trebuie să știți pe care îl folosiți pentru a
functioneaza corect. Lipsa majusculei nu contează atunci când specificați un nume de tastatură.
Dacă rulați pe ecranul consolei unui Sun sau HP, atunci xkeycaps voi
interogați hardware-ul tastaturii atașate direct pentru a determina ce tastatură sunteți
folosind. Dar dacă rulați de la distanță sau pe alt tip de mașină, atunci trebuie
specifica o tastatură cumva.
-Ajutor
Listează valorile recunoscute pentru -tastatură opțiune.
-latimea jgheabului număr or -gw număr
Specifică numărul de pixeli de spațiu de lăsat între fiecare tastă.
-font fontname
Specifică fontul de utilizat pentru afișarea tastaturilor.
Următoarele argumente standard ale liniei de comandă X Toolkit sunt utilizate în mod obișnuit cu xkeycaps:
-afişa gazdă:dpy
Această opțiune specifică serverul X de contactat.
-geometrie geometrie
Această opțiune specifică dimensiunea și poziția preferată a ferestrei.
- ro culoare
Această opțiune specifică culoarea de utilizat pentru fundalul ferestrei. Implicit
este gri deschis.
-fg culoare
Această opțiune specifică culoarea de utilizat pentru primul plan al ferestrei. Implicit
este negru.
-bw număr
Această opțiune specifică lățimea în pixeli a chenarului din jurul ferestrei.
-xrm sir de resurse
Această opțiune specifică un șir de resurse care trebuie utilizat. Acest lucru este util în special pentru
setarea resurselor care nu au opțiuni separate pentru linia de comandă.
DISPLAY
Partea de jos a ferestrei este un desen al unei tastaturi. În partea stângă sus a fiecărei taste se află
a imprimat șirul care apare de fapt pe suprafața cheii. În dreapta jos
al cheii este codul cheie (hexazecimal) pe care îl generează această cheie.
În partea de sus a ecranului sunt câteva rânduri de text care descriu tasta de sub mouse (sau
cea mai recentă cheie introdusă.) Aceste rânduri sunt:
Cod cheie: Aceasta afișează textul imprimat pe cheia fizică și codul cheie generat
prin acea cheie în hex, zecimal și octal.
KeySym: Aceasta afișează setul de KeySyms pe care această cheie le generează în prezent.
ASCII: Aceasta afișează echivalentul ASCII al acestei chei, ținând cont de
tastele modificatoare curente care sunt în jos.
Modificatori: aceasta afișează biții modificatori pe care îi generează această cheie. Dacă o cheie generează
modificatori, este o cheie de acord Schimba or Mod de control:.
AutoRepeat: Dacă serverul X susține că această cheie se repetă automat. Eu spun ``creanțe''
pentru că serverul OpenWindows X este singurul pe care l-am întâlnit pentru care
aceste informații sunt corecte. Indicatorul de autorepetare per tastă pare să fie aproape-
universal ignorate.
COMANDE
Există mai multe butoane în colțul din stânga sus al ferestrei. Sunt:
Părăsi
Iese din program.
Selectați Tastatură
Apare o casetă de dialog din care puteți schimba tastatura afișată. Stanga
coloana listează tipurile cunoscute de tastaturi, iar coloana din dreapta listează cele cunoscute
layout-urile (mapările) acelor tastaturi.
Tip At Fereastră
După ce ați selectat aceasta, vi se cere să faceți clic pe altă fereastră. După ce a făcut asta,
făcând clic pe tastele de pe afișajul tastaturii va simula evenimentele cheie din fereastra dvs
selectat. Selectând fereastra rădăcină sau xkeycaps fereastra dezactivează acest lucru.
Dacă utilizați un manager de ferestre (de exemplu, twm(1)) în care puteți bloca
focalizați tastatura pe o fereastră și faceți clic în continuare pe alte ferestre fără a avea focalizarea
schimbare, atunci puteți realiza același lucru doar concentrându-vă pe o altă fereastră
și făcând clic pe tastele din xkeycaps fereastră.
Restabili Mod implicit Hartă
Această comandă restabilește tastatura la starea implicită. Dacă executați această comandă
în timp ce afișați o tastatură care nu este tipul de tastatură pe care îl utilizați cu adevărat,
Harta tastaturii va fi într-o stare fără sens. Nu există nicio cale de xkeycaps a spune ce
tastatura pe care o utilizați, cu excepția faptului că vă credeți pe cuvânt, așa că nu minți.
Scrie producție
Această comandă scrie un xmodmap fişier de intrare reprezentând starea curentă a
tastatură (inclusiv toate modificările dvs.) într-un fișier din directorul dvs. de pornire. Rețineți că
această comandă NU scrie harta tastaturii implicite pentru acest tip de tastatură decât dacă dvs
ați făcut clic pe Restaurare hartă implicită înainte.
Fișierul va fi apelat .xmodmap-nume de gazdă, În cazul în care nume de gazdă este numele mașinii
mai alergi. Vă va avertiza dacă fișierul există deja.
Vă solicită o casetă de dialog: puteți fie să scrieți un xmodmap dosar reprezentând
starea fiecărei chei, sau puteți scrie un fișier mai mic care descrie numai
schimbări.
Ideea este că în scriptul de pornire adecvat, ați adăuga o linie de genul
xmodmap /.xmodmap-`uname -n`
în fișierul init corespunzător, astfel încât acele modificări ale tastaturii să fie făcute de fiecare dată
vă conectați. (Dacă nu sunteți sigur unde ar trebui să meargă această comandă, întrebați sistemul dvs
administrator, deoarece aceasta tinde să varieze de la un site la altul.)
Făcând clic stânga pe o tastă simulează o Apăsați tasta eveniment. Eliberarea butonului simulează a
KeyRelease eveniment. Dacă faceți clic stânga pe o tastă și mutați mouse-ul în timp ce butonul este apăsat,
Apăsați tasta și KeyRelease evenimentele vor fi simulate pe fiecare tastă pe care treceți mouse-ul.
Gândiți-vă la mouse ca la degetul dvs.: dacă glisați mouse-ul peste mai multe taste, acestea vor merge
în jos și în sus pe rând.
Făcând clic stânga pe o tastă care este asociată cu biți modificatori (cum ar fi Shift sau Control)
face ca cheia să se „blocheze”. Făcând clic la stânga din nou, se eliberează tasta. În acest fel, tu
poate genera acorduri-cheie cu mouse-ul: a genera Control-C, faceți clic stânga pe Mod de control:
, apoi faceți clic pe C cheie. Click pe Mod de control: din nou pentru a roti modificatorul de control
off.
Tastând o tastă pe real tastatura simulează a Apăsați tasta/KeyRelease pereche de evenimente în același
felul în care faceți clic pe o tastă.
De asemenea, puteți combina introducerea mouse-ului și a tastaturii: de exemplu, dacă utilizați mouse-ul pentru a selecta
il Schimba tasta și tastați un caracter, evenimentul care este simulat va avea Schimba
set modificator. Și dacă ții apăsat realul Mod de control: tasta și faceți clic pe C cheie în
fereastră, a Control-C evenimentul va fi generat. (Presupunând, adică, că managerul de ferestre
nu interceptează butonul control-stânga în scopuri proprii.)
Făcând clic dreapta pe o tastă, apare un meniu de comenzi pentru tasta dată. Sunt:
schimb Taste
După selectarea acestui element de meniu, vi se cere să faceți clic pe o altă tastă. Cheia aceea și
se va schimba cheia pe care ai adus meniul. Acest lucru schimbă tastatura
cartografierea imediată.
Duplicat Cheie
După selectarea acestui element de meniu, vi se cere să faceți clic pe o altă tastă. Acea cheie va
să fie făcută o copie a cheii pe care ai adus meniul. Adică cele două chei
va genera același set de keysyms și modificatori. Acest lucru schimbă tastatura
cartografierea imediată.
Dezactivați Cheie
Tasta pe care ați adus meniul va fi făcută să nu genereze keysyms și nu
modificatori. Acest lucru modifică imediat maparea tastaturii.
Restabili Cheie La Mod implicit
Tasta pe care ați deschis meniul va fi restabilită la starea sa implicită; Nu
cealaltă cheie va fi modificată. Acest lucru schimbă de fapt maparea curentă a tastaturii.
Editati KeySyms of Cheie
Aceasta apare fereastra „Editare cheie”, care vă permite să o schimbați în mod arbitrar
keysyms și modificatori generați de această cheie.
În partea stângă a ferestrei este lista keysym-urilor pe care această cheie în prezent
generează. (O cheie poate genera până la opt keysyms; interpretarea acestora
keysyms este descris în documentul protocolului X și este rezumat mai târziu în documentul
KEYSYMS AND CODURI CHEIE secțiunea acestei pagini de manual.)
A doua coloană este o listă cu alegere multiplă a celor opt biți modificatori ai acestei taste
poate genera. De exemplu, dacă doriți ca o cheie să se comporte ca o tastă „de control”, dvs
ar trebui să selecteze Mod de control: modificator.
A treia și a patra coloană (listele de defilare) sunt pentru schimbarea keysym
asociat cu cheia. Când selectați o poziție keysym din prima coloană,
setul de caractere și keysym vor fi afișate în listele derulante. Făcând clic pe a
keysym din coloana „KeySym” va instala acel keysym în slotul evidențiat din
prima coloană.
Pentru a selecta un keysym dintr-un set de caractere diferit, faceți clic pe numele setului de caractere din
a doua coloană. (Cel Latină1 și Tastatură seturile de caractere sunt cele mai frecvente
folosit.)
În partea de jos a ferestrei sunt trei butoane: Anula, avorta și Ok. Dând clic pe Anula
readuce fereastra Edit Key la starea curentă a cheii în cauză. avorta închide
fereastra Edit Key fără a face nicio modificare. Ok închide fereastra Edit Key și
instalează modificările dvs. (matarea curentă a tastaturii este modificată.)
KEYSYMS AND CODURI CHEIE
Pentru a edita eficient maparea tastaturii, există câțiva termeni pe care trebuie să-i cunoașteți
cu:
Cod cheie Acesta este un cod de scanare brut care este citit de la tastatură; fiecare cheie fizică de pe
tastatura are asociat un număr diferit; această cartografiere nu poate fi
schimbat (dar e ok.)
În general, fiecare tastatură are propriul său set de KeyCodes, motiv pentru care o veți face
probabil că trebuie să aveți o hartă de taste diferită pentru fiecare sistem pe care îl utilizați.
KeySym Acesta este un simbol care poate fi generat printr-o singură apăsare a unei taste de pe
tastatură: de exemplu, toate literele, numerele și semnele de punctuație sunt simboluri și așadar
sunt lucruri mai abstracte precum ``schimbarea'' și ``controlul''.
Fiecare KeyCode (adică tastă de pe tastatură) este asociată cu anumite KeySyms.
KeySym-urile sunt cele care dau cheilor semantica lor (și fac ca cheia A să genereze
un A), nu KeyCodes.
De obicei, cheile sunt asociate cu una sau două simboluri, care corespund cu
simboluri generate atunci când tasta este apăsată și când este apăsată în timp ce
tasta Shift este apăsată. Există un caz special, care este că dacă cheia
conține doar un KeySym și este o literă, apoi tasta Shift face
lucru evident pe care îl face cineva cu litere.
KeyCap A nu se confunda cu KeySyms, aceasta se referă la textul care este imprimat pe
taste fizice: este imuabilă (cu excepția cazului în care vă revopsiți tastatura...)
Coardă Acest termen se referă la un set de două sau mai multe taste ținute apăsate simultan (de
analogie cu clapele de pian.) Toate tastele, cu excepția uneia, vor fi în general
Taste modificatoare. Uneori Constelaţie este folosit pentru a însemna același lucru.
Modificatorul Cheie
Aceasta este o cheie precum schimbarea sau controlul, care este folosită pentru a modifica interpretarea
a altor taste care sunt ținute apăsate în același timp. În general, apăsând a
tasta modificatoare fără a apăsa și o tastă care nu este modificatoare nu face nimic.
O cheie este o cheie modificatoare dacă are un Modificator KeySym pe ea. (Mai exact,
dacă KeyCode al acelei chei este asociat cu un Modificator KeySym.)
Modificatorul KeySym
Un KeySym este un modificator keysym dacă are asociat un bit de modificare. Dar,
regulile sunt puțin mai complicate decât atât. Este mai ușor de descris prin
exemplu:
Pentru ca o tastă să se comporte așa cum se așteaptă ca o tastă Shift să se comporte, codul cheie ar trebui
au setat bitul modificator Shift; iar cheia ar trebui să genereze unul dintre keysyms
Shift_L și Shift_R. Dacă oricare dintre acestea nu este adevărată, cheia nu se va comporta ca
o tastă shift.
În mod analog, o tastă de control trebuie să aibă modificatorul de control setat și să folosească una dintre
simbolurile keysyms Control_L sau Control_R.
Acest lucru implică faptul că, dacă ați dori să schimbați tastele shift și control, ar fi
nu este suficient pentru a schimba pur și simplu biții lor modificatori: trebuie să schimbați simbolurile lor ca
bine. Dacă schimbați doar biții modificatori, poate părea că funcționează la început, dar
alte lucruri ar funcționa defectuos.
Taste precum Meta (și Super, Hyper etc.) sunt puțin mai complicate (vezi mai jos.)
Modificatorul Pic
Biții modificatori sunt atribute pe care anumite keysyms le pot avea. Unii biți modificatori
au o semantică predefinită: Shift, Lock și Control. Modificatorul rămas
biții (Mod1 prin Mod5) au semantică care este definită de tastele cu care
sunt asociate.
Adică, modificatorul Control înseamnă Control dacă este atașat la Control_L sau
Control_R și este ilegal în altă parte.
Dar Mod1 înseamnă Meta dacă este atașat la Meta_L sau Meta_R; dar ar însemna Alt
dacă a fost atașat la Alt_L sau Alt_R; sau Hyper cu Hyper_L sau Hyper_R; Așadar
pe. (Nu putea fi, totuși, atașat la Control_L, deoarece Control
modificatorul a vorbit deja pentru acele keysyms.)
Dacă te gândești că toate acestea sunt complicate fără sens... ai dreptate.
X PROTOCOL DOCUMENT ON HĂRȚI DE TASTE
Următoarea este o explicație tehnică mai precisă a modului în care funcționează maparea tastelor. Acest
descrierea este din documentul X Protocol și este retipărită aici pentru confortul dvs.:
Fiecare KeyCode este asociată cu o listă de KeySyms. Dacă acea listă (ignorând trailing
NoSymbol intrări) este un singur KeySym ``K'', atunci lista este tratată ca și cum ar fi
listă ``K NoSymbol K NoSymbol''. Dacă lista (ignorând trailing NoSymbol intrări) este a
pereche de KeySyms ``K1 K2'', atunci lista este tratată ca și cum ar fi lista ``K1 K2 K1
K2''. Dacă lista (ignorând trailing NoSymbol intrări) este un triplu KeySyms ``K1 K2
K3'', atunci lista este tratată ca și cum ar fi lista ``K1 K2 K3 NoSymbol''.
Primele patru elemente ale listei sunt împărțite în două grupuri de KeySyms. Grupa 1
conține primul și al doilea KeySyms, Grupul 2 conține al treilea și al patrulea KeySyms.
În cadrul fiecărui grup, dacă al doilea element al grupului este NoSymbol, apoi grupul
ar trebui tratat ca și cum al doilea element ar fi același cu primul element, cu excepția
când primul element este un KeySym ``K'' alfabetic pentru care atât litere mici cât și
sunt definite formele majuscule. În acest caz, grupul ar trebui tratat ca și cum ar fi
primul element a fost forma minusculă a lui ``K'', iar al doilea element a fost
forma majuscule a lui ``K''.
Regulile standard pentru obținerea unui KeySym dintr-un eveniment KeyPress folosesc numai
Grupul 1 și Grupul 2 KeySyms; nu se oferă nicio interpretare a altor KeySyms din listă
Aici. (Adică ultimele patru KeySyms sunt neutilizate.)
Ce grup de utilizat este determinat de starea modificatorului. Comutarea între grupuri este
controlat de KeySym numit Comutator mod.
Atașând acel KeySym la un KeyCode și atașând acel KeyCode la oricare dintre
modificatori mod1 prin mod5. Acest modificator se numește „modificator de grup”. Pentru orice
KeyCode, Grupul 1 este utilizat când modificatorul de grup este dezactivat, iar Grupul 2 este utilizat când
modificatorul de grup este activat.
În cadrul unui grup, ce KeySym să folosească este, de asemenea, determinată de starea modificatorului. Primul
KeySym este utilizat când Schimba și Blocare modificatorii sunt dezactivați. Este folosit al doilea KeySym
când Schimba modificatorul este activat sau când Blocare modificatorul este activat și al doilea KeySym
este alfabetic cu majuscule sau când Blocare modificatorul este activat și este interpretat ca
ShiftLock. În caz contrar, când Blocare modificatorul este activat și este interpretat ca CapsLock,
starea Schimba modificatorul este aplicat mai întâi pentru a selecta un KeySym, dar dacă asta
KeySym este alfabetic cu litere mici, apoi se folosește KeySym majuscule corespunzătoare
in schimb.
ICCCM ON THE SCHIMBARE CARTOGRAFIERE
Următoarea este o explicație tehnică mai precisă a modului în care sunt tastele modificatoare
interpretat. Această descriere este din manualul convențiilor de comunicații inter-clienți,
și este retipărit aici pentru confortul dvs.:
X11 acceptă 8 biți modificatori, dintre care 3 sunt prealocați Schimba, Blocare și Mod de control:.
Fiecare bit modificator este controlat de starea unui set de taste, iar aceste seturi sunt
specificate într-un tabel accesat de GetModifierMapping() și SetModifierMapping().
Un client care trebuie să utilizeze unul dintre modificatorii prealocați ar trebui să presupună că
Tabelul modificatorilor a fost configurat corect pentru a controla acești modificatori. The Blocare
modificatorul ar trebui interpretat ca Sepci Blocare or Schimba Blocare conform codurilor cheie din
setul său de control include XK_Caps_Lock or XK_Shift_Lock.
Clienții ar trebui să determine semnificația unui bit modificator din keysym-urile cu care sunt utilizate
controlează-l.
Un client care trebuie să folosească un modificator suplimentar, de exemplu meta, ar trebui să:
Scanați mapările modificatoare existente. Dacă găsește un modificator care conține un cod de cheie
al cărui set de keysyms include XK_Meta_L or XK_Meta_R, ar trebui să folosească acel modificator
biți.
Dacă nu există nici un modificator controlat de XK_Meta_L or XK_Meta_R, ar trebui
selectați un bit modificator neutilizat (unul cu un set de control gol) și:
Dacă există un cod de cheie cu XL_Meta_L în setul său de keysyms, adăugați acel cod cheie la
atunci setul pentru modificatorul ales
dacă există un cod de cheie cu XL_Meta_R în setul său de keysyms, adăugați acel cod cheie la
atunci setul pentru modificatorul ales
dacă setul de control este încă gol, interacționați cu utilizatorul pentru a selecta unul sau
mai multe chei pentru a fi meta.
Dacă nu există biți modificatori neutilizați, cereți utilizatorului să ia măsuri corective.
Cele de mai sus înseamnă că mod1 modificator nu înseamnă neapărat meta, deși unele
aplicații (cum ar fi twm și emacs 18) Asuma ca. Oricare dintre cei cinci modificatori nealocați
biți ar putea însemna Meta; ceea ce contează este că un bit modificator este generat de un cod de cheie care
este legat de keysym Metal or Meta_R.
Prin urmare, dacă doriți să creați o cheie ``meta'', modul corect este să introduceți codul cheie
întrebarea generează atât a meta keysym și un bit modificator nealocat anterior.
THE COMUTATOR MOD KEYSYM
În cazul în care cele de mai sus nu au sens, ce Comutator mod keysym face este, practic, act
ca un tip suplimentar de tastă Shift. Dacă aveți patru keysyms atașate tastei A, atunci
acele patru keysyms vor fi accesate de acordurile: A; Shift-A, Mode_Switch-A; și
Mode_Switch-Shift-A, respectiv.
Ca orice cheie modificatoare, pentru ca Mode_switch să funcționeze, trebuie să aibă atașat un bit modificator
la ea. Deci, selectați unul dintre biții de la Mod1 la Mod5 (oricare este neutilizat) și atașați-l
la tasta Mode_switch.
THE MULTI_KEY KEYSYM
A nu fi confundat cu Mode_switch, Multi_key permite introducerea mai multor caractere
secvențe care reprezintă un singur caracter (keysym.) Un nume mai tradițional pentru aceasta
ar fi putut fi keysym Compune.
Multi_key keysym este nu un modificator keysym. Adică pentru ca acesta să funcționeze corect, acesta
nu ar trebui să aibă niciun biți modificator asociați. Acest lucru se datorează faptului că nu este un
Tasta ``chording'': nu o țineți apăsată împreună cu alte taste. Mai degrabă, apăsați
Multi_key, apoi eliberați-o, apoi apăsați și eliberați o altă tastă, iar cele două împreună cedează
un personaj nou.
De exemplu, o legare tradițională ar fi pentru Multi_key, urmat de ghilimele simple,
urmată de A să producă Acute keysym.
Nu toți vânzătorii acceptă utilizarea Multi_key keysym; în special, Digital, Sun și
HP îl acceptă, dar X Consortium nu. (Motivul, mi se spune, este că
Secvențele „Compose” sunt considerate învechite; linia de petrecere este că ar trebui să o folosești
Metode de introducere pentru a face acest lucru.)
Dacă Multi_key funcționează este o proprietate a Xt bibliotecă (nu serverul X), așa că este
este posibil ca pe un singur sistem, Multi_key să funcționeze cu unele aplicații și nu
altele (în funcție de modul în care acele aplicații au fost compilate și legate.)
Dacă utilizați Lucid Emacs sau XEmacs, atunci puteți profita chiar și de secvențele Multi_key
dacă versiunea dvs. de Xt nu o acceptă, încărcând fișierul x-compune bibliotecă, care
simulează comportamentul tradițional Xt. Pentru mai multe informații, citiți comentariul din partea de sus a
fișierul „/usr/local/lib/xemacs-*/lisp/x11/x-compose.el”.
DEAD KEYSYMS
Tastele moarte funcționează în mod similar Multi_key, dar sunt comenzi cu două taste în loc de trei.
De exemplu, apăsând pe Dead_tilde tasta, eliberând-o, apoi apăsând tasta A cheia ar
generați un singur keysym Atilde. (Se numesc chei „moarte” pentru că nu, prin
ei înșiși, inserează caractere, dar în schimb modifică următorul caracter introdus. Dar HP
îi place să-i spună „muți” în loc de „morți”, fără îndoială, pentru a evita să-i sperie pe
copii.)
Din nou, acestea nu sunt acceptate de toate versiunile bibliotecii Xt (dar pot fi simulate de
XEmacs.)
De asemenea, rețineți că diferiți furnizori au nume diferite pentru keysyms mort. De exemplu:
în funcție de furnizorul dvs., versiunea serverului X și faza lunii, s-ar putea să găsiți asta
numele ``dead-tilde'' este Dead_Tilde, Dtilde, SunFA_Tilde, SunXK_FA_Tilde, DXK_tilde,
DXK_tilde_accent, hpmute_asciitilde, hpXK_mute_asciitilde sau chiar XK_mute_asciitilde.
Este un dezastru! Va trebui să încercați și să vedeți ce funcționează, dacă este ceva.
LUCRURI TU NU POATE DO
Oamenii întreabă adesea dacă xkeycaps sau xmodmap pot fi folosite pentru a face ca o tastă să genereze o secvență de
personaje. Din păcate, nu: nu poți face așa ceva manipulând
hărțile de taste ale serverului. Modelul de tastatură X pur și simplu nu funcționează așa.
Modul de a face astfel de lucruri este să setați resurse de traducere pe anumite widget-uri. Are
să se facă pe bază de cerere cu cerere. De exemplu, iată cum ați proceda
convinge x termen(1) pentru a introduce sfoara următor când apăsați pe F17:
xterm*VT100.Traduceri: #override \
F17: șir(„următorul”)
Alte aplicații pot avea mecanisme diferite pentru a realiza același lucru și
este posibil ca unele aplicații să nu-l accepte deloc. Verificați paginile de manual relevante pentru
specificul.
De asemenea, nu puteți convinge o cheie să genereze o altă cheie cu modificatori (de exemplu,
nu puteți face ca F1 să se comporte ca Ctrl-A decât folosind traduceri, ca mai sus.)
De asemenea, nu este posibil ca o tastă de la tastatură să se comporte ca un buton al mouse-ului.
PIERZĂTOR VÂNZĂTORII
Atât HP, cât și SuSE își livrează sistemele cu setările de tastatură stricate în mod implicit. ei
ar trebui să știe mai bine, dar ei nu știu.
După cum s-a explicat mai sus, este nedefinit comportament pentru ca un bit modificator să fie partajat între doi
chei cu semantică diferită.
În mod implicit, HP utilizează mod1 pentru ambele meta și Comutator mod. Asta înseamnă că este imposibil
pentru ca un program să facă diferența dintre, de exemplu, Meta-X și Mode_switch-X.
Deci, pentru a repara această mizerie, trebuie să dați tastei Mode_switch un alt bit modificator
(mod2, de exemplu.) Sau îl puteți elimina complet din harta tastelor.
SuSE Linux este chiar mai dezastruos decât HP: în timp ce harta implicită a tastelor HP conține doar
o eroare, harta implicită a SuSE conține trei erori complet diferite!
În primul rând, harta lor implicită de taste are Mod de control: modificatorul atașat atât la Mod de control: cheie și
il Multi_key. Acest lucru este complet nebunesc, pentru că nu numai că este Multi_key nu o cheie de control,
nici măcar nu este o acordarea cheie! Nu trebuie să aibă deloc biți modificatori atașați.
În al doilea rând, se atașează mod1 la Metal și, de asemenea, la Alt_R. Unii oameni cred că „meta” și
``alt'' sunt sinonime, dar adevărul este că sistemul X Window nu este de acord. Acestea sunt
chei distincte. Este posibil să aveți atât tastele ``meta'' cât și ``alt'' pe tastatură la
în același timp și pentru ca programele să le interpreteze distinct. Dar desigur numai dacă ei
nu împărtășiți în mod fals același bit modificator, făcând ca interpretarea acelui bit să fie
ambiguu.
În al treilea rând, se atașează mod5 ambilor Scroll_Lock și de a Hyper_R, ceea ce este greșit din motive
asta ar trebui să fie evident.
Cel mai simplu mod de a vă remedia configurația SuSE este: eliminați Control din Multi_key;
schimbați tasta Alt din stânga pentru a genera Alt_L în loc de Metal; și ștergeți Hyper_R keysym
de la tastatură.
Dacă aveți vreo atracție cu acești furnizori, vă încurajez să-i încurajați să le cumpere
acționați împreună.
X RESURSE
XKeyCaps înțelege toate numele și clasele de resurse de bază, precum și:
*Tastatură.tastatură (clasă Tastatură)
Ce tastatură să afișați; aceasta este la fel ca -tastatură opțiunea de linie de comandă. Dacă
acest lucru nu este specificat, tastatura implicită este ghicită, în funcție de furnizorul serverului
șir de identificare.
*Keyboard.Keyboard.selectCursor (clasă cursor)
Cursorul de utilizat atunci când selectați o tastă sau o fereastră cu mouse-ul. Valoarea implicită este
crosshair cursor.
*Evidențierea tastaturii (clasă Context)
Culoarea de utilizat pentru a evidenția o tastă atunci când este apăsată. Dacă acesta este același cu
culoarea de fundal a tastei, este evidențiată în schimb cu un model de litere.
*Keyboard.Key.keycapColor (clasă prim plan)
Culoarea pentru a picta șirul tastei.
*Keyboard.Key.keycodeColor (clasă prim plan)
Culoarea pentru a picta numărul codului cheie.
*Keyboard.Key.borderColor (clasă Culori)
Culoarea cutiei din jurul fiecărei taste.
*Keyboard.Key.keycapFont (clasă Font)
Fontul de utilizat pentru a desena șirul tastaturii.
*Keyboard.Key.keycodeFont (clasă Font)
Fontul de utilizat pentru a desena numărul codului cheie.
*Keyboard.Key.borderWidth (clasă Int)
Grosimea cutiei din jurul fiecărei chei.
*Keyboard.Key.gutterWidth (clasă Int)
Câți pixeli să lăsați între această cheie și vecinii ei din dreapta și de jos.
Clasa fiecărui widget cheie este „Cheie”, așa cum vedeți mai sus. Numele fiecărei chei este
șir(e) imprimat(e) pe față. Deci, dacă ați vrut (de exemplu) Schimba chei de a avea
margini mai largi, ai putea specifica asta cu
xkeycaps*Keyboard.Shift.borderWidth: 2
ACȚIUNI
Este posibil să relegați acțiunile care au loc atunci când o tastă sau butonul mouse-ului este apăsat sau
eliberată. Aceste acțiuni sunt disponibile pe Tastatură widget:
HighlightKey(condiție, arg)
Aceasta plasează cheia în cauză în starea evidențiată.
Daca nu argument este trecută acestei acțiuni, apoi cheia este determinată de evenimentul care
a invocat această acțiune. Dacă această acțiune este invocată de a Apăsați tasta or KeyRelease eveniment,
key-widget este cheia corespunzătoare cheii pe care o reprezintă evenimentul. Daca este o
ButtonApăsați, ButtonRelease, PointerMotion eveniment, atunci widgetul-cheie este acela
sub mouse.
argument poate fi unul dintre cuvinte mouse, evidențiat, afișat, adică cheia
sub mouse, cheia evidențiată cel mai recent sau cheia aflată în prezent
descrise în zona ``Info'' din partea de sus a ferestrei, respectiv.
condiție poate fi unul dintre cuvinte ifmod, cu excepția cazului în caremod, de urmărire, cu excepția cazului în care se strecoară,
dacă este evidenţiată, dacă nu sunt evidențiate. Dacă ifmod a fost specificată și cheia în cauză
(după cum este determinat de argument sau prin evenimentul de invocare) nu este o cheie modificatoare, atunci
această acțiune nu este executată. The cu excepția cazului în caremod starea este inversa. The de urmărire
și cu excepția cazului în care se strecoară condițiile vă permit să faceți unele acțiuni numai dacă (sau dacă) cheia
este „urmărit” cu mouse-ul (vezi mai jos.) dacă este evidenţiată și
dacă nu sunt evidențiate acțiunile vă permit să faceți anumite lucruri numai dacă (sau dacă) introduceți cheia
întrebarea este în prezent în starea evidențiată.
Anulați evidențierea tastei(condiție, arg)
Acest lucru pune cheia în discuție în starea neevidențiată. Argumentele sunt ca mai sus.
Tasta de comutare(condiție, arg)
Acest lucru face ca cheia să fie evidențiată dacă nu este evidențiată sau neevidențiată dacă este
evidențiat. Argumentele sunt ca mai sus.
SimulateKeyPress(condiție, arg)
Această acțiune face ca un Apăsați tasta evenimentul corespunzător cheii fie sintetizat pe
fereastra de focalizare. Argumentele sunt ca mai sus.
SimulateKeyRelease(condiție, arg)
Această acțiune face ca un KeyRelease evenimentul corespunzător cheii fie sintetizat pe
fereastra de focalizare. Argumentele sunt ca mai sus.
TrackKey(condiție, arg)
Acest lucru face ca cheia în cauză să înceapă să fie „urmărită”, ceea ce înseamnă că mutarea
mouse-ul de pe acesta va simula o acțiune de eliberare a butonului și apoi va simula a
acțiune de apăsare a butonului pe tasta pe care s-a mutat mouse-ul. Această acțiune poate doar
fi invocat de la a ButtonApăsați or ButtonRelease eveniment.
UntrackKey(condiție, arg)
Acest lucru face ca cheia în cauză să nu mai fie „urmărită”.
Descriere cheie(condiție, arg)
Această acțiune face ca cheia și legăturile sale să fie afișate în secțiunea ``Info'' la
partea de sus a ferestrei, dacă nu este deja descris acolo.
Acțiunile implicite pentru Tastatură widget-ul sunt:
: DescribeKey(mouse,unlessTracking) \n\
\
: HighlightKey() \
DescribeKey(dacă nuMod) \
DescribeKey(afișat) \
SimulateKeyPress() \n\
\
: UnhighlightKey() \
DescribeKey(afișat) \
SimulateKeyRelease() \n\
\
: HighlightKey(dacă nuMod) \
ToggleKey(ifMod) \
TrackKey(dacă nuMod) \
SimulateKeyPress(dacă este evidențiat) \
SimulateKeyRelease(dacă nu este evidențiat) \n\
\
: UntrackKey(evidențiat) \
SimulateKeyRelease(evidențiat, cu excepția cazului în care Mod) \
UnhighlightKey(evidențiat, cu excepția cazului în mod) \n\
\
: XawPositionSimpleMenu(keyMenu) \
Meniu Popup(keyMenu) \n
Dacă nu doriți ca o cheie să fie descrisă de fiecare dată când mouse-ul trece peste ea, puteți elimina
il acțiune. În acest caz, probabil că ar trebui să adăugați DescribeKey() la
și acțiuni.
Dacă doriți ca tasta de sub mouse să fie descrisă chiar și în timp ce mouse-ul se mișcă cu a
butonul apăsat, apoi scoateți cu excepția cazului în care Urmărirea parametru de la Descriere cheie acţiune legată de
.
Dacă nu doriți ca tastele modificatoare să comute, atunci schimbați Buton1 actiuni la
xkeycaps*Keyboard.actions: #override \
: HighlightKey() \
TrackKey(cu excepția cazului în care mod) \
SimulateKeyPress() \n\
: UntrackKey(evidențiat) \
SimulateKeyRelease(evidențiat) \
UnhighlightKey(evidențiat) \n
Amintiți-vă că aceste acțiuni există pe Tastatură widget, nu pe Cheie widget-uri. daca tu
adăugați acțiuni la Cheie widget-uri, lucrurile se vor defecta.
MEDIUL
DISPLAY
pentru a obține gazda implicită și numărul de afișare.
X MEDIU
pentru a obține numele unui fișier de resurse care înlocuiește resursele globale stocate în fișierul
Proprietate RESOURCE_MANAGER.
XKEYSYMDB
pentru a obține locația XKeysymDB fișier, care listează keysym-urile specifice furnizorului.
UPGRADE
Cea mai recentă versiune poate fi întotdeauna găsită la
http://ftp.debian.org/debian/pool/main/x/xkeycaps/
Utilizați xkeycaps online folosind serviciile onworks.net