1. Items shouldn't disappear from the selection (I can only add one (space) for some reason).
2. Allow grouping of items. For example, if you want to have [time] you should be able to drag the "[", "time", and "]" as a group instead of individually.
I'd love to see support for the terminal window title here, too. Add an additional container for the titlebar contents, and prefix \[\e]0;$titlebar_contents\a\] to the prompt when TERM is xterm, rxvt, or screen*.
Also, colors should be draggable into the prompt, since they can change between different parts of the prompt.
"Last command error when not successful" is nice as well; just add this to your prompt (includes color and whitespace):
On my system, I also have some extra logic to only show the username and hostname if either $SSH_CONNECTION is set or the username is not my usual username (usually because it's either root, some user I've sudoed to, or an unusual username because I'm on a system with mandated username conventions). Thus, on my personal system, my initial prompt is "~$ ", taking up very little room. Unfortunately "not my usual username" isn't portable to different users (though you could check for the presence of SUDO_USER), but checking SSH_CONNECTION is.
Also, I'd like to offer some words of caution to those who want lots of "external" (i.e. not bash-native) data in their PS1 string. Running outside programs can be expensive. For personal workstation use, things like the above are great. However, if you administer a remote (perhaps resource-constrained) server and you find yourself trying to rescue it from swap-death (or a partially busted HDD), you may not want to be 1) forking subprocesses, 2) allocating file descriptors, and 3) doing disk IO every time you hit the enter key. Build responsible prompt strings everyone.
Me, too. When I figured it out I felt silly. Maybe emphasize the construction area and deemphasize the preview? Could the preview be static, and to the right of the construction area and palettes?
1. Better know what you are doing when you fiddle with your shellprompt. Nothing is more agitating than having an unresponsive prompt because you entered a larger git repository. (cough linux kernel cough)
It's split up across profile,bashrc,bash_alias,bash_export
4. As was requested in the comments here you can use $TERM variable to determine your terminal name. Since most popular terminal emulators try to be what they are supposed to be "dumb vt100s" you'll get xterm or (if you use a multiplexer like tmux,screen) "screen" as $TERM. IMHO its not of much use therefore.
This is pretty neat. One issue: I put a lot of info in my ps1, so I need more than two space tokens. They should regenerate as you pull them up. Also, I want different colors on different tokens. I also like my git branch to be a different color between master, staging, integration (or other feature branches). I use the ps1_set from RVM, but take out the ruby version.
This just uses a literal dollar sign to mark the end of the prompt by default. That means if, like me, you don't put the username in your PS1 - instead relying on $ changing to a # when you run `sudo -s' nothing will happen.
I would suggest adding a "$/#" bubble which adds "\$" to the PS1 string.
If you're not opposed to using JS in your prompt (it runs fast, promise!) check out impromptu [0]. I've been using it for a few months now and it's amazing.
You're probably not the maintainer, but Impromptu's README really should do a better job of explaining what it does and why I'd want to use it.
It sounds interesting, or at least I can imagine something interesting based on that description, but the only concrete information readily available seems to be that Impromptu requires Node.js and Redis. Those are fairly onerous requirements for a shell prompt, so some description of the actual features is probably warranted.
If anyone wanted a full list of available options, you can look at the man page for your shell, under PROMPTING (you can type /PROMPTING to search for it). Any other bash variable, or user defined variable will also work.
1. Items shouldn't disappear from the selection (I can only add one (space) for some reason).
2. Allow grouping of items. For example, if you want to have [time] you should be able to drag the "[", "time", and "]" as a group instead of individually.