Tmux এবং ZSH কাস্টম প্রম্পট: উইন্ডো নাম সহ বাগ


43

আমি আমার জেডএসএইচ প্রম্পটটি ওহ-মাই-জেডএস-এর সাথে কাস্টমাইজ করেছি এবং এটিকে আরও পাঠযোগ্য ও গিটার সম্পর্কে তথ্য যুক্ত করতে পারি যদি আমি কোনও ভাণ্ডারে থাকি।

উদাহরণ:
bob@inf [~/docs] %
bob@inf [~/src/nicest] master %(গিট রিপোজিটরিতে)

এটি ভালভাবে কাজ করে তবে tmuxউইন্ডোটির সাথে আমার কিছু বাগ রয়েছে । এটি এখনও অজ্ঞান মান প্রদর্শন করে এবং আমি এটি অক্ষম করতে automatic-rename offপারি না (এটি কেবল কাজ করে না, প্রতিটি কমান্ডের পরে উইন্ডোর নাম পরিবর্তন হয়), উদাহরণস্বরূপ ~/docsউইন্ডো নামের জন্য tmux ব্যবহার করুন ।

আমি কীভাবে এটি সংশোধন করতে পারি তা নিশ্চিত নই, আমি আমার zsh প্রম্পটটি ঠিক তেমন রাখতে চাই, যদি পরিবর্তন করতে পারে তবে বুঝতে চাই সমস্যাটি কোথায়?

আর একটি সমাধান হ'ল আদেশটি নতুনভাবে সংজ্ঞায়িত করা যেতে পারে settile( এই উত্তর থেকে ) তবে আমি সঠিকভাবে কীভাবে এটি করব তা নিশ্চিত নই।

উত্তর:


76

আমি ওহ-মাই-জিএসএসে তাকাতে গিয়ে একটি সন্দেহজনক সন্দেহভাজনকে পেয়েছি ।

যখন TERM এনভায়রনমেন্ট ভেরিয়েবলের মান শুরু হয় screen(যা এটি স্ক্রিন এবং tmux উভয়ের অধীনে হওয়া উচিত ), এটি উইন্ডোটির নাম সেট করতে একটি স্ক্রিন টার্মিনাল নিয়ন্ত্রণ অনুক্রম ব্যবহার করে

  • (শেল প্রম্পট প্রদর্শনের ঠিক আগে)
    বর্তমান ওয়ার্কিং ডিরেক্টরিটির "টিল্ড সংক্ষেপিত" পথের বাম দিকের বেশিরভাগ অংশ ( ..তারপরে সর্বশেষ 13 টি অক্ষর বা এটি 15 অক্ষরের চেয়ে কম হলে পুরো পথটি অনুসরণ করবে) এবং
  • (ঠিক কমান্ড আরম্ভ করার পূর্বে)
    (গণনা প্রথম সম্পর্কে টু করা রান কমান্ডের "WORD" ssh, sudo, এবং অন্য কয়েকজন)।

মনে হচ্ছে এটি আপনার পক্ষে এইভাবে কাজ করছে (আপনি বলেছিলেন যে আপনার উইন্ডোটির নাম পরিবর্তিত হয়েছিল ~/docsযখন আপনি সেই ডিরেক্টরিতে ছিলেন)। আপনি এই স্বয়ংক্রিয় পুনঃনামকরনের অক্ষম করতে চান, তাহলে আপনি এটি সম্পূর্ণরূপে করার DISABLE_AUTO_TITLE শেল পরামিতি সেটিং দ্বারা অক্ষম করতে পারেন trueআপনার .zshrc:

DISABLE_AUTO_TITLE=true

আপনি যদি কেবল এটি একটি ইন্টারেক্টিভ শেলটিতে সেট করেন তবে আপনি বর্তমান উইন্ডোটির নামের জন্য একটি খালি স্ট্রিংটি শেষ করবেন, তবে ওহ-মাই-জেডএস শেল ইনস্ট্যান্সের প্রতিটি প্রম্পট এবং কমান্ডের আগে উইন্ডোটি আপডেট করা বন্ধ করবে (এটি থাকা দরকার আপনার .zshrcসমস্ত নতুন শেল দৃষ্টান্ত প্রভাবিত করে)।


4
এই যেমন একটি নিখুঁত উত্তর। সঠিক, তথ্যবহুল, সংক্ষিপ্ত এবং বিন্দুতে। তদুপরি, এটি মূল প্রশ্নের উত্তর দেওয়ার পাশাপাশি একটি সমাধান সরবরাহ করে ("সমস্যাটি কোথায় তা বোঝা") এটি কেবল দুঃখের বিষয় যে যে জিজ্ঞাসা করার জন্য সময় নিয়েছে সে এটিকে উত্তর হিসাবে চিহ্নিত করে বিরক্ত করে নি।
dmondark

ধন্যবাদ আপনাকে ধন্যবাদ আপনাকে ধন্যবাদ আপনাকে ধন্যবাদ আপনাকে ধন্যবাদ আপনাকে ধন্যবাদ
জেজেন টমাস

.zshrcসব ব্যবহারকারীদের জন্য একটি ফাইল কোথায় ?
andilabs 16'15

29

আমি জানি যে উপরের উত্তরটি আপনাকে একটি সমাধান দেয় তবে অন্য একটি হ'ল এই বিকল্পটি আপনার ~ / .tmux.conf যুক্ত করুন

set-option -g allow-rename off

এটি আরও ভাল সমাধান যেহেতু এটি কেবল tmux প্রভাবিত করে।
পল অলিভার

এমনকি এই সেটিংটি সহ, ব্রেক-ফলকের পরে জয়েন-ফলকটি উইন্ডোটির নাম পুনরায় সেট করে :(
ডিজেসাদিনফ

6

আমি একই সমস্যাটি পেয়েছি, যা tmux এর উইন্ডোর নামটি .tmux.conf এ সেট করেও পরিবর্তন করা হয়েছিল:

set-window-option -g automatic-rename off

ধন্যবাদ ক্রিস এর উত্তর। আমি পরিবর্তন করার পরে আমার টিএমউক্স উইন্ডোটির নাম স্বয়ংক্রিয়ভাবে নামকরণ করা হয়নি:

set -g default-terminal "screen-256color"

প্রতি:

set -g default-terminal "xterm-256color"

0

আপনি যদি কেবল নির্দিষ্ট উইন্ডোর জন্য স্বয়ংক্রিয়-নামটি অক্ষম করতে চান তবে আপনি ব্যবহার করতে পারেন:

 set -t [WINDOW_NUMBER] automatic-rename off

অন্য সেশনে নির্দিষ্ট উইন্ডোতে স্বয়ংক্রিয়-নামটি অক্ষম করুন:

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