कैसे tmux में एक फलक का नाम बदलें?


119

कैसे एक फलक में नाम बदलने के लिए tmux?

जवाबों:


186

क्या आपका मतलब है tmux window? Ctrl + b + ,यदि आपके पास Cb उपसर्ग भेजने के रूप में है (यह डिफ़ॉल्ट रूप से है)

भी C-b :rename-window <new name>और tmux rename-window <new name>काम भी।

जैसा कि मैं जानता हूं कि आप फलक का नाम नहीं बदल सकते


जब मैं वर्तमान विंडो का नाम बदल रहा हूं, तो मैं यह नहीं देख सकता कि मैं क्या टाइप कर रहा हूं, क्या यह डिफ़ॉल्ट रूप से है? या यह मेरे विन्यास के कारण है? हालाँकि मुझे लगता है कि मेरा कॉन्फ़िगरेशन ऐसा tmuxदिखाने से नहीं रोक रहा है।
zyy

स्पष्ट करने के लिए, आप एक फलक का नाम बदल सकते हैं , और यह तब आवश्यक है जब गलती से बाइनरी आउटपुट इसे भ्रष्ट कर देता है। @ मपद का उत्तर इसका समाधान करता है।
fuzzyTew

नाम बदलने की खिड़की कैसे होती है, जब पुनर्नामित फलक पूछा जाता है- स्वीकृत उत्तर बन जाता है।
XMAN

कि जो पूर्ववत वापस जब भी आप हो जाता हैls
anilbey

2
@anilbey वही यहाँ। इसका समाधान हैset-option -g allow-rename off
joeytwiddle

36

हाँ, आप फलक नामों का नाम बदल सकते हैं, न कि tmux> = 2.3 से शुरू होने वाले विंडो नाम। अपने शेल में बस निम्नलिखित टाइप करें:

printf '\033]2;%s\033\\' 'title goes here'

फलक नाम प्रदर्शित करने के लिए आपको अपने .tmux.conf में निम्नलिखित जोड़ने की आवश्यकता हो सकती है:

# Enable names for panes
set -g pane-border-status top

आप स्वचालित रूप से एक नाम निर्दिष्ट कर सकते हैं:

set -g pane-border-format "#P: #{pane_current_command}"

क्या कमांड बॉर्डर को फलक बॉर्डर फॉर्मेट में रखने का कोई तरीका है? ओह, जीथब पर एक ही मुद्दा है।
konstunn

15

उन स्क्रिप्टिंग tmux के लिए, एक कमांड है, rename-window जैसे कि उदाहरण

tmux rename-window -t <window> <newname>

मेरे मामले में कुछ इस तरह था tmux rename-window -t 9 my-project:।
बोर्राकियाब्लू

8

उन लोगों के लिए जो आसानी से अपने पैन का नाम बदलना चाहते हैं, यह वही है जो मेरे पास है .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-b>Rजो आपको एक नया नाम दर्ज करने के लिए प्रेरित करेगा।

* फलक का नामकरण केवल तभी काम करता है जब आप एक शेल में हों।


4

स्क्रिप्ट करते समय भी, आप विंडो बनाते समय एक नाम निर्दिष्ट कर सकते हैं -n <window name>। उदाहरण के लिए:

# 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'

3

मेरे लिए सबसे आसान विकल्प इसके बजाय टर्मिनल का नाम बदलना था। कृपया देखें: /superuser/362227/how-to-change-the-title-of-the-mintty-window

इस उत्तर में, वे PS1 चर को संशोधित करने का उल्लेख करते हैं। नोट: मेरी स्थिति विशेष रूप से साइबरविन के लिए थी।

TL; DR इसे अपनी .bashrc फाइल में रखें:

function settitle() {
      export PS1="\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n$ "
      echo -ne "\e]0;$1\a"
}

इसे अपने .tmux.conf फ़ाइल या समान स्वरूपण में रखें:

set -g pane-border-status bottom
set -g pane-border-format "#P #T #{pane_current_command}"

तब आप कंसोल में यह लिखकर फलक का शीर्षक बदल सकते हैं:

settitle titlename

0

आप उदाहरण के लिए tmux.conf में फलक बॉर्डर सेट करके फलक शीर्षक समायोजित कर सकते हैं:

###############
# 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

जहाँ pane_index, pane_title और pane_current_path tmux द्वारा प्रदान किए गए चर हैं।

कॉन्फ़िगरेशन को फिर से लोड करने या एक नया tmux सत्र शुरू करने के बाद, आप इस तरह वर्तमान फलक का शीर्षक सेट कर सकते हैं:

tmux select-pane -T "fancy pane title";
#or
tmux select-pane -t paneIndexInteger -T "fancy pane title";

यदि सभी पैन में कुछ प्रक्रियाएँ चल रही हैं, तो आप कमांड लाइन का उपयोग नहीं कर सकते हैं, आप उपसर्ग बाइंड (डिफ़ॉल्ट रूप से Cb) और एक कोलन (:) बिना "tmux" के सामने दबाकर कमांड टाइप कर सकते हैं। आदेश:

select-pane -T "fancy pane title"
#or:
select-pane -t paneIndexInteger -T "fancy pane title"
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.