commit 6ead87f844737d523fbedbba538e0a62f7f2f497
parent ba7f4fe8dfac4a0bdb0ae9a9f010cfa2f072ce6f
Author: tms <nemi@skaut.cz>
Date: Fri, 11 Jun 2021 14:00:04 +0200
refactor
Diffstat:
1 file changed, 29 insertions(+), 17 deletions(-)
diff --git a/trun_status.lua b/trun_status.lua
@@ -6,6 +6,11 @@ if not io.open(status_dir) then
end
local name = arg[1]
+local raw
+if arg[1] == '-' then
+ raw = true
+ name = arg[2]
+end
local ds = {[0] = 'ffa500', [1] = '00ff00', [-1] = 'ff0000'}
@@ -15,6 +20,23 @@ for f in list:lines() do
table.insert(files, f)
end
+local function format(file, fname)
+ local result = {}
+ if not file then
+ table.insert(result, '')
+ else
+ if raw then
+ local status = file:read('*a')
+ table.insert(result, status)
+ else
+ local status = file:read('*n')
+ table.insert(result, '%{F#' .. ds[tonumber(status)] .. '} ' .. fname:upper() .. ' %{F-}')
+ file:close()
+ end
+ end
+ return result
+end
+
local result = {}
for _, f in pairs(files) do
local fname, _ = f:match('(.*)%.(.*)')
@@ -23,30 +45,20 @@ for _, f in pairs(files) do
if fname == name then
local status_file = status_dir .. '/' .. f
local file = io.open(status_file, 'r')
-
- if not file then
- table.insert(result, '')
- else
- local status = file:read('*n')
- table.insert(result, '%{F#' .. ds[tonumber(status)] .. '} ' .. fname:upper() .. ' %{F-}')
- file:close()
- end
+ result = format(file, fname)
end
else
local status_file = status_dir .. '/' .. f
local file = io.open(status_file, 'r')
-
- if not file then
- table.insert(result, '')
- else
- local status = file:read('*n')
- table.insert(result, '%{F#' .. ds[tonumber(status)] .. '} ' .. fname:upper() .. ' %{F-}')
- file:close()
- end
+ result = format(file, fname)
end
end
end
if #result > 0 then
- print('[' .. table.concat(result, ',') .. ']')
+ if raw then
+ print(table.concat(result))
+ else
+ print('[' .. table.concat(result, ',') .. ']')
+ end
end