From d31402b592404433fa6578f024b9d2d3844b5fe8 Mon Sep 17 00:00:00 2001 From: Don Armstrong <don@donarmstrong.com> Date: Tue, 21 Jan 2014 18:36:12 -0800 Subject: [PATCH] fix update_org_files to work in parallel --- update_org_files | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/update_org_files b/update_org_files index 3c71d15..b50ff08 100755 --- a/update_org_files +++ b/update_org_files @@ -2,17 +2,16 @@ ORG_GREP='-e .org$ -e .org_archive$ -e .org_done$' -cd ~; +if [ "x$1" == "xdoit" ]; then + if git status --porcelain|grep '^ M'|grep -q $ORG_GREP; then + git commit -m'update org files' $(mr --no-recurse status |grep '^ M'|grep $ORG_GREP|sed 's/^ M//g'); + if [ "$2" != "commit" ]; then + git push; + fi; + fi; +else + emacsclient -n -e '(org-save-all-org-buffers)' >/dev/null 2>&1 + mr -d ~ -j5 run update_org_files doit; +fi; -emacsclient -n -e '(org-save-all-org-buffers)' >/dev/null 2>&1 -for a in $(mr list |grep 'list:'|grep -v 'finished'|awk -F'list: ' '{print $2}' 2>/dev/null); do - (cd "$a"; - if git status --porcelain|grep '^ M'|grep -q $ORG_GREP; then - git commit -m'update org files' $(mr --no-recurse status |grep '^ M'|grep $ORG_GREP|sed 's/^ M//g'); - if [ "$1" != "commit" ]; then - git push; - fi; - fi; - ); -done; -- 2.39.5