xta/HalloweenBash

Allow color switching intra-PS1

nicowilliams opened this issue · 10 comments

Like I do for my own. Just allow the color selections to get dragged into the PS1 box. This makes it easy to color branch and path names (for example) differently, so they stand out.

+1

xta commented

Thanks for providing feedback. This feature would be helpful, but it would be very important to preserve the ease of use in the UI controls.

Okay, what about a two step process then? The current color generator would create a box depending on which {fore,back}ground color you selected, which you could then drag into the configuration box to apply it.

Note that a "color reset" box would be probably needed as well.

xta commented

@Likeyn That would be one way to do it. I am concerned about having another step in the process and finding the right balance between ease of use and power features. There are many excellent color options that HalloweenBash does not handle at the moment; for many reasons including 1.) color controls are tricky to implement, 2.) a user should not feel overwhelmed with decisions to make and steps to take.

You already handle all other elements the way I propose you handle color:
as boxes to drag around, so UI-wise there's no complication. Just make
sure to reset the colors automatically at the end of the prompt.

xta commented

@nicowilliams, picking multiple colors is a useful feature, but there are a lot of specific implementation details that remain unanswered.

Should you send a pull request, I'd be happy to review it. Thanks

It's just a suggestion. I already have my own fairly hairy PS1 setup the
way I want, including switching to different PS1s depending on whether $PWD
is inside a git/hg/fossil workspace, and I'm not going to switch, so no PR
from me (sorry). But it is nice to play with other possibilities using
your HalloweenBash, and other users may find it very helpful. I'll stop
making noise now :)

I was also wondering about this. Even without the --no-color flag, everything still comes up in bash as the default foreground color.

For example:

function parse_git_branch {
   git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}

export PS1="\w \$(parse_git_branch) \@\n$ "

screen shot 2013-10-04 at 9 57 52 am

xta commented

Hi @kevinSuttle,

Are you referring to switching colors between different elements? Your example adds the current git branch.

Thanks for your feedback

@xta, yes. Switching between elements.