diff options
| author | Opportunity <[email protected]> | 2020-01-20 20:30:31 +0800 |
|---|---|---|
| committer | Opportunity <[email protected]> | 2020-01-20 22:21:47 +0800 |
| commit | 3364333877dc8a579f08b54099fda653948e07ab (patch) | |
| tree | 2c2d5b6dabd5937827f9ae0cbc511b8a2f16f5d4 /xmake/plugins/macro/main.lua | |
| parent | 5f96933d1ad672cc5b29df88a78b32ff4cdd3ebc (diff) | |
improve tab complete
Diffstat (limited to 'xmake/plugins/macro/main.lua')
| -rw-r--r-- | xmake/plugins/macro/main.lua | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/xmake/plugins/macro/main.lua b/xmake/plugins/macro/main.lua index 0bbbaa53b..c55b4f680 100644 --- a/xmake/plugins/macro/main.lua +++ b/xmake/plugins/macro/main.lua @@ -75,12 +75,10 @@ function _wfile(macroname) return path.join(path.join(config.directory(), "macros"), macroname .. ".lua") end --- list macros -function _list() - - -- trace - cprint("${bright}macros:") +-- get all macros +function macros(anonymousname) + local results = {} -- find all macros for _, dir in ipairs(_directories()) do local macrofiles = os.match(path.join(dir, "*.lua")) @@ -88,14 +86,28 @@ function _list() -- get macro name local macroname = path.basename(macrofile) - if macroname == "anonymous" then - macroname = ".<anonymous>" + + if macroname == "anonymous" and anonymousname then + macroname = anonymousname end - -- show it - print(" " .. macroname) + table.insert(results, macroname) end end + return results +end + +-- list macros +function _list() + + -- trace + cprint("${bright}macros:") + + -- find all macros + for _, macroname in ipairs(macros(".<anonymous>")) do + -- show it + print(" " .. macroname) + end end -- show macro |
