انجمنهای فارسی اوبونتو
کمک و پشتیبانی => انجمن عمومی => نویسنده: EnriqueTTE در 12 خرداد 1400، 01:09 بظ
-
سلام من میخوام ترمینالم رو شخصی سازی کنم، این چیزیه که نوشتم:
PS1="\[\e[1;35m\]\n-\u \[\e[0m\]\[\e[1;34m\]\W\[\e[0m\]\[\e[0;34m\]\n ➜ \$(__git_ps1) \[\e[0m\] "
اینم خروجی:
-smjt2000 ~
➜
من میخوام بعد از اینکه دستور اجرا شد خط خالی چاپ بشه، اما اینجوری که من نوشتم قبل از وارد کردن دستور خط خالی چاپ میشه، حتی اگر clear بزنم
عکس گذاشتم، همونجوری که میبینید یه خط خالی بالا هست در صورتی که من clear زدم
-
سلام.
امیدوارم همان چیزی باشه که میخواستید.
PS1="\[\[1;35m\]\n-\u \[\e[0m\]\[\e[1;34m\]\W\[\e[0m\]\[\e[0;34m\]\n ➜ \$(__git_ps1) \[\e[0m\] "
-
فکر کنم مشکل از متغیرتونه
این رو تست کنید
PS1="\[\e[1;35m\]-\u \[\e[0m\]\[\e[1;34m\]\W\[\e[0m\]\[\e[0;34m\]\n ➜ \$(__git_ps1) \[\e[0m\] "
-
هیچکدوم کار نکرد متاسفانه
فکر کنم مشکل از متغیرتونه
این رو تست کنید
PS1="\[\e[1;35m\]-\u \[\e[0m\]\[\e[1;34m\]\W\[\e[0m\]\[\e[0;34m\]\n ➜ \$(__git_ps1) \[\e[0m\] "
اینی که شما گفتید کلا خط خالی نداشت
من یچیزی میخوام مثل این:
-smjt2000 ~
➜ MY_COMMAND \n
میخوام اون \n بعد از دستور عمل کنه اما چیزی که من یاد داشتم و نوشتم، \n قبل از -smjt2000 قرار گرفته
-
میخوام اون \n بعد از دستور عمل کنه اما چیزی که من یاد داشتم و نوشتم، \n قبل از -smjt2000 قرار گرفته
به نظرم درسته ببینید!
-
به نظرم درسته ببینید!
-smjt2000 ~
➜ echo hi
hi
-smjt2000 ~
➜
من اینو میخوام، یه خط خالی بعد اجرای دستور باشه(معلوم کردم کجا باشه) :
-smjt2000 ~
➜ echo hi
hi
# اینحا یه خط خالی باشه
-smjt2000 ~
➜
-
آها!
متغیر PS1 برای نمایش اینه که توی ترمینال وقتی میخوایم دستور رو وارد بکنیم چی نمایش داده بشه
ولی نمیتونیم بگیم بهش بعد از دستور چیکار کنه
یعنی نزدیک ترین حالتی که شما میخواید اینه که بگیم همون اول کار یه خط چاپ کنه ولی همین مسئله پیش میاد
راستش من توی BASH چیزی یادم نمیاد که دقیقا این شکلی باشه چرا از ZSH استفاده نمیکنید؟ اون جا تم های زیادی وجود داره که شاید بتونه خواستتون رو برآورده بکنه. علاوه بر این میتونید از پلاگین هاش هم استفاده بکنید (به عنوان پلاگین منیجر میتونید از ohmyzsh (https://github.com/ohmyzsh/ohmyzsh) استفاده بکنید
اینم یه مطلب خوب برای راه اندازی ohmyzsh و معرفی چند تا تم و پلاگین خوب هست شروع به کار با zsh (https://virgool.io/@mimalef70/%DA%86%DA%AF%D9%88%D9%86%D9%87-%DB%8C%DA%A9-terminal-%D8%AD%D8%B1%D9%81%D9%87-%D8%A7%DB%8C-%D9%88-%D8%B2%DB%8C%D8%A8%D8%A7-%D8%AF%D8%B1-macos-%D9%88-%DB%8C%D8%A7-linux-%D8%AF%D8%A7%D8%B4%D8%AA%D9%87-%D8%A8%D8%A7%D8%B4%DB%8C%D9%85-cpfbh94swx2p)
-
آها!
متغیر PS1 برای نمایش اینه که توی ترمینال وقتی میخوایم دستور رو وارد بکنیم چی نمایش داده بشه
ولی نمیتونیم بگیم بهش بعد از دستور چیکار کنه
یعنی نزدیک ترین حالتی که شما میخواید اینه که بگیم همون اول کار یه خط چاپ کنه ولی همین مسئله پیش میاد
راستش من توی BASH چیزی یادم نمیاد که دقیقا این شکلی باشه چرا از ZSH استفاده نمیکنید؟ اون جا تم های زیادی وجود داره که شاید بتونه خواستتون رو برآورده بکنه. علاوه بر این میتونید از پلاگین هاش هم استفاده بکنید (به عنوان پلاگین منیجر میتونید از ohmyzsh (https://github.com/ohmyzsh/ohmyzsh) استفاده بکنید
اینم یه مطلب خوب برای راه اندازی ohmyzsh و معرفی چند تا تم و پلاگین خوب هست شروع به کار با zsh (https://virgool.io/@mimalef70/%DA%86%DA%AF%D9%88%D9%86%D9%87-%DB%8C%DA%A9-terminal-%D8%AD%D8%B1%D9%81%D9%87-%D8%A7%DB%8C-%D9%88-%D8%B2%DB%8C%D8%A8%D8%A7-%D8%AF%D8%B1-macos-%D9%88-%DB%8C%D8%A7-linux-%D8%AF%D8%A7%D8%B4%D8%AA%D9%87-%D8%A8%D8%A7%D8%B4%DB%8C%D9%85-cpfbh94swx2p)
قبلا از zsh استفاده کردم، قشنگه ولی بعضی چیزای bash رو نداره:
وقتی دستوری رو میزنیم که اشتباهه یا پکیح نصب نشده، bash پکیج های مشابه رو پیشنهاد میده اما zsh نه:
$ python
Command 'python' not found, did you mean:
command 'python3' from deb python3
command 'python' from deb python-is-python3
پکیج undistract-me با zsh کار نمیکنه(وقتی دستوری وارد میکنید و ترمینال رو ترک میکنید، اگه دستور بیشتر از 10 ثانیه طول بکشه<پیش فرض> بعد از اتمام دستور اعلان پایان دستور میاد)
zsh خوبه ولی من انتخابش نمیکنم
-
وقتی دستوری رو میزنیم که اشتباهه یا پکیح نصب نشده، bash پکیج های مشابه رو پیشنهاد میده اما zsh نه:
برای این کار میشه از پلاگین command-not-found استفاده کرد من خودم استفاده نکردم ولی لینک گیتهابش رو میزارم cnf (https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/command-not-found)(وقتی دستوری وارد میکنید و ترمینال رو ترک میکنید، اگه دستور بیشتر از 10 ثانیه طول بکشه<پیش فرض> بعد از اتمام دستور اعلان پایان دستور میاد)
درسته ساپورت رسمی نداره از zsh ولی یه سری جایگزین ها و راه در رو ها وجود داره! undistract-me and zsh (https://github.com/jml/undistract-me/issues/12)
-
برای این کار میشه از پلاگین command-not-found استفاده کرد من خودم استفاده نکردم ولی لینک گیتهابش رو میزارم cnf (https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/command-not-found)
درسته ساپورت رسمی نداره از zsh ولی یه سری جایگزین ها و راه در رو ها وجود داره! undistract-me and zsh (https://github.com/jml/undistract-me/issues/12)
ممنون بابت راهنمایی