คำตอบ:
คำตอบของ Kent ตอบคำถามของคุณอย่างเต็มที่อย่างไรก็ตามหากคุณต้องการเปลี่ยนการกำหนดค่าของ tmux ให้คล้ายกับหน้าจอ GNU นี่คือ tmux.conf ที่ฉันเคยทำมาแล้ว:
# 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
ลอง Prefix
+&
ถ้าคุณมี
bind q killp
ในของ.tmux.conf
คุณคุณสามารถกดPrefix
+ qเพื่อฆ่าหน้าต่างได้เช่นกันเฉพาะในกรณีที่มีแผงเดียวในหน้าต่างนั้น
เริ่มต้นของคำนำหน้าข้างต้นเป็น Ctrl + b, เพื่อที่จะยุติหน้าต่างโดยเริ่มต้นที่คุณสามารถใช้ Ctrl +b &
Ctrl+b &
โปรดทราบว่าคุณต้องยืนยันด้วยy
เพื่อฆ่าหน้าต่างปัจจุบันโดยรวมบานหน้าต่างทั้งหมดในหน้าต่างนั้น คุณจะถูกวางไว้ในหน้าต่างที่คุณใช้ล่าสุดก่อนหน้านั้น
Prefix
+ q
แสดงหมายเลขบานหน้าต่างดังนั้นการกำหนดให้killp
กับชุดค่าผสมนี้จะแทนที่ทางลัดนี้
<Prefix>
&
สำหรับฆ่าหน้าต่าง
<Prefix>
x
สำหรับฆ่าบานหน้าต่าง
หากมีบานหน้าต่างเดียว (เช่นหน้าต่างจะไม่แยกออกเป็นหลายบานหน้าต่าง<Prefix>
x
จะฆ่าหน้าต่าง)
ในฐานะที่เป็นซ้ำเสมอโดยทั่วไป<Prefix>
CTRL+b
(ฉันคิดว่าสำหรับคำถามเริ่มต้นเราสามารถพูดได้CTRL+b
ตลอดเวลาและไม่พูดถึงคำนำหน้าเลย แต่อย่างไรก็ตาม :))
respawn-pane -k
พิมพ์แล้ว
โดยทั่วไป:
tmux kill-window -t window-number
ตัวอย่างเช่นหากคุณอยู่ในหน้าต่าง 1 และคุณต้องการฆ่าหน้าต่าง 9:
tmux kill-window -t 9
INFO=$(tmux new-window -P notepad)
tmux kill-window -t $INFO
สำหรับฉันทางออกดูเหมือนว่า:
ctrl+b q
เพื่อแสดงหมายเลขบานหน้าต่างctrl+b x
เพื่อฆ่าบานหน้าต่างการฆ่าบานหน้าต่างสุดท้ายจะฆ่าหน้าต่าง
Killing last pane will kill window
. ใช้งานไม่ได้สำหรับฉัน ฉันใช้แม็ค
หากคุณต้องการทำเพียงครั้งเดียวโดยไม่ต้องเพิ่มทางลัดคุณสามารถพิมพ์ได้ตลอดเวลา
<prefix>
:
kill-window
<enter>
ในขณะที่คุณถามว่าจะฆ่าหน้าต่างตอบสนอง บานหน้าต่างฉันมักจะไม่ต้องการที่จะฆ่า แต่เพียงเพื่อให้มันกลับสู่สถานะการทำงาน (รูปแบบของบานหน้าต่างมีความสำคัญกับฉันการฆ่าบานหน้าต่างทำลายมันดังนั้นฉันต้องสร้างใหม่); tmux จัดเตรียมrespawn
คำสั่งให้กับเอฟเฟกต์: respawn-pane
resp respawn-window
. เพียงแค่คนอย่างฉันอาจพบทางออกนี้ที่นี่
วิธีการต่าง ๆ มากมายในการทำเช่นนี้ แต่สิ่งที่ฉันชอบคือเพียงพิมพ์ 'exit' บน bash prompt
ctrl + d
ฆ่าหน้าต่างใน linux terminal, ยังทำงานใน tmux
นี่เป็นวิธีการหนึ่ง
โดยค่าเริ่มต้น
<Prefix>
& สำหรับการฆ่าหน้าต่าง
<Prefix>
x เพื่อฆ่าบานหน้าต่าง
และคุณสามารถเพิ่มข้อมูลการกำหนดค่า
vi ~/.tmux.conf
bind-key X kill-session
จากนั้น
<Prefix>
X เพื่อฆ่าเซสชัน