আমি সম্প্রতি আমার পিএস 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 ভেরিয়েবলটি কোনও ক্ষেত্রকে রঙিন করা ছাড়া আপাতদৃষ্টিতে সমস্ত দিকের জন্য সম্মানিত করা হচ্ছে।
কারো কোন ধারণা আছে?
PS1
সেটিংস আপনাকে পোস্ট পরিবর্তন রং কোনো কমান্ড নেই। Tmux এর বাইরে কাজ করে এমন একটি আসল সেটিং পোস্ট করুন। এছাড়াও, আপনার PS1
মধ্যে সেট করা উচিত, এটির মধ্যে .bashrc
নয় .bash_profile
: .bash_profile
সম্ভবত মোটেও কার্যকর হবে না এবং সেটিংসটি পরে ওভাররাইড হয়ে যেতে পারে।