Klavyemdeki tuşları nasıl değiştirebilirim? (Özel klavye komutlarını / kısayollarını nasıl oluşturabilirim?)


131

Klavyemdeki bazı tuşların tuş bağlantılarını değiştirmek istiyorum. Bazılarının komutları çalıştırmasını, bazılarının ise farklı anahtarları etkinleştirmesini istiyorum.

Bunu yapmak için hangi uygulamaları kullanabilirim?


Dizin:


Ben hala dconf ve başka bir yöntem kullanarak cevaplar arıyorum.


Belki xmacro bu cevaba ait mi? “X ekranlarındaki tuş vuruşlarını ve fare hareketlerini Kaydet / Oynat” özelliği olabilir.
yol

@roadmr Özel klavye kısayolları oluşturmak için kullanabilirsem, o zaman evet!
Seth

Bu konuyu eklediğiniz için teşekkürler. Bir tuşa tıpkı bir fare düğmesi gibi kullanmanın bir yolunu arıyorum (basılı tutun ve sürükleyin, tıklayın, vb.). Bu iş parçacığından eksik görünüyor.
krumpelstiltskin 13:14

@ krumpelstiltskin Şu anda bir farenin bu şekilde tam olarak çoğaltılması için herhangi bir yoldan habersizim. Sana yeni bir soru sormanı öneririm. Bunu çözersem hala orada cevaplayabilirim ya da başkasının daha iyi bir cevabı olabilir :)
Seth

1
işte bir xkb-answer: askubuntu.com/a/347382/354350
DJCrashdummy

Yanıtlar:


94

xbindkeys ..

sudo apt-get install xbindkeys

Xbindkeys, tuşları çok kolay bir şekilde yeniden eşleştirmenize izin veren çok yönlü bir programdır. Anahtar bağlarını belirli komutlara dönüştürmek için varsayılan olarak giriş dizininizde bulunan bir yapılandırma dosyası kullanır.

Varsayılan bir yapılandırma dosyası oluşturmak için aşağıdaki komutu kullanın:

xbindkeys --defaults

Varsayılan yapılandırma dosyasını hangi yazdırır. Bu nedenle , varsayılan değerleri içeren dosyayı oluşturmak istiyorsanız, kullanacağınız şey:

xbindkeys --defaults > $HOME/.xbindkeysrc

Bu, varsayılan değerleri .xbindkeysrcevde bulunan gizli bir dosyaya yazdırır ( ~).

Şimdi aslında tuşların bağlarını değiştirmek için önce bu tuşların adlarının ya da anahtarlarının ne olduğunu bilmemiz gerekir. Bir tuş veya tuş birleşiminin adını bulmak xbindkeysiçin -ktanıtıcıyı kullanmamızı sağlar . Çalıştırmak:

xbindkeys -k

Ve bir tuşa veya tuş bileşimine basın. Çıktınız buna benzer bir şey olarak görünecektir (basıldığında space):

"NoCommand"
m:0x10 + c:65
Mod2 + space

"No Command"bize şu anda hiçbir komutun Spacetuşla ilişkili olmadığını söyler .

m:0x10 + c:65
Mod2 + space  

Anahtar / tuş kombinasyonunun adıdır.

config dosyası ..

Daha önce yaptığınız config dosyasını açalım:

gedit .xbindkeysrc  

Varsayılan yapılandırma dosyasından bir alıntı:

#
# A list of keys is in /usr/include/X11/keysym.h and in
# /usr/include/X11/keysymdef.h
# The XK_ is not needed.
#
# List of modifier:
#   Release, Control, Shift, Mod1 (Alt), Mod2 (NumLock),
#   Mod3 (CapsLock), Mod4, Mod5 (Scroll). 
#

# The release modifier is not a standard X modifier, but you can  
# use it if you want to catch release events instead of press events

# By defaults, xbindkeys does not pay attention with the modifiers
# NumLock, CapsLock and ScrollLock.
# Uncomment the lines above if you want to pay attention to them.

#keystate_numlock = enable
#keystate_capslock = enable
#keystate_scrolllock= enable

# Examples of commands:

"xbindkeys_show" 
 control+shift + q  

İle başlayan her satır #bir yorumdur ve tarafından okunmaz veya çalıştırılmaz xbindkeys.

Şimdiye kadar yorumlanmayan tek satır:

"xbindkeys_show" 
 control+shift + q  

