Câu trả lời:
Ý bạn là cửa sổ tmux? Ctrl + b + ,
nếu bạn có Cb là tiền tố gửi (theo mặc định)
Ngoài ra C-b :rename-window <new name>
và tmux rename-window <new name>
làm việc nữa.
Như tôi biết bạn không thể đổi tên ngăn
ls
set-option -g allow-rename off
có, bạn có thể đổi tên các tên cửa sổ và không chỉ tên cửa sổ bắt đầu bằng tmux> = 2.3. Chỉ cần nhập nội dung sau vào shell của bạn:
printf '\033]2;%s\033\\' 'title goes here'
bạn có thể cần thêm phần sau vào .tmux.conf của mình để hiển thị tên ngăn:
# Enable names for panes
set -g pane-border-status top
bạn cũng có thể tự động gán tên:
set -g pane-border-format "#P: #{pane_current_command}"
Đối với những tmux kịch bản, có một lệnh được gọi là rename-window
ví dụ:
tmux rename-window -t <window> <newname>
tmux rename-window -t 9 my-project
.
Đối với những người muốn dễ dàng đổi tên các ngăn của họ, đây là những gì tôi có trong .tmux.conf
set -g default-command ' \
function renamePane () { \
read -p "Enter Pane Name: " pane_name; \
printf "\033]2;%s\033\\r:r" "${pane_name}"; \
}; \
export -f renamePane; \
bash -i'
set -g pane-border-status top
set -g pane-border-format "#{pane_index} #T #{pane_current_command}"
bind-key -T prefix R send-keys "renamePane" C-m
Các ngăn được đặt tên tự động với chỉ mục, tên máy và lệnh hiện tại. Để thay đổi tên máy, bạn có thể chạy <C-b>R
nó sẽ nhắc bạn nhập tên mới.
* Đổi tên ngăn chỉ hoạt động khi bạn đang ở trong một trình bao.
Ngoài ra, khi viết script, bạn có thể chỉ định tên khi tạo cửa sổ với -n <window name>
. Ví dụ:
# variable to store the session name
SESSION="my_session"
# set up session
tmux -2 new-session -d -s $SESSION
# create window; split into panes
tmux new-window -t $SESSION:0 -n 'My Window with a Name'
Tùy chọn dễ nhất đối với tôi là đổi tên tiêu đề của thiết bị đầu cuối. Vui lòng xem: /superuser/362227/how-to-change-the-title-of-the-mintty-window
Trong câu trả lời này, họ đề cập đến việc sửa đổi biến PS1. Lưu ý: tình huống của tôi là đặc biệt đối với cygwin.
TL; DR Đặt cái này vào tệp .bashrc của bạn:
function settitle() {
export PS1="\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n$ "
echo -ne "\e]0;$1\a"
}
Đặt cái này vào tệp .tmux.conf của bạn hoặc định dạng tương tự:
set -g pane-border-status bottom
set -g pane-border-format "#P #T #{pane_current_command}"
Sau đó, bạn có thể thay đổi tiêu đề của ngăn bằng cách nhập vào bảng điều khiển:
settitle titlename
Bạn có thể điều chỉnh tiêu đề ngăn bằng cách đặt đường viền ngăn trong tmux.conf, ví dụ như sau:
###############
# pane border #
###############
set -g pane-border-status bottom
#colors for pane borders
setw -g pane-border-style fg=green,bg=black
setw -g pane-active-border-style fg=colour118,bg=black
setw -g automatic-rename off
setw -g pane-border-format ' #{pane_index} #{pane_title} : #{pane_current_path} '
# active pane normal, other shaded out
setw -g window-style fg=colour28,bg=colour16
setw -g window-active-style fg=colour46,bg=colour16
Trong đó pane_index, pane_title và pane_current_path là các biến do chính tmux cung cấp.
Sau khi tải lại cấu hình hoặc bắt đầu một phiên tmux mới, bạn có thể đặt tiêu đề của ngăn hiện tại như sau:
tmux select-pane -T "fancy pane title";
#or
tmux select-pane -t paneIndexInteger -T "fancy pane title";
Nếu tất cả các ngăn có một số quy trình đang chạy, vì vậy bạn không thể sử dụng dòng lệnh, bạn cũng có thể nhập các lệnh sau khi nhấn liên kết tiền tố (Cb theo mặc định) và dấu hai chấm (:) mà không có "tmux" ở phía trước chỉ huy:
select-pane -T "fancy pane title"
#or:
select-pane -t paneIndexInteger -T "fancy pane title"
tmux
hiển thị điều đó.