# [PATCH] t6000lib: re-fix tr portability

1 messages from 2008-03-15 to 2008-03-15. Participants: Jeff King.
Thread: https://gitlist.dev/t/12700

## Jeff King, 2008-03-15 00:32

Subject: [PATCH] t6000lib: re-fix tr portability
Message-ID: <20080315003233.GA29209@coredump.intra.peff.net>
URL: https://gitlist.dev/e/20080315003233.GA29209%40coredump.intra.peff.net

```
It seems that some implementations of tr don't like a
replacement string of '-----...'; they try to find the
double-dash option "---...".

Instead of this pipeline of tr and sed invocations, just use a
single perl invocation.

Signed-off-by: Jeff King <peff@peff.net>
---
I didn't see any complaints about increasing the use of perl in earlier
patches, so hopefully nobody minds. I think this is more portable, more
readable, and probably more efficient.

 t/t6000lib.sh |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/t/t6000lib.sh b/t/t6000lib.sh
index b69f7c4..c0baaa5 100755
--- a/t/t6000lib.sh
+++ b/t/t6000lib.sh
@@ -97,10 +97,13 @@ check_output()
 # from front and back.
 name_from_description()
 {
-        tr "'" '-' |
-		tr '~`!@#$%^&*()_+={}[]|\;:"<>,/? ' \
-		   '------------------------------' |
-		tr -s '-' | tr '[A-Z]' '[a-z]' | sed "s/^-*//;s/-*\$//"
+	perl -pe '
+		s/[^A-Za-z0-9.]/-/g;
+		s/-+/-/g;
+		s/-$//;
+		s/^-//;
+		y/A-Z/a-z/;
+	'
 }
 
 
-- 
1.5.4.4.686.g851d

```
