]> code.delx.au - gnu-emacs/commitdiff
Port commit-msg to broken MS-Windows shell
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 11 Apr 2015 15:19:13 +0000 (08:19 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Sat, 11 Apr 2015 15:21:17 +0000 (08:21 -0700)
* build-aux/git-hooks/commit-msg (cent_sign):
Just use UTF-8 here rather than ASCII + printf, as the latter fails
on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html

build-aux/git-hooks/commit-msg

index ea8d9098b378e0707041b4953630315ebafbb3c5..3fc6e19e1dd1415531a0883da28926249ab529aa 100755 (executable)
@@ -29,8 +29,7 @@ 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_utf8_format='\302\242\n'
-cent_sign=`printf "$cent_sign_utf8_format"`
+cent_sign='ยข'
 print_at_sign='{print substr("'$cent_sign'@", 2)}'
 at_sign=`$awk "$print_at_sign" 2>/dev/null`
 if test "$at_sign" != @; then
@@ -45,7 +44,7 @@ exec $awk -v at_sign="$at_sign" -v cent_sign="$cent_sign" '
   BEGIN {
     # These regular expressions assume traditional Unix unibyte behavior.
     # They are needed for old or broken versions of awk, e.g.,
-    # mawk 1.3.3 (1996), Gawk 3.0.4 (1999).
+    # mawk 1.3.3 (1996), or gawk on MSYS (2015).
     space = "[ \f\n\r\t\v]"
     non_space = "[^ \f\n\r\t\v]"
     non_print = "[\1-\37\177]"