]> code.delx.au - gnu-emacs/commitdiff
Port commit-msg to MSYS Bash+Gawk
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 11 Apr 2015 20:04:37 +0000 (13:04 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Sat, 11 Apr 2015 20:05:18 +0000 (13:05 -0700)
See Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
* build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
(cent_sign, print_at_sign, at_sign): Revert previous change.
(print_at_sign): Prepend "BEGIN".
(at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.

build-aux/git-hooks/commit-msg

index 3fc6e19e1dd1415531a0883da28926249ab529aa..6e31dbcbdbea93782011f0a062b979bb9a05725b 100755 (executable)
@@ -29,11 +29,12 @@ fi
 
 # Use a UTF-8 locale if available, so that the UTF-8 check works.
 # Use U+00A2 CENT SIGN to test whether the locale works.
-cent_sign='ยข'
-print_at_sign='{print substr("'$cent_sign'@", 2)}'
-at_sign=`$awk "$print_at_sign" 2>/dev/null`
+cent_sign_utf8_format='\302\242\n'
+cent_sign=`printf "$cent_sign_utf8_format"`
+print_at_sign='BEGIN {print substr("'$cent_sign'@", 2)}'
+at_sign=`$awk "$print_at_sign" </dev/null 2>/dev/null`
 if test "$at_sign" != @; then
-  at_sign=`LC_ALL=en_US.UTF-8 $awk "$print_at_sign" 2>/dev/null`
+  at_sign=`LC_ALL=en_US.UTF-8 $awk "$print_at_sign" </dev/null 2>/dev/null`
   if test "$at_sign" = @; then
     LC_ALL=en_US.UTF-8; export LC_ALL
   fi