Làm thế nào để lập trình trao đổi khóa mũ và khóa esc?


18

Tôi là một người dùng Vim nặng và một trong những điều đầu tiên tôi làm khi bắt đầu cài đặt ubfox sạch là hoán đổi khóa mũ và phím esc để giảm chuyển động tay trên bàn phím.

Cho đến nay tôi đã thực hiện nó thông qua hộp thoại cấu hình bàn phím, nhưng hiện tại tôi đang viết một tập các tập lệnh sẽ thiết lập Ubuntu theo cách tôi thích và tôi không thể tìm thấy một cách có thể lập trình hoặc có thể lập trình để thay đổi mục cấu hình này.

Tôi không tìm kiếm các tùy chọn hoán đổi các phím ở bất kỳ cấp độ nào khác ngoài chính gnome, vì vậy điều tôi đang tìm kiếm là cách để kịch bản thay đổi này và nó xuất hiện trong cấu hình bàn phím mà tôi đã sử dụng, nếu tôi quyết định hoàn nguyên thủ công trong tương lai.


ý kiến ​​hay! Tôi đã phàn nàn tất cả thời gian về việc chuyển tay cho Esc khi làm việc ở Vim, nhưng bây giờ đây là giải pháp! thanx bro ;-)
sazary

1
Mặc dù vậy, hãy cẩn thận, một khi bạn đã quen với việc đổi chúng, sẽ rất khó xử khi bạn phải làm việc trên bàn phím của bất kỳ ai khác :)
Jacobo de Vera

2
Một tùy chọn khác là Ctrl-C thay vì Esc. (Hoạt động trên tất cả các bàn phím.
Eric Wilson

@FarmBoy, tuyệt vời! Tôi không biết điều đó!
Jacobo de Vera

Câu trả lời:


22

Bạn có thể thực hiện việc này thông qua GUI bằng cách mở Keyboard Preferencesbảng điều khiển (bên dưới System -> Preferences) và chọn Layouttab. Nhấn vào Options...nút để mở hộp thoại tùy chọn bố trí. Mở rộng Caps Lock key behaviourphần và chọn Swap ESC and Caps Lock.

Có một vài cách bạn có thể viết kịch bản loại này.

Trực tiếp qua Xkb

Chúng tôi có thể thực hiện thay đổi trực tiếp với những điều sau đây:

setxkbmap -option caps:swapescape

Bạn có thể vô hiệu hóa tất cả các tùy chọn bố cục hiện tại (sẽ trả lại khóa mũ cho hành vi mặc định của nó) với:

setxkbmap -option ''

Qua GConf

Bảng điều khiển tùy chọn bàn phím lưu cấu hình của nó thông qua gconf, với bố cục thực sự được áp dụng bởi gnome-settings-daemon. Do đó, bạn có thể gây ra gnome-settings-daemonđể điều chỉnh bố cục bằng cách tự cập nhật gconf.

Các thiết lập có liên quan trong trường hợp này dường như là /desktop/gnome/peripherals/keyboard/kbd/options. Vì vậy, bạn có thể đặt tùy chọn với:

gconftool-2 --set /desktop/gnome/peripherals/keyboard/kbd/options \
    --type list --list-type string \
    '[caps<tab>caps:swapescape]'

Ở trên, <tab>nên là một ký tự tab theo nghĩa đen chứ không phải là khoảng trắng. Bạn có thể vô hiệu hóa lại hành vi bằng cách đặt khóa gconf thành một danh sách trống.


Tùy chọn gconf chính xác là những gì tôi đang tìm kiếm, tuy nhiên cấu hình của bạn đã biến khóa mũ thành một phím thoát và phím thoát thành một phím tab. Tôi đã thay đổi cài đặt một cách thủ công một lần nữa và xem xét giá trị trong trình biên tập gconf, thực tế là vậy [caps<tab>caps:swapescape]. Bây giờ mọi thứ đều hoạt động, tôi chấp nhận câu trả lời của bạn và đề nghị bạn chỉnh sửa nó để thay đổi giá trị để tham khảo trong tương lai. Cảm ơn.
Jacobo de Vera

@Jacobo Trong tương lai, bạn có thể tự đề xuất chỉnh sửa - chỉ cần nhấn nút chỉnh sửa bên dưới câu trả lời. Thay đổi của bạn sẽ nhanh chóng được chấp thuận bởi một ai đó. Tôi đã thực hiện chỉnh sửa cho bạn (kiểm tra xem nó có đúng không). Dù sao, câu trả lời tốt đẹp @James! +1
Stefano Palazzo

1
@Stefano, cảm ơn bạn, tôi đã không nhận thấy tùy chọn chỉnh sửa.
Jacobo de Vera

Có cách nào để làm điều này hoạt động trong GDM ở màn hình đăng nhập không?
lindhe
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.