Vraag Hoe kan ik de Caps Lock-toets opnieuw toewijzen?


In het verleden het verleden dat ik vroeger gebruikte xmodmap om het te voorkomen Caps Lock knop van werken, en vertel het dan Launchy om in plaats daarvan de toetsdruk aan te raken. Ik kan dit niet meer doen.

Wat is de beste manier om uit te schakelen Caps Locknormaal gedrag, en laat het iets anders doen?


65
2017-07-14 03:23


oorsprong


Zie voor Ubuntu 14.04 askubuntu.com/q/444714/25388 - Léo Léopold Hertz 준영


antwoorden:


Van howtogeek.com wat een goed antwoord is voor elk OS.

Voor Linux (inclusief Ubuntu):

setxkbmap -option <OPTION>

Waar <OPTION> kan bijvoorbeeld zijn van:

  • caps:none - Schakelt Caps Lock uit.
  • caps:super - Caps Lock wordt een extra Super (ook bekend als Win-toets).
  • caps:ctrl_modifier - Caps Lock wordt een extra Ctrl.
  • caps:numlock - Caps Lock wordt een extra Num Lock.
  • caps:escape - Caps Lock wordt een extra Ontsnappen.
  • caps:backspace - Caps Lock wordt een extra Backspace.
  • caps:swapescape - Caps Lock wordt Escape en Escape wordt Caps Lock

Opmerking: Xmodmap is verouderd in het voordeel van setxkbmap.


64
2018-04-27 07:52



hou van je man, bedankt, het werkt voor ubutnu 14.10 - Hoto
werkt ook in ubuntu 15.10! bedankt! - donatello
leuk en simpel, werkt in 16.04 - chepyle
Om een ​​te herstellen setxkbmap wijzigingen (dat wil zeggen als u uw Caps-sleutel weer op de oorspronkelijke locatie nodig hebt) hoeft u dit alleen uit te voeren: setxkbmap -option - landroni
Als je de Capslock-toets hebt aangepast aan backspace en je je nu afvraagt ​​waarom er geen woorden worden verwijderd als je deze ingedrukt houdt, is dat omdat je een extra opdracht moet gebruiken. Na setxkbmap -option caps:backspace invoeren xset r 66 en voilá. - Gabriel


Je kunt het uitschakelen door naar toetsenbord-> Layouts-> opties-> caps lock-gedrag te gaan en 'caps lock uitschakelen' te kiezen.


Bewerk:

Ik weet niet waarom het ongemakkelijk lijkt met een andere toetsenbordtoetsen.

Maar Launchy werkt prima met mij na het geprobeerd te hebben CTRL+Super+Ruimte.

enter image description here

En je moet op de witte lijst komen launchy naar de pictogrammen in de laden. Zien Hoe kan ik meer pictogrammen openen en inschakelen in het systeemvak?. U moet het ook toevoegen aan de opstarttoepassingen, omdat het niet zal werken als het niet wordt geopend.


Immers, als alternatief voor Launcy, probeer Synapse voor zijn beste integratie met kabouter en eenheid.


18
2017-07-14 04:16



Deze optie lijkt niet beschikbaar te zijn op Ubuntu 15.04. - MichielB


In Ubuntu 11.10 - 13.04

  1. Open de Toetsenbordindeling toepassing en klik op de knop "Opties".
  2. Er verschijnt een lijst met rebinding-opties. Selecteer "Caps Lock-toetsgedrag".
  3. Selecteer de gewenste Caps Lock herbestemming optie.

Screenshot of available options


18
2018-01-10 08:04



@JacobJohanEdwards Opmerking voor uzelf, controleer of xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape' werkt nog steeds. - Jjed
Voor vim-gebruikers wordt door 'Practical Vim' aanbevolen de caps lock naar ctrl op systeemniveau toe te wijzen. Toetsenbordindeling> Opties> Ctrl-toets Positie> Caps Lock als Ctrl doet het. - rpattabi
Deze instellingen bestaan ​​niet meer in 13.10. Installeren gnome-tweak-tool, daar heb je vergelijkbare instellingen onder "Typen". - pcworld
Dit werkt niet voor mij in Ubuntu 12.10. Knoeien met die instellingen in het kabouterbesturingscentrum lijkt geen effect te hebben. - Andrew Wagner
Waarom hebben ze deze opties verwijderd van 14.04? - Léo Léopold Hertz 준영


Dit is in feite een wijziging van het antwoord op https://askubuntu.com/a/223674/22073.

U kunt het gedrag van Caps Lock ook wijzigen met een XKBOption. Deze wijzigingen worden zelfs voorgesteld aan de virtuele consoles (/ dev / tty [1-6] of Ctrl-Alt-F [1-6]).

Om bijvoorbeeld Caps Lock uit te schakelen, zou u het volgende hebben /etc/default/keyboard:

# Check /usr/share/doc/keyboard-configuration/README.Debian for
# documentation on what to do after having modified this file.

# The following variables describe your keyboard and can have the same
# values as the XkbModel, XkbLayout, XkbVariant and XkbOptions options
# in /etc/X11/xorg.conf.

XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS="caps:none"

# If you don't want to use the XKB layout on the console, you can
# specify an alternative keymap.  Make sure it will be accessible
# before /usr is mounted.
# KMAP=/etc/console-setup/defkeymap.kmap.gz

Dan zou je rennen:

sudo dpkg-reconfigure keyboard-configuration

Bekijk voor een volledige lijst met aanpassingen van XKBOPTIONS /usr/share/X11/xkb/rules/base.lst. Hier is de volledige lijst van mijn Ubuntu 13.10-machine: http://sprunge.us/cUZO

Meer informatie is te vinden op de ArchLinux-wiki: https://wiki.archlinux.org/index.php/Keyboard_Configuration_in_Xorg


