view tools/linedebug.lua @ 13929:203a0b5ade55

util.startup: Add Lua 5.5 GC defaults ~$ lua5.5 Lua 5.5.0 Copyright (C) 1994-2025 Lua.org, PUC-Rio > collectgarbage("param", "minormul") 20 > collectgarbage("param", "majorminor") 50 > collectgarbage("param", "minormajor") 68
author Kim Alvefur <zash@zash.se>
date Wed, 06 Aug 2025 16:48:35 +0200
parents 5850d24a4ad3
children
line wrap: on
line source

local data = {}
local getinfo = debug.getinfo;
local function linehook(ev, li)
	local S = getinfo(2, "S");
	if S and S.source and S.source:match"^@" then
		local file = S.source:sub(2);
		local lines = data[file];
		if not lines then
			lines = {};
			data[file] = lines;
			for line in io.lines(file) do
				lines[#lines+1] = line;
			end
		end
		io.stderr:write(ev, " ", file, " ", li, " ", lines[li], "\n");
	end
end
debug.sethook(linehook, "l");