কীভাবে করবেন: জিনোম টার্মিনালে আন্ডারলাইন, গা bold়, তির্যক, স্ট্রাইকথ্রু, রঙ, পটভূমি এবং আকার?


58

কীভাবে করবেন: জিনোম টার্মিনালে আন্ডারলাইন, গা bold়, তির্যক স্ট্রাইকথ্রু এবং রঙ?

সাহসী

ইট্যালির

আনডারলাইন করা

s̶t̶r̶i̶k̶e̶ ̶i̶t̶ ̶l̶i̶k̶̶e̶ ̶i̶t̶s̶ ̶h̶o̶t

রঙ

background

font <(এটি না বলতে পারলে এর মনো)

আয়তন


1
এবং ঠিক কি পরিবর্তন করতে চান? প্রম্পটটি, আপনি যে পাঠ্য প্রবেশ করান, আপনার আদেশের আউটপুট?
রাদু রেডানু

PS1 আসলে রফতানি। যদিও আমি এটি বেসিক প্রতিধ্বনির জন্যও চাই।
আকিভা

1
যদি এটি "বেহুদা" সমর্থন করে, আমি স্যুইচ করতাম। :(
জারজেন এ। এরার্ড

উত্তর:


75

এএনএসআই / ভিটি 100 টার্মিনাল এবং টার্মিনাল এমুলেটরগুলি কেবল কালো এবং সাদা পাঠ্য প্রদর্শন করতে সক্ষম নয়; তারা রঙগুলি এবং ফর্ম্যাট করা পাঠ্যগুলি ক্রমাগত পালানোর জন্য ধন্যবাদ প্রদর্শন করতে পারে। এই সিকোয়েন্সগুলি এস্কেপ অক্ষর দ্বারা গঠিত (প্রায়শই "^ [" বা "ইস্ক" দ্বারা উপস্থাপন করা হয়) এর পরে কিছু অন্যান্য অক্ষর: "ইস্ক [ফরম্যাটকোডেম" থাকে।

বাশ-এ, নিম্নলিখিত সিনট্যাক্সগুলির সাহায্যে চরিত্রটি পাওয়া যায়:

\e
\033
\x1B

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

আদেশগুলি (সহজ অনুলিপি-পেস্টের জন্য):

echo -e "\e[1mbold\e[0m"
echo -e "\e[3mitalic\e[0m"
echo -e "\e[4munderline\e[0m"
echo -e "\e[9mstrikethrough\e[0m"
echo -e "\e[31mHello World\e[0m"
echo -e "\x1B[31mHello World\e[0m"

উত্স (সমস্ত প্রকারের অগ্রভাগ / পটভূমির রঙের কোড সহ): http://misc.flogisoft.com/bash/tip_colors_and_formatting


আমি আকার, ফন্ট এবং ব্যাকগ্রাউন্ডের জন্য আরও তিনটি যুক্ত করেছি। এগুলি কি সম্ভব?
আকিভা

1
@ আকিভা আপনি সহজেই পটভূমির রঙ পরিবর্তন করতে পারেন (উত্সর্গীকৃত বিভাগটি দেখুন )। আকার সম্পর্কে, আমি এটি সম্ভব বলে মনে করি না। ফন্টের জন্য, একমাত্র সেটিংটি একটি গ্লোবাল জিকনফ মান ( /apps/gnome-terminal/profiles/Default/font)
সিলভাইন পাইনাউ

1
@dashesy: মতে en.wikipedia.org/wiki/ANSI_escape_code , 53 ঊর্ধ্বরেখা করা উচিত। কিন্তু আমার টার্মিনালে কিছুই হয় না।
সিলভাইন পাইনাউ

1
@ ইগমন্ট আমার মনে আছে আমি এটি PS1(জিনোম-টার্মিনালে প্রকৃতপক্ষে) ব্যবহার করতে চেয়েছিলাম কারণ এর নীচের পাঠ্যগুলিতে আন্ডারলাইনযুক্ত মিশ্রণটি পড়ার পক্ষে এটি আরও শক্ত করে তোলে এবং অবশ্যই ধর্মঘটের মাধ্যমে কেবল ভুল দেখায়। সেখানে একটি লাইন থাকা স্ক্রোল করার সময় পূর্ববর্তী কমান্ডগুলিকে চিহ্নিত করতে সহায়তা করবে (যেমন রঙ হয়)।
ছদ্মবেশী

1
@ ড্যাশসি ধন্যবাদ, এটি আসলে একটি দুর্দান্ত ব্যবহারের ক্ষেত্রে :) জিনোম-টার্মিনাল অগ্রগতি এখানে ট্র্যাক করা হয়েছে
উদাহরণস্বরূপ

