انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: ظاهر جدید برای prompt بدون تغییر shell  (دفعات بازدید: 1034 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین EnriqueTTE

  • High Sr. Member
  • *
  • ارسال: 607
  • جنسیت : پسر
ظاهر جدید برای prompt بدون تغییر shell
« : 04 فروردین 1402، 12:09 ق‌ظ »
شاید از ظاهر اون نوشته پیش‌فرضی که داخل ترمینال موقع اجرای دستورات می‌بینید خسته شده باشید و بخواید تغییرش بدید. ممکنه مثل من از zsh و fish خوشتون نیاد و باهاشون مشکل داشته باشید(اشتباه نکنید من خیلی از دانیال بهزادی تقلید نمیکنم مثل بعضیا!). صرفا از تجربه‌ای که از استفاده از این دوتا shell داشتم، باهاشون مشکل دارم.

خیلی وقته با چیزی آشنا شدم که باهاش میشه ظاهر پوسته(درست میگم؟) رو تغییر داد. بدون اینکه پوسته رو تغییر بدید به zsh, fish یا هرچیز دیگه!

اسم این برنامه، بسته یا هرچیزی که اسمشو میذارید Starship هستش!
اینجا میتونید راهنمای نصب و تنظیم روی سیستم عامل‌ها و پوسته های مختلف رو ببینید.
اینجا هم میتونید راهنمای شخصی سازی هارو ببینید.

دوتا ویژگی خوبی که داره:
1: هیچ تاثیر یا اختلالی در عملکرد پوسته(bash, zsh, fish) ایجاد نمیکنه.
2: شخصی سازی های زیادی میشه باهاش انجام داد. فقط با نصب و اضافه کردن یک خط به فایل کانفیگ پوسته.

نکته: باید یه فونت ایموجی روی سیستم نصب باشه(من noto-fonts-emoji-apple رو از AUR نصب کردم. با بقیه فونت‌ها کار نمیکنه برای من!).

### نصب
برای آرچ:
pacman -S starship
برای Termux!!:
pkg install starship
متاسفانه برای نصب در اوبونتو، دبیان . سایر توزیع‌ها باید از اسنپ یا اسکریپت نصب استفاده کنید:
curl -sS https://starship.rs/install.sh | sh
حالا که نصب کردیم باید اونو فعال کنیم
بسته به اینکه از چه پوسته‌ای استفاده میکنید، یکی ازین کدهارو در آخر فایل تنظیم پوسته خودتون قرار بدید:

bash(~/.bashrc)
eval "$(starship init bash)"
zsh(~/.zshrc)
eval "$(starship init zsh)"
fish(~/.config/fish/config.fish)
starship init fish | source
برای پوسته‌های دیگه هم میشه استفاده کرد که داخل سایتش نوشته.

### تصاویر
رنگ هایی که می‌بینید ممکنه با وقتی نصب میکنید یکم فرق داشته باشه. به تنظیمات ترمینال بستگی داره.

این حالت پیش‌فرضه. وقتی داخل home هستید، داخل دایرکتوری دیگه هستید و وقتی یک دستور خطا برمی‌گردونه(ارور میده)



این چیزیه که من واسه خودم درست کردم.



بصورت پیش‌فرض از زبان های زیادی(حتی گیت) پشتیبانی میکنه. من واسه خودم فقط پایتون رو تنظیم کردم.

تنظیمات رو در ارسال بعدی میگم.
I am Enriquette

آفلاین مجتبی باغبان

  • Hero Member
  • *
  • ارسال: 780
  • جنسیت : پسر
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #1 : 04 فروردین 1402، 12:57 ق‌ظ »
قشنگ شده

آفلاین EnriqueTTE

  • High Sr. Member
  • *
  • ارسال: 607
  • جنسیت : پسر
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #2 : 04 فروردین 1402، 01:34 ق‌ظ »
برای تنظیم کردن استارشیپ کافیه فایل زیر رو ایجاد کنید(اگر وجود نداره) و چیزایی که دوست دارید رو اونجا قرار بدید.
~/.config/starship.toml
اینجا من قصد ندارم خیلی درباره تنظیم کردنش حرف بزنم، فقط چیزای ساده رو میگم. برای تنظیمات بیشتر به سایتش مراجعه کنید.

اول با prompt شروع کنیم. اینو رو داخل فایل قرار بدید(اگر میخواید از ظاهر پیش‌فرض استفاده کنید، ازین قسمت رد بشید)
format = '''
[┌───────────────────>](bold green)
[│](bold green)$directory
[└─>](bold green) '''

تغییرات رو ذخیره کنید. می‌بینید که ظاهر پوسته عوض شده!
همین الان میتونید رنگ هارو عوض کنید یا شکل رو تغییر بدید. اگر میخواید از کاراکتر های خاص استفاده کنید این صفحه ویکی‌پدیا منبع خوبیه. فقط کافیه کاراکتر موردنظر رو کپی کنید و جای دلخواه قرار بدید.

برای رنگ میتونید ازین رنگ‌ها بصورت مستفیم استفاده کنید:
black, red, green, blue, yellow, purple, cyan, white
برای ظاهر هم میتونید ازینا استفاده کنید:
bold, italic, underline, dimmed, inverted, blink, hidden, strikethrough

مثلا میتونید اینجوری تعیین کنید: (italic purple) و البته با کد هگزادسیمال ( bold fg:#123456)

با قرار دادن این خط میتونید تنظیم کنید که یک خط خالی قبل از هر prompt نمایش داده بشه یا نه
add_newline = false
اگر لپ‌تاپ یا موبایل دارید و میخواید باطری رو داخل prompt ببینید اینهارو اضافه کنید
[battery]
disabled = false
full_symbol = '🔋 '
charging_symbol = '⚡️ '
discharging_symbol = '💀 '

[[battery.display]]
threshold = 70
style = 'bold red'

شکل ایموجی‌ها و ظاهر رو به دلخواه میتونید تغییر بدید. مفدار threshold تعیین‌کننده حداکثر مقداری هست که ماژول باطری فعال میشه(باطری نمایش داده میشه) که من اینجا 70 گذاشتم. یعنی اگر باظری زیر 70 درصد بود نمایش بده.

برای تغییر کاراکتری که وضعیت اجرای دستور قبلی رو نمایش میده، کد زیر رو قرار بدید
[character]
success_symbol = '[➜](bold green) '
error_symbol = '[✗](bold red) '
میتونید برای حالت اجرای درست و اجرای با خطا از کاراکترهای یکسان یا متفاوت به دلخواه استفاده کنید.

برای تغییر نمایش مسیری که داخلش هستید از کد زیر استفاده کنید
[directory]
truncation_length = 3
truncation_symbol = '…/'
truncation_length تعیین کننده عمقی هست که اسم دایرکتوری‌ها نمایش داده میشه. اینجا اگر بیشتر از 3 دایرکتوری از home پایین‌تر رفته باشید، مقدار truncation_symbol رو نمایش میده و بعد 3 دایرکتوری آخر رو.
مثلا اینجوری میشه:
~/.cache/yay/jcal/.git   ==>    …/jcal/.git
میتونید برای نمایش home از کاراکتر دلخواه استفاده کنید، کافیه همینجا متغیر home_symbol رو تنظیم کنید.

اگر میخواید زمان رو نمایش بدید:
[time]
disabled = false
format = '🕙[\[ $time \]]($style) '
time_format = '%T'

اگر میخواید زمان اجرای دستور قبلی رو ببینید:
[cmd_duration]
disabled = false
format = "[took](yellow) [$duration]($style)"
min_time = 250
show_notifications = true
min_time_to_notify = 8_000

اینحا مقدار min_time به میلی ثانیه هست و تعیین کننده حداقل زمانیه که این ماژول فعال میشه.
مقدار min_time_to_notify مقداری هست که بعد از اون براتون یک اعلان میاد که دستوری که داشتید اجرا میکردید تموم شده. باید show_notifications رو true بذارید تا اعلان نمایش داده بشه.

اگر ظاهر اصلی prompt رو تغییر داده باشید متوجه میشید که تغییراتی که اعمال کردید نمایش داده نمیشن!!‌ دلیلش اینه که باید محل قرارگیری ماژول هارو تعیین کنید. برای اینکار کافیه در قسمت format که اول این ارسال گفنم، در جای دلخواه اسم ماژول رو قرار بدید. یادتون نره قبلش علامت $ رو بذارید.
مثلا:
format = '''
[┌───────────────────>](bold green)$cmd_duration
[│](bold green)$directory
[└─>](bold green)$time$battery '''

تمام ماژول هایی که گفتم، متغیر style رو دارن که با تنظیم کردنش میتونید ظاهر اون ماژول رو تغییر بدید. همون bold green
دقت کنید بعضی ماژول‌ها بصورت پیش‌فرض فعال نیستن و باید با قرار دادن disabled = false فعالشون کنید.
تنظیمات خیلی بیشتری میتونید اعمال کنید. خیلی از ماژول‌ها رو فقط کافیه اسمشون رو در جای دلخواه قرار بدید تا کار کنه.
اگر میخواید یک symbol تعریف کنید و همونجا ظاهرش رو تعیین کنید(مثل کاری که برای character انجام دادیم) شکل، نوشته یا علامت هارو باید بین "[]" قرار بدید و استایل موردنظر رو بین "()". در غیر اینصورت شکل رو بصورت یک رشته عادی تعریف کنید و ظاهر رو داخل متغیر style.

اینجا میتونید تنظیمات من رو ببینید.
I am Enriquette

آفلاین سودو

  • Full Member
  • *
  • ارسال: 191
  • جنسیت : پسر
  • :(){ :|:& };:
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #3 : 04 فروردین 1402، 02:31 ق‌ظ »
کاربردی‌ بود، بوک‌مارک شد.

آفلاین thmkhtry

  • Hero Member
  • *
  • ارسال: 975
  • جنسیت : پسر
  • Fedora Linux
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #4 : 04 فروردین 1402، 08:58 ق‌ظ »
خب چرا تا وقتی میشه توی  bashrc همین کارو کرد بسته اضافه نصب کنیم؟

آفلاین 🇬🇧بریتانیای کبیر🇬🇧

  • High Hero Member
  • *
  • ارسال: 2651
  • جنسیت : پسر
  • GOD SAVE THE KING/QUEEN
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #5 : 04 فروردین 1402، 09:04 ق‌ظ »
در اینترنت پر از پرامپت های مختلف و قشنگه که راحت میشه کپی پیست کرد در bashrc./~ یا آدم بره خودش یاد بگیره ( چه بهتر) و خودش اینکار را بکنه
« آخرین ویرایش: 04 فروردین 1402، 09:15 ق‌ظ توسط 🇬🇧United Kingdom🇬🇧 »
🇬🇧🏴󠁧󠁢󠁥󠁮󠁧󠁿🏴󠁧󠁢󠁷󠁬󠁳󠁿🏴󠁧󠁢󠁳󠁣󠁴󠁿🇬🇧

آفلاین thmkhtry

  • Hero Member
  • *
  • ارسال: 975
  • جنسیت : پسر
  • Fedora Linux
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #6 : 04 فروردین 1402، 09:06 ق‌ظ »
در اینترنت پر از ثرامپت های مختلف و قشنگه که راحت میشه کپی پیست کرد در bashrc./~ یا آدم لره خودش یاد بگیره ( چه بهتر) و خودش اینکار را بکنه
دقیقا منم همینو میگم.

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19719
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #7 : 04 فروردین 1402، 08:08 ب‌ظ »
خوبه ویکی شه.
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین EnriqueTTE

  • High Sr. Member
  • *
  • ارسال: 607
  • جنسیت : پسر
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #8 : 05 فروردین 1402، 12:31 ب‌ظ »
خب شما میتونید با نصب بسته links یا links2 داخل ترمینال وبگردی کنید، چرا مرورگر نصب میکنید؟
جواب تقریبا یکسانه، راحت تره، انعطاف بیشتری داره، کارای بیشتری میشه باهاش کرد و کلی چیز دیگه.

جواب بعدی اینه سلیقه‌است. کسی هم مجبور نیست نصب کنه. چیز جالبی بود خواستم با بقیه به اشتراک بذارم.

خودم قبلا خیلی با PS1 ور رفتم تا ظاهر بش رو بصورت دلخواهم دربیارم. از وقتی با استارشیپ آشنا شدم خب دیدم خیلی راحت تره، نیازی نیست بجای بش چیز دیگه استفاده کنم. تنظیم کردنش بهتره چون اگر فقط یکم انگلیسی بلد باشی میفهمی چی به چیه. یجا اشتباه کرده باشی با استارشیپ راحت میشه اشتباه رو پیدا کرد. شخصا یبار PS1 رو تغییر دادم و یه اشتباهی کردم، مجبور شدم واسش یه موضوع ایجاد کنم، درست شد اما نفهمیدم کجا رو اشتباه کرده بودم!!

اینهمه هم مدیر فایل داریم nautilus, dophin, thunar, pcmanfm و ... خب وقتی یدونه کار میکنه چرا اینهمه مدیر فایل ساختن؟؟ جواب: سلیقه. من با thunar اوکیم. تو nautilus استفاده کن.
این سلیقه منه، قطعا همه سلیقه یکسانی با من ندارن. دلم میخواست به اشتراک بذارم  :)
I am Enriquette

آفلاین EnriqueTTE

  • High Sr. Member
  • *
  • ارسال: 607
  • جنسیت : پسر
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #9 : 05 فروردین 1402، 12:31 ب‌ظ »
خوبه ویکی شه.
چگونه و توسط چه کسانی ویکی میشود؟؟
I am Enriquette

آفلاین 🇬🇧بریتانیای کبیر🇬🇧

  • High Hero Member
  • *
  • ارسال: 2651
  • جنسیت : پسر
  • GOD SAVE THE KING/QUEEN
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #10 : 05 فروردین 1402، 12:35 ب‌ظ »
هرکی که عضو انجمنه میتونه ویکی رو درست و تغیر بده و منظور در اینجا خودته £)
🇬🇧🏴󠁧󠁢󠁥󠁮󠁧󠁿🏴󠁧󠁢󠁷󠁬󠁳󠁿🏴󠁧󠁢󠁳󠁣󠁴󠁿🇬🇧

