#include "c.h"
#include "list.h"
#include "closestream.h"
+#include "column-list-table.h"
#include "strutils.h"
#include "procfs.h"
#include "fileutils.h"
ul_unref_path(pc);
}
-static void __attribute__((__noreturn__)) list_colunms(FILE *out)
+static void __attribute__((__noreturn__)) list_colunms(const char *table_name,
+ FILE *out,
+ int raw,
+ int json)
{
- fputs(USAGE_COLUMNS, out);
+ struct libscols_table *col_tb = xcolumn_list_table_new(table_name, out, raw, json);
+
for (size_t i = 0; i < ARRAY_SIZE(infos); i++)
- fprintf(out, " %20s %-10s%s\n", infos[i].name,
- infos[i].json_type == SCOLS_JSON_STRING ? "<string>":
- infos[i].json_type == SCOLS_JSON_ARRAY_STRING ? "<string>":
- infos[i].json_type == SCOLS_JSON_ARRAY_NUMBER ? "<string>":
- infos[i].json_type == SCOLS_JSON_NUMBER ? "<integer>":
- infos[i].json_type == SCOLS_JSON_FLOAT ? "<float>":
- "<boolean>",
- _(infos[i].help));
+ xcolumn_list_table_append_line(col_tb, infos[i].name,
+ infos[i].json_type, "<boolean>",
+ _(infos[i].help));
+
+ scols_print_table(col_tb);
+ scols_unref_table(col_tb);
+
exit(EXIT_SUCCESS);
}
case 'h':
usage();
case 'H':
- list_colunms(stdout);
+ list_colunms("lsfd-columns", stdout, ctl.raw, ctl.json);
default:
errtryhelp(EXIT_FAILURE);
}