From c9479cbb698191e25f781ed6222fea6e9056a6a1 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Fri, 12 Nov 2021 11:43:24 +0100 Subject: util.human.io: Pass nil to cell mapper to signal missing value Seems more like conventional Lua than passing an empty string to signal lack of value. --- util/human/io.lua | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'util') diff --git a/util/human/io.lua b/util/human/io.lua index a38ab5dd..a175f5af 100644 --- a/util/human/io.lua +++ b/util/human/io.lua @@ -131,7 +131,15 @@ local function new_table(col_specs, max_width) local output = {}; for i, column in ipairs(col_specs) do local width = widths[i]; - local v = (not titles and column.mapper or tostring)(row[not titles and column.key or i] or "", row); + local v = row[not titles and column.key or i]; + if not titles and column.mapper then + v = column.mapper(v, row); + end + if v == nil then + v = ""; + else + v = tostring(v); + end if #v < width then if column.align == "right" then v = padleft(v, width); -- cgit v1.2.3