diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2015-04-05 11:20:41 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2015-04-05 11:20:41 +0300 |
commit | 4de12ef40f9ea9a0b715903cfe6da51b97eedb77 (patch) | |
tree | 84a0c8d117e9a2a629e186a1fe22ebe185e5d6a4 /awklib/eg | |
parent | 14da33f5ac17b4adfd15ddb12c07715741bd1b1f (diff) | |
parent | dbf9d5a4fc4b6d6340912395f020019576ed37f6 (diff) | |
download | egawk-4de12ef40f9ea9a0b715903cfe6da51b97eedb77.tar.gz egawk-4de12ef40f9ea9a0b715903cfe6da51b97eedb77.tar.bz2 egawk-4de12ef40f9ea9a0b715903cfe6da51b97eedb77.zip |
Merge branch 'master' into cmake
Diffstat (limited to 'awklib/eg')
-rw-r--r-- | awklib/eg/lib/assert.awk | 2 | ||||
-rw-r--r-- | awklib/eg/lib/bits2str.awk | 2 | ||||
-rw-r--r-- | awklib/eg/lib/ftrans.awk | 2 | ||||
-rw-r--r-- | awklib/eg/lib/inplace.awk | 9 | ||||
-rw-r--r-- | awklib/eg/lib/intdiv.awk (renamed from awklib/eg/lib/div.awk) | 7 | ||||
-rw-r--r-- | awklib/eg/lib/quicksort.awk | 5 | ||||
-rw-r--r-- | awklib/eg/lib/strtonum.awk | 2 | ||||
-rw-r--r-- | awklib/eg/prog/anagram.awk | 6 | ||||
-rw-r--r-- | awklib/eg/prog/extract.awk | 2 | ||||
-rw-r--r-- | awklib/eg/prog/indirectcall.awk | 2 | ||||
-rw-r--r-- | awklib/eg/prog/pi.awk | 2 | ||||
-rw-r--r-- | awklib/eg/prog/split.awk | 2 | ||||
-rw-r--r-- | awklib/eg/prog/translate.awk | 2 |
13 files changed, 27 insertions, 18 deletions
diff --git a/awklib/eg/lib/assert.awk b/awklib/eg/lib/assert.awk index 75fd8853..c8e13490 100644 --- a/awklib/eg/lib/assert.awk +++ b/awklib/eg/lib/assert.awk @@ -1,4 +1,4 @@ -# assert --- assert that a condition is true. Otherwise exit. +# assert --- assert that a condition is true. Otherwise, exit. # # Arnold Robbins, arnold@skeeve.com, Public Domain diff --git a/awklib/eg/lib/bits2str.awk b/awklib/eg/lib/bits2str.awk index 9725ee8f..a10ffad1 100644 --- a/awklib/eg/lib/bits2str.awk +++ b/awklib/eg/lib/bits2str.awk @@ -1,4 +1,4 @@ -# bits2str --- turn a byte into readable 1's and 0's +# bits2str --- turn a byte into readable ones and zeros function bits2str(bits, data, mask) { diff --git a/awklib/eg/lib/ftrans.awk b/awklib/eg/lib/ftrans.awk index 2fec27ef..6461efff 100644 --- a/awklib/eg/lib/ftrans.awk +++ b/awklib/eg/lib/ftrans.awk @@ -1,4 +1,4 @@ -# ftrans.awk --- handle data file transitions +# ftrans.awk --- handle datafile transitions # # user supplies beginfile() and endfile() functions # diff --git a/awklib/eg/lib/inplace.awk b/awklib/eg/lib/inplace.awk index 6403a228..d1574654 100644 --- a/awklib/eg/lib/inplace.awk +++ b/awklib/eg/lib/inplace.awk @@ -5,10 +5,15 @@ # Please set INPLACE_SUFFIX to make a backup copy. For example, you may # want to set INPLACE_SUFFIX to .bak on the command line or in a BEGIN rule. +# N.B. We call inplace_end() in the BEGINFILE and END rules so that any +# actions in an ENDFILE rule will be redirected as expected. + BEGINFILE { - inplace_begin(FILENAME, INPLACE_SUFFIX) + if (_inplace_filename != "") + inplace_end(_inplace_filename, INPLACE_SUFFIX) + inplace_begin(_inplace_filename = FILENAME, INPLACE_SUFFIX) } -ENDFILE { +END { inplace_end(FILENAME, INPLACE_SUFFIX) } diff --git a/awklib/eg/lib/div.awk b/awklib/eg/lib/intdiv.awk index 5939024d..dbc553b0 100644 --- a/awklib/eg/lib/div.awk +++ b/awklib/eg/lib/intdiv.awk @@ -1,10 +1,13 @@ -# div --- do integer division +# intdiv --- do integer division # # Arnold Robbins, arnold@skeeve.com, Public Domain # July, 2014 +# +# Name changed from div() to intdiv() +# April, 2015 -function div(numerator, denominator, result) +function intdiv(numerator, denominator, result) { split("", result) diff --git a/awklib/eg/lib/quicksort.awk b/awklib/eg/lib/quicksort.awk index 3ba2d6e3..e0ed8bc7 100644 --- a/awklib/eg/lib/quicksort.awk +++ b/awklib/eg/lib/quicksort.awk @@ -4,8 +4,9 @@ # Arnold Robbins, arnold@skeeve.com, Public Domain # January 2009 -# quicksort --- C.A.R. Hoare's quick sort algorithm. See Wikipedia -# or almost any algorithms or computer science text + +# quicksort --- C.A.R. Hoare's quicksort algorithm. See Wikipedia +# or almost any algorithms or computer science text. # # Adapted from K&R-II, page 110 diff --git a/awklib/eg/lib/strtonum.awk b/awklib/eg/lib/strtonum.awk index cd56a449..783496e4 100644 --- a/awklib/eg/lib/strtonum.awk +++ b/awklib/eg/lib/strtonum.awk @@ -52,7 +52,7 @@ function mystrtonum(str, ret, n, i, k, c) # a[6] = "1.e3" # a[7] = "1.32" # a[8] = "1.32E2" -# +# # for (i = 1; i in a; i++) # print a[i], strtonum(a[i]), mystrtonum(a[i]) # } diff --git a/awklib/eg/prog/anagram.awk b/awklib/eg/prog/anagram.awk index 7ca14559..df2768d9 100644 --- a/awklib/eg/prog/anagram.awk +++ b/awklib/eg/prog/anagram.awk @@ -1,5 +1,5 @@ -# anagram.awk --- An implementation of the anagram finding algorithm -# from Jon Bentley's "Programming Pearls", 2nd edition. +# anagram.awk --- An implementation of the anagram-finding algorithm +# from Jon Bentley's "Programming Pearls," 2nd edition. # Addison Wesley, 2000, ISBN 0-201-65788-0. # Column 2, Problem C, section 2.8, pp 18-20. # @@ -21,7 +21,7 @@ key = word2key($1) # Build signature data[key][$1] = $1 # Store word with signature } -# word2key --- split word apart into letters, sort, joining back together +# word2key --- split word apart into letters, sort, and join back together function word2key(word, a, i, n, result) { diff --git a/awklib/eg/prog/extract.awk b/awklib/eg/prog/extract.awk index 24f40ce5..f5dfcf40 100644 --- a/awklib/eg/prog/extract.awk +++ b/awklib/eg/prog/extract.awk @@ -1,4 +1,4 @@ -# extract.awk --- extract files and run programs from texinfo files +# extract.awk --- extract files and run programs from Texinfo files # # Arnold Robbins, arnold@skeeve.com, Public Domain # May 1993 diff --git a/awklib/eg/prog/indirectcall.awk b/awklib/eg/prog/indirectcall.awk index 3ecb2887..165b022a 100644 --- a/awklib/eg/prog/indirectcall.awk +++ b/awklib/eg/prog/indirectcall.awk @@ -27,7 +27,7 @@ function do_sort(first, last, compare, data, i, retval) retval = data[1] for (i = 2; i in data; i++) retval = retval " " data[i] - + return retval } # sort --- sort the data in ascending order and return it as a string diff --git a/awklib/eg/prog/pi.awk b/awklib/eg/prog/pi.awk index 3297beff..e1b5bc4f 100644 --- a/awklib/eg/prog/pi.awk +++ b/awklib/eg/prog/pi.awk @@ -10,7 +10,7 @@ BEGIN { for (m = digits * 4; m > 0; --m) { d = m * 2 + 1 x = pi * m - div(x, d, result) + intdiv(x, d, result) pi = result["quotient"] pi = pi + two } diff --git a/awklib/eg/prog/split.awk b/awklib/eg/prog/split.awk index 6a7198f6..b878fa50 100644 --- a/awklib/eg/prog/split.awk +++ b/awklib/eg/prog/split.awk @@ -22,7 +22,7 @@ BEGIN { } # test argv in case reading from stdin instead of file if (i in ARGV) - i++ # skip data file name + i++ # skip datafile name if (i in ARGV) { outfile = ARGV[i] ARGV[i] = "" diff --git a/awklib/eg/prog/translate.awk b/awklib/eg/prog/translate.awk index cf7f3897..e7403717 100644 --- a/awklib/eg/prog/translate.awk +++ b/awklib/eg/prog/translate.awk @@ -4,7 +4,7 @@ # August 1989 # February 2009 - bug fix -# Bugs: does not handle things like: tr A-Z a-z, it has +# 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'. |