15
2018-01-22 18:29



Perfect, ik gebruik XKBOPTIONS="ctrl:swapcaps" om de linker Ctrl te verwisselen met petten. - Márcio
Het werkt op 16.04 in X en de virtuele consoles. - jfs


Om de nutteloze caps_lock om te zetten in een basisverschuiving, doe

xmodmap -e "keycode 66 = Shift_L"

10
2017-08-25 09:07



Dit blijft niet bestaan ​​na het opnieuw opstarten. - Czarek Tomczak
Ga als volgt te werk om het na het opnieuw opstarten te laten doorgaan: Ubuntu Dash Home> Opstarttoepassingen> Toevoegen> typ de bovenstaande opdracht. - Czarek Tomczak


De volgende methode gebruikt de combinatie van Compiz om een ​​toepassing te starten wanneer er een toets wordt ingedrukt.

Samengevat -

  1. verander het gedrag van de Caps Lock-toets om een ​​andere toets na te bootsen.
  2. Compiz configureren om naar de nieuw gemarkeerde sleutel te luisteren en een aangepast script uit te voeren.

Wijzig de Caps Lock-toets

Wijzig ook het gedrag van de Caps Lock-toets, die u kunt gebruiken xmodmap als volgt:

  • maak een bestand b.v. "Caps Lock"
  • kopieer en plak het volgende in het bestand
keycode 66 = cent
clear Lock
add Control = cent
  • voer nu xmodmap uit om je wijziging te herkennen:

xmodmap capslock

Als u deze opdracht permanent wilt uitvoeren, voegt u deze opdracht toe aan de opstarttoepassingen.

Het indrukken van Caps Lock bootst nu alleen maar op een "cent" -toets - merk op dat dit geen sleutel is die daadwerkelijk op mijn toetsenbord bestaat.

U kunt een lijst krijgen van KeySym-namen vanaf hier.

Compiz configureren

Start de CompizConfig Settings Manager

Controleer in de algemene sectie of "Commando's" is ingeschakeld en configureer een opdracht zoals weergegeven:

enter image description here

N.B. activeer de toetsbinding en gebruik de "grijptoetscombinatie" om uw "cent" -sleutel te herkennen. U kunt niet compiz krijgen om de knop voor de hoofdvergrendeling zelf helaas te herkennen.

enter image description here

Natuurlijk - verander "firefox" voor welk commando je ook gebruikt om "launchy" te starten

Wanneer u nu de Caps Lock-toets indrukt, herkent compiz de toegewezen "cent" -toets en voert de opdracht uit - in dit geval firefox - in uw geval "launchy".


6
2017-08-01 07:45



Na enkele minuten gaan instellingen terug - en opnieuw hebben Caps Lock normaal gedrag. - Vitaly Zdanevich


  1. Gebruik de opdracht xev. Wanneer je op Enter drukt, wordt xev gestart. xev neemt al uw invoer en poept info over de sleutel in de opdrachtregel. Ik raad aan om met je muis over de exit-toets van het xev-venster te gaan, caps lock te raken (of welke sleutel je ook wilt weten) en onmiddellijk xev te verlaten. De relevante regels op mijn systeem, voor Caps Lock zien er ongeveer zo uit:

    KeyPress event, serial 36, synthetic NO, window 0x4400001,
        root 0x27a, subw 0x0, time 19164277, (16,-9), root:(1156,46),
        state 0x2, keycode 66 (keysym 0xffe5, Caps_Lock), same_screen YES,
        XLookupString gives 0 bytes: 
        XmbLookupString gives 0 bytes: 
        XFilterEvent returns: False
    
    KeyRelease event, serial 36, synthetic NO, window 0x4400001,
        root 0x27a, subw 0x0, time 19164397, (16,-9), root:(1156,46),
        state 0x2, keycode 66 (keysym 0xffe5, Caps_Lock), same_screen YES,
        XLookupString gives 0 bytes: 
        XFilterEvent returns: False
    

    Merk op keycode (66) en keysym (0xffe5).

    Je zou nu ook gegevens voor een andere sleutel kunnen krijgen - een die je niet echt gebruikt en die, in de context waarin je de caps lock-knop wilt gebruiken, niets doet. Dus, als je wilt dat Caps Lock de Unity-zoekbox activeert (zoals super gewoonlijk doet), gebruik dan misschien `, bijvoorbeeld. Op mijn machine:

    keycode 49 (keysym 0x60, grave)
    
  2. Bind de functie van de nieuwe toets aan de Caps Lock-knop, met behulp van xmodmap. Ik ben er vrij zeker van dat je een commando wilt gebruiken zoals:

    xmodmap -e "keycode 66=0x60"
    

    Als u nu op de knop voor fysieke caps lock in een tekstvak klikt, wordt het grafpersonage (`) weergegeven. Maar als je er een sneltoets naar toe toewijst, zal het iets anders doen. Als je het in een tekstvak wilt kunnen gebruiken, vervang dan caps lock met left shift, of f10, of iets anders dat niet lijkt dat het de opdracht die je wilt gebruiken zal verstoren.

  3. Test het om ervoor te zorgen dat het commando dat ik je gaf, werkt zoals jij het wilt.

  4. Ga naar opstarttoepassingen en voeg die opdracht toe aan uw opstarttoepassingen. Op deze manier zal de sleutel elke keer dat u opstart naar behoren schakelen.

  5. Dans.

(roep naar de verrassing) Verander sneltoetsen (hardware naar software)

Ook voor meer hulp op xmodmap:

http://www.xfree86.org/4.2.0/xmodmap.1.html

http://www.in-ulm.de/~mascheck/X11/xmodmap.html


5
2017-08-04 00:42