trun

Script for parsing any output. Yes, it is all it does.
git clone git://gtms.dev/trun.git
Log | Files | Refs | README | LICENSE

commit 30e04fab094163613aa0492106175ef0fe9c5ad4
parent 6ead87f844737d523fbedbba538e0a62f7f2f497
Author: tms <nemi@skaut.cz>
Date:   Fri, 11 Jun 2021 15:11:30 +0200

Better output

Diffstat:
Mtrun.lua | 2+-
Mtrun_status.lua | 12++++++------
2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/trun.lua b/trun.lua @@ -13,7 +13,7 @@ local handler = require(handlerName) local userdata = {} -- status dir -local status_dir = os.getenv('HOME') .. '/.cache/trun' +local status_dir = os.getenv('TRUN_CACHE') or os.getenv('HOME') .. '/.cache/trun' if not io.open(status_dir) then os.execute('mkdir ' .. status_dir) end diff --git a/trun_status.lua b/trun_status.lua @@ -21,16 +21,16 @@ for f in list:lines() do end local function format(file, fname) - local result = {} + local result if not file then table.insert(result, '') else if raw then local status = file:read('*a') - table.insert(result, status) + result = status else local status = file:read('*n') - table.insert(result, '%{F#' .. ds[tonumber(status)] .. '} ' .. fname:upper() .. ' %{F-}') + result = '%{F#' .. ds[tonumber(status)] .. '} ' .. fname:upper() .. ' %{F-}' file:close() end end @@ -45,19 +45,19 @@ for _, f in pairs(files) do if fname == name then local status_file = status_dir .. '/' .. f local file = io.open(status_file, 'r') - result = format(file, fname) + table.insert(result, format(file, fname)) end else local status_file = status_dir .. '/' .. f local file = io.open(status_file, 'r') - result = format(file, fname) + table.insert(result, format(file, fname)) end end end if #result > 0 then if raw then - print(table.concat(result)) + print(table.concat(result, '\n')) else print('[' .. table.concat(result, ',') .. ']') end