Bu alıntı, xbindkeyskomutların temel sözdizimini gösterir :

"Command to run (in quotes)"
key to associate with command (no quotes)  

Gördüğünüz gibi:

"xbindkeys_show" 
 control+shift + q  

+ + Tuşlarına xbindkeys_showbastığınızda komutu çalıştırır . CtrlShiftq

komutları tuşlarına bağla ..

Şimdi birkaç tuşa bağlanmayı deneyelim. Varsayılan dosyanın tamamını boş bırakarak temizlemenizi öneririm. Muhtemelen istemediğiniz önceden ayarlanmış tuş ciltlerini içerir.

Şimdi tarayıcınızı açmak için Ctrl+ kullanmak istediğinizi bvarsayalım. Önce ad veya bilmemiz gerekiyor keysym arasında Ctrl+ bolduğunu. Daha önce de belirtildiği gibi xbindkeys -k, bir anahtarın veya anahtarların adını bulmak için kullanabilirsiniz , ancak daha kolay bir yol vardır. Ctrl+ Gibi basit kombinasyonlar biçin sadece kullanabilirsiniz:

Control+b

Çok daha kolay değil mi?

Şimdi favori tarayıcınızın komutunu bulun:

  • Firefox için: firefox

  • Chromium için: chromium-browser

  • Opera için: opera

Daha önceki sözdizimini hatırlıyor musunuz? xbindkeysEğer bastığınızda komut Firefox (veya diğer favori tarayıcı) başlatmak için Ctrl+ bgeçerli:

"firefox"
Control+b

Şimdi bunu config dosyanıza koyun ve kaydedin. Şimdi emrinizin henüz işe yaramadığını fark edebilirsiniz, çünkü xbindkeysbu çalışmıyor. Başlamak için sadece xbindkeysbir terminalden çalıştırın . Sizin Ctrl+ bşimdi tarayıcınızı başlamalı!

tuşları başka tuşlara

Klavyenizdeki bir tuşun klavyenizdeki farklı bir tuşa basmasını istiyorsanız xbindkeys, bunu kendi başına desteklemeyen ek bir yazılıma ihtiyacınız olacaktır . Ben kullanabileceğimiz iki program biliyorum xdotoolve xte. Bunu tercih xteedeceğim, onu kullanacağım.

Yükle:

sudo apt-get install xautomation

İçin sözdizimi xteşöyledir:

xte 'command key/mousebutton/xyCoordinates'

Örnekler:

  • Tek bir tuşu aramak için: xte 'key keyName'

  • Bir tuş kombinasyonunu aramak için: xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName

  • Fare düğmesini aramak için: xte 'mouseclick buttonNumber' (Düğme numaralarını bulmayı biraz sonra bulacağız)

  • Fareyi hareket ettirmek için: xte 'mousemove xCoordinate yCoordinate'

  • Ve dahası! okumakman xte

Artık tuşa basma komutunu bildiğinize göre, xbindkeysbetiğinizden şöyle diyebilirsiniz :

"xte 'key b'"
Control+b  

Tahmin edebileceğiniz gibi, bu, + xte 'key b'düğmesine bastığımızda çağrılır; bu , üzerinde çalışmakta olduğunuz herhangi bir belgeye girer. Ctrlbb

Ben şey ancak dikkat olmasıdır etmek xbindkeysve xteher zaman birlikte çok iyi çalışmaz. Bazen çıktı almak için tuşlara tam olarak aynı anda basmanız gerekir , diğer zamanlarda sadece iyi çalışır. Bu, sistem konfigürasyonu ve / veya donanım ile ilgili olabilir veya olmayabilir. Emin değilim. Diğer anahtarlara daha güvenilir bir ciltleme tuşu yolu için maggotbrain'in cevabına bakınız .

fare düğmelerini komutlara bağlayın ..

Ayrıca xbindkeysfare düğmelerini komutlara bağlamak için de kullanabilirsiniz (ve böylece klavye kısayolları, yukarıya bakın). Fare düğmelerinin temel biçimi size şimdi bilmelidir:

" [command to run]  "
b:n

[command to run]Çalıştırmak istediğiniz komut nerede ve nbu komut için kullanmak istediğiniz fare düğmesinin numarası.

Fare düğmenizin numarasını bilmiyorsanız, xevonun ne olduğunu bulmak için kullanabilirsiniz :

xev | grep button

Çıktı şöyle bir şey olacak:

