Dalam bash shell dengan emacs key-binding, Anda dapat menggunakan kombinasi tombol seperti Mf, Mb untuk memajukan satu kata ke depan atau ke belakang pada prompt shell. Biasanya, kunci meta dipetakan ke tombol Alt pada Windows dan Linux. Namun, di iTerm, saya tidak dapat menemukan cara untuk memetakan kunci meta ini ke tombol Option atau Command di MacBook Pro saya.
Tampaknya di OS X, kunci meta secara default dipetakan ke kunci ESC. Jadi Anda bisa menggunakan ESC-f, ESC-b di iTerm. Namun, kunci ESC tampaknya tidak praktis untuk digunakan. Selain itu, iTerm memang memiliki opsi yang memungkinkan Anda untuk memodifikasi pemetaan untuk meta key (Bookmark> Profil> Profil Keyboard> Global> Option Key as ...), pengaturan ini sepertinya tidak berfungsi sama sekali.
Karena itu, jika ada yang tahu apa solusi untuk masalah ini, beri tahu saya.
Saya telah memutakhirkan ke rilis terbaru, 0.9.6.1012, dan perilaku ini masih berlanjut.
Sunting: Beberapa klarifikasi untuk pertanyaan saya. Ikatan kunci yang saya bicarakan adalah untuk bash shell, bukan di emacs. Kebetulan, secara default, bash shell juga menggunakan key-binding yang sama dengan emacs.
Jawaban:
Cmd+.,
Profiles
,Keys
Dan pilihLeft option Key acts as: +Esc
.Bekerja untuk saya di emacs, walaupun saya tidak yakin apakah itu akan memiliki efek lain yang tidak diinginkan.
sumber
Esc+
, meskipun saya menggunakan tombol opsi kiri itu masih akan mencetak karakter aneh. Ini mungkin terjadi karena saya menggunakan opsi Pengubah Keyboard di pengaturan Keyboard Mac untuk mengubah tombol.Buka Bookmark> Kelola Profil . Kemudian pilih Keyboard Profiles> Global dan pilih Option Key sebagai Meta . Ini berfungsi untuk saya dalam versi 0.9.6.1201.
sumber
alt
+->
danalt
+<-
untuk masing-masing Kirim Urutan Escape +f
/b
.Di bilah Menu Iterm2 => Preferensi => Profil pilih tab tombol dan pilih
kiri Kunci opsi bertindak sebagai + Esc
bekerja untuk saya juga di irssi.
sumber
Saya juga tidak bisa membuat tombol Alt berfungsi, tetapi ada solusi yang membuatnya setidaknya berfungsi untuk navigasi kata melalui tombol kursor:
Lewati ke Kata Selanjutnya atau Sebelumnya di iTerm Menggunakan Alt / Option + Tombol Panah Kiri atau Kanan
sumber
backward-delete-word
(⎇-DEL) kirim kode hex0x17
, untuk lompat ke awal input (⌘- ←) kirim0x01
dan untuk lompat ke akhir (⌘- →) kirim0x05
.Saya menggunakan iTerm2 , dan bagi saya, jawaban ini hanya menyelesaikan sebagian masalah saya:
Selain itu, saya harus pergi ke Cmd+ ,=> Profiles >> Kunci dan dalam daftar Pemetaan Kunci menemukan kedua Kombinasi Kunci s: dan , klik dua kali dan ubah pintasannya sebagai berikut:
* Pastikan untuk memilih tindakan Kirim Escape Sequence .
sumber
Pergi semua kebangkitan zombie di sini, tapi demi keturunan -
Posting ini membuatnya berfungsi sesuai keinginan Anda untuk saya, untuk Mb dan Mf, sambil mempertahankan set 'Option Key as Meta' sehingga Anda tidak mengorbankan pengubah (saya punya pemetaan vim menggunakan meta, secara pribadi).
Singkatnya, di Profil Papan Ketik Global Anda, tambahkan dua pemetaan baru dengan pengaturan:
man ascii
)Satu-satunya hal yang saya masih lewatkan dari Terminal.app adalah
Opt-Backspace
menghapus dengan kata. Ada solusi lain untuk itu, tetapi saya hanya mencoba melatih diri untuk menggunakannyaCtrl-w
.sumber
Ctrl-w
saatOpt-Backspace
ditekan.Lebih mudah di iTerm2. Pergi ke preferensi-> bookmark-> keyboard dan pilih Opsi mengirim + ESC. Di iTerm2 Anda dapat mengkonfigurasi tombol opsi kiri dan kanan secara terpisah, jadi ingatlah untuk mengubah keduanya jika itu yang Anda inginkan. Tautan untuk iTerm2: http://sites.google.com/site/iterm2home/
sumber
Buka Bookmark> Kelola Profil. Kemudian pilih Keyboard Profiles> Global dan pilih Option Key sebagai + ESC.
Bekerja di iTerm Build 0.9.5.0611 & Build 0.9.6.20090415
sumber
Saya menemukan beberapa solusi pada stackoverflow juga, cukup buka profil keyboard dan di "Global" ubah "Option key sebagai" + ESC
yang bekerja untuk saya dengan sempurna =) btw ada beberapa patch iterm juga lihat di sini: http://www.emacswiki.org/emacs/EmacsForMacOS
sumber
Coba "ekspor LANG = C". Saya bukan ahli emacs, tetapi saya menemukan ini memungkinkan emacs pada OS X untuk mengenali kunci Opsi sebagai kunci Meta di iTerm,
sumber
Saya tidak tahu tentang ITerm, tetapi Anda bisa melakukan ini di Terminal. Instruksi dapat ditemukan di sini:
Emacs pada binding kunci Mac OS X Leopard
sumber
Inilah yang berfungsi untuk saya: Bookmark> Kelola Profil> Profil Keyboard> Global / xterm> Tombol Pilihan sebagai + Esc. Dengan ini, saya dapat menggunakan Option + Enter di Midnight Commander dan nama file / direktori yang dipilih saat ini muncul di string perintah, sebagaimana mestinya. Option Key sebagai Meta tidak bekerja untuk saya. Membangun iTerm saya adalah 0,10.
sumber