annotate bin/hgeditor @ 297:2380af78be40

Altair & PDP aliases, moved telnet to nearby too
author Steve Huston <huston@srhuston.net>
date Sat, 01 Mar 2025 00:14:07 -0500
parents fe021064d723
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
84
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
1 #!/bin/sh
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
2
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
3 HGTMP=""
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
4 cleanup_exit() {
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
5 rm -rf "$HGTMP"
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
6 }
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
7
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
8 # Remove temporary files even if we get interrupted
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
9 trap "cleanup_exit" 0 # normal exit
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
10 trap "exit 255" HUP INT QUIT ABRT TERM
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
11
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
12 HGTMP=$(mktemp -d ${TMPDIR-/tmp}/hgeditor.XXXXXX)
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
13 [ x$HGTMP != x -a -d $HGTMP ] || {
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
14 echo "Could not create temporary directory! Exiting." 1>&2
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
15 exit 1
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
16 }
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
17
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
18 (
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
19 grep '^HG: changed' "$1" | cut -b 13- | while read changed; do
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
20 "$HG" diff "$changed" >> "$HGTMP/diff"
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
21 done
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
22 )
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
23
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
24 cat "$1" > "$HGTMP/msg"
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
25
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
26 MD5=$(which md5sum 2>/dev/null) || \
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
27 MD5=$(which md5 2>/dev/null)
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
28 [ -x "${MD5}" ] && CHECKSUM=`${MD5} "$HGTMP/msg"`
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
29 if [ -s "$HGTMP/diff" ]; then
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
30 vim "+e $HGTMP/diff" '+set buftype=help filetype=diff' "+split $HGTMP/msg" "+wincmd r" "+resize 10" || exit $?
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
31 else
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
32 vim "$HGTMP/msg" || exit $?
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
33 fi
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
34 [ -x "${MD5}" ] && (echo "$CHECKSUM" | ${MD5} -c >/dev/null 2>&1 && exit 13)
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
35
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
36 mv "$HGTMP/msg" "$1"
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
37
fe021064d723 Adding 'hgeditor' to repo & environment
Steve Huston <huston@srhuston.net>
parents:
diff changeset
38 exit $?