user@host:~$ xev | grep button
    state 0x10, button 1, same_screen YES
    state 0x110, button 1, same_screen YES
    state 0x10, button 2, same_screen YES
    state 0x210, button 2, same_screen YES
    state 0x10, button 3, same_screen YES
    state 0x410, button 3, same_screen YES

Fare düğmelerimin her birine bastığımda.

Örneğin:

" firefox "
b:2

Orta fare düğmesine bastığımda firefox'u başlatıyor.


Xbindkeys ile kopyala / yapıştır için Meta + C / V ve dil geçişi için Meta + Space'i eşleştirmek mümkün mü?
Sonique

Tek bir tuşa bir dizi karakter eklemenin bir yolu var mı, örneğin ses artırma tuşuna "denklem" ekleyin?
JPi

55

Xev ve xmodmap

Kullanarak tuş bağları değiştirme xevve xmodmap.

Her iki komut satırı uygulaması varsayılan olarak mevcuttur, bu nedenle ek bir yazılım yüklemeye gerek yoktur.

Xev "bir pencere oluşturur ve ardından X sunucusundan, pencereye bir şey olduğunda (taşınması, yeniden boyutlandırılması, yazılması, tıklatılması vb. Gibi) olayları göndermesini ister." xev man sayfası

xmodmap bir olan "programı düzenleyip keysyms içine olay keycodes dönüştürmek için istemci uygulamaları tarafından kullanılan klavye değiştirici harita ve klavye düzenini tablosunu görüntülemek için kullanılır." xmodmap man sayfası

Aşağıdaki örnek, Caps_Lockanahtarın davranışına bir anahtar getirecektir Esc(Birçok vi / vim kullanıcısı bunu kullanışlı bir klavye eşlemesi olarak bulur).

Xev kullanarak

Başlangıç xevbir terminal penceresinden uygulama ( Ctrl- Alt- t).

Uygulama başlatılacak, birkaç satır gösterecek ve boş bir pencere başlatacaktır. xevUygulama penceresini odakta tutun ve özelliklerini / davranışlarını kullanmak istediğiniz tuşa basın.

  • basın ESCanahtarı

Terminal penceresinde, birkaç çıktı satırı göreceksiniz. Dönen 3. satıra dikkat edin. Bu, diğer anahtara taşımak istediğiniz malın adını içerecektir.

KeyPress event, serial 32, synthetic NO, window 0x3e00001,
    root 0x256, subw 0x0, time 16245388, (616,73), root:(1487,535),
    state 0x10, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
    XLookupString gives 1 bytes: (1b) ""

Bu durumda, Escanahtar (9 kodu) "Escape" adını kullanır .

  • basın Caps Lockanahtarı

Bu sefer kullandığımız anahtar kodu arıyoruz Caps Lock.

Yine 3. satıra dikkat edin:

KeyRelease event, serial 32, synthetic NO, window 0x4c00001,
    root 0x256, subw 0x0, time 94702774, (862,151), root:(1733,613),
    state 0x10, keycode 66 (keysym 0xffe5, Caps_Lock), same_screen YES,
    XKeysymToKeycode returns keycode: 9
    XLookupString gives 1 bytes: (1b) ""

Xmodmap kullanma

Şimdi, değiştirmek istediğimiz tuşlar hakkındaki bilgileri edindiğimize göre, tuş haritalarını değiştirmek için xevkullanacağız xmodmap. Komut terminalinden ( Ctrl+ Alt+ t), aşağıdaki komutları çalıştırın:

  • Bu komut Caps Lockaynı davranışı kullanmak için değiştirir.Esc

    xmodmap -e "keycode 66 = Escape"
    
  • Bu seçenek, bir anahtar haritası tablosunu dosyaya ifadeler olarak yazdırır. ~/.Xmodmap

    xmodmap -pke > ~/.Xmodmap
    

Değişiklikleri (yalnızca bu oturum açma oturumu için) aşağıdaki komutla etkinleştirin:

xmodmap ~/.Xmodmap

Yeniden başlatmalar arasında değişiklikleri kalıcı kılmak:

  • Yoksa, giriş klasöründe bir dosya oluşturun .xinitrc.

    touch .xinitrc
    
  • Aşağıdaki satırı dosyaya yerleştirin ve dosyayı kaydedin:

    xmodmap ~/.Xmodmap
    

Anahtarları farklı durum davranışlarıyla değiştirme

