Fixed up Rexec.pm. Handles my prompt better. Also sets prompt to '@@@' so that it...
[clearscm.git] / rc / functions
index 1f1636d..47db2ca 100644 (file)
@@ -17,6 +17,21 @@ CR=$(echo "\015")
 
 view_name=
 
+function in_git_repo {
+  pwd=$PWD
+  
+  while [ "$pwd" != "/" ]; do
+    if [ -d "$pwd/.git" ]; then
+      true;
+      return;
+    fi
+
+    pwd=$(dirname "$pwd")
+  done
+  
+  false
+} # in_git_repo
+
 # Function to set the title bar. Works on the terminal emulators listed.
 function title_bar {
   prefix="$@"
@@ -39,8 +54,8 @@ function title_bar {
   fi
 
   # Add GIT info if available
-  if [ -d .git ]; then
-    current_dir="git: $(git branch | sed -n -e 's/^\* \(.*\)/\1/p') $current_dir"
+  if in_git_repo; then
+    current_dir="$current_dir [git: $(git branch | sed -n -e 's/^\* \(.*\)/\1/p')]"
   fi
 
   if [ "$TERM" = "hpterm" -o \
@@ -189,7 +204,7 @@ function ssh {
 } # ssh
 
 function sj {
-  if [ $ARCH = "FreeBSD" ]; then
+  if [ $ARCHITECTURE = "FreeBSD" ]; then
     psopts="-aux"
   else
     psopts="-ef"