Annotate

tools/tb2err @ 12763:d26eefe98d09

util.dbuffer: Add efficient shortcuts for discard() in certain cases If the buffer is already empty, nothing to do. If we're throwing away the whole buffer, we can just empty it and avoid read_chunk() (which in turn may collapse()). These shortcuts are much more efficient.
author Matthew Wild <mwild1@gmail.com>
date Tue, 11 Oct 2022 11:37:55 +0100
parent 11191:13e2ac7b5798
child 13063:414952def2d3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11191
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 #!/usr/bin/env lua-any
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 -- Lua-Versions: 5.3 5.2 5.1
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 -- traceback to errors.err for vim -q
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4 local path_sep = package.config:sub(1,1);
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 for line in io.lines() do
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 local src, err = line:match("%s*(%S+)(:%d+: .*)")
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 if src then
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 src = src:gsub("\\", path_sep);
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 local cut = src:match("/()core/")
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 or src:match("/()net/")
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 or src:match("/()util/")
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 or src:match("/()modules/")
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 or src:match("/()plugins/")
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 or src:match("/()prosody[ctl]*$")
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 if cut then
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 src = src:sub(cut);
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 end
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 src = src:gsub("^modules/", "plugins/")
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 io.write(src, err, "\n");
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 end
13e2ac7b5798 tools/tb2err: Formats Lua traceback in errors.err format
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 end