]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
libsmartcols: (sample) add wrap repeating example
authorKarel Zak <kzak@redhat.com>
Tue, 16 Apr 2024 08:57:37 +0000 (10:57 +0200)
committerKarel Zak <kzak@redhat.com>
Tue, 16 Apr 2024 09:17:46 +0000 (11:17 +0200)
Signed-off-by: Karel Zak <kzak@redhat.com>
libsmartcols/samples/Makemodule.am
libsmartcols/samples/wrap-repeat.c [new file with mode: 0644]

index b192ebac77493f843aac0707a2063f021bda7903..aa08c164bd259666e2147ff1694ff629ed925d38 100644 (file)
@@ -3,6 +3,7 @@ check_PROGRAMS += \
        sample-scols-colors \
        sample-scols-title \
        sample-scols-wrap \
+       sample-scols-wrap-repeat \
        sample-scols-continuous \
        sample-scols-continuous-json \
        sample-scols-fromfile \
@@ -32,6 +33,10 @@ sample_scols_wrap_SOURCES = libsmartcols/samples/wrap.c
 sample_scols_wrap_LDADD = $(sample_scols_ldadd)
 sample_scols_wrap_CFLAGS = $(sample_scols_cflags)
 
+sample_scols_wrap_repeat_SOURCES = libsmartcols/samples/wrap-repeat.c
+sample_scols_wrap_repeat_LDADD = $(sample_scols_ldadd)
+sample_scols_wrap_repeat_CFLAGS = $(sample_scols_cflags)
+
 sample_scols_continuous_SOURCES = libsmartcols/samples/continuous.c
 sample_scols_continuous_LDADD = $(sample_scols_ldadd) libcommon.la
 sample_scols_continuous_CFLAGS = $(sample_scols_cflags)
diff --git a/libsmartcols/samples/wrap-repeat.c b/libsmartcols/samples/wrap-repeat.c
new file mode 100644 (file)
index 0000000..ff5c200
--- /dev/null
@@ -0,0 +1,37 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "libsmartcols.h"
+
+int main(void)
+{
+       struct libscols_table *tb;
+       struct libscols_line *ln;
+       struct libscols_column *cl;
+
+       scols_init_debug(0);
+
+       tb = scols_new_table();
+       scols_table_enable_maxout(tb, 1);
+
+       cl = scols_table_new_column(tb, "AAA", 0, 0);
+       cl = scols_table_new_column(tb, "BBB", 0, 0);
+       cl = scols_table_new_column(tb, "CCC", 0, 0);
+       cl = scols_table_new_column(tb, "XXX", 0, 0);
+       scols_column_set_flags(cl, SCOLS_FL_WRAP);
+
+       ln = scols_table_new_line(tb, NULL);
+       scols_line_set_data(ln, 0, "aaa");
+       scols_line_set_data(ln, 1, "4");
+       scols_line_set_data(ln, 2, "Foo bar foo.");
+       scols_line_set_data(ln, 3, "Adcvfr tgbnhy ujmkifas rqweerq adfs eqeqw kjkliobb u8888 kjhjkh.");
+
+       /* repeat 2x */
+       scols_table_print_range(tb, ln, ln);
+       printf("\n");
+       scols_table_print_range(tb, ln, ln);
+       printf("\n");
+
+       scols_unref_table(tb);
+       return EXIT_SUCCESS;
+}