কোনও ডিফল্ট ডিভাইসটিতে কোনও কী-এর বাধ্যতামূলক পুনরায় সেট করার সরাসরি কোনও উপায় নেই; ডিফল্ট বাইন্ডিংয়ের সূচনাটি (ইন key_bindings_init()
) একবার সম্পন্ন করা হয় যখন tmux সার্ভারটি প্রথম শুরু হয় (ইন server_start()
), এবং কোনও কী পুনরায় সেট করার কোনও ব্যবস্থা নেই।
আপনার পছন্দসই দৃশ্যকল্প যেখানে আপনি আপনার কনফিগারেশন ফাইল গুন একটি ডিফল্ট বাঁধাই যা পূর্বে একটি কাস্টম বাঁধাই যে যেহেতু আপনার কনফিগারেশন ফাইল থেকে মুছে ফেলা হয়েছে দ্বারা ওভাররাইড করা হয়েছিল এর পুনঃপ্রতিষ্ঠা আইন চান তাদের জন্য, পদ্ধতি উদ্ভাবন যুক্তিযুক্ত (যদিও দুর্ভাগ্যক্রমে বাগাড়ম্বরপূর্ণ): unbind-key -a
, তারপরে সমস্ত "ডিফল্ট" বাইন্ডিং পুনরায় স্থাপন করুন, তারপরে আপনার কাস্টম বাইন্ডিংগুলি প্রতিষ্ঠা করুন (যার মধ্যে কিছুগুলি "ডিফল্ট" বাইন্ডিংকে ওভাররাইড করতে পারে)।
list-keys
কমান্ড * দিয়ে সার্ভারের বর্তমান বাইন্ডিংগুলি বের করা যেতে পারে ; এটি আপনার প্রস্তাবিত .tmux.reset.conf
ফাইল উত্পন্ন / বজায় রাখতে সহায়তা করতে পারে তবে আপনার ডিফল্ট বাইন্ডিংগুলি বের করার জন্য একটি উপায় প্রয়োজন , বর্তমানের বাইন্ডিংগুলি নয়।
* কিছু পরিস্থিতি রয়েছে যেখানে আউটপুটটি list-keys
বর্তমানে সরাসরি ব্যবহারযোগ্য নয়: সেমিকোলনের জন্য বাঁধাইয়ের টিমিক্স কমান্ড বিভাজক হিসাবে ব্যাখ্যা হওয়া থেকে রোধ করার জন্য তার সেমিকোলনটি একটি ব্যাকস্ল্যাশ দিয়ে পালানো দরকার , এবং যে কোনও বাইন্ডিংয়ের মধ্যে যুক্তি রয়েছে যা একক অভ্যন্তরে ডাবল কোট ব্যবহার করে কোটস (কোনও ডিফল্ট বাইন্ডিং এর মতো নয়) ডাবল কোউটের ভিতরে ডাবল কোট হিসাবে প্রকাশিত হবে।
ডিফল্ট বাইন্ডিংগুলি পেতে আপনার একটি ন্যূনতম কনফিগারেশন সহ অস্থায়ী সার্ভারের প্রয়োজন (যেমন কোনও কাস্টম বাইন্ডিং নেই) যাতে আপনি এর list-keys
আউটপুট ক্যাপচার করতে পারেন । আপনি চালাতে পারেন এমন tmux সার্ভারের সংখ্যার কোনও সীমা নেই , তবে প্রত্যেককে অবশ্যই আলাদা আলাদা সকেটের পথের নাম ব্যবহার করতে হবে; -L
এবং -S
tmux অপশন একটি সকেট নাম (মধ্যে উল্লেখ করার জন্য ব্যবহার করা যেতে পারে $TMPDIR/tmux-$UID
(অথবা শুরু বা পূর্ণ সকেট পথনাম সুতরাং, কথা বলতে) একটি সকেট-এ একটি নতুন সার্ভার নামে। temp
, আপনি এই ব্যবহার করবেন:
tmux -L temp …
এটি আপনার ব্যবহার না করে তা নিশ্চিত করার জন্য .tmux.conf
, আপনি -f
এটি পড়তে বলার জন্য ব্যবহার করুন /dev/null
(একটি বিশেষ ফাইল যা সর্বদা খালি থাকে):
tmux -f /dev/null -L temp …
দ্রষ্টব্য : এটি এর প্রসেসিং বাধা দেয় না /etc/tmux.conf
, যদি এই জাতীয় কোনও ফাইল উপস্থিত থাকে; এই "সিস্টেম কনফিগারেশন ফাইল" এর পথটি হার্ড-কোডড এবং এটিকে বাইপাস করার কোনও বিকল্প নেই (কোডটি প্যাচিংয়ের সংক্ষিপ্ত)।
সাধারণত, আপনার new-session
সার্ভারটি শুরু করার জন্য একটি কমান্ডের প্রয়োজন , তবে আমরা কোনও সেশন চাই না, কেবল অনুসন্ধানের জন্য একটি প্রাথমিক সার্ভার। start-server
কমান্ডটি কেবল এটি করে: কোনও সেশন তৈরি না করেই একটি সার্ভার শুরু করে।
tmux -f /dev/null -L temp start-server …
এখন, আমাদের কেবল আমাদের "ক্যোয়ারী" কমান্ডটি যুক্ত করতে হবে ( list-keys
এই ক্ষেত্রে):
tmux -f /dev/null -L temp start-server \; list-keys
দ্রষ্টব্য : সেমেলোনটি শেল কমান্ড বিভাজক হিসাবে শেলকে চিকিত্সা করা থেকে বিরত রাখতে সেমিকোলনটিকে এড়ানো বা উদ্ধৃত করা দরকার কারণ আমরা এটি চাই একটি টিএমউক্স কমান্ড বিভাজক হিসাবে।
যেহেতু কোনও সেশন রক্ষণাবেক্ষণের জন্য নেই, তাই list-keys
কমান্ডটি চালানো শেষ হওয়ার পরে সার্ভারটি স্বয়ংক্রিয়ভাবে প্রস্থান করবে ।
সুতরাং, আপনি .tmux.reset.conf
নিজের .tmux.conf
ফাইলটি সাময়িকভাবে অপসারণের বিষয়ে চিন্তা না করে (আপনাকে কেবলমাত্র ডিফল্ট বাইন্ডিং দেখতে দেবেন) এবং বিদ্যমান সার্ভারগুলি বন্ধ না করেই আপনার বেশিরভাগ অংশ তৈরি করতে আপনি এই জাতীয় কমান্ড ব্যবহার করতে পারেন ।
যদি run-shell
কমান্ডটি সিঙ্ক্রোনাস হয় আপনি source-file
স্ট্যাটিক ফাইল (আপনার .tmux.reset.conf
) এর পরিবর্তে আপনার কনফিগারেশন ফাইলটিতে (এমন একটি অস্থায়ী ফাইলকে ক্যাপচার করতে যাবেন ) যার মাধ্যমে আপনি এই জাতীয় কল এম্বেড করতে পারেন । এটি আপনাকে সর্বদা tmux- র বর্তমান সংস্করণ থেকে ডিফল্ট বাইন্ডিংগুলি ব্যবহার করতে দেয় (ডিফল্ট বাইন্ডিংগুলি মাঝে মাঝে পরিবর্তিত হয়)। হায়, run-shell
কমান্ডটির সমাপ্তি পরবর্তী কমান্ডগুলির সাথে সামঞ্জস্য রেখে অবিচ্ছিন্ন (কমান্ডের পরে আসা কমান্ডগুলি run-shell
সাধারণত প্রক্রিয়াটি শেষ করার আগেই চালিত হবে run-shell
)।