Làm thế nào để tôi ánh xạ lại khóa phím mũ?


69

Trước đây, tôi thường sử dụng xmodmapđể ngăn Caps Locknút hoạt động, và sau đó nói với Launchy để xử lý việc bấm phím thay thế. Tôi dường như không thể làm điều này nữa.

Cách tốt nhất để vô hiệu hóa Caps Lockhành vi bình thường của bạn và khiến nó làm gì khác là gì?


1
Đối với Ubuntu 14.04, hãy xem Askubfox.com/q/444714/25388
Léo Léopold Hertz

Câu trả lời:


71

Từ howtogeek.com có câu trả lời hay cho bất kỳ HĐH nào.

Đối với Linux (bao gồm Ubuntu):

setxkbmap -option <OPTION>

Trong trường hợp <OPTION>có thể cho ví dụ về:

  • caps:none - Tắt khóa mũ.
  • caps:super- Caps Lock trở thành một Super bổ sung (còn gọi là khóa Win).
  • caps:ctrl_modifier- Caps Lock trở thành một Ctrl bổ sung .
  • caps:numlock- Caps Lock trở thành một Num Lock bổ sung .
  • caps:escape- Caps Lock trở thành một Escape bổ sung .
  • caps:backspace- Caps Lock trở thành một Backspace bổ sung .
  • caps:swapescape - Caps Lock trở thành Escape và Escape trở thành Caps Lock

Lưu ý: Xmodmap không được dùng cho setxkbmap.


3
yêu bạn, cảm ơn, nó hoạt động cho ubutnu 14.10
Andrzej Rehmann

2
cũng hoạt động trong Ubuntu 15.10! cảm ơn!
donatello

6
đẹp và đơn giản, hoạt động trong 16.04
chepyle

4
Để khôi phục bất kỳ setxkbmapthay đổi nào (tức là nếu bạn cần phím Caps trở lại vị trí ban đầu), người ta chỉ cần chạy điều này:setxkbmap -option
Landroni

1
Nếu bạn đã sửa phím Capslock thành backspace và bây giờ bạn tự hỏi tại sao nó sẽ không xóa các từ nếu bạn nhấn nó, đó là vì bạn cần sử dụng một lệnh bổ sung. Sau khi setxkbmap -option caps:backspacenhập xset r 66và voilá.
Gabriel

19

Bạn có thể vô hiệu hóa nó bằng cách đi tới bàn phím-> Bố cục-> tùy chọn-> hành vi khóa mũ và chọn "vô hiệu hóa khóa mũ".


Chỉnh sửa :

Tôi không biết tại sao nó có vẻ bất tiện với các phím Bàn phím khác.

Nhưng Launchy hoạt động tốt với tôi sau khi thử với CTRL+ Super+ Space.

nhập mô tả hình ảnh ở đây

Và bạn cần liệt kê danh sách trắng launchyvào các biểu tượng khay. Xem Làm thế nào để tôi truy cập và cho phép nhiều biểu tượng hơn trong khay hệ thống? . Ngoài ra, bạn cần thêm nó vào các ứng dụng Start Up, vì nó sẽ không hoạt động khi nó không được mở.


Rốt cuộc, là một thay thế cho Launcy, hãy thử Synapse để tích hợp tốt nhất với gnome và unity.


Tùy chọn này dường như không có sẵn cho tôi trên Ubuntu 15.04.
MichielB

19

Trong Ubuntu 11.10 - 13.04

  1. Mở ứng dụng Bố trí bàn phím và nhấp vào nút "Tùy chọn".
  2. Một danh sách các tùy chọn rebinding sẽ xuất hiện. Chọn "Hành vi phím Caps Lock".
  3. Chọn tùy chọn tái sử dụng Caps Lock ưa thích của bạn.

Ảnh chụp màn hình của các tùy chọn có sẵn


1
@JacobJohanEdwards Lưu ý đến bản thân, kiểm tra xem có xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape'còn hoạt động không.
Jjed

Đối với người dùng vim, 'Vim thực tế' khuyên bạn nên ánh xạ khóa mũ thành ctrl ở cấp hệ thống. Bố cục bàn phím> Tùy chọn> Vị trí phím Ctrl> Caps Lock khi Ctrl thực hiện thủ thuật.
rpattabi

12
Các cài đặt này không tồn tại nữa trong 13.10. Cài đặt gnome-tweak-tool, ở đó bạn sẽ có các cài đặt tương tự trong "Nhập".
pcworld 23/12/13

