summaryrefslogtreecommitdiffstats
path: root/contrib/awk/awklib/eg/prog/translate.awk
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/awk/awklib/eg/prog/translate.awk')
-rw-r--r--contrib/awk/awklib/eg/prog/translate.awk47
1 files changed, 0 insertions, 47 deletions
diff --git a/contrib/awk/awklib/eg/prog/translate.awk b/contrib/awk/awklib/eg/prog/translate.awk
deleted file mode 100644
index 803700c..0000000
--- a/contrib/awk/awklib/eg/prog/translate.awk
+++ /dev/null
@@ -1,47 +0,0 @@
-# translate.awk --- do tr-like stuff
-#
-# Arnold Robbins, arnold@gnu.org, Public Domain
-# August 1989
-
-# Bugs: does not handle things like: tr A-Z a-z, it has
-# to be spelled out. However, if `to' is shorter than `from',
-# the last character in `to' is used for the rest of `from'.
-
-function stranslate(from, to, target, lf, lt, t_ar, i, c)
-{
- lf = length(from)
- lt = length(to)
- for (i = 1; i <= lt; i++)
- t_ar[substr(from, i, 1)] = substr(to, i, 1)
- if (lt < lf)
- for (; i <= lf; i++)
- t_ar[substr(from, i, 1)] = substr(to, lt, 1)
- for (i = 1; i <= lf; i++) {
- c = substr(from, i, 1)
- if (index(target, c) > 0)
- gsub(c, t_ar[c], target)
- }
- return target
-}
-
-function translate(from, to)
-{
- return $0 = stranslate(from, to, $0)
-}
-
-# main program
-BEGIN {
- if (ARGC < 3) {
- print "usage: translate from to" > "/dev/stderr"
- exit
- }
- FROM = ARGV[1]
- TO = ARGV[2]
- ARGC = 2
- ARGV[1] = "-"
-}
-
-{
- translate(FROM, TO)
- print
-}
OpenPOWER on IntegriCloud