Comments (5)
Hey @PhMajerus - the issue you describe isn't really an issue with Consolas (or any single font). It's more to do with the fact that the Console currently doesn't support "font-fallback" - a technique that allows modern text rendering systems to dynamically find and load fonts that contain glyphs that are missing from the currently selected font.
One way to mitigate this issue, is to use a font that contains all/more of the glyphs one might want to render. Alas, no single font/font-set contains every visible glyph - that would end up being a HUGE font. Some font packs combine several fonts, glyphs, and symbols into a single font file, but these font sets rarely include all the fonts everyone needs.
Alas, Console's current rendering system doesn't support font-fallback, so we're unable to render many characters (e.g. emoji, powerline, some East Asian languages) resulting in many visual rendering issues, some of which you note above.
Rest assured though, we're figuring out a future plan that'll allow us to remedy these (and many other) issues.
from terminal.
Thanks @zadjii-msft and @bitcrazed for chiming in, good to hear you're still pushing to get more improvements into conhost. I know building a consistent set of hundreds of characters must take a while, just knowing that we'll get it at some point is great news!
Consolas does have some issues with block drawing characters.
I want to make sure you understand what I mean by proper pixel-hinting for all box and line drawing characters. The problem is mostly for ANSI-art and apps using these blocks to build patterns. U+2591, U+2592, U+2593 are supposed to generate perfect checkerboard patterns when several are displayed next to each other (horizontally as well as vertically).
In Consolas, they look ok by themselves, but the pattern doesn't properly repeat across chars, as seen in the following screenshot:
Note the issue also depends on the font size and DPI settings, it can get even more visible than this.
from terminal.
Hmm, do you need it being compatible with CJK?
If so you can try Iosevka...
from terminal.
Hey wadda ya know, we're already working on this. Just so happens to be a longer process then one might think to get a typeface ready to ship to the world.
from terminal.
Great feedback, thanks for sharing. Sending to our font lead now :)
If you don't mind, I'll close this issue for now since this is one of our major priorities and doesn't need to be tracked as a pending issue. Feel free to add comments if you think we've missed something.
from terminal.
Related Issues (20)
- Pre-seeded actions from userDefaults.json should be removed after adding IDs
- Selection markers permanently disappear when they are scrolled out of view
- CTRL+Backspace no longer removes whole word in pwsh HOT 3
- We should show an error dialog for outdated MacType versions
- [1.21] Duplicating a pane after changing the settings uses the _old_ settings?
- Cannot move the Find dialog, if it covers a search result HOT 2
- Issues with cursor invalidation in GDI HOT 3
- Reflow behavior on window resize seems broken if the cursor is hidden HOT 3
- Feature Request: Add retro Apple II cursor style HOT 2
- Profiles missing after copying settings to other computer HOT 4
- BUG REPORT HOT 2
- When I use certain tools, I occasionally get printing exceptions. HOT 4
- Remove Command's knowledge of its own keybindings
- Terminal crashes when launched by `start /MAX` HOT 2
- wt.exe --version behaviour HOT 3
- Double-click word selection picks up the RPROMPT from the previous line because word wrapping is hard HOT 2
- No longer use Command.Name for disambiguation
- `OpenConsole.exe` can steal focus from the terminal HOT 9
- [1.21] Changing a font axis/feature value does not update the preview
- [1.21] After changing font, features/axes can't be edited
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from terminal.