प्रशंसनीय tmux विन्यास बनाना?


24

मैं खुद को अक्सर एक ही चीज़ के साथ देखता हूँ tmux:

  1. cd किसी दिए गए निर्देशिका के लिए।
  2. tmux
  3. मैं क्या कर रहा हूँ के लिए विंडो का नाम बदलें।
  4. खिड़की को 50% लंबवत रूप से विभाजित करें।
  5. बाईं विंडो में एक प्रक्रिया शुरू करें।
  6. सही विंडो में एक और प्रक्रिया शुरू करें।
  7. फायदा।

क्या मेरे लिए इस सब को स्वचालित करने का एक तरीका है ताकि मैं एक एकल कमांड चला सकूं और जिस विंडो को देख रहा हूं उसे प्राप्त कर सकूं?


शेल उर्फ ​​के बारे में क्या?
मार्को

जवाबों:


22

आर्कविकी दिन बचाता है! Tmux पेज पर सत्र प्रारंभ एक उदाहरण देता है।

जिसके अनुसार, बजाय tmux के रूप में शुरू करने की tmux, tmux new -s nameसत्र का नाम जब यह बजाय इसे एक नंबर देने के शुरू होता है।

सत्र आरंभीकरण


आप अपने ~ / .tmux.conf में उन विवरणों को शामिल करके खिड़कियों के साथ एक सत्र खोल सकते हैं।

new  -n WindowName Command
neww -n WindowName Command
neww -n WindowName Command

स्प्लिट विंडो (कई पैन) के साथ एक सत्र शुरू करने के लिए, आप जिस विभाजन को विभाजित करना चाहते हैं, उसके नीचे स्प्लिट कमांड शामिल करें; इस प्रकार:

new  -s SessionName -n WindowName Command
neww -n foo/bar foo
splitw -v -p 50 -t 0 bar
selectw -t 1 
selectp -t 0

2 खिड़कियाँ खोलेंगे, जिनमें से दूसरी को foo / bar नाम दिया जाएगा और बार से ऊपर चलने वाले foo के साथ आधे (50%) में लंबवत रूप से विभाजित किया जाएगा। फोकस विंडो 2 (फू / बार), टॉप पेन (फू) में होगा।

नोट: सत्रों, खिड़कियों और पैनों की संख्या शून्य से शुरू होती है, जब तक कि आपने अपने एएफसी में 1 का बेस-इंडेक्स निर्दिष्ट नहीं किया है।

कई सत्रों को प्रबंधित करने के लिए, अपनी गोपनीय फ़ाइल से अलग सत्र फ़ाइलों को स्रोत:

# initialize sessions
bind F source-file ~/.tmux/foo
bind B source-file ~/.tmux/bar

6

रोब का जवाब बहुत अच्छा है और वास्तव में बताता है कि कैसे tmux के भीतर से सत्रों को संभालना है। अब, यदि आप किसी तृतीय-पक्ष उपकरण का उपयोग करने में कोई आपत्ति नहीं करते हैं, तो tmuxinator एक बेहतरीन परियोजना है जो सत्रों को आसानी से बनाने और प्रबंधित करने में मदद करती है

प्रत्येक सत्र एक कॉन्फ़िगर फ़ाइल द्वारा नियंत्रित किया जाता है जो आपको अपने सभी विंडोज और पैन को परिभाषित करने की अनुमति देता है साथ ही उनके लेआउट और डिफ़ॉल्ट कमांड को उनके भीतर चलाने के लिए। यह आपको एक डिफ़ॉल्ट प्रोजेक्ट डायरेक्टरी, विशिष्ट सॉकेट और डेमॉन को भी परिभाषित करने की अनुमति देता है, जिन्हें चलाने की आवश्यकता होती है (उदाहरण के लिए mysql)। इसे बंद करने के लिए, यह उन्हें संलग्न करने के लिए एक आसान तरीका प्रदान करता है: बस चलाएं mux [session-name]और यह या तो सत्र शुरू करेगा या यदि यह पहले से चल रहा है तो इसे संलग्न करें। मैं इसे थोड़ी देर के लिए इस्तेमाल कर रहा हूं और इसे प्यार करता हूं (धन्यवाद अजीज !)।

https://github.com/aziz/tmuxinator

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.