diff options
Diffstat (limited to '')
-rw-r--r-- | .emacs | 2 | ||||
-rw-r--r-- | .zsh/functions/cci | 18 | ||||
-rw-r--r-- | .zsh/zshrc | 5 |
3 files changed, 20 insertions, 5 deletions
@@ -36,7 +36,7 @@ '(isar-tracing:auto-try nil) '(isar-unicode-tokens-enable t) '(isar-unicode-tokens2-enable t) - '(isar-use-find-theorems-form t) + '(isar-use-find-theorems-form nil) '(isar-x-symbol-enable nil) '(proof-delete-empty-windows nil) '(proof-imenu-enable t) diff --git a/.zsh/functions/cci b/.zsh/functions/cci index 4baaa7d..6d10917 100644 --- a/.zsh/functions/cci +++ b/.zsh/functions/cci @@ -13,6 +13,11 @@ _ask_$0 () fi } +_stg_v_$0 () +{ + python -c 'from stgit.builtin_version import version; print version' +} + if [[ $# == 0 ]]; then echo "No message given. Aborting." return 1 @@ -55,7 +60,14 @@ if [[ -z $(cstg files) ]]; then fi echo ">> Committing" -cstg commit $tok +cstg commit $tok || return + +# from 0.16 onwards stg repushes the patches ... pop them again +# this is needed to make the `config push` work +if is-at-least 0.16 $(_stg_v_$0); then + echo ">>> Popping patches, stg thought it had to re-apply" + cstg pop -a -k || return +fi if [[ -n $(cstg series --applied) ]]; then echo @@ -65,10 +77,10 @@ if [[ -n $(cstg series --applied) ]]; then fi echo ">> Pushing to remote" -config push +config push || return echo ">> Re-apply patches" -cstg push -a -k +cstg push -a -k || return echo ">> Done" @@ -1,3 +1,6 @@ +# provide the is-at-least command +autoload is-at-least + # Alias definition {{{ ################################################# @@ -137,7 +140,7 @@ RPROMPT="%(?.%S%{$fg[green]%}:).%S%{$fg[red]%}:()%{$reset_color%}%s" # vcs stuff for prompt setopt prompt_subst -if [[ $ZSH_VERSION == 4.3.<->* ]]; then +if is-at-least 4.3; then autoload -Uz vcs_info zstyle ":vcs_info:*" enable bzr cvs svn git hg |