(gibi Num Lock)

  • Değiştirici tuşlar için tuş haritası tablosunu edinin (çıktı burada kısaltılır)

    $ xmodmap -pm
    shift       Shift_L (0x32),  Shift_R (0x3e)
    mod2        Num_Lock (0x4d)
    

Örneğin, sayı tuş takımındaki Del/ Periodtuşundaki dönemin davranışını virgülle değiştirmek istiyorsanız, aşağıdaki komutu kullanın:

xmodmap -e "keycode 91 mod2 = KP_Delete comma"

Bunun, mod2değiştiriciye Num Lockbasıldığında tuş davranışını değiştirmek için tuş eşlemesini kullandığını unutmayın . Bunun için sözdizimi:

xmodmap -e "<KEYCODE> <MODIFIER> = <behaviour> <behaviour_with_modifier>"

Kaynak


2
1! Alt-gr tuşu olmayan bir Kore dili klavye atm'ım var ve cevabınız çalışmaya başlaması için çok yardımcı oldu. Gelecekte başvurmak için ve alt-gr tuşu ayarlanması en kolay yol olmadığı için, işte komuttur (130 koduna sahip olan hanja anahtarını kullandım): xmodmap -e "tuş kodu 130 = ISO_Level3_Shift Multi_key ISO_Level3_Shift Multi_key"
Shautieh

43

