aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Molitor <emolitor@molitor.org>2019-07-03 09:33:33 +0100
committerRob Landley <rob@landley.net>2019-07-03 14:49:27 -0500
commit1e4cb6cae92d8cd2070d9388d10b0e01d6cf8f68 (patch)
tree0dfcd8fe3746af3e5f7c11b9a4324835bafdbfdb
parenta55b7d7094072cfdc2f818f63633a89cff8f7cd5 (diff)
downloadtoybox-1e4cb6cae92d8cd2070d9388d10b0e01d6cf8f68.tar.gz
nl: nl -v
Implement nl -v supporting negative and zero starting values.
-rwxr-xr-xtests/nl.test7
-rw-r--r--toys/posix/nl.c7
2 files changed, 10 insertions, 4 deletions
diff --git a/tests/nl.test b/tests/nl.test
index 499734d3..046773f5 100755
--- a/tests/nl.test
+++ b/tests/nl.test
@@ -39,8 +39,13 @@ testing "-sook -b p" "nl -sook -bpoing" \
" one\n 1ookboing\n 2ooksproingy\n" \
"" "one\nboing\nsproingy\n"
-testing "-v" "nl -v 42" " 42\tone\n 43\ttwo\n 44\tthree\n" \
+testing "-v42" "nl -v 42" " 42\tone\n 43\ttwo\n 44\tthree\n" \
"" "one\ntwo\nthree\n"
+testing "-v-1" "nl -v -1" " -1\tone\n 0\ttwo\n 1\tthree\n" \
+ "" "one\ntwo\nthree\n"
+testing "-v0" "nl -v 0" " 0\tone\n 1\ttwo\n 2\tthree\n" \
+ "" "one\ntwo\nthree\n"
+
testing "-l" "nl -ba -l2 -w2 - input" \
" 1\tone\n \n 2\t\n 3\ttwo\n \n 4\t\n \n 5\tthree\n 6\tfour\n \n 7\t\n \n 8\tbang\n \n" \
"\n\nbang\n\n" "one\n\n\ntwo\n\n\n\nthree\nfour\n\n"
diff --git a/toys/posix/nl.c b/toys/posix/nl.c
index b9e60ae2..1b7b390a 100644
--- a/toys/posix/nl.c
+++ b/toys/posix/nl.c
@@ -5,15 +5,15 @@
* See http://pubs.opengroup.org/onlinepubs/9699919799/utilities/nl.html
*
* This implements a subset: only one logical page (-ip), no sections (-dfh).
- * todo: -lv
+ * todo: -l
-USE_NL(NEWTOY(nl, "v#<1=1l#w#<0=6Eb:n:s:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_NL(NEWTOY(nl, "v#=1l#w#<0=6Eb:n:s:", TOYFLAG_USR|TOYFLAG_BIN))
config NL
bool "nl"
default y
help
- usage: nl [-E] [-l #] [-b MODE] [-n STYLE] [-s SEPARATOR] [-w WIDTH] [FILE...]
+ usage: nl [-E] [-l #] [-b MODE] [-n STYLE] [-s SEPARATOR] [-v #] [-w WIDTH] [FILE...]
Number lines of input.
@@ -22,6 +22,7 @@ config NL
-l Only count last of this many consecutive blank lines
-n Number STYLE: ln (left justified) rn (right justified) rz (zero pad)
-s Separator to use between number and line (instead of TAB)
+ -v Starting line number for each section (default 1)
-w Width of line numbers (default 6)
*/