GNU/Linux >> Belajar Linux >  >> Linux

Gunakan Setxkbmap Untuk Menukar Shift Kiri Dan Kontrol Kiri?

Apakah mungkin untuk menukar Kiri Shift dan CTRL Kiri kunci menggunakan setxkbmap bukannya xmodmap ?

EDIT

Saya telah beralih ke Fcitx, yang bekerja jauh lebih baik dengan tata letak keyboard saya dan keymap yang disesuaikan daripada IBus dalam segala hal. Saya sangat merekomendasikannya.

Jawaban yang Diterima:

xmodmap sudah usang; jadi memang harus dilakukan dengan xkb alat.

Swap yang Anda inginkan tampaknya tidak disertakan secara default dengan file X11; jadi Anda harus menulisnya sendiri.

Halaman https://web.archive.org/web/20170825051821/http://madduck.net/docs/extending-xkb/ membantu saya memahami dan menemukan cara untuk melakukannya.

Buat file ~/.xkb/keymap/mykbd di mana Anda meletakkan output setxkbmap , itu akan menjadi definisi keyboard dasar Anda; misalnya:

setxkbmap -print > ~/.xkb/keymap/mykbd

kemudian, buat file simbol untuk menentukan pertukaran kunci Anda, letakkan misalnya di ~/.xkb/symbols/myswap

di sana, letakkan baris berikut:

partial modifier_keys
xkb_symbols "swap_l_shift_ctrl" {
    replace key <LCTL>  { [ Shift_L ] };
    replace key <LFSH> { [ Control_L ] };
};

lalu, edit ~/.xkb/keymap/mykbd file, dan ubah xkb_symbols baris untuk ditambahkan

+myswap(swap_l_shift_ctrl)

akhirnya, Anda dapat memuatnya dengan xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY (Anda tidak dapat menggunakan “~” untuk -I parameter).

Ini mungkin akan mengeluarkan banyak peringatan tentang simbol yang tidak ditentukan untuk beberapa kunci langka, tetapi Anda dapat mengabaikannya (mis., kesalahan pengalihan ke dave:2> /dev/null ).

Jika Anda ingin dapat dengan mudah menukar antara normal dan ctrl/shift terbalik Anda; cukup buat di bawah ~/.xkb/keymap/ file lain, tanpa opsi “myswap” tambahan, dan muat dengan xkbcomp . Anda dapat membuat dua skrip kecil untuk memuatnya.


Linux
  1. Cara Menggunakan Perintah Tar di Linux

  2. Pengalihan Io Dan Perintah Kepala?

  3. Cara mengonversi file teks dari Shift JIS ke UTF-8 dan kembali dari terminal

  1. Buat dan hapus file swap di Ubuntu

  2. Apa cara yang tepat untuk menggunakan inotify?

  3. Linux:Bagaimana cara menggunakan file sebagai input dan output secara bersamaan?

  1. Perbedaan Antara .exrc Dan .vimrc?

  2. Bagaimana cara menggunakan baris file sebagai argumen perintah?

  3. Linux:Tempat meletakkan file swap