]> ruderich.org/simon Gitweb - config/dotfiles.git/blobdiff - vcs/setup.sh
herbstluftwm/autostart: add bindings to run programs and select windows
[config/dotfiles.git] / vcs / setup.sh
index bf22f99166748ec23867772fd76e5f1d145c67c0..a0e475d2a120d3671fc5e480404e36eb0b5103da 100755 (executable)
@@ -26,21 +26,24 @@ set -eu
 if installed git; then
     generate gitconfig .in simple_cpp PWD -- "`pwd`"
 
-    # Older Git versions don't support push.default = simple.
+    # Support for old gits.
     if ! git status >/dev/null 2>&1; then
         echo 'gitconfig: removing push.default = simple'
         grep_i -v '^[[:space:]]default = simple$' gitconfig
     fi
-    # Even older Git versions don't support color.function.
     if ! git status >/dev/null 2>&1; then
         echo 'gitconfig: removing color.function'
         sed_i 's/^[[:space:]]*function = .*//' gitconfig
     fi
-    # Even older Git versions don't support git log --patch but only -p.
     if ! git log --patch >/dev/null 2>&1; then
         echo 'gitconfig: replacing git log --patch with -p'
         sed_i 's/log --patch/log -p/' gitconfig
     fi
+    if git stash push -- doesnt-exist 2>&1 \
+            | grep 'usage: git stash list' > /dev/null; then
+        echo 'gitconfig: replacing "stash push" with "stash save"'
+        sed_i 's/stash push/stash save/g' gitconfig
+    fi
 
     # If coloredstderr is used to color stderr then remove the workaround for
     # missing output to stderr.
@@ -54,11 +57,12 @@ if installed git; then
 fi
 
 if installed tig; then
-    if tig --version | grep -F 'tig version 1.' >/dev/null; then
-        link tigrc.old ~/.tigrc
-    else
-        link tigrc ~/.tigrc
+    generate tigrc .in cat
+    if tig --version | grep '^tig version 2\.[012]' >/dev/null; then
+        echo 'tigrc: removing history options'
+        grep_i -v '^set history-size = ' tigrc
     fi
+    link tigrc ~/.tigrc
 fi
 
 if installed hg; then