Remember when prompt engineering was about making PS1 nice.

On that topic, who has a sick PS1 I can steal?

@tykling Just use starship.rs, that's what I do.
@tykling my 2018 PS1 would be thrilled to have just one user PS1="\[\033[1m\[\033[38;5;124m\][\[\033[38;5;220m\]\u\[\033[38;5;70m\]@\[\033[38;5;111m\]\h\[\033[38;5;133m\]\w\[\033[38;5;124m\]]\[\033[38;5;253m\]$\[\033[0m\] "

@tykling

This is what I use. It's not super fancy, but it shows the information I need pretty compactly.

export PS1='$(test $? -eq 0 || echo ❌)\[\e[1;32m\]\u\[\e[00m\]@\[\e[0;32m\]\h\[\e[1;34m\]\w\[\e[00m\]\$ '

This trick means my prompts are always placed to the left even when a command ends without a newline:

PROMPT_COMMAND='printf "%%%$((COLUMNS-1))s\\r"'

@tykling not at the computer at the moment, but I hae one that checks an env var that is set by vim so I can easily tell if I'm :sh'ing and don't start nested vim sessions :D
@reynir @tykling today, I learned about :sh

@Tak I use it all the time! The problem is I tend to lose track where my vim session is, and this PS1 helps. It's useful for compiling, poking around etc.

@tykling In .vimrc I put `let $VIM_IS_OPEN = '(vim is open)'` and then in the PS1 I just put $VIM_IS_OPEN somewhere.

@reynir I make heavy use of :! but hadn't known about :sh 🤷