aboutsummaryrefslogtreecommitdiff
path: root/src/lib/arg.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/arg.c')
-rw-r--r--src/lib/arg.c22
1 files changed, 17 insertions, 5 deletions
diff --git a/src/lib/arg.c b/src/lib/arg.c
index e25b1db..09acd12 100644
--- a/src/lib/arg.c
+++ b/src/lib/arg.c
@@ -5,7 +5,7 @@
#include "arg.h"
#include "util.h"
-#define LAT_USAGE "usage: lat [-cntbVh] [file...]"
+#define LAT_USAGE "usage: lat [-cntbpVh] [file...]"
void help(void) {
printf("lat | lazy cat - a cat clone with some quality-of-life "
@@ -18,23 +18,27 @@ void help(void) {
"\t-t, --headers\t toggle whether to print file headers or not\n"
"\t-b, --binary\t toggle whether to force the data to be treated as "
"binary or not. see examples\n"
+ "\t-p, --pager\t print file a pager (less)\n"
"\t-V, --version\t show program version\n"
- "\t-h, --help\t display this help text\n\n");
+ "\t-h, --help\t display this help text (--help shows additional info)\n\n");
printf("environment:\n"
"\tNO_COLOR, see https://no-color.org/\n\n");
+}
+
+void examples(void) {
printf(
"examples:\n"
"\tlat file1\n\t\t print the content of file1 witht default formatting\n"
"\tlat - file1\n\t\t read from stdin (the '-' character reads from "
"stdin) "
"and then print the contents of stdin and file1\n"
- "\tlat --lines --color file1 file2\n\t\t print the contents of file1 and "
+ "\tlat -nc file1 file2\n\t\t print the contents of file1 and "
"file2 "
"without printing line numbers or colors\n"
"\tlat --binary file.txt\n\t\t force file.txt to be treated as a binary "
"file\n"
- "\tlat -bb file.txt\n\t\t force file.txt to NOT be treated as a binary "
- "file\n"
+ "\tlat -bb --pager file.txt\n\t\t force file.txt to NOT be treated "
+ "as a binary file and print it in the pager\n"
"\tcurl example.com | lat\n\t\t pipe the results of 'curl example.com' "
"into lat\n");
}
@@ -76,8 +80,13 @@ void parselongarg(char *arg) {
return;
}
+ if (strcmp(arg, "--pager") == 0) {
+ conf.pager = !conf.pager;
+ }
+
if (strcmp(arg, "--help") == 0) {
help();
+ examples();
exit(EXIT_SUCCESS);
return;
}
@@ -111,6 +120,9 @@ void parseshortarg(char *arg) {
else
conf.force_binary = !conf.force_binary;
break;
+ case 'p':
+ conf.pager = !conf.pager;
+ break;
case 'V':
version();
exit(EXIT_SUCCESS);