Bash Prompts Collection
11–20 of 33 posts
Re: Bash Prompts Collection
#12 https://atuin.sh/
https://github.com/akinomyoga/ble.sh
https://starship.rs/
These three have made my shell game so much more enjoyable.Re: Bash Prompts Collection
#13My buddy spike723 on EFnet built what I can only describe as a sentinent bash prompt. I recall it being massive and could show you everything about your system in a prompt. 25 years later I have no clue where this guy went but I remember him because he was instrumental in moving me off zsh to bash
Re: Bash Prompts Collection
#14Like most customization and command replacements (like the fancy greps, ls's, etc), I've stopped using fancy prompts because I log in to lots of systems over the day and most of them won't have my prompt and this causes annoyance. Also I have a theory that it lowers chatbot performance if you're copy pasting terminal output.
This also applies to say vimrc (choose your editor/tool of choice).
Re: Bash Prompts Collection
#15 > ls GN*
and accidentally paste it into a terminal window (or a web page that someone else pastes into a terminal window) and accidentally create an empty file named "ls". Or, in some cases, overwrite an existing file.My own current setting is
PS1=': ${env:+($env) }\W; '
Which looks like this: : ~; cd wak
: wak; ls
LICENSE monosrc scripts toybox toybox_awk_test
Makefile README.md src toybox_awk_parts
: wak;
The :; has the advantage that, if you unintentionally include the prompt in your copy and paste, it usually has no effect. (Maybe I should change ($env) to [$env].) \W (the last segment of the directory name) is usually about the right amount of context for me, but if I were working on a project with a lot of directories named things like "views" I would probably reconsider that.BTW, since this prompt collection was written, Linux terminal emulators have mostly gained 24-bit color support, which potentially opens up more alternative colors. See http://canonical.org/~kragen/sw/dev3/gradient.c with sample results in http://canonical.org/~kragen/sw/dev3/gradient.png. The escape sequence is \033[38;2;rrr;ggg;bbbm, where \033 is ESC and rrr, ggg, and bbb are decimal numbers from 0 to 255.
(Probably I should switch from bash to zsh...)
Re: Bash Prompts Collection
#16I strongly recommend against putting a ">" in your prompt on Unix if you're using any kind of system that supports copy and paste. (So, like, on a physical VT100 on a serial port it would be okay.) Sooner or later you're going to take a prompt-included command like > ls GN* and accidentally paste it into a terminal window (or a web page that someone else pastes into a terminal window) and accidentally create an empty…
Re: Bash Prompts Collection
#17Re: Bash Prompts Collection
#18I strongly recommend against putting a ">" in your prompt on Unix if you're using any kind of system that supports copy and paste. (So, like, on a physical VT100 on a serial port it would be okay.) Sooner or later you're going to take a prompt-included command like > ls GN* and accidentally paste it into a terminal window (or a web page that someone else pastes into a terminal window) and accidentally create an empty…
I use Linux for 30 years. Never had this problem. However, I saw newbies, which copy paste commands from tutorials to shell and then frustrated, because # is a comment.
Re: Bash Prompts Collection
#19For bash users I can recommend looking into setting PS1 from a function and assigning that function to PROMPT_COMMAND as it makes it much easier to make it readable
Re: Bash Prompts Collection
#20Missing from all of these: Error code returned from previous command. Invaluable.
(My prompt is platform aware since codes for some ops differ between MacOS and Linux. The return is colour-coded (green, red, purple, depending on case), and multiline, with git status if in a repo, cwd, and a few other things....)