-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Suggestion] Fix invalid code points for some glyphs #365
Comments
Thanks a lot @delphinus . I appreciate the thought you put into this. To be completely honest I wasn't careful enough to be sure the ranges remained within the Private Use Areas. We should definitely make sure to stay within the PUAs going forward 😊 I think I like plan 2 or some variation of it as well. I would prefer plan 1 for something that wouldn't be a major release (e.g. We need to decide if we are following semver strictly or not, if strictly then this would technically be a breaking change either way and would require us to version as Good plans and suggestions here and I am mostly in agreement with you. I am wondering about versioning and what exactly the ranges should/could be 😃 |
Thanks for agreement. The changes will be a breaking change indeed. But for releasing |
Yeah, your recommendation makes complete sense and obvious some changes need to happen.
Sorry, I didn't quite follow, can you elaborate? |
I see there are a lot of changes in v1.1.0 → v2.0.0. But if you use v3.0.0 this time, v2.0.0 → v3.0.0 will have 1 diff (this issue) only. I was just curious. ;) |
I get you now. I am thinking |
Can you provide an update regarding this issue? That the Material Design set overrides non-PUA codepoints is a significant issue. |
@aaronbell Unfortunately the update I am going to give is not what you want to hear: There really are no updates on any forward momentum on moving the Material Design codepoints. However, I am back at trying to get a release out, after that this is likely one of the top priorities. This will be a breaking change as far as Nerd Fonts goes so it would be a Hope that helps. |
@ryanoasis Thanks Ryan. Too bad. Unfortunately, I will not be adding full Nerd Fonts support to Cascadia Code until v3.0 is released as I am unwilling to include Material Design icons in their current location. International interoperability takes precedent. |
@aaronbell I completely understand that position. Absolutely international support takes precedent as it should. The whole code points seeping outside of PUA is a big mistake on my part. While there has been no momentum of the fix in terms of code I did start to group tasks under a new Thanks for your valuable input and straightforwardness. |
NerdFonts has one big issue. They overwrite code points which are reserved for chinese and arabic letters (range 0xf500-0xfd46). While overwriting chinese letters is bad, they are LTR glyphs and print "normally". `net_loopback` and `update` used to be symbols that usually map to arabic letters which make pango print those strings RTL. I tried to fix this with the LTR marker 0x200e in greshake#1206 but it failed. This PR replaces the symbols with similar ones that don't map to the arabic charset. nerd-font issue: ryanoasis/nerd-fonts#365 fixes greshake#1206
How difficult is it to move glyphs to another location? I guess the font patcher needs to be adjusted? |
See the following links for more information: - ryanoasis/nerd-fonts#365 - ryanoasis/nerd-fonts#1059 (comment)
See the following links for more information: - ryanoasis/nerd-fonts#365 - ryanoasis/nerd-fonts#1059 (comment)
See the following links for more information: - ryanoasis/nerd-fonts#365 - ryanoasis/nerd-fonts#1059 (comment)
See the following links for more information: - ryanoasis/nerd-fonts#365 - ryanoasis/nerd-fonts#1059 (comment)
See the following links for more information: - ryanoasis/nerd-fonts#365 - ryanoasis/nerd-fonts#1059 (comment)
See the following links for more information: - ryanoasis/nerd-fonts#365 - ryanoasis/nerd-fonts#1059 (comment)
See the following links for more information: - ryanoasis/nerd-fonts#365 - ryanoasis/nerd-fonts#1059 (comment)
Nerd Font changed the code points of Material glyphs. Formerly those glyphes used code points that were prohibited for custom glyphs [1]. [1] ryanoasis/nerd-fonts#365
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ryanoasis/nerd-fonts](https://togithub.com/ryanoasis/nerd-fonts) | major | `v2.3.3` -> `v3.0.0` | --- ### Release Notes <details> <summary>ryanoasis/nerd-fonts</summary> ### [`v3.0.0`](https://togithub.com/ryanoasis/nerd-fonts/releases/tag/v3.0.0) [Compare Source](https://togithub.com/ryanoasis/nerd-fonts/compare/v2.3.3...v3.0.0) ***Update: Preparation already for a bugfix release, see known bugs [here](https://togithub.com/ryanoasis/nerd-fonts/milestone/26)*** This major release introduces some breaking changes: ##### Breaking 1: Naming This release fixes some long standing issues that are due to the naming of the fonts: There is a completely new naming scheme. This might be inconvientient for existing setups, sorry. - Some fonts will have `Nerd Font` in the name while other have it abbreviated as `NF`. This is needed because some names just were too long. (Same for `Nerd Font Mono` and `NFM`.) - There are no `Windows Compatible` fonts anymore. All fonts work on all platforms. - The `Complete` from the font names (and the repo directories) has been dropped (Complete is the new normal). - The name parts will be ordered as expected with style and weight last (`Somefont Bold Nerd Font` -> `Somefont Nerd Font Bold`). - The filename will have no blanks anymore. ##### Breaking 2: Material Design Icons Codepoints The old Material Design Icon codepoints are finally dropped. Due to an historic mistace we placed them in between some asiatic glyphs, breaking that script. Since v2.3.0 the (updated and expanded) Material Design Icons have new codepoints in the 5 digit region. - Dropped codepoints `F500`... and class names `nf-mdi-*` - New codepoints `F0001`... and class names `nf-md-*` (already since `v2.3.0`) - The whole discussions are here: [https://github.com/ryanoasis/nerd-fonts/issues/365](https://togithub.com/ryanoasis/nerd-fonts/issues/365) - A translation table is available here: [https://github.com/ryanoasis/nerd-fonts/issues/1059#issuecomment-1404891287](https://togithub.com/ryanoasis/nerd-fonts/issues/1059#issuecomment-1404891287) - There are tools out there that probably can update your configuration. - Relevant thread: [#​1190](https://togithub.com/ryanoasis/nerd-fonts/issues/1190) Otherwise this is a 'Update release', so now the good stuff: ##### Updates - Update `Agave` to v37 - Update `Arimo` to 1.33 - Update `DaddyTimeMono` to 1.2.3 - Update `Fira Mono` to 3.206 - Update `Go Mono` to 2.010 - Update `Hermit` to 2.0 - Update `IBM Plex` to 2.3 - Update `Iosevka` to 22.1.0 - Update `Literation` to 2.1.5 - Update `Lilex` to 2.000 - Update `mononoki` to 1.6 - Update `MPlus` to ... current - Update `Overpass` to 3.0.5 - Update `Roboto Mono` to 3.0 - Update `Source Code Pro` to 2.038 - Update `Terminus` to 4.49.2 - Update `Victor Mono` to 1.5.4 - Update the Octicons set to 18.3.0 ##### Features - New font `ComicShannsMono` - New variant in release `Nerd Font Propo` for GUI usecases - Patch in heavy angle brackets - Patch in boxdrawing glyphs (if the font has no complete set) - Repair Panose info if source font has broken data - Reform PowerlineExtra sizing - Autocreate a `FontPatcher.zip` from `HEAD` - Create a json database with css names - Disentangle `Iosevka` into two packets (one for `Iosevka Term`) - Add option to manipulate `xAvgCharWidth` (needed rarely by self-patchers) - Add option to allow italic-less fonts with oblique - Add `--debug` and `--dry` to `font-patcher` - Add logging into file to `font-patcher` - Add `NERDFONTS` environment variable to transport options through `gotta-patch-em` ##### Improvements - Fix `Caskaydia Code` height different to `Cascadia Code` (hinting problem) (font is now `ttf` instead of `otf`!) ##### Fixes - Fix baseline to basline distance (line gap) for some fonts - Fix weather icons cloud scaling - Fix UniqueID of the fonts - Fix `Bitstream Vera` name: Is now `Bitstrom Wera` due to licensing issue - No fix, but: Drop support for Python 2 #### New Contributors - [@​Goooler](https://togithub.com/Goooler) made their first contribution in [https://github.com/ryanoasis/nerd-fonts/pull/1079](https://togithub.com/ryanoasis/nerd-fonts/pull/1079) - [@​MicaelJarniac](https://togithub.com/MicaelJarniac) made their first contribution in [https://github.com/ryanoasis/nerd-fonts/pull/1100](https://togithub.com/ryanoasis/nerd-fonts/pull/1100) - [@​teatimeguest](https://togithub.com/teatimeguest) made their first contribution in [https://github.com/ryanoasis/nerd-fonts/pull/1119](https://togithub.com/ryanoasis/nerd-fonts/pull/1119) - [@​b-](https://togithub.com/b-) made their first contribution in [https://github.com/ryanoasis/nerd-fonts/pull/1044](https://togithub.com/ryanoasis/nerd-fonts/pull/1044) - [@​Weltolk](https://togithub.com/Weltolk) made their first contribution in [https://github.com/ryanoasis/nerd-fonts/pull/1163](https://togithub.com/ryanoasis/nerd-fonts/pull/1163) - [@​sullrich84](https://togithub.com/sullrich84) made their first contribution in [https://github.com/ryanoasis/nerd-fonts/pull/1166](https://togithub.com/ryanoasis/nerd-fonts/pull/1166) **Full Changelog**: ryanoasis/nerd-fonts@v2.3.3...v3.0.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/scottames/dots). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS43MS4wIiwidXBkYXRlZEluVmVyIjoiMzUuNzEuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
See the following links for more information: - ryanoasis/nerd-fonts#365 - ryanoasis/nerd-fonts#1059 (comment)
Nerd Font 3.0.0 removed the old Material Design icons and replaced them with different codepoints, ugh. Ref: ryanoasis/nerd-fonts#365
* Use Noto Emoji (monochrome) instead of Twitter Color Emoji SVGinOT * Use Nerd icons because fixed issue: ryanoasis/nerd-fonts#365 Signed-off-by: Youhei SASAKI <[email protected]>
This issue has been automatically locked since there has not been any recent activity (i.e. last half year) after it was closed. It helps our maintainers focus on the active issues. If you have found a problem that seems similar, please open a new issue, complete the issue template with all the details necessary to reproduce, and mention this issue as reference. |
With appropriate codepoint (fix ryanoasis#365)
[why] Material Design Icons has grown quite a bit. [how] Add the icons at their original position which is in PUA1. Use the desktop font instead of the webfont. Add cheat cheat file. Fixes: ryanoasis#365 Signed-off-by: Fini Jastrow <[email protected]>
Summary
The current builds overwrites some code points that Unicode Consorthium prohibits to use for custom glyphs. I want to change this by fixing font_patcher.
Problem Detail
Unicode defines Private Use Areas and the consorthium itself decide not to add characters on these areas. So we can add glyphs as we like.
The areas has these code points: U+E000..U+F8FF, U+F0000..U+FFFFD, U+100000..U+10FFFD.
But the Nerd Fonts is overwriting more code points than them. The font_patcher writes glyphs as below.
It is the problem that font_patcher writes glyphs from Material into the range: U+F500 - U+FD46. This range overlaps areas that should not use for such purpose.
Suggestion
So I suggest two plans to solve this.
plan 1
plan 2
I prefer plan 2 because it has less impact on the current builds. How do you think?
The text was updated successfully, but these errors were encountered: