Sha256: 1f96b53943846809ac946ef47c31e3e9e0b1b61e0a729004160a92961d5f96b7
Contents?: true
Size: 939 Bytes
Versions: 2
Compression:
Stored size: 939 Bytes
Contents
# Aho, Alfred V., Brian W. Kernighan, and Peter J. Weinberger. The AWK # Programming Language. Reading, MA: Addison-Wesley Pub., 1988, p. 98. # table - simple table formatter BEGIN { FS = "\t"; blanks = sprintf("%100s", " ") number = "^[+-]?([0-9]+[.]?[0-9]*|[.][0-9]+)$" } { row[NR] = $0 for (i = 1; i <= NF; i++) { if ($i ~ number) nwid[i] = max(nwid[i], length($i)) wid[i] = max(wid[i], length($i)) } } END { for (r = 1; r <= NR; r++) { n = split(row[r], d) for (i = 1; i <= n; i++) { sep = (i < n) ? " " : "\n" if (d[i] ~ number) printf("%" wid[i] "s%s", numjust(i,d[i]), sep) else printf("%-" wid[i] "s%s", d[i], sep) } } } function max(x, y) { return (x > y) ? x : y } function numjust(n, s) { # position s in field n return s substr(blanks, 1, int((wid[n]-nwid[n])/2)) }
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ctags.rb-1.1.4 | ext/vendor/ctags/Units/parser-awk.r/simple2-awk.d/input.awk |
ctags.rb-1.1.3 | ext/vendor/ctags/Units/parser-awk.r/simple2-awk.d/input.awk |