Panel ukuran tidak berfungsi untuk tmux di mac?

33

Setelah mencari, saya pikir ctrl + b (PREFIX) maka panah ctrl + harus mengubah ukuran panel saat ini. Tapi itu tidak berhasil. Apakah saya kehilangan sesuatu?

Terima kasih.

Biswanath
sumber
FYI, saya memang menyesuaikan lebar dengan PREFIX: resize-pane, tetapi masih bertanya-tanya mengapa perintah di atas tidak bekerja.
Biswanath
seharusnya prob ada di apple.stackexchange.com
Alex Leach

Jawaban:

42

Mungkin terminal Anda tidak mengirimkan urutan (berbeda) ketika Anda menahan Controldan menekan tombol panah.

Coba jalankan catdan ketikkan kunci ke dalamnya (Control-C untuk keluar). Anda mungkin akan menemukan bahwa (mis.) UpDan Control- Upkeduanya menghasilkan urutan yang sama.

Aplikasi Terminal OS X

Dalam konfigurasi standarnya, aplikasi Terminal OS X mengirimkan urutan ^[[A(atau ^[OA) apakah Anda mengetik Upatau Control- Up(juga kombinasi dengan Shiftdan Optionjuga).

Namun, Anda dapat mengkonfigurasi ulang Terminal untuk mengirim kode yang sesuai. Agak membosankan, tetapi biasanya Anda hanya perlu melakukannya sekali saja.

  1. Terminal > Preferensi ...
  2. Pengaturan tab tingkat atas
  3. pilih profil yang ingin Anda modifikasi
  4. Tab keyboard
  5. klik tombol plus untuk menambahkan ikatan baru

    • pilih tombol kursor
    • atur pengubah ke control
    • gunakan Send Text:aksinya
    • ketik Escape(akan ditampilkan sebagai \033) diikuti oleh [1;5dan satu karakter lagi:
      • Auntuk Up,
      • Buntuk Down,
      • Cuntuk Right, atau
      • D untuk Left
    • klik OK untuk menambahkan ikatan

Misalnya, urutan akhir untuk Control- Upharus berakhir seperti \033[1;5A.

Urutan ini adalah yang dihasilkan XTerm (lihat dokumentasi ctlseq untuk detailnya).

Ulangi langkah terakhir untuk tombol panah lainnya.

Ini 2

iTerm 2 mengirimkan urutan yang diharapkan secara default.

Chris Johnsen
sumber
Memang, tombol Ctrl + {panah} dipetakan untuk berpindah aplikasi. Mereka tidak mengirimkan urutan.
Biswanath
19
Saya mencoba ini pada mesin vanilla Mavericks (retina MBP akhir 2013), tetapi tidak berhasil tanpa menonaktifkan juga semua pintasan tombol Ctrl + Arrow di System Preferences -> Keyboard -> Shortcuts -> Mission Control. +1 untuk kiat tentang penggunaan catuntuk melihat acara keyboard
Alex Leach
berfungsi dengan baik sampai saya mulai tmux. Saya mendapatkan ^ [[1; 5A ^ [[1; 5B sebelum meluncurkan tmux, tetapi ^ [OA ^ [OB di tmux.
nakhli
1
@ Sinbadsoft.com: Sepertinya Anda belum xterm-keysmengaktifkan untuk jendela tmux ; Anda mungkin mau set -gw xterm-keys on.
Chris Johnsen
bekerja dengan baik untuk saya (el capitan).
ling
10

Pada setidaknya Mavericks dan iTerm2, Anda harus menahan Control, lalu tekan b(alih-alih menahan), lalu tahan tombol arah. Ini mengirimkan cukup banyak urutan yang sama seperti menahan Control- bdengan tombol arah sehingga berfungsi.

Juga, pastikan untuk menuju ke pengaturan keyboard dan di tab jalan pintas menonaktifkan kontrol misi dan cara pintas keyboard yang mungkin Anda miliki untuk Controlditambah tombol arah.

quinnirill
sumber
7
Terima kasih! mengubah binding kontrol misi / aplikasi windows di Keyboard Shortcuts membuat perbedaan bagi saya
sixty4bit
7

Anda dapat menggunakan kunci meta alih-alih kunci kontrol di kombinasi ctrl- ↑ dan ctrl- ↓. Di OSX Terminal, kunci meta default adalah kunci keluar. Misalnya, untuk menambah ukuran panel, ketik ctrl-b esc- ↑.

Saya menemukan kunci melarikan diri yang sulit dijangkau sehingga saya menggunakan tombol opsi sebagai kunci meta. Di Terminal.app Anda dapat mengubahnya dengan masuk ke Terminal> Preferensi> Profil> Keyboard: centang "Gunakan Opsi sebagai Kunci Meta".

Sekarang Anda dapat mengetik opsi ctrl-b- ↑ untuk menambah ukuran atau opsi ctrl-b- ↓ untuk mengurangi ukuran dan Anda tidak perlu memetakan kembali kunci kontrol misi.

yothenberg
sumber
Menggunakan Escape hanya solusi sebagai menahan Ctr + Arrow secara default pada MacOS saya bergeser ke desktop lain.
klimat