[FEATURE REQUEST] Add codepoint stability
- Dominant language
- CSS
- Stars
- 11.8k
- Forks
- 2.4k
- Avg merge
- 5d 9h
- Merged PRs (30d)
- 4
Description
### I have searched through the issues and didn't find my problem.
- [X] Confirm
### Problem
So in order to get devicons into [nerdfonts](https://github.com/ryanoasis/nerd-fonts) we need to introduce codepoint-stability. A codepoint is basically just the index of a given icon in a font. codepoint-stability means that the codepoints for each icon need to be the same between each version.
### Possible Solution
As explained in this comment: https://github.com/ryanoasis/nerd-fonts/issues/615#issuecomment-1320909010. We can add codepoint-stability by adding a new file like this:
```yaml
# Codepoint: filename
0: "svelte-original"
1: "typescript-plain"
2: "typescript-original"
3: "svelte-plain"
```
Then checking devicon.json for aliases. The file needs to be created and populated with all of our existing svg icons. Once the file is populated, we can implement a workflow for updating the file automatically when new icons are added.
In order to use these codepoints we need to update the script which creates the font via icomoon. I did some digging earlier on how we could do this, and I explained the process in detail here: https://github.com/ryanoasis/nerd-fonts/issues/615#issuecomment-1267629236
I think that's all that's needed from our side. The best thing about this is that the contributors don't have to update any morer than they do now, since the codepoint file will be possible to update automatically!
### Additional information
This issue is needed to close the following issues:
- #1420
- https://github.com/ryanoasis/nerd-fonts/issues/615
Contributor guide
Research direction
Read the linked Nerd Fonts comments first, then inspect devicon.json, the proposed codepoint YAML file, and the script that creates the font via IcoMoon. Done means every existing SVG icon has a stable mapping, aliases are handled, and the workflow can update the mapping and generate fonts when icons are added.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- yaml
- Domain
- build-system, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100