Some checks are pending
quality / changes (push) Waiting to run
quality / Lua Format Check (push) Blocked by required conditions
quality / Lua Lint Check (push) Blocked by required conditions
quality / Lua Type Check (push) Blocked by required conditions
quality / Markdown Format Check (push) Blocked by required conditions
quality / Mapping Sync Check (push) Waiting to run
39 lines
995 B
Lua
39 lines
995 B
Lua
#!/usr/bin/env lua
|
|
|
|
local resolve = dofile('lua/nonicons/resolve.lua')
|
|
local ext_icons = dofile('/tmp/devicons_ext.lua')
|
|
local fname_icons = dofile('/tmp/devicons_fname.lua')
|
|
|
|
local colors = {}
|
|
|
|
for ext, icon_name in pairs(resolve.ext_map) do
|
|
if not colors[icon_name] and ext_icons[ext] then
|
|
colors[icon_name] = {
|
|
ext_icons[ext].color,
|
|
tonumber(ext_icons[ext].cterm_color),
|
|
}
|
|
end
|
|
end
|
|
|
|
for fname, icon_name in pairs(resolve.filename_map) do
|
|
if not colors[icon_name] and fname_icons[fname] then
|
|
colors[icon_name] = {
|
|
fname_icons[fname].color,
|
|
tonumber(fname_icons[fname].cterm_color),
|
|
}
|
|
end
|
|
end
|
|
|
|
local names = {}
|
|
for name in pairs(colors) do
|
|
names[#names + 1] = name
|
|
end
|
|
table.sort(names)
|
|
|
|
io.write('---@type table<string, { [1]: string, [2]: integer }>\n')
|
|
io.write('local M = {\n')
|
|
for _, name in ipairs(names) do
|
|
local c = colors[name]
|
|
io.write(string.format(" ['%s'] = { '%s', %d },\n", name, c[1], c[2]))
|
|
end
|
|
io.write('}\n\nreturn M\n')
|