trun

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

trun-status.lua (825B)


      1 #!/usr/bin/env lua
      2 
      3 -- print content of status_file for trun
      4 --
      5 -- Usage: trun-status.lua <name>
      6 --
      7 local status_dir_def = os.getenv('XDG_CACHE_HOME') .. '/trun'
      8 local status_dir = os.getenv('TRUN_STATUS_DIR') or status_dir_def
      9 
     10 -- silent fail if dir not exists
     11 if not io.open(status_dir) then
     12   return ''
     13 end
     14 
     15 local trun_name = arg[1]
     16 
     17 -- get all status files
     18 local status_files = {}
     19 local list = io.popen('ls ' .. status_dir)
     20 for f in list:lines() do
     21   table.insert(status_files, f)
     22 end
     23 
     24 for _, status_file_name in ipairs(status_files) do
     25   local name, _ = status_file_name:match('(.*)%.(.*)')
     26   if trun_name == name then
     27     local status_file_path = status_dir .. '/' .. status_file_name
     28     local status_file = io.open(status_file_path, 'r')
     29     local status = status_file:read('*a')
     30     io.write(status, '\n')
     31   end
     32 end