Điều này không hoạt động với tôi trong Ubuntu 12.10. Lộn xộn với những cài đặt trong trung tâm điều khiển gnome dường như không có tác dụng.
Andrew Wagner

4
Tại sao họ loại bỏ các tùy chọn này từ 14.04?
Léo Léopold Hertz

16

Về cơ bản, đây là bản sửa đổi của câu trả lời được cung cấp tại https://askubfox.com/a/223674/22073 .

Bạn cũng có thể sửa đổi hành vi của Caps Lock bằng cách sử dụng XKBOption. Những thay đổi này thậm chí còn được hỗ trợ cho các bảng điều khiển ảo (/ dev / tty [1-6] hoặc Ctrl-Alt-F [1-6]).

Ví dụ: để tắt Caps Lock, bạn sẽ có các mục sau /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

Sau đó, bạn sẽ chạy:

sudo dpkg-reconfigure keyboard-configuration

Để biết danh sách đầy đủ các tùy chỉnh của XKBOPTIONS, hãy xem /usr/share/X11/xkb/rules/base.lst. Đây là danh sách đầy đủ từ máy Ubuntu 13.10 của tôi: http://sprunge.us/cUZO

Thậm chí nhiều thông tin có thể được tìm thấy trên wiki ArchLinux: https://wiki.archlinux.org/index.php/Pal_Configuration_in_Xorg


Hoàn hảo, tôi đang sử dụng XKBOPTIONS="ctrl:swapcaps"để trao đổi Ctrl trái với Caps.
Márcio

Nó hoạt động trên 16.04 trong X và các bảng điều khiển ảo.
jfs

11

Để ánh xạ lại caps_lock vô dụng thành một ca cơ bản, hãy làm

xmodmap -e "keycode 66 = Shift_L"

Điều này không tồn tại sau khi khởi động lại.
Czarek Tomczak

3
Để duy trì hoạt động sau khi khởi động lại, hãy làm: Ubuntu Dash Home> Ứng dụng khởi động> Thêm> Nhập lệnh ở trên.
Czarek Tomczak

7

Phương pháp sau đây sử dụng kết hợp Compiz để khởi chạy một ứng dụng khi nhấn phím được thực hiện.

Tóm tắt -

  1. thay đổi hành vi của phím Caps Lock để bắt chước một phím khác.
  2. Định cấu hình compiz để nghe khóa mới bắt chước và chạy tập lệnh tùy chỉnh.

Thay đổi phím khóa mũ

Quá thay đổi hành vi của Caps Lock Key, bạn có thể sử dụng xmodmapnhư sau:

  • tạo một tập tin, ví dụ "capslock"
  • sao chép và dán các mục sau vào tập tin
keycode 66 = cent
clear Lock
add Control = cent
  • bây giờ hãy chạy xmodmap để nhận ra sự thay đổi của bạn:

xmodmap capslock

Để chạy vĩnh viễn, thêm lệnh này vào các ứng dụng khởi động.

Nhấn Caps Lock bây giờ chỉ bắt chước nhấn phím "cent" - lưu ý đây không phải là phím thực sự tồn tại trên bàn phím của tôi.

Bạn có thể nhận được một danh sách các tên KeySym từ đây .

Cấu hình Compiz

Khởi động Trình quản lý cài đặt CompizConfig

Trong phần chung, đảm bảo "Lệnh" được bật và định cấu hình lệnh như được hiển thị:

nhập mô tả hình ảnh ở đây

NB cho phép liên kết khóa và sử dụng "tổ hợp phím lấy" để nhận ra khóa "cent" của bạn. Thật không may, bạn không thể nhận được compiz để nhận ra khóa phím cap.

nhập mô tả hình ảnh ở đây

Rõ ràng - thay đổi "firefox" cho bất kỳ lệnh nào bạn sử dụng để bắt đầu "launchy"

Bây giờ khi bạn nhấn phím Caps Lock, compiz sẽ nhận ra phím "cent" được ánh xạ và chạy lệnh - trong trường hợp này là firefox - trong trường hợp của bạn là "launchy".


Sau vài phút, cài đặt quay lại - và một lần nữa Caps Lock có hành vi thông thường.
Vitaly Zdanevich

