diff options
author | Squibid <me@zacharyscheiman.com> | 2023-10-17 22:24:49 -0400 |
---|---|---|
committer | Squibid <me@zacharyscheiman.com> | 2023-10-17 22:24:49 -0400 |
commit | 878f0faaf7f472b96ab5a7f0e4db266111b2d3ce (patch) | |
tree | 297522e9f4659f61658dbb73716ff7d74ad6e736 /modules | |
parent | 6f091a76482703f45f00eb3a800173ef918ddc6b (diff) | |
download | eat-it-878f0faaf7f472b96ab5a7f0e4db266111b2d3ce.tar.gz eat-it-878f0faaf7f472b96ab5a7f0e4db266111b2d3ce.tar.bz2 eat-it-878f0faaf7f472b96ab5a7f0e4db266111b2d3ce.zip |
add some nil checks, and make lssi work with eatit changesv2.0
Diffstat (limited to 'modules')
-rw-r--r-- | modules/lssi/lssi.lua | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/modules/lssi/lssi.lua b/modules/lssi/lssi.lua index cc01f0f..21f9536 100644 --- a/modules/lssi/lssi.lua +++ b/modules/lssi/lssi.lua @@ -27,7 +27,7 @@ Takes an input file and code then, it outputs a file with your code in there. local mp = require('mp') mod = { - version = 'ALPHA 1', -- the current version of lssi + version = 'ALPHA 1.1', -- the current version of lssi author = 'squibid', } @@ -48,7 +48,7 @@ end local function logwrite(string) if opts.logging.log then - io.write(os.date(opts.logging.logdate) .. ' ' .. string .. '\n') + io.write(os.date(opts.logging.logdate)..' '..string..'\n') end end @@ -58,6 +58,7 @@ local function openlog() fn = mp.command_native({'expand-path', opts.logging.logfile}) f = io.open(fn, 'a') -- open file buffer + if not f then return end io.output(f) -- set it as default end end @@ -78,28 +79,28 @@ local function inject(infile, l, outfile) -- don't do anything if there is already code injected into the file if string.find(infcont[1], "-- code injected by lssi") then - logwrite('code is already injected into ' .. infile) + logwrite('code is already injected into '..infile) return end - logwrite('Injecting code into ' .. infile) + logwrite('Injecting code into '..infile) for i in pairs(l) do -- add requested line below existing line if l[i][2] == 'G' then - infcont[tablelength(infcont)] = infcont[tablelength(infcont)] .. '\n' .. l[i][1] + infcont[tablelength(infcont)] = infcont[tablelength(infcont)]..'\n'..l[i][1] elseif l[i][2] == 'g' then - infcont[1] = l[i][1] .. '\n' .. infcont[1] + infcont[1] = l[i][1]..'\n'..infcont[1] else - infcont[l[i][2]] = (infcont[l[i][2]]) .. '\n' .. l[i][1] + infcont[l[i][2]] = (infcont[l[i][2]])..'\n'..l[i][1] end end local outf = io.open(outfile, 'w') -- we inject metadata to prevent writing to the file more than once - infcont[1] = "-- code injected by lssi " .. mod.version .. '\n' .. infcont[1] + infcont[1] = "-- code injected by lssi "..mod.version..'\n'..infcont[1] for i, v in ipairs(infcont) do - outf:write(v .. '\n') + outf:write(v..'\n') end io.close(outf) @@ -109,20 +110,19 @@ local function checkandinject() openlog() for i = 1, tablelength(plugins) do - -- get the file we want to inject our code into - local f = mp.command_native({'expand-path', '~~/'}) .. - '/' .. plugins[i]['dir'] .. - '/' .. plugins[i]['file'] - -- check if the plugin has been configured with lssi - if plugins[i]['lssi'] then + if plugins[i]['lssi'] ~= nil then + -- get the file we want to inject our code into + local f = mp.command_native({'expand-path', '~~/'}) .. + '/'..(plugins[i]['dir'] or 'scripts') .. + '/'..plugins[i]['file'] -- and the file we are trying to modify actually exists if fileexists(f) then -- inject it! no going back now inject(f, plugins[i]['lssi'], f) else logwrite('Failed to inject code into "' .. - plugins[i]['file'] .. '" file does not exist') + plugins[i]['file']..'" file does not exist') end end end |