tmux PS1 প্রম্পটে রঙ দিচ্ছে না


11

আমি সম্প্রতি আমার পিএস 1 ভেরিয়েবলটি আমার টার্মিনাল দেখার আনন্দের জন্য কিছু সুন্দর সোলারিযুক্ত রঙ সমন্বিত করার সিদ্ধান্ত নিয়েছি। যখন কোনও টিএমউক্স অধিবেশনে না থাকে, সবকিছু দুর্দান্ত! রেইনবো, পনি, ইউনিকর্ন এবং একটি পৃথক প্রম্পট! শান্ত!

সমস্যাটি টিএমউক্সের মধ্যে রয়েছে। আমি যাচাই করেছি যে পিএস 1 এর মান হ'ল আমি যা এটি প্রত্যাশা করি এবং এটি যখন tmux চলমান না হয় ঠিক তেমনই হয় \[\033]0;\w\007\]\[\[\]\]\u\[\]@\[\[\]\]\h\[\]:\[\]\W\[\]$ \[\]

আমার .বাশ_প্রফাইলে আমার সমস্ত উপাধি ইত্যাদি প্রত্যাশার মতো কাজ করছে। tmux ঘটনা ছাড়াও রঙ প্রদর্শন করছে, echo -ne "\033[1;33m hi"যেমনটি প্রত্যাশা মতো আচরণ করে gls --color

আমার .বাশ_প্রোফাইলে বর্তমান প্রাসঙ্গিক লাইনটি export PS1="\[\033]0;\w\007\]\[\[\]\]\u\[\]@\[\[\]\]\h\[\]:\[\]\W\[\]$ \[\]"যদিও মূলত আমি কিছু শর্তাদি হ্যান্ডেল করার জন্য .bash_prompt ফাইলে অবস্থিত একটি স্ক্রিপ্ট পেয়েছিলাম, ইত্যাদি সহজ সংস্করণে ফিরে যাওয়ার চেষ্টা করেছি।

এক্সিকিউটিভ bashকরার ফলে প্রম্পটটি রঙিন হয়ে উঠবে, তবে প্রতিটি ফলকে অবশ্যই করা উচিত। export PS1=[that long string I've already posted]হবে না.

আমার .tmux.conf নিম্নরূপ:

set-option -g default-command "reattach-to-user-namespace -l /usr/local/bin/bash"
set -g default-terminal "xterm-256color"
set-window-option -g automatic-rename on
bind '"' split-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
bind c new-window -c "#{pane_current_path}"

.বাশ_ প্রোফাইলে সম্পর্কিত প্রাসঙ্গিক অংশ:

export TERM="xterm-256color"
if which tmux >/dev/null 2>&1; then
    test -z "$TMUX" && (tmux attach || tmux new-session)
fi

আমি ম্যাকোস সিয়েরা, আইটর্ম 2 ব্যবহার করছি, আমি ব্যাশের বর্তমান হোমব্রু সংস্করণ এবং সিস্টেম বাশ (এটি বর্তমানে হোমব্রু ব্যবহার করছি), tmux 2.4 উভয়ই চেষ্টা করেছি।

আমি touch testing_touch_from_bash_profileযখন আমার .bash_ প্রোফাইলে একটি টিএমউक्स সেশনে দুটি পেন দিয়েছিলাম, একটি ফলক মেরেছিলাম, একটি ফলকটি খোলার পরে যাচাই করেছিলাম যে ফাইলটি আসলে তৈরি হয়েছিল।

echo $TERMআয় xterm-256color

আমি নিশ্চিত করেছি যে tmux প্রস্থান করার সময় সেটিংসের পরিবর্তনগুলি পরীক্ষা করে পরিবর্তিত হয় যে আমি tmux থেকে বেরিয়ে এসেছি এবং বর্তমানে কোনও tmux প্রক্রিয়া সিস্টেমে চলছে না ps -ax | grep tmux

অদ্ভুতভাবে, .bash_prompt স্ক্রিপ্টটি সোর্সিং করা যতক্ষণ না প্রতিটি tmux ফলকের মধ্যে এটি করা হয় ততক্ষণ রঙ পরিবর্তন করে।

আমি /programming/21005966/tmux-prompt-not-following-normal-bash-prompt-ps1-w এ দেখেছি এবং প্রথম লাইনে ব্যাশ কলের পরে - लॉगিন পতাকা যুক্ত করার চেষ্টা করেছি আমার .tmux.conf এর। Tmux এর সাথে আরম্ভ tmux new bashকরার ফলে প্রথম ফলকটি রঙিন হয়ে যাবে, তবে পরবর্তী প্যানগুলি তা করবে না।

$ PS1 ভেরিয়েবলটি কোনও ক্ষেত্রকে রঙিন করা ছাড়া আপাতদৃষ্টিতে সমস্ত দিকের জন্য সম্মানিত করা হচ্ছে।

কারো কোন ধারণা আছে?


একক উদ্ধৃতি চেষ্টা করুন
কেভিন

5
PS1সেটিংস আপনাকে পোস্ট পরিবর্তন রং কোনো কমান্ড নেই। Tmux এর বাইরে কাজ করে এমন একটি আসল সেটিং পোস্ট করুন। এছাড়াও, আপনার PS1মধ্যে সেট করা উচিত, এটির মধ্যে .bashrcনয় .bash_profile: .bash_profileসম্ভবত মোটেও কার্যকর হবে না এবং সেটিংসটি পরে ওভাররাইড হয়ে যেতে পারে।
গিলস

উত্তর:


3

আপনার পিএস 1 আমাকে কালো এবং সাদা আউটপুটও দেয়।

তবে আমারে ফিরে স্যুইচিং আমাকে রঙ দেয়, তাই আপনার ব্যবহৃত বিভিন্নটি বের করতে সক্ষম হওয়া উচিত

$ echo $PS1
\[\033[01;31m\]\t \[\033[01;32m\]durrantm \[\033[02;36m\]\h \[\033[01;34m\]`pwd | sed "s#\(/[^/]\{1,\}/[^/]\{1,\}/[^/]\{1,\}/\).*\(/[^/]\{1,\}/[^/]\{1,\}\)/\{0,1\}#\1_\2#g"` \[\033[00;33m\]$(git_branch)\[\033[00m\]\n\$

গিট_ব্রাঞ্চ একটি বাশ ফাংশন যা আমার রয়েছে:

git_branch () { 
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'
}

আপনার বনাম আমার:

এখানে চিত্র বর্ণনা লিখুন

এটি ওএসএক্স এবং উবুন্টুতে একই কাজ করে


11

আমার এই সমস্যার সমাধান সমাধান ছিল

force_color_prompt=yes

আমার মধ্যে .bashrc। এখন আমার tmux প্রম্পটে রঙ আছে।


এটি কেন বাইরে এর টিএমউক্সে আলাদাভাবে আচরণ করে তা নিশ্চিত নয় তবে এটি আমার জন্যও কৌশলটি করেছিল।
ম্যাট লেইস

আমি কালি আপনাকে এটি উল্লেখ করতে হবে: আপনাকে যা করতে হবে তা হ'ল কমান্ডটি চালানো tmuxএবং তারপরে একটি tmux সেশন চালানো উচিত source ~/.bashrc। প্রতিটি প্যানেলে আপনার এটি করা দরকার।
19:55

ধন্যবাদ, উবুন্টু 18.04 জিনোম-টার্মিনালে আমার জন্য এই কাজ work
intijk

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