chiark
/
gitweb
/
~ian
/
ian-dotfiles.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
emacs: mail: drop sysadmin inbox thing which should be in ian-local
[ian-dotfiles.git]
/
infra
/
substitute
diff --git
a/infra/substitute
b/infra/substitute
index 112e0467055d83b131daa92ef3140239d54b8827..7ceafb3c6995459194c4cce403f2bd4f6f0af757 100755
(executable)
--- a/
infra/substitute
+++ b/
infra/substitute
@@
-6,10
+6,12
@@
mode_subst () {
}
mode_diff () {
}
mode_diff () {
+ mode_subst
diff -u $dot $bfn.new || test $? = 1
}
mode_install () {
diff -u $dot $bfn.new || test $? = 1
}
mode_install () {
+ mode_subst
mv -f $bfn.new $dot
}
mv -f $bfn.new $dot
}
@@
-20,8
+22,16
@@
subst|diff|install) ;;
esac
shift
esac
shift
-for fn in templates/*.in; do
+if [ $# = 0 ]; then
+ set templates/*.in
+fi
+
+for fn in "$@"; do
bfn=${fn%.in}
bfn=${fn%.in}
+ bfn=${bfn##*/}
+ bfn=${bfn#.}
+ bfn=templates/$bfn
+ fn=${bfn}.in
dot=$HOME/.${bfn#*/}
mode_$mode
done
dot=$HOME/.${bfn#*/}
mode_$mode
done