উইন্ডোতে tmux ফলকটি সরানো হচ্ছে


228

যখন আমার একাধিক উইন্ডো রয়েছে তখন আমি কীভাবে বিদ্যমান ফলকটি টিএমউক্সে অন্য উইন্ডোতে স্থানান্তর করব ?

আমি পর্দা থেকে আসছি , যেখানে আমি প্যানে স্যুইচ করতে পারি এবং তারপরে উইন্ডোজগুলি স্যুইচ করতে পারি যতক্ষণ না আমি নিজের পছন্দ মতো পৌঁছাতে পারি; tmux এটির অনুমতি দেয় না বলে মনে হয়।

উত্তর:


209

এটি করার কমান্ডটি join-panetmux 1.4-এ রয়েছে।

join-pane [-dhv] [-l size | -p percentage] [-s src-pane] [-t dst-pane]  
    (alias: joinp)
    Like split-window, but instead of splitting dst-pane and creating
    a new pane, split it and move src-pane into the space.  This can
    be used to reverse break-pane.

এটি সহজ করার জন্য, আমার কাছে এটির জন্য এই বাঁধনগুলি রয়েছে .tmux.conf:

# pane movement
bind-key j command-prompt -p "join pane from:"  "join-pane -s '%%'"
bind-key s command-prompt -p "send pane to:"  "join-pane -t '%%'"

প্রথমটি টার্গেট উইন্ডো থেকে পেনটি ধরে এবং এটি বর্তমানের সাথে যোগ দেয়, দ্বিতীয়টি বিপরীত হয়।

তারপরে আপনি অধিবেশনটির মধ্যে থেকে নিম্নলিখিতটি চালিয়ে আপনার টিএমএক্স সেশনটি পুনরায় লোড করতে পারেন:

$ tmux source-file ~/.tmux.conf

আমি এই পদ্ধতিটি চেষ্টা করছি তবে যখন আমি আমার কোডটি আমার .tmux.conf ফাইলে রাখি এবং Ctrl-b, j করি, তখন কিছুই ঘটবে বলে মনে হয় না।
mrlanrat

2
আপনার কমপক্ষে দুটি উইন্ডো খোলার দরকার রয়েছে, প্রতিটিটিতে দুটি করে প্যান থাকবে: তারপরে সেই উইন্ডোটিতে ফলকটি প্রেরণের জন্য প্রম্পটে উইন্ডোটির নামটি চাপুন Prefix+sএবং প্রবেশ করুন ...
জেসনওয়ারিয়ান

এই নিয়ে আমার এখনও ভাগ্য নেই, কিছুই হয় না। আমার অনুভূতিটি পাওয়া যায় যে tmux .tmux.conf ফাইলটি পড়ছে না কারণ এটি Ctrl-b, j বা Ctrl-b, s তে মোটেও সাড়া দেয় না। (এটি কনফিগার ফাইলে কেবলমাত্র দুটি লাইন)
mrlanrat

7
@ মি্রলানরাট আমি দেখতে পেয়েছি যে আপনার অবশ্যই একটি কোলনের সাথে উইন্ডো নম্বরটি উপস্থাপন করতে হবে। আমার উত্তর নীচে দেখুন।
ব্রুনো ব্রোনোস্কি 16

1
'%%' কী বোঝায়?
অলিগোফ্রেন

152

join-pane এর উত্তর। Tmux ডকুমেন্টেশনের ভিত্তিতে এটি ব্যবহারের চেষ্টা করার ক্ষেত্রে আমারও সমস্যা ছিল। আমি আবিষ্কার করেছি যে টি-ও-এস স্যুইচগুলি [অধিবেশন]: উইন্ডোটি [সেশন:] উইন্ডো নয় not এর অর্থ এই যে অধিবেশনটি নির্দিষ্ট করা alচ্ছিক, তবে অন্তর্ভুক্ত: বাধ্যতামূলক। (আমি tmux 1.5 ব্যবহার করছি)

অতএব, বর্তমান উইন্ডোতে একটি ফলক যুক্ত করতে এবং প্যানে উইন্ডো 1 স্থাপনের জন্য, কমান্ডটি হবে (Ctrl-B বা আপনার বাঁধার কীটি যা-ই অনুসরণ করবে) ...

:join-pane -s :1

