5 ms·
Command Line Feedback from RVM and Git
- SeoxyS 15y agoHere's my PS1: # ----------------------------------------------------------------- # BASH PROMPT # ----------------------------------------------------------------- parse_git_branch() { git_branch=`git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'` if [ $git_branch ]; then echo "•$git_branch" fi } # sexy prompt export PS1='[\[\033[0;35m\]\h\[\033[0;36m\] \w\[\033[00m\]\[\033[33m\]$(parse_git_branch)\[\03 3[00m\]]\$ ' And here's what it looks like: http://akhun.com/seo/skitch/Screen_Shot_2011-08-02_at_8.47.12_AM-20110802-084738.png http://akhun.com/seo/skitch/Screen_Shot_2011-08-02_at_8.47.1...
- Groxx 15y agoI'm using something similar, but ran into a problem recently: go into a detached head mode (`git checkout HEAD^`). ALL your branches (local and remote) are spat out into your PS1. It's rare enough that I haven't looked into fixing it, but have any suggestions?
- telemachos 15y agoMy suggestion is to use something more like this (provided by Git's bash-completion): branch=$(__git_ps1 "%s") That doesn't have any problem with detached head: http://cl.ly/8yN8 http://cl.ly/8yN8
- Groxx 15y agoooh, very nice. Prior to this & your other reply, I hadn't seen anything using the __git functions. Everyone uses sed. Thanks!
- glenjamin 15y agoMy major step forward in bash prompt setup earlier this year was realising it didn't have to be a single line. I have one info line which tells me path, user, host, git branch etc. And then the prompt sits nicely on the line below and is always at the same alignment. http://i.imgur.com/0F6qt.png http://i.imgur.com/0F6qt.png
- jkmcf 15y agoI use the same except my 2nd line has history id and time: 136 11:33:48 $ export PS1='\[\e[32m\]\u@\h \[\033[33m\]\w\[\033[00m\] $(__git_ps1 "(%s)") ${rvm_ruby_string}\n\# \[\033[31m\] \[\033[00m\]\t \\$ '
- glenjamin 15y agoHere's the bash incantation for that: command_exists __git_ps1 && git="$c_vcs\$(__git_ps1)" PS1="\n$c_path\w$git $c_id\u@$prompt_host$c_reset" $c_* vars are just for colour, the command_exists switch lets me use the same dotfile on boxes which don't have git installed.
- generalk 15y agoThe best thing I ever did for my prompt was switch to zsh and start using oh-my-zsh[1]. Zsh itself has a handful of interesting features, but oh-my-zsh's built-in prompt theme support means I can cycle through prompts (most of which also include git or rvm info) with impunity. [1]: https://github.com/robbyrussell/oh-my-zsh https://github.com/robbyrussell/oh-my-zsh
- SingAlong 15y agoMy PS1 looks like this: 1.9.2@rails31::project(branch)⚡ Shows the ruby version, rvm gemset, working directory and git branch, followed by a thunderbolt prompt. This is how I set it https://gist.github.com/1120566 https://gist.github.com/1120566
- swah 15y agoUnfortunately that makes bash kinda slow for me.
- telemachos 15y agoI'm currently using[1] a PS1 that shows branch name, whether any files in the repo need to be staged or committed and whether the repo is behind or ahead of the remote. (Credit to Adam Vandenberg[2] and Brian Carper[3] for whatever good ideas it contains.) Here's what it looks like: http://cl.ly/8y50 http://cl.ly/8y50 [1] https://github.com/telemachus/dotfiles/blob/master/bashrc https://github.com/telemachus/dotfiles/blob/master/bashrc [2] https://github.com/adamv/dotfiles/blob/master/bashrc https://github.com/adamv/dotfiles/blob/master/bashrc [3] http://briancarper.net/blog/570/git-info-in-your-zsh-prompt http://briancarper.net/blog/570/git-info-in-your-zsh-prompt
- drothlis 15y agoGit's own bash/zsh completion support comes with utilities for the prompt. For details see: http://git.kernel.org/?p=git/git.git;a=blob;f=contrib/completion/git-completion.bash;hb=HEAD http://git.kernel.org/?p=git/git.git;a=blob;f=contrib/comple...
- jsjohns2 15y agoThe best part is the blog's un-resizable 425px column of text, containing 150+ character shell commands.
- bryckbost 15y agoWe've wanted to make that better, just haven't found the time. Scrollbars seemed good enough for the interim.
- Groxx 15y ago* ugh * does anyone actually like that avatar animation, and the slow scrolling that results from it? I find the comments here far more useful, and they aren't one-line commands with no explanation of the parts. Thanks for the submission, for the discussion's sake, but I'm not going back to that blog any time soon.
- bryckbost 15y agoThanks for checking out the article. Which browser and OS are you using? Scrolling isn't slow in webkit for myself, but I'd be happy to dig in and make it smoother if it's an issue.
- Groxx 15y agoCanary Chrome in OSX. It's been stuttery in every browser I've used, in multiple OSes; I've been on the site a couple times in the past for other posts (I think most via HN). To clarify: it doesn't crawl, but it's not smooth. Looking at the profiler in Chrome, I'm not seeing any unnecessary events while scrolling between things - maybe it's a transparency somewhere instead? Removing a handful I could find did speed things up, though I probably missed a few. Browsers are still lame at those, unfortunately :/
- bryckbost 15y agoGood to know. We'll work on getting it smoothed out a bit.
- callahad 15y agoI've always been fond of Steve Losh's "Extravagant Zsh Prompt": http://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/ http://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/ Screenshots from the article: http://stevelosh.com/media/images/blog/2010/02/zsh-prompt.png http://stevelosh.com/media/images/blog/2010/02/zsh-prompt.pn... http://stevelosh.com/media/images/blog/2010/02/zsh-prompt-comments.png http://stevelosh.com/media/images/blog/2010/02/zsh-prompt-co...