File

tools/tb2err @ 11193:5850d24a4ad3

tools/linedebug: Print each line of source executed The extremely verbose debug output. Nice for getting some idea which code runs most often, or where it pauses for no reason etc.
author Kim Alvefur <zash@zash.se>
date Wed, 28 Oct 2020 23:05:15 +0100
parent 11191:13e2ac7b5798
child 13063:414952def2d3
line wrap: on
line source

#!/usr/bin/env lua-any
-- Lua-Versions: 5.3 5.2 5.1
-- traceback to errors.err for vim -q
local path_sep = package.config:sub(1,1);
for line in io.lines() do
	local src, err = line:match("%s*(%S+)(:%d+: .*)")
	if src then
		src = src:gsub("\\", path_sep);
		local cut = src:match("/()core/")
			or src:match("/()net/")
			or src:match("/()util/")
			or src:match("/()modules/")
			or src:match("/()plugins/")
			or src:match("/()prosody[ctl]*$") 
		if cut then
			src = src:sub(cut);
		end
		src = src:gsub("^modules/", "plugins/")
		io.write(src, err, "\n");
	end
end