তারপরে আপনি এটিকে ব্রেক-ফলক দিয়ে ভাঙ্গতে পারেন যা ডিফল্টরূপে: Ctrl-B! যদি আপনি এটি একটি শর্টকাটে আবদ্ধ করতে চান তবে আমি প্রস্তাব দিচ্ছি যে ডিফল্ট বাইন্ডিং-এর মতো ওভাররাইড না করা, লক্ষ্য করুন যে ব্রেক-পেনটি আবদ্ধ! এবং @ এর ঠিক পাশেই এবং ডিফল্টরূপে কোনও কিছুর সাথে আবদ্ধ নয়। সেই কারণে আমি এই বাঁধাইয়ের পরামর্শ দিচ্ছি ...

bind-key @ command-prompt -p "create pane from:"  "join-pane -s ':%%'"

পর্যায়ক্রমে, একটি ইন্টারেক্টিভ চয়নকারী থাকতে ...

bind-key @ choose-window 'join-pane -h -s "%%"'

সর্বদা, সর্বদা সর্বাধিক পরিদর্শন করা উইন্ডোতে যোগ দিতে ...

bind-key @ join-pane -h -s !

দ্রষ্টব্য: -hএটির ফলে উল্টানো ডিফল্ট আচরণের বিরোধিতা হিসাবে প্যানগুলি অনুভূমিকভাবে (উল্লম্ব বিভাজন সহ) সজ্জিত করে।

সর্বাধিক গুরুত্বপূর্ণ বিষয়টি হ'ল আপনি শর্টকাটের জন্য যা কিছু চয়ন করুন তা শিখুন। কারণ আপনি যদি কেবল এটি সেট করে থাকেন এবং এটি ভুলে যান তবে আপনি যখন কোনও বিদেশী সার্ভারে নিজেকে খুঁজে পান তখন আপনি জিম্পড হয়ে যাবেন। এবং আসুন এটির মুখোমুখি হওয়া, টার্মিনাল মাল্টিপ্লেক্সার আপনাকে সবচেয়ে গুরুত্বপূর্ণ জিনিসটি রিমোট সার্ভারগুলির নির্ভরযোগ্য সেশনগুলি।

এটি জিএনইউ স্ক্রিন থেকে টিমাক্সে আমার রূপান্তর সম্পূর্ণ করে। আমি আর পিছনে ফিরে তাকাব না।

উপভোগ করুন!


2
আমি ':' মিস করছিলাম ... এর জন্য ধন্যবাদ।
উপহাস

আমি সম্প্রতি এটিতে 2 টি ডাউন ভোট পেয়েছি কেন কেন কোনও মন্তব্য নেই তাতে কোনও মন্তব্য নেই। এটি কেবল অভদ্র এবং বিরোধী FOSS সংস্কৃতি।
ব্রুনো ব্রোনোস্কি

1
ডকুমেন্টেশন কোলন সম্পর্কে মোটেই কথা বলে না! দুর্দান্ত এক
জনিআআআআআআআআআআআআআআআআআআআইইইআইইইইইইইইআরইশ

1
বিন্দুর বাক্য গঠনটি ব্যবহার করা আমাকে window.paneউদাহরণস্বরূপ join-pane -s 1.0বর্তমান উইন্ডো 1-এ উইন্ডো 1-এ সরিয়ে নিতে সহায়তা করেছে । Maciej.lasyk.info/2014/Nov/19/tmux-join-pane
mbigras

Tmux 2.1 হিসাবে, :আপাতদৃষ্টিতে আর প্রয়োজন হয় না (যেমন, কেবলমাত্র :join-pane -s 1) do সম্ভবত এটি পূর্ববর্তী সংস্করণগুলির মধ্যে একটি বাগ ছিল
ভিলাপেক্স

38

আমি মনে করি যে আমি নিজের উইন্ডোতে আরও ভালভাবে প্যানগুলি সরানোর জন্য যা ব্যবহার করছি তা আমি পছন্দ করি। আমি ব্যবহার করি

break-pane -t :

আমি এটি পরীক্ষার মাধ্যমে আবিষ্কার করেছি তবে এটি খুব ভালভাবে কাজ করছে বলে মনে হচ্ছে। আপনি এটি সহজেই কী-বাইন্ড বা উপনাম করতে পারেন, কোনও স্ক্রিপ্টিংয়ের প্রয়োজন নেই।


2
+1 টি। আমি এর চেয়ে অনেক বেশি সময় ব্যবহার করি join-pane
ক্রিস বি

14

আপনি যদি কোনও প্রম্পটে ফলক সনাক্তকারী টাইপ করতে না চান তবে আপনি এটি ব্যবহার করতে পারেন

bind-key j "join-pane -s !"

যা বর্তমান উইন্ডোতে সর্বশেষ সক্রিয় ফলক / উইন্ডোতে যোগদান করবে।