26

সিলভেনের উত্তরটি প্রসারিত করতে কিছু সহায়ক কাজ করে:

ansi()          { echo -e "\e[${1}m${*:2}\e[0m"; }
bold()          { ansi 1 "$@"; }
italic()        { ansi 3 "$@"; }
underline()     { ansi 4 "$@"; }
strikethrough() { ansi 9 "$@"; }
red()           { ansi 31 "$@"; }

তারপর

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


20

এখনও আবৃত হয়নি এমন কিছু হ'ল দুটি বা তিনটি প্যারামিটারের সংমিশ্রণ , উদাহরণস্বরূপ গা bold় এবং আন্ডারলাইন , পূর্বনির্ধারিত রঙে। এটি 3-উপায় সিনট্যাক্স দ্বারা অর্জন করা হয়েছে, উদাহরণস্বরূপ:

~$ printf "\e[3;4;33mthis is a test\n\e[0m"

"এটি একটি পরীক্ষা" এর জন্য হলুদ রঙ ( 33m), ইটালিক ( 3m) এবং আন্ডারলাইনড ( 4m) এ মুদ্রিত হতে পারে ।
মনে রাখবেন যে প্রতিবার পুনরাবৃত্তি করা প্রয়োজন হবে না\e[
এটিও লক্ষ্য করুন (সিলেভেনের মতো) আমি \e[0mপ্রত্যেকবার সেটিংস পুনরায় সেট করার জন্য একটি যুক্ত করেছিলাম , কারণ অন্যথায় হলুদ বর্ণ এবং ফন্ট শৈলী টার্মিনালে সক্রিয় থাকবে! স্ক্রিপ্টগুলিতে পুনরায় সেট করার জন্য আপনাকে একেবারে নজরদারি করতে হবে তা বলার অপেক্ষা রাখে না, কারণ আপনার স্ক্রিপ্টগুলি ব্যবহারকারীরা এটিকে অপছন্দ করতে পারে যদি আপনার স্ক্রিপ্টটি স্থায়ীভাবে টার্মিনালে তাদের রঙ + স্টাইল সেটিংস সংশোধন করে!


16

জিনোম টার্মিনাল ৩.২৮ (ভিটিই ০.০২), উবুন্টু ১৮.০৪ এলটিএস-এ আত্মপ্রকাশ করে, কিটিতে দেখা হিসাবে কোঁকড়ানো এবং বর্ণযুক্ত আন্ডারলাইনগুলি, কনসোল-তে দেখা ওভারলাইন সহ আরও কয়েকটি শৈলীর জন্য সমর্থন যোগ করেছে এবং অবশেষে প্রত্যেকেই তার খুব পছন্দসই বা অনেক ঘৃণ্য ঝলক বৈশিষ্ট্য হিসাবেও রয়েছে।

এগুলি স্বয়ংক্রিয়ভাবে অন্য কোনও ভিটিই-ভিত্তিক টার্মিনাল এমুলেটর (যেমন টিলিক্স, টার্মিনেটর, এক্সফেস 4-টার্মিনাল, গুয়াক ইত্যাদি) এ কাজ করে, ভিটিই কমপক্ষে 0.52 সংস্করণে রয়েছে।

মানক অব্যাহতি ক্রমগুলি, পাশাপাশি জিনোম টার্মিনালের (ভিটিই) সংযোজনগুলি প্রদর্শন করে এমন একটি তালিকা এখানে রয়েছে। নোট করুন যে প্রতিটি খোলার ক্রমের জন্য আমি জেনেরিক \e[mবা \e[0mসমস্ত বিশেষ মোডগুলিকে অক্ষম না করে কেবল সেই সম্পত্তিটির সমাপ্তি ক্রমটিও দেখছি ।

echo -e '\e[1mbold\e[22m'
echo -e '\e[2mdim\e[22m'
echo -e '\e[3mitalic\e[23m'
echo -e '\e[4munderline\e[24m'
echo -e '\e[4:1mthis is also underline (new in 0.52)\e[4:0m'
echo -e '\e[21mdouble underline (new in 0.52)\e[24m'
echo -e '\e[4:2mthis is also double underline (new in 0.52)\e[4:0m'
echo -e '\e[4:3mcurly underline (new in 0.52)\e[4:0m'
echo -e '\e[5mblink (new in 0.52)\e[25m'
echo -e '\e[7mreverse\e[27m'
echo -e '\e[8minvisible\e[28m <- invisible (but copy-pasteable)'
echo -e '\e[9mstrikethrough\e[29m'
echo -e '\e[53moverline (new in 0.52)\e[55m'

echo -e '\e[31mred\e[39m'
echo -e '\e[91mbright red\e[39m'
echo -e '\e[38:5:42m256-color, de jure standard (ITU-T T.416)\e[39m'
echo -e '\e[38;5;42m256-color, de facto standard (commonly used)\e[39m'
echo -e '\e[38:2::240:143:104mtruecolor, de jure standard (ITU-T T.416) (new in 0.52)\e[39m'
echo -e '\e[38:2:240:143:104mtruecolor, rarely used incorrect format (might be removed at some point)\e[39m'
echo -e '\e[38;2;240;143;104mtruecolor, de facto standard (commonly used)\e[39m'

echo -e '\e[46mcyan background\e[49m'
echo -e '\e[106mbright cyan background\e[49m'
echo -e '\e[48:5:42m256-color background, de jure standard (ITU-T T.416)\e[49m'
echo -e '\e[48;5;42m256-color background, de facto standard (commonly used)\e[49m'
echo -e '\e[48:2::240:143:104mtruecolor background, de jure standard (ITU-T T.416) (new in 0.52)\e[49m'
echo -e '\e[48:2:240:143:104mtruecolor background, rarely used incorrect format (might be removed at some point)\e[49m'
echo -e '\e[48;2;240;143;104mtruecolor background, de facto standard (commonly used)\e[49m'

echo -e '\e[21m\e[58:5:42m256-color underline (new in 0.52)\e[59m\e[24m'
echo -e '\e[21m\e[58;5;42m256-color underline (new in 0.52)\e[59m\e[24m'
echo -e '\e[4:3m\e[58:2::240:143:104mtruecolor underline (new in 0.52) (*)\e[59m\e[4:0m'
echo -e '\e[4:3m\e[58:2:240:143:104mtruecolor underline (new in 0.52) (might be removed at some point) (*)\e[59m\e[4:0m'
echo -e '\e[4:3m\e[58;2;240;143;104mtruecolor underline (new in 0.52) (*)\e[59m\e[4:0m'

(*) আন্ডারলাইনগুলির জন্য ট্রুইকালার মানগুলি সামান্য আনুমানিক।

আর একটু অদ্ভুত এক যে এই ছবিতে বেশ উপযুক্ত নয়, যেমন একটি শৈলী চেয়ে কার্যকারিতা আরো, এখনো সম্ভবত এখানে কহতব্য হয়, হাইপারলিঙ্ক iTerm2 সঙ্গে সমর্থন সহ-পরিকল্পিত, যেহেতু গনোম টার্মিনাল 3.26 (VTE 0.50) উপলব্ধ :

echo -e '\e]8;;http://askubuntu.com\e\\hyperlink\e]8;;\e\\'

ফলাফল প্রদর্শন করে এমন একটি স্ক্রিনশট এখানে দেওয়া হয়েছে: জিনোম-টার্মিনালে রেন্ডারিং ৩.২৮


2
ফলাফলের স্ক্রিনশটটি আমাদের জন্য সুন্দর, কারণ আমাদের কাছে এই জিনোম-টার্মিনাল / ভিটিই সংস্করণ নেই।
মারিয়াস গেডমিনাস

@ মারিয়াসজেডমিনাস সম্পন্ন হয়েছে
egmont

দুর্দান্ত উত্তর! এই সমস্ত সংগ্রহ করতে সময় দেওয়ার জন্য ধন্যবাদ! আমি অবাক হয়েছি তারা যদি
আইটার্ম 2-

2

এই হার্ড-কোডেড ক্রমগুলি এর দ্বারা প্রতিস্থাপন করুন:

tput smul # set underline
tput rmul # remove underline

tput smso # set bold on
tput rmso # remove bold

tput setaf 1 #red
tput setaf 2 #green
...
tput cup 0 0 # move to pos 0,0

এই কমান্ডগুলির সম্পূর্ণ বিবরণের জন্য "ম্যান টার্মিনফো" এবং "ম্যান টপুট" দেখুন।

উদাহরণ:

function f_help { c_green=$(tput setaf 2 2>/dev/null) c_reset=$(tput sgr0 2>/dev/null) c_bold=$(tput smso 2>/dev/null) echo "${c_bold}DESCRIPTION${c_reset} : .... ${c_green}My green text${c_reset}My plain text" }

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