Menyesuaikan ukuran panel layar split dalam tmux

53

Saya ingin mengubah ukuran panel sehingga saya dapat memperluas / mengompresi ukuran panel (atas / bawah / kiri / kanan dll) ..

Adakah cara untuk menyelesaikan ini?

Prashant
sumber

Jawaban:

68

Dengan anggapan kunci awalan Anda masih merupakan default dari Ctrl-B
^ B: resize-p -D 2
^ B: resize-p -U 2
^ B: resize-p -L 2
^ B: resize-p -R 2
Angka-angka pada akhirnya adalah opsional, default ke 1. -U juga merupakan default, dan tidak perlu.

Jika Anda pernah lupa itu, ^ B? akan menunjukkan ini ditemukan untuk C-Up dan C-Down dan C-Kiri dan C-Kanan, di akhir tombol (dengan binding kunci default).

Anda juga dapat mencoba menekan Ctrl + B diikuti dengan tombol Ctrl + panah.
Namun, perhatikan bahwa tombol Ctrl-panah mungkin bermasalah pada beberapa terminal. Jadi Anda bisa mencoba mengatasi keterbatasan terminal, atau membuat binding kunci pintas baru, atau tidak menggunakan pintasan dan menggunakan perintah yang lebih panjang seperti ditunjukkan di atas.

TOOGAM
sumber
44
Di macbook saya, secara default saya bisa menggunakan Ctrl+B, kemudian Esc + (arrow key).
James M. Lay
3
@ JamesM.Lay Oh ya berhasil juga, tapi bagaimana jika saya ingin menambahkan 2 atau lebih ukuran? karena esc + (arrow)hanya berfungsi sekali, setelah itu saya harus menggunakan Ctrl+Bkemudian mendaftar esc + (arrow)kembali.
Adiyat Mubarak
5
@AdiyatMubarak Anda tidak perlu menggunakan Ctrl+Blagi jika Anda menekan Esc + (arrow)secara berurutan. Setuju ini sangat tidak nyaman, tetapi berhasil.
th3an0maly
2
@ JamesM.Lay sebagai alternatif Ctrl+Bdan M-(arrow)bekerja untuk saya. Biasanya altdan Esckeduanya mengirimMeta
oLas
Ctrl+Bdan kemudian terus optionmenekan sambil menekan tombol panah namun berkali-kali diperlukan untuk saya.
Yuxuan Chen
41

Salah satu opsi untuk mengubah ukuran panel adalah menggunakan mouse. Untuk melakukan ini, tambahkan baris ini ke .tmux.conf:

set -g mode-mouse on
set -g mouse-resize-pane on

Jika Anda menggunakan Mac dan yang di atas tidak berfungsi, gunakan ini sebagai gantinya ( sumber ):

set-option -g mouse on

Setelah mode ini aktif, cukup klik dan seret pembagi panel untuk mengubah ukurannya.

Ben
sumber
3
set -g mouse on #for newer versions
Loves Probability
Hidupku baru saja berubah! Ini berfungsi pada instance Ubuntu saya di WSL (Windows Subsystem untuk Linux) ... oh, tapi sekarang saya tidak bisa menempel dengan tombol kanan mouse lagi. Linux on Window masih canggung.
flickerfly
21

Saya baru saja menambahkan baris berikut ke file tmux.conf saya

bind j resize-pane -D 10
bind k resize-pane -U 10
bind l resize-pane -L 10
bind h resize-pane -R 10

dan sekarang saya bisa menggunakan Ctrl-a (kunci awalan saya) dengan [h | j | k | l] untuk mengubah ukuran panel

Prashant
sumber
1
Dan sekarang saya tidak dapat menggunakan tombol h | j | k | l
subhojit777
1
@ subhojit777 .. Anda harus tetap dapat menggunakan tombol [h | j | k | l]. Ingatlah untuk mengubah ukuran panel tmux Anda masih harus menambahkan kunci awalan (Ctrl-b secara default .. Ctral-a adalah penimpaan saya) sebelum Anda menekan tombol itu. Juga, Anda selalu memiliki opsi untuk mengubah pengikatan ke apa pun yang Anda inginkan .. intinya adalah memberi tahu orang-orang tentang menyimpannya di file tmux.conf
Prashant
Anda harus bertukar ldengan huntuk memiliki binding VI.
Hendrik
11

Dengan asumsi kunci awalan Anda adalah Ctrl-B (Cmd-B di Mac):

  1. Tekan Ctrl-B dan lepaskan
  2. Tekan dan tahan Meta (Opsi di Mac)
  3. Sambil menahan Meta tekan tombol panah berulang kali untuk mengubah ukuran panel saat ini

Namun tampaknya ada beberapa batas waktu jadi jika Anda tidak menekan tombol panah sambil menahan Meta dalam 1 atau 2 detik Meta- {panah} akan dianggap sebagai input dalam prompt saat ini.

jetpack_guy
sumber
Ini adalah yang paling mudah untuk saya ingat, tetapi terkadang terlalu lama. Apakah mungkin untuk mengubah seberapa besar setiap ketukan tombol panah menambah ukuran panel?
connorbode
7

Saya baru saja menemukan cara lain. Rupanya tmuxmemiliki dua jenis penekanan tombol (dengan asumsi bahwa kunci awalan Anda masih Ctrlb)

  1. Tekan Ctrlb, angkat jari Anda lalu tekan salah satu arrowtombol. Ini mengalihkan fokus.
  2. Tekan Ctrlb, jangan angkat jari Anda, lalu tekan salah satu arrowtombol secara bersamaan. Ini mengubah ukuran panel, dan saya kira lebih cepat daripada metode lainnya.

Dengan cara yang sama, Ctrlbojuga memiliki perilaku yang berbeda. Jenis pertama penekanan tombol beralih fokus, dan jenis kedua penekanan tombol menukar panel.

nikhilweee
sumber
Pekerjaan yang bagus menemukan contoh "berhasil di luar kotak".
Cloud