1
আপনি কোন সংস্করণ ব্যবহার করছেন? আমি unknown command: join-pane -s !1.6 সঙ্গে পাচ্ছি ।
প্যারাড্রয়েড

এখানে ২.০ ব্যবহার করে, তবে উদ্ধৃতিগুলি ছাড়াই কেবল লাইনটি কনফেমে রাখা ঠিক আছে বলে মনে হচ্ছে। bind-key j join-pane -s !
বিকেজল্যান্ড

13

অন্যান্য উত্তরগুলি সন্ধান করার পরে এবং tmux ম্যান পৃষ্ঠাটি উপলব্ধ করার পরে আমি নীচের বাইন্ডিংগুলিতে আপাতত নিষ্পত্তি করেছি:

bind-key S choose-window 'join-pane -v -s "%%"'
bind-key V choose-window 'join-pane -h -s "%%"'

এটি আপনাকে ইন্টারঅ্যাকটিভভাবে যোগদানের জন্য উইন্ডোটি নির্বাচন করতে দেবে এবং নতুন উল্লম্ব / অনুভূমিক বিভাজনগুলি তৈরি করতে আমার ছোট হাতের s/ vবাইন্ডিংগুলি আয়না করে । যদি কেউ জানেন যে কীভাবে উইন্ডোগুলির পরিবর্তে পৃথক প্যানগুলি নির্বাচন করতে হয় তা আমাকে জানান।


এটি খুব সহায়ক। ধন্যবাদ. দুর্ভাগ্যক্রমে -vএবং -hযথাক্রমে উল্লম্ব এবং অনুভূমিক "বিভাজন" তৈরি করে না। তারা যথাক্রমে উল্লম্ব এবং অনুভূমিক " স্ট্যাকড প্যানস " তৈরি করে। (এর অর্থ দাঁড়ানোর জন্য যে উল্লম্ব স্ট্যাক করা প্যানগুলির একটি অনুভূমিক বিভাজন রয়েছে)) সুতরাং আপনাকে আপনার মস্তিষ্ককে সেভাবে প্রশিক্ষণ দিতে হবে। এছাড়াও -vডিফল্ট, তাই আমি এটিকে বাইরে রেখে কেবল -hসেখানে রেখে দেই যাতে আপনার ~/.tmux.confনজর দেওয়ার জন্য চিট শিট হিসাবে আপনার কাজ করে।
ব্রুনো ব্রোনোস্কি

"ব্রেক-পেনের বিপরীতে" এর জন্য অন্য উত্তরগুলির চেয়ে আমি এটির চেয়ে ভাল। অস্থায়ীভাবে নিজের উইন্ডোতে একটি ফলকটি ভেঙে ফেলেছে, পরে আমি এটিকে পুরানো উইন্ডোগুলির মধ্যে একটিতে ফিরে পাঠাতে চাই এবং এই হ্যান্ডেলগুলি কৃপণভাবে পরিচালনা করে।
স্টেলেডোগ

13

কী বাঁধাই

ডিফল্ট, কসম Ctrl+ + b, !হবে বিরতি একটি নতুন উইন্ডোতে সক্রিয় ফলকে এবং এটা স্যুইচ করুন।

কোথায় Ctrl+ + bডিফল্ট প্রিফিক্স জন্য

বিস্তারিত

tmuxকমান্ড এই কী, executes হয় break-pane(ওরফে: breakp) বাস্তবায়িত যেমন cmd-break-pane.cএবং ডিফল্ট হিসাবে আবদ্ধ কী-bindings.c দেখা যেমন list-keys(ওরফে: lsk) কমান্ড আউটপুট:

bind-key    -T prefix       !                 break-pane

4

আপনার কী বাইন্ডিংগুলি পরিবর্তন করতে হবে না।

যতক্ষণ ফলকে আপনি স্থানান্তর করতে ইচ্ছুক ফোকাস আছে, টাইপ উপসর্গ তারপর :join-pane -t :1যেখানে 1যাই হোক না কেন গন্তব্য উইন্ডোর সংখ্যা একই সেশনে হয়। আপনি এর নামটি পছন্দ করে অন্য সেশনে স্থানান্তরিত করতে পারেন project:3। আমার জন্য join-paneথেকে ট্যাব-অটোকম্প্লেটস j

গন্তব্যস্থলে নির্মিত নতুন বিভাজনের ওরিয়েন্টেশনটি সেট করতে একটি যুক্ত করুন -hবা -vকমান্ডটিতে স্যুইচ করুন বা কেবল এটিতে যান এবং প্রিফিক্স + spaceপুনরায় সাজানোর জন্য যান।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.