Untuk apa Google? Jika saya mencari judul pertanyaan Anda, ini adalah hit teratas. Memiliki daftar cara pintas yang berguna (termasuk yang diidentifikasi oleh cnicutar di bawah ini)
Geoff
29
Nah, sekarang pertanyaan ini sendiri adalah hit teratas di google ...
jottr
Jawaban:
43
Tanggapan Kent sepenuhnya menjawab pertanyaan Anda, namun jika Anda ingin mengubah konfigurasi tmux agar mirip dengan Layar GNU, inilah tmux.conf yang telah saya gunakan untuk menyelesaikan ini:
# Prefix key
set -g prefix C-a
unbind C-b
bind C-a send-prefix
# Keys
bind k confirm kill-window
bind K confirm kill-server
bind % split-window -h
bind : split-window -v
bind < resize-pane -L 1
bind > resize-pane -R 1
bind - resize-pane -D 1
bind + resize-pane -U 1
bind . command-prompt
bind a last-window
bind space command-prompt -p index "select-window"
bind r source-file ~/.tmux.conf
# Options
set -g bell-action none
set -g set-titles on
set -g set-titles-string "tmux (#I:#W)"
set -g base-index 1
set -g status-left ""
set -g status-left-attr bold
set -g status-right "tmux"
set -g pane-active-border-bg black
set -g pane-active-border-fg black
set -g default-terminal "screen-256color"
# Window options
setw -g monitor-activity off
setw -g automatic-rename off
# Colors
setw -g window-status-current-fg colour191
set -g status-bg default
set -g status-fg white
set -g message-bg default
set -g message-fg colour191
Ini berfungsi dengan baik :, Ctrl+b &perhatikan, bahwa Anda harus mengkonfirmasi dengan ybenar-benar membunuh jendela saat ini termasuk semua panel di jendela itu. Anda akan ditempatkan di dalam jendela yang Anda gunakan sebelumnya sebelum itu.
rubo77
1
Perlu dicatat bahwa secara default Prefix+ qmenampilkan nomor panel, jadi menetapkan killpkombinasi ini akan menggantikan pintasan ini.
kmo
106
<Prefix>& untuk membunuh jendela
<Prefix>x untuk membunuh sebuah panel
Jika hanya ada satu panel (yaitu jendela tidak dibagi menjadi beberapa panel, <Prefix>x akan mematikan jendela)
Seperti yang selalu diulang, <Prefix>umumnya CTRL+b. (Saya pikir untuk pertanyaan pemula, kita hanya bisa mengatakan CTRL+bsepanjang waktu, dan tidak berbicara tentang awalan sama sekali, tapi toh :))
Ini. (Ngomong-ngomong, terima kasih banyak!) Jika dilakukan secara jarak jauh di mana tmux berjalan di beberapa terminal lain, seseorang dapat melakukannya INFO=$(tmux new-window -P notepad)dengan diikuti tmux kill-window -t $INFO.
Sementara Anda bertanya bagaimana cara membunuh window resp. panel , saya sering tidak ingin membunuhnya tetapi hanya untuk mengembalikannya ke kondisi kerja (tata letak panel penting bagi saya, membunuh panel menghancurkannya jadi saya harus membuatnya kembali); tmux menyediakan respawnperintah untuk efek itu: respawn-paneresp. respawn-window. Hanya saja orang-orang seperti saya dapat menemukan solusi ini di sini.
Ini mengira bash sedang berjalan di jendela. Jendela yang ingin saya bunuh yang mengarahkan saya ke halaman ini adalah daftar perintah tmux - yang tidak memiliki shell untuk keluar.
Michael Campbell
1
Jika Anda melihat daftar perintah yang ditampilkan oleh <prefix> + ?, Anda dapat meninggalkannya dengan menekan q atau <RET>.
Scott Centoni
8
ctrl + d membunuh jendela di terminal linux, juga berfungsi di tmux.
Perhatikan bahwa pintasan ini hanya berarti "akhir data". Ini hanya bekerja jika proses yang sedang berjalan di panel tmux menerima sinyal ini dan berakhir sendiri setelah menerimanya (misalnya seperti halnya bash). Karena tidak ada proses di dalam panel, itu akan ditutup oleh tmux. Tidak berfungsi dalam semua kasus.
nyi
inilah yang saya cari.
thedanotto
1
Ini OK jika ada shell yang berjalan di jendela, tetapi jika hanya ada aplikasi beku, sesuatu yang lebih brutal diperlukan. Jawaban Nikolay Fominyh bekerja dengan baik.
oz1cz
Ini hanya membunuh panel, bukan jendela.
StevieD
1
Secara default <Prefix>& untuk mematikan jendela <Prefix>x karena membunuh panel
Dan Anda dapat menambahkan info konfigurasi
Jawaban:
Tanggapan Kent sepenuhnya menjawab pertanyaan Anda, namun jika Anda ingin mengubah konfigurasi tmux agar mirip dengan Layar GNU, inilah tmux.conf yang telah saya gunakan untuk menyelesaikan ini:
sumber
mencoba
Prefix
+&jika Anda memiliki
di Anda
.tmux.conf
, Anda dapat menekanPrefix
+q untuk mematikan jendela juga, hanya jika hanya ada satu panel di jendela itu.default Awalan di atas adalah Ctrl + b, jadi untuk mengakhiri jendela secara default Anda dapat menggunakan Ctrl +b &
sumber
Ctrl+b &
perhatikan, bahwa Anda harus mengkonfirmasi dengany
benar-benar membunuh jendela saat ini termasuk semua panel di jendela itu. Anda akan ditempatkan di dalam jendela yang Anda gunakan sebelumnya sebelum itu.Prefix
+q
menampilkan nomor panel, jadi menetapkankillp
kombinasi ini akan menggantikan pintasan ini.<Prefix>
&
untuk membunuh jendela<Prefix>
x
untuk membunuh sebuah panelJika hanya ada satu panel (yaitu jendela tidak dibagi menjadi beberapa panel,
<Prefix>
x
akan mematikan jendela)Seperti yang selalu diulang,
<Prefix>
umumnyaCTRL+b
. (Saya pikir untuk pertanyaan pemula, kita hanya bisa mengatakanCTRL+b
sepanjang waktu, dan tidak berbicara tentang awalan sama sekali, tapi toh :))sumber
respawn-pane -k
.Umumnya:
Jadi misalnya, jika Anda berada di jendela 1 dan Anda ingin membunuh jendela 9:
sumber
INFO=$(tmux new-window -P notepad)
dengan diikutitmux kill-window -t $INFO
.Bagi saya solusinya terlihat seperti:
ctrl+b q
untuk menampilkan nomor panel.ctrl+b x
untuk membunuh panel.Membunuh jendela terakhir akan membunuh jendela.
sumber
Killing last pane will kill window
. Tidak bekerja untuk saya? Saya menggunakan macJika Anda hanya ingin melakukannya sekali, tanpa menambahkan pintasan, Anda selalu bisa mengetik
sumber
Sementara Anda bertanya bagaimana cara membunuh window resp. panel , saya sering tidak ingin membunuhnya tetapi hanya untuk mengembalikannya ke kondisi kerja (tata letak panel penting bagi saya, membunuh panel menghancurkannya jadi saya harus membuatnya kembali); tmux menyediakan
respawn
perintah untuk efek itu:respawn-pane
resp.respawn-window
. Hanya saja orang-orang seperti saya dapat menemukan solusi ini di sini.sumber
Banyak cara yang berbeda untuk melakukan ini, tetapi favorit saya hanya mengetik 'keluar' pada bash prompt.
sumber
ctrl + d
membunuh jendela di terminal linux, juga berfungsi di tmux.Ini semacam pendekatan.
sumber
Secara default
<Prefix>
& untuk mematikan jendela<Prefix>
x karena membunuh panelDan Anda dapat menambahkan info konfigurasi
lalu
<Prefix>
X karena membunuh satu sesisumber