Emacs keybindings di zsh tidak berfungsi (Ctrl-A, Ctrl-E)

17

Pengikat kunci Emacs saya zshtidak berfungsi ( CtrlA, CtrlE). Saya menggunakan zshOS X.

Mereka mungkin terikat pada hal lain. Saat ini saya menggunakan oh-my-zsh .

Dan saya .zshrcada di sini .

masukkan deskripsi gambar di sini

Takehiro Adachi
sumber
@rene Done! Terima kasih atas sarannya! : D
Takehiro Adachi
Dari tangkapan layar yang saya kumpulkan Anda berada di Mac OS X? Saya memiliki masalah yang sama di terminal. Ctrl + A / E / K sudah diambil di OS itu (untuk digunakan dalam bidang teks di GUI), yang mungkin menjelaskan hal ini.
Henno
@ Benarkah? Saya menggunakan atm zsh, dan ketika saya menggunakan bash, ctrl + a (pergi ke char pertama baris) dan ctrl + e (pergi ke akhir baris) berfungsi dengan baik. tetapi ketika saya menggunakan zsh, itu seperti screenshot. jadi saya pikir ini masalah tentang zsh, bukan OS :(
Takehiro Adachi
@ TakeakeroAdachi tetap Anda bekerja untuk saya juga!
Henno
@ Halo Hebat: D!
Takehiro Adachi

Jawaban:

21

Saya menyelesaikan masalah. Sepertinya oh-my-zsh mengesampingkan keybindings default.

Ketika saya menambahkan baris di bawah pada akhir saya .zshrc, CtrlEdan CtrlAbekerja:

bindkey -e
Takehiro Adachi
sumber
hebat, bekerja untuk saya juga!
Henno
5

Secara umum, Anda dapat menemukan kode kunci dengan mengetik CtrlVdan kunci. Anda kemudian dapat menggunakan tombol ini bindkeyuntuk memetakannya ke zshfungsionalitas keyboard (mis beginning-of-line.).

Dalam kasus spesifik Anda itu akan menjadi CtrlV CtrlAdan CtrlV CtrlE.

Kemudian Anda dapat memasukkan kode di .inputrc, sistem /etc/inputrc, atau yang .zshrcseperti ini:

bindkey '^A' beginning-of-line
bindkey '^E' end-of-line

Ini berfungsi untuk tombol lain juga. Misalnya, saya punya masalah dengan Homedan End.

Anda harus dapat menggunakan trik ini dalam sesi terminal apa pun: tty,

tiktak
sumber