آفلاین esmaeelE

  • ناظر انجمن
  • *
  • ارسال: 1269
  • جنسیت : پسر

آفلاین محمدرضا حقیری

  • High Sr. Member
  • *
  • ارسال: 528
    • ذهن زیبا
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #12 : 05 فروردین 1402، 08:59 ب‌ظ »
من سه چهار سالی میشه که شل اصلیم رو گذاشتم zsh و دو سال اخیر هم اجبار بوده (بخاطر این مک لعنت الله) اما دم شما گرم! دنبال چنین چیزی بودم برای بش، چون هنوز که هنوزه کاربر گنو/لینوکس هستم و نمی‌خواستم اونجا zsh داشته باشم دیگه (:

آفلاین EnriqueTTE

  • High Sr. Member
  • *
  • ارسال: 607
  • جنسیت : پسر
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #13 : 06 فروردین 1402، 08:38 ب‌ظ »
هر کدوم از دوستان اگر سوالی داشت جواب میدم.
سوالایی مثل اینکه چجوری فلان شکل رو درست کنم، میخوام این چیزو اضافه کنم و ...

ویکی رو هم خواهم نوشت.
I am Enriquette

آفلاین thmkhtry

  • Hero Member
  • *
  • ارسال: 975
  • جنسیت : پسر
  • Fedora Linux
پاسخ : ظاهر جدید برای prompt بدون تغییر shell
« پاسخ #14 : 07 اردیبهشت 1402، 07:22 ب‌ظ »
میدونم یکم قدیمی شده ولی من کانفیگ نکرده استفاده اش میکنم چیز خوبیه و جالبه در کل.