Commit graph

3 commits

Author SHA1 Message Date
defe9287d5
refactor: extract resolution tables into resolve module
Problem: ext_map, filename_map, and resolve() are locked inside
override.lua as locals, making them inaccessible to any code path
that doesn't go through the devicons monkey-patch.

Solution: extract all resolution tables and logic into a new
nonicons.resolve module. Fix Gemfile/Jenkinsfile case bug (keys
were uppercase but resolve() lowercases input before lookup). Add
ft_map for vim filetypes that don't match extension or mapping keys.
2026-02-22 21:31:17 -05:00
Barrett Ruth
17aa14259a
feat: add mapping sync check and improve vimdoc (#6)
Some checks are pending
luarocks / quality (push) Waiting to run
luarocks / publish (push) Blocked by required conditions
* feat(doc): fix phrasing

* ci: add upstream mapping sync check to quality workflow

Problem: mapping.lua can silently fall behind the ya2s/nonicons font
repo with no indication that new icons are available.

Solution: add a mapping-sync job that fetches nonicon.json from
upstream, generates the expected mapping.lua, and fails the check
if they differ.

* fix: sort alphabetically

* fix(ci): dont respect alphabetical order in font checker
2026-02-17 21:07:32 -05:00
04791cd41a
feat: initial nonicons.nvim rewrite
Problem: the original ya2s/nvim-nonicons fork diverged enough that
maintaining it as a fork was pointless. The set_icon() approach broke
with modern nvim-web-devicons, and the extensions directory coupled
integrations that belong in user config.

Solution: from-scratch rewrite with function wrapping + table mutation
override engine, vim.g.nonicons config pattern, vendored mapping with
integer codepoints, health check, vimdoc with recipes, and no built-in
plugin integrations.
2026-02-17 19:34:13 -05:00