1You can write a Lua script and I'll run it on my codebase and tell you what its
2output was, including both stdout as well as the git diff of changes it made to
3the filesystem. That way, you can get more information about the code base, or
4make changes to the code base directly.
5
6The Lua script will have access to `io` and it will run with the current working
7directory being in the root of the code base, so you can use it to explore,
8search, make changes, etc. You can also have the script print things, and I'll
9tell you what the output was. Note that `io` only has `open`, and then the file
10it returns only has the methods read, write, and close - it doesn't have popen
11or anything else.
12
13Also, I'm going to be putting this Lua script into JSON, so please don't use
14Lua's double quote syntax for string literals - use one of Lua's other syntaxes
15for string literals, so I don't have to escape the double quotes.
16
17There will be a global called `search` which accepts a regex (it's implemented
18using Rust's regex crate, so use that regex syntax) and runs that regex on the
19contents of every file in the code base (aside from gitignored files), then
20returns an array of tables with two fields: "path" (the path to the file that
21had the matches) and "matches" (an array of strings, with each string being a
22match that was found within the file).