Warna yang lebih besar untuk Prompt, Command, dan Output

23

Saat ini iTerm2 saya terlihat seperti ini ...

masukkan deskripsi gambar di sini

Semuanya berwarna sama dan sulit dibaca. Bisakah saya membuat Prompt, Command, dan Output dengan warna berbeda seperti ini?

masukkan deskripsi gambar di sini

jeremyjjbrown
sumber

Jawaban:

16

Ada deskripsi yang cukup lengkap tentang mengedit bash prompt di sini mungkin ada beberapa hal spesifik linux, tetapi sebagian besar adalah hal-hal umum bash.

Tapi hanya untuk memulai, saya sarankan generator profil bash ini

Ini sangat sederhana, jadi saya telah belajar lebih banyak dan prompt saya terlihat seperti: bash prompt dwightk

menggunakan:

[[ -s "/Users/dwightk/.rvm/scripts/rvm" ]] && source "/Users/dwightk/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
export PS1="🍔  \[\033[01;35m\]\u@\h:\[\033[01;34m\]\$(parse_git_branch) \[\033[01;32m\]\w \[\033[01;34m\]\n>\[\e[0m\]"

yang cukup berguna ketika berhadapan dengan git. Semuanya sebelum export PS1=apa yang memungkinkan cabang git muncul.

🍔 berasal dari perampokan pertama saya ke pengeditan bash prompt setelah saya membaca posting blog ini.

dwightk
sumber
Semoga seseorang dengan pemahaman yang lebih baik tentang pengeditan aktual dari prompt dapat mengirim jawaban yang lebih meyakinkan.
dwightk
🍔 <- Apakah arang itu dimaksudkan?
jeremyjjbrown
ya, ini adalah sisa dari ekspedisi pertama saya ke pengeditan bash prompt setelah membaca: notes.torrez.org/2013/04/put-a-burger-in-your-shell.html Saya menyukainya sehingga tetap ada.
dwightk
1
Fungsi git sangat bagus. Akan menghemat beberapa cabang git -a cmd.
jeremyjjbrown
1
git berwarna juga bagus. thomashunter.name/blog/…
jeremyjjbrown
9

AFAIK tidak ada cara UNIX untuk mewarnai apa pun selain konfirmasi.

Tetapi ketika Anda meminta solusi iTerm2 Anda beruntung! Gunakan fitur Pemicu untuk mewarnai regexp pencocokan teks.

Misalnya jika permintaan Anda terlihat seperti ini:

.. lalu tambahkan di iTerm -> Preferensi -> Profil -> Lanjutan -> Pemicu, [Sunting] a Pemicu seperti ini:

..that akan cocok dengan bagian perintah dari setiap baris, yang akan mulai terlihat seperti ini:

Voa - Anda memiliki warna berbeda untuk prompt, perintah dan output! :)

Greg Dubicki
sumber
Ini lebih sederhana bagi kebanyakan orang, saya yakin begitu terbalik. Tetapi karena yang lain akan bekerja dalam istilah apa pun, bahkan dari jarak jauh dan itu juga warna git prompt, saya akan menyimpannya sebagai jawaban yang diterima.
jeremyjjbrown
Font apa yang Anda gunakan?
towry
@towry: Consolas
Greg Dubicki
Anda dapat dengan mudah meletakkan sesuatu seperti \e[95mpada akhir PS1 var Anda dan itu akan melakukannya
Samy Bencherif
Terima kasih @SamyBencherif, tetapi ini juga akan mewarnai output dengan warna yang sama dengan perintah, yang bukan apa yang diminta OP.
Greg Dubicki
1

Solusi iTerm bekerja tetapi tampaknya ada sedikit keterlambatan dalam pewarnaan. Jika seseorang berhenti mengetik sebentar, seluruh garis diwarnai seperti yang diharapkan.

George Smith
sumber