5
  1. Sử dụng lệnh xev. Khi bạn nhấn enter, xev sẽ khởi chạy. xev lấy tất cả thông tin đầu vào và thông tin của bạn về khóa vào dòng lệnh. Tôi khuyên bạn nên đưa chuột qua phím thoát của cửa sổ xev, nhấn phím mũ (hoặc bất kỳ phím nào bạn muốn tìm hiểu) và thoát ngay lập tức xev. Các dòng có liên quan trên hệ thống của tôi, cho khóa mũ trông giống như:

    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
    

    Lưu ý keycode(66) và keysym(0xffe5).

    Bây giờ, bạn cũng có thể lấy dữ liệu cho một khóa khác - một khóa bạn không thực sự sử dụng và trong bối cảnh bạn muốn sử dụng nút khóa mũ, không làm gì cả. Vì vậy, nếu bạn muốn khóa mũ để kích hoạt hộp tìm kiếm Unity (như siêu thường làm), có thể sử dụng `, chẳng hạn. Trên máy của tôi:

    keycode 49 (keysym 0x60, grave)
    
  2. Liên kết chức năng của khóa mới với nút Caps Lock, sử dụng xmodmap. Tôi khá chắc chắn rằng bạn muốn sử dụng một lệnh như:

    xmodmap -e "keycode 66=0x60"
    

    Bây giờ, nếu bạn nhấn nút khóa mũ vật lý trong hộp văn bản, ký tự nghiêm trọng (`) sẽ xuất hiện. Nhưng nếu bạn ánh xạ một phím tắt cho nó, nó sẽ làm một cái gì đó khác. Nếu bạn muốn có thể sử dụng nó trong hộp văn bản, có thể thay thế khóa mũ bằng dịch chuyển trái hoặc f10 hoặc một cái gì đó không giống như nó sẽ can thiệp vào lệnh bạn muốn sử dụng.

  3. Kiểm tra nó để đảm bảo lệnh tôi đã cho bạn hoạt động theo cách bạn muốn.

  4. Chuyển đến các ứng dụng khởi động và thêm lệnh đó vào các ứng dụng khởi động của bạn. Bằng cách này, chìa khóa sẽ chuyển đổi chính xác mỗi khi bạn khởi động.

  5. Nhảy.

(hét to ngạc nhiên) Thay đổi Keybindings (phần cứng thành phần mềm)

Ngoài ra, để được trợ giúp thêm về xmodmap:

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

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


5

Ubuntu 16.04

setxkbmap -option <OPTION> từ câu trả lời của Wernight dường như có tác dụng ngay lập tức với tôi.

Tuy nhiên, nó sẽ biến mất khi khởi động lại. Để giải quyết điều này, tôi đã thêm vào các ứng dụng khởi động của mình

  1. Tìm kiếm và chạy Startup Applications>> Nhấp vào Thêm
  2. Đặt /usr/bin/setxkbmap -option <OPTION>dưới dạng lệnh (Lưu ý: đường dẫn đầy đủ là quan trọng)

Thay thế <OPTION>bằng một cái gì đó như caps:escape(tôi sử dụng nó cho vi)

Lý lịch

Tôi chỉ nâng cấp từ 15.10 lên 16.04 và bất cứ điều gì tôi đã sử dụng để lập bản đồ này trước khi ngừng hoạt động.


2

Tùy chọn mà tôi thấy phù hợp nhất với tôi (trong bất kỳ wm / de tương thích X nào) đang thêm

Option "XkbOptions" "caps:swapescape"

bên trong

Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "US"
    Option "XkbOptions" "caps:swapescape" # << is what you want
EndSection

chặn trong /etc/X11/xorg.conf.d/00-keyboard.conf (tạo nếu cần).


1

trong khi tất nhiên tùy chọn xmodmap sẽ hoạt động tôi muốn tìm một tùy chọn sử dụng GUI. Điều này có sẵn cho tôi (sử dụng Ubuntu 15.10):

  • cài đặt gnome-chỉnh-công cụ
  • đi đến 'loại'
  • trong 'Hành vi của phím Caps Lock' chọn 'Caps lock bị vô hiệu hóa'

-1

Giải pháp mạnh mẽ nhất là mua một bàn phím cho phép bạn sắp xếp lại các phím trong phần sụn, tức là một bàn phím chuyên nghiệp, có thể lập trình.

Chúng thường có giá khoảng 200 đô la và cũng có móc khóa cơ cao cấp. Chúng đắt tiền, nhưng chúng là cách duy nhất để tránh phải chiến đấu với điều này ở mọi máy mới mà bạn ngồi và mỗi lần các nhà phát triển thực hiện các thay đổi đối với cơ sở hạ tầng hệ điều hành là cơ bản như bản đồ bàn phím.


1
Điều này không giúp ích gì với máy tính xách tay.
wallyk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.