Varsayılan olarak (Bu, Seth'in Mükemmel cevabını tamamlamak içindir), Ubuntu (Bu örnekte, 16.04 kullanıyorum), Sistem Ayarlarında varsayılan olarak gelen 2 kategoriye sahiptir:

Sistem Ayarlarına gitmek için, Üstte Dişli simgesine sağ tıklayın :

görüntü tanımını buraya girin

Ardından, Sistem Ayarları'nı seçin :

görüntü tanımını buraya girin

Burada sizi Kısayol Oluşturma bölümüne gönderebilecek 2 seçenek bulacaksınız.

görüntü tanımını buraya girin

Seçerseniz Metin girişi seçmek zorunda kalacak Ayarlar Klavye Kısayollar seçeneklerine doğrudan gönderecigini Alt Hakkı bağlayın.

görüntü tanımını buraya girin

Klavye seçeneğini seçerseniz , Kısayollar Sekmesini tıklamanız gerekir.

görüntü tanımını buraya girin

Kısayollar sekmelerine geldikten sonra , sol taraftaki listenin altındaki Özel Kısayollar'ı seçersiniz :

görüntü tanımını buraya girin

Ve sonra kendi Kısayolunuzu oluşturmaya başlamak için alttaki Artı İşaretine tıklayın :

görüntü tanımını buraya girin

Bu noktadan sonra, kısayolun adını eklemeniz yalnızca bir sorun (Yapacağınız gerçek komutun adı için kısayolun adını karıştırmayın). Aşağıda, Komut alanında, bu kısayol için hangi komutu çalıştıracağınızı belirteceğiniz yerdir. Aşağıdaki örnekte, bu kısayolun neye benzediğini öğrenmek için "Sublime Text 3" Kısayolunu seçtim. Ve komut alanına olan gerçek komutu ekledim subl.

görüntü tanımını buraya girin

Kısayolun atanmış bir tuş veya tuş birleşimine sahip olmadığından, varsayılan olarak Devre Dışı Bırakıldığını gösteren ekranda aşağıdakileri göreceksiniz:

görüntü tanımını buraya girin

Daha sonra tuş kombinasyonunu eklemek için "Devre Dışı" mesajını tıklarız:

görüntü tanımını buraya girin

Bu bölümde, SHIFT+ CTRL+ tuş kombinasyonunu atayım, Sböylece bu kombinasyona bastığımda Sublime Text App açılır.

görüntü tanımını buraya girin

Bundan sonra, ilgili tuş kombinasyonuna basarak ve uygulamayı açık halde görerek kombinasyonunuzu test edebilirsiniz:

görüntü tanımını buraya girin

NOT: X Sunucuyu öldürmek gibi özel kombinasyonlar için aşağıdaki bağlantıyı ziyaret etmenizi öneririz: Ctrl-Alt-Backspace uygulamasını X sunucusunu öldürmek için nasıl etkinleştiririm?


13.10'dayım ve Sistem Ayarlarımda bu 'Metin Girişi' simgesine sahip değilim. :(
wim

Merhaba wim, sistem ayarlarınızı gösteren bir resme bağlantı verebilir misiniz?
Luis Alvarado

2
Ne yazık ki şimdi 15.04'deyiz, bu cevap karışık bir karmaşa. Klavye Düzeni gitti ve bununla birlikte X Sunucu'yu Öldürme yeteneği. Ekran görüntüleri 13.04 öncesi (kimin umrunda!?!) Ve sonraki ekran görüntülerini karıştırıyor ve birisi onları yanlış yere yerleştirdi, bu nedenle "sağ altta Seçenekler'i tıkla" "gerçek, eski, ekran görüntüsünden uzak. :-(
kayakçı sayfa

@skierpage Bu cevabı bu yüzden verdim: askubuntu.com/questions/367983/… yardımcı olacağını umuyorum.
Luis Alvarado

If you click on the Options button at the bottom right (Found on 13.04 or previous versions)...13.04 sürümündeki seçenekler düğmesi nerede?
dinozor

21

Git Sistem Ayarlarıkeyboard seçin Kısayollar sekmesini ve tarayıcınız için yeni bir özel kısayol ekleyin. Varsayılan brouseriniz Firefox ise, firefoxkomut alanında kullanın ; varsayılan brouseriniz Firefox ise, chromium-browservb. kullanın :

özel kısayol ekle


Teşekkürler. Ayrıca, aslında anahtarları ayarlama konusunda bazı özellikler için kendi cevabımı görün. Doğru yerde olmama rağmen ilk başta beni şaşırttı.
Michael Durrant,

2
Ama bu benim durumumda çalışmıyor. Ubuntu (nedense) kısayol tuşlarını ayarlamama izin vermiyor! 4. adıma kadar takip ettim (resimde gösterildiği gibi). Bir şeyi mi özlüyorum?
Vaibhav Kaushal

2
Bu cevabı, çift soruda mevcut olanlara tercih ederim.
Bay B,

3
@VaibhavKaushal: 5. adımda "devre dışı bırakma" üzerine sağ tıklamanız gerekiyor, sonra hemen orada
görünmesini

Değişikliklerin yürürlüğe girmesi için yeniden başlatmak gerekebilir
Shirley Temple

18

AutoKey'i yazılım merkezinden kurarak karmaşık (çoklu tuş) klavye kısayolları oluşturabilirsiniz . Xmodmap'in aksine, AutoKey klavyenizdeki gerçek tuşları yeniden bağlamaz; arka planda çalışır ve tanımlanmış klavye kısayollarınızı durdurur, ardından uygulamalarınıza benzetilmiş tuş basmaları gönderir.

AutoKey'i ilk kez başlattığınızda, arka planda servis başlayacaktır (bildirim simgesi birlik için güncellenmemiştir, bu nedenle görsel bir gösterge yoktur). Çalıştırıldıktan sonra, başlatıcıyı tekrar çalıştırarak yapılandırma arayüzünü açabilirsiniz:

görüntü tanımını buraya girin

Şimdi Düzenle> Tercihler'i açın ve kısayollarınızın her giriş yaptığınızda çalıştığından emin olmak için "Giriş yaparken otomatik olarak Otomatik Başla" yı seçin.

Klavye kısayolunu başka bir klavye kısayoluyla eşleme

  1. Dosya> Yeni> İfade'yi seçin.
  2. "Kullanarak yapıştır" ın "Klavye" olarak ayarlandığından emin olun.
  3. Haritasını oluşturmak istediğiniz anahtarları yazın için metin kutusuna.

    • Özel (karakter olmayan) tuşlar, burada belgelenen kodlarla temsil edilir .
    • Birden çok anahtar yazarsanız, +aralarına yerleştirmediğiniz sürece sırayla gönderilir (örneğin <ctrl>+cçoğu uygulamada kopyalar; <ctrl>+c<ctrl>+n<ctrl>+vseçimi içeren yeni bir belge oluşturur; <shift>+ubuntu"Ubuntu" metnini yazardı)
  4. "Kısayol Tuşu" yanındaki "Ayarla" düğmesine basın. Bu haritasını oluşturmak istediğiniz tuş kombinasyonunu belirlemek için izin veren bir iletişim kutusunu getirir dan :

    görüntü tanımını buraya girin

  5. Dosya> Kaydet'i seçin.

Tamamlanmış bir konfigürasyon örneği ( <enter>bastığınızda gönderilen <ctrl>+m) şöyle görünür:

görüntü tanımını buraya girin


Not: Şu anda Debian (Ubuntu'nun AutoKey paketini aldığı yer), AutoKey paketini korumuyor. Mevcut kurulum talimatları için bakınız: github.com/autokey/autokey/wiki/Installing
Joe

15

Bunu dene:

XKeyCaps adlı bir program yükleyin. Yüklemek için Terminal'i açmak için klavyenizdeki Ctrl+ Alt+ tuşlarına basın T. Açıldığında, aşağıdaki komutları çalıştırın:

sudo apt-get install xkeycaps

Kurulduktan sonra programı çalıştırmak için istemde xkeycaps yapabilirsiniz. Çalıştırıldıktan sonra, doğru klavye düzenini seçin ve Tamam

görüntü tanımını buraya girin

Sonra klavyeyi ekrana getirdiğinizde istediğiniz tuşa sağ tıklayın, kendi durumda Sve değişim tuşlarını seçin.

görüntü tanımını buraya girin

Aşağıdaki satırı oturumlarınıza eklediğinizden emin olun, böylece her açılışta otomatik olarak başlayabilirsiniz.

xmodmap ~/.xmodmap-`uname-n`

Kaynak: UFM ytsejam1138


Olması uname-ngerekiyordu uname -n?
wjandrea

Kaynağa göre onun unmae-n. Test etmek için bir Ubuntu makineye erişimim yok, ancak bir kez yaptığım zaman daha da kontrol edeceğim.
Mitch

8

Anahtarları yeniden eşleştirmek istiyorsanız, diğer cevaplar mükemmeldir.

Ancak, ona yaklaşmanın başka bir yolu var. AutoKey , herhangi bir tuş / değiştirici kombinasyonunu klavyenizden ve neredeyse daha birçok şey yapabileceğiniz bir komut dosyası ile ilişkilendirmenize izin veren bir klavye makro işlemcisidir.

AutoKey'de bir komut dosyası kaydedici ve basit anahtar sıralarına girmenin basit bir yolu vardır, ancak komut dosyaları Python ile yazılmıştır ve kodlayabileceğiniz hemen hemen her şeyi yapabilir.

Kullanmanın en basit yolu, uygulamalarınıza / masaüstünüze tuş vuruşlarını göndermesini sağlamaktır. Bu şekilde kullanıldığında, sistem / uygulamalar sizin sizin yazmayacağınızı söyleyemez, bu yüzden herhangi bir API veya başka bir arayüz gerekmez, sadece "sizin" yazdığınız şeyi yaparlar.

AutoKey ayrıca ifadeleri işleyebilir. Tetikleyici bir karakter dizesi yazdığınızda, o dizgenin yerine yeni bir metin koyabilir (hemen veya yeni satır veya sekme gibi bir ayırıcı karakter yazdıktan sonra).

Ayrıca pencere filtreleri vardır, böylece belirli bir ifadeyi veya komut dosyasını yalnızca belirli türde pencerelerde (örneğin, yalnızca Firefox veya Thunderbird gibi şeyler için çalışacak şekilde Mozilla olanlar gibi) çalışacak şekilde kısıtlayabilirsiniz.

AutoKey şu anda Gtk ve Qt sürümlerine sahiptir.

Düzenlemeler:

Yükleme Rehberi

Kullanıcı Forumu Aktif kullanıcı forumu.

Wiki'de birçok örnek komut dosyası var. Öncelikle birçok seçeneğe sahip bir GUI uygulaması olduğundan, örnekler çok fazla ekran görüntüsü ve bir makale gerektirir.

" Jmail! " Yazarken , anında epeyce uzun e-posta adresimle değiştirilecek bir cümle var .

Sadece "Mozilla" başlıklı pencerelerde etkin olan Ctrl- yazarak tetiklenen bir komut dosyası yazdım P. Yazma Ctrl- P(Firefox veya Thunderbird) yazdırma iletişim kutusunu açar, Dosyaya Yazdır'ı seçip yazdırma kuyruğumda bir sonraki kullanılabilir yazdırma dosyasının adını doldurur (onları 01, 02, ... numaralandırırım ve komut dosyası kuyruğu okur) dizini, son dosya numarasını bulur ve 1 ile arttırır). Bir ton tuş vuruşlarını ve fare hareketlerini ortadan kaldırmak için dupleks yazdırma emülasyon yazılımımla ( duplexpr ) kullanıyorum.

Oyunculardan, karakterleri ve kaynakları hakkındaki bilgilere çok hızlı bir şekilde erişmelerini sağlayan ve böylece aksiyona odaklanmalarını sağlayan bazı senaryolar gördüm.


1
Yükleme ve belki de kullanma hakkında biraz bilgi ekler misiniz? Bu harika olurdu!
Seth

AutoKey, code.google’dan GitHub’a kısmen geçti. Bakınız github.com/autokey/autokey . Ayrıca bir Python 3 şubesi var - github.com/guoci/autokey-py3 .
Joe

AutoKey'in şu anki sürümü github.com/autokey/autokey adresinde bulunmaktadır Python 2 şubesi amortismana tabi tutulmuştur .
Joe,

7

Fare tuşlarını kullanarak klavye tuşlarını kullanma

Bir klavye tuşunu bir fare tuşuyla eşlemek isteyebilirsiniz. Bir klavye tuşu kullanarak tıklamak istiyorsanız (bir macbook veya kötü bir trackpad düğmesi varsa yararlı), ardından aşağıdakileri yapabilirsiniz.

  1. bazı yardımcı programları kurun:

    sudo apt-get install x11-utils xkbset x11-xserver-utils
    
  2. eşlemek istediğiniz anahtarın anahtar kodunu bulun:

    • tip xev | grep keycodeterminal
    • ilgilendiğiniz tuşa basın; böyle bir satır görünecektir:

      state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,  
      
  3. tuş kodunu kullanarak, sol fare tuşuyla aynı işlemi yapmak için tuşu yeniden eşleyin:

    • xkbset m
    • xmodmap -e "keycode 64 = Pointer_Button1"

Pointer_Button3sağ fare tuşu ve Pointer_Button2ortasıdır.


4

Xkb kullanımı

xkbX Klavye uzantısıdır. Klavyenizin tuşlarını belirtilen işlevleriyle eşleştirmek sorumludur. xkbsembollerinde bulunabilir /usr/share/X11/xkb/symbols/. Değiştirici tuşlar içinde eşleştirilir /usr/share/X11/xkb/symbols/pc.

Diyelim ki Caps Lockve Left Controltuşlarının işlevlerini değiştirmem gerekiyor . Bu değişiklikler pcdosya için gereklidir :

key <CAPS> {        [ Control_L             ]       };
key <LCTL> {        [ Caps_Lock             ]       };

Yeni eşlemeleri uygulamak için xkbönbelleğini şunlardan temizlemeniz gerekir /var/lib/xkb:

rm -rf /var/lib/xkb/*

Şimdi, X oturumunuzu yeniden başlatmanız yeterli olacaktır.

Kaynak: https://radu.cotescu.com/remapping-keys-in-ubuntu-14.04/

Düzenleme: Dizinin lsiçinde bir şey yapmak şunu symbolsverir:

af        cm            gn       kz              nec_vndr    sk
al        cn            gr       la              ng          sn
altwin    compose       group    latam           nl          sony_vndr
am        ctrl          hp_vndr  latin           no          srvr_ctrl
apl       cz            hr       level3          nokia_vndr  sun_vndr
ara       de            hu       level5          np          sy
at        digital_vndr  ie       lk              olpc        terminate
az        dk            il       lt              pc          th
ba        ee            in       lv              ph          tj
bd        empty         inet     ma              pk          tm
be        epo           iq       macintosh_vndr  pl          tr
bg        es            ir       mao             pt          tw
br        et            is       md              ro          typo
brai      eurosign      it       me              rs          tz
bt        fi            jp       mk              ru          ua
bw        fo            ke       ml              rupeesign   us
by        fr            keypad   mm              se          uz
ca        fujitsu_vndr  kg       mn              sgi_vndr    vn
capslock  gb            kh       mt              sharp_vndr  xfree68_vndr
cd        ge            kpdl     mv              shift       za
ch        gh            kr       nbsp            si

Dosyanın içindeki eşlemeler ruRusça standart klavyeye dayanmaktadır. macintosh_vndrKlasör Apple klavyeleri eşleştirmeleri içerir. Özet olarak, bu yaklaşım çok yönlüdür. Devam et ve onunla oyna :)


2 dosyadan bahsettiniz. Değişiklikler hangi dosyada yapılır? :)
Seth

Sadece bir dosyadan bahsettim - /usr/share/X11/xkb/symbols/pc.
Crisron

Benim hatam. İlk yolun bir dosya değil, bir klasör olduğunu anlamam ikinci bir bakış aldı. Biraz daha belirgin hale getirmek için düzenlendi :)
Seth

3

'Klavye' uygulaması altında olduğu ortaya çıktı.

Eğer onu getirirseniz, kısayolları gerektiği gibi değiştirebilirsiniz ...

değişim ilk kullanımda biraz garip. Sağ tarafa tıklayın (ctrl-alt-T, Disabled, vb. Sütunu, ardından istediğiniz gerçek tuşları tıklayın. Örneğin ctrlaltb, istediğiniz alanda görünecek yeni tuş sırasını göreceksiniz. Pencereyi kapatın. veya tıklayın) ve yeni kısayol şimdi çalışacaktır.


1

Kısayol zaten WWW olarak mevcut, sadece Ctrl+ Alt+ olarak değiştirin b. Yeni bir tane oluşturmanıza gerek yok.

görüntü tanımını buraya girin


1

CompizConfig Ayarları Yöneticisi (CCSM)

CCSM, bazı sistem klavye kısayollarını değiştirmenize olanak sağlar.

Yüklemek için, Yazılım Merkezini veya şu komutu kullanın:

sudo apt-get install compizconfig-settings-manager

Örneğin

Varsayılan gelen "Pencere yayılması" kısayolunu değiştirmek için kullandı Super+ Wiçin Super+ Tabitibaren, Windows 10 olduğu gibi, başka iş parçacığı üzerinde cevabım :

  1. CCSM'yi Dash’den çalıştırın.
  2. Pencere yönetimine git -> Ölçek -> Ciltlemeler sekmesi -> Pencere Seçiciyi Başlat
  3. Klavye kısayolunu tıklayın ( <Super>wbilgisayarınızda, ancak <Super>Tabbu ekran görüntüsünde).

    CCSM - Pencere yönetimi - Ölçek

  4. Grab tuş kombinasyonunu tıklayın , istediğiniz tuşlara basın, ardından Tamam'a tıklayın.

    Pencere Seçici Başlatma Düzenle


1

gnome-screenshotNint'teki gibi uygulamayı kullanarak ekran görüntüsünü kaydetmek için Print Screen'e basmak istedim.

Ancak, squashfsaraçları kullanarak özel bir ISO oluştururken varsayılan yapmak istediğim için GUI'yi değil terminali kullanarak yapmak istedim .

İlk önce gnome-screenshot komutunu kullanarak yükledim

sudo apt-get install gnome-screenshot

Sonra Ayarlar -> Klavye -> Özel kısayollar -> Ekle (+) düğmesini -> kullanarak özel kısayolu atadım.

İletişim kutusunda:

  • Adı: ekran görüntüsü
  • Komut: gnome-screentshot

Ekle düğmesine basın

Sonra tuşuna basın Print screen.

Anahtar şimdi bağlı ve ekran görüntülerini gerektiği gibi kaydedebiliyorum.
Ancak terminal kullanmamak, GUI yoludur

Sonra dconf-editorkullanarak yükledim

sudo apt-get install dconf-editor

Ve gnome-screenshot
bu yoldaki özel anahtar bağlantılarımı bulmaya çalışıyorum

/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/

Anahtarların değerleri:

  • 'Yazdır'
  • 'gnome-screenshot' komutu
  • 'baskı ekranı' adı

Şimdi bunları kopyalarım ve GUI özel kısayol tuşunu silerim

Terminali açıp bu komutları yazarım

dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/command "'gnome-screenshot'"
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/binding  "'Print'"
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/name "'print screen'"

Ve işte

Artık ekran görüntülerini GUI kullanmadan sadece dconfve terminal kullanarak kaydedebiliyorum . Başka bir şeye de ihtiyacım yok dconf-editor, sadece değerleri almak için kuruldu.


1

Kevin'in çözümünü (xmodmap yaklaşımı) ubuntu 18.04'te denedim. Benim durumumda işe yaramadı. Ancak bu prosedür nihayet çalışmasını sağladı:

  • yerine xmodmap .Xmodmapbir dosyaya kopyalayın ..xsession.xinitrc
  • Dosyanın izinlerini değiştirin (sağ tıklayın, özellikler, izin sekmesi, "okuma ve yazma" izinlerini değiştirin ve kutuyu işaretleyin)
  • /home/<YOUR_USER_NAME>/.xsessionkomut olarak bir başlangıç ​​uygulaması ekleyin .
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.