dotnet / wpf

WPF is a .NET Core UI framework for building Windows desktop applications.
MIT License
7.08k stars 1.17k forks source link

Hyphen based ligatures don't work in WPF #109

Open clairernovotny opened 5 years ago

clairernovotny commented 5 years ago

See https://github.com/tonsky/FiraCode/issues/259 for the full issue description.

Would be good to get this fixed for .NET Core 3.

DrPizza commented 5 years ago

This makes Visual Studio very sad. -> is a very common symbol in C++, and I don't get pretty arrows for it.

Fell commented 5 years ago

I've tracked this bug through various different platforms now, and it would be really great if it could get fixed. It's a small thing, but it would make everyone's programming life a little more fun.

limbusdev commented 5 years ago

Problem persists in Visual Studio 2019.1

HolyChen commented 5 years ago

in vs2017 too, but not in vs code

be5invis commented 5 years ago

I suspect there's something wrong in TextItemizer that it breaks out hyphens (-) as individual run.

weltkante commented 5 years ago

I understand this originally was probably by design, but considering that hyphen based ligatures are a desired feature in some fonts, that original "by design" is not appropriate anymore and needs to be revisited. I would have contributed by researching the implementation and proposing a fix, but considering the text engine is going to stay closed source this really needs to be done by MS.

AmadeusW commented 4 years ago

~Windows Terminal, VS Code and JetBrains all render the text better than Visual Studio, which uses the WPF renderer. Text rendered by WPF is less crisp than other technologies; horizontal lines are thinner, and vertical lines are thicker.~

image

~I heard that WPF used by Visual Studio uses ~2010 version of DWrite, and there was no demand to update the version of WPF used in .NET Framework. I would like this comment to serve as proof of demand for a fix on behalf of Visual Studio Editor's users and developers.~

~Some of the user feedback: https://www.reddit.com/r/VisualStudio/comments/ev5b2u/is_there_an_editor_text_readability_fix_already/ https://developercommunity.visualstudio.com/content/problem/44061/some-programming-ligatures-do-not-work.html https://developercommunity.visualstudio.com/content/problem/899361/editor-readability.html?childToView=904574#comment-904574~

AmadeusW commented 4 years ago

Edit: I moved the previous comment to appropriate location: #2025

weltkante commented 4 years ago

Just to be clear, the last two comments are off-topic and have nothing to do with hyphen-based ligatures (which is what this issue is about). The text layouting is unrelated to the font rendering.

AmadeusW commented 4 years ago

Thanks for clarification @weltkante. I thought that setting layout and rendering are handled in the same piece of code. I will move my comments to #2025

limbusdev commented 4 years ago

Now both are closed. I think one should stay open, or not?

weltkante commented 4 years ago

2025 has received some fix and this issue is still open because its not fixed yet. Not sure what exactly you mean?

FluorineDog commented 4 years ago

Any progress on this issue?

FlogramMatt commented 3 years ago

Given Visual Studio .Net Core is open source.. is it possible to get into the source code and find and fix the bug for them and submit a pull request? Particularly if it's a WPF bug, seems like it might be possible.

weltkante commented 3 years ago

Neither Visual Studio is open source, nor the part of WPF that does text processing. I already mentioned this above, Microsoft has to fix this bug, the community cannot help.

CoderTyn commented 3 years ago

Any progress ?

Symbai commented 3 years ago

Any progress ?

Obviously not. WPF might be open source but repo got owned by WinUI team and they don't know much about C# or WPF. For new features only chance is a community pull request. And the last pull request which added a new feature was ignored for months, then closed without merging.

CoderTyn commented 3 years ago

Any progress ?

Obviously not. WPF might be open source but repo got owned by WinUI team and they don't know much about C# or WPF. For new features only chance is a community pull request. And the last pull request which added a new feature was ignored for months, then closed without merging.

thank u for your reply. there is no hope . ms does not care about it.

jogibear9988 commented 3 years ago

I've mentioned it in VS2022 YouTube Chat, and they reacted to the comment: https://www.youtube.com/watch?v=lsInDJdx6As

geocine commented 3 years ago

I've mentioned it in VS2022 YouTube Chat, and they reacted to the comment: https://www.youtube.com/watch?v=lsInDJdx6As

Its at 22:14 btw for the benefit of everyone

julian-a-avar-c commented 2 years ago

Status update, this is still an issue. Is there any plan to fix this issue?

CoderTyn commented 2 years ago

three years passed...

CoderTyn commented 2 years ago

See tonsky/FiraCode#259 for the full issue description.

Would be good to get this fixed for .NET Core 3.

.NET 6 released...

flundstrom2 commented 2 years ago

Can you please fix this? Its been on the bug list for years (literaly).

conioh commented 2 years ago

Sup?

Fell commented 2 years ago

I agree. It's time to fix this. What's so special about hyphens anyways?

weltkante commented 2 years ago

What's so special about hyphens anyways?

They take part in word breaking / line wrapping so probably have special code handling them that didn't have ligatures in mind when being written. Unfortunately its in a closed source blob thats linked into WPF, so I can just guess.

ifarbod commented 2 years ago

Would be good to get this fixed for .NET Core 3.

3 years later, .NET 7 is on the horizon and this remains unfixed.

CoderTyn commented 2 years ago

See tonsky/FiraCode#259 for the full issue description.

Would be good to get this fixed for .NET Core 3.

I am not sure wether it is fixed or not in .NET Core 3, but Visual Studio seems to use .Net Framework 4.8?

cmacmillan commented 2 years ago

This is still broken in the latest version (16.11.15) of VS2019

ThiccTheo commented 2 years ago

STILL BROKEN!!!

conioh commented 2 years ago

And in Version 17.4.0 Preview 1.0 still broken too.

ThiccTheo commented 2 years ago

still broken :(

drventure commented 2 years ago

Still Broken as of 17.4.0 released 11/9/2022

r-chaykovskiy commented 1 year ago

Still broken....

Captain-Quack commented 1 year ago

Still broken >:(

ifarbod commented 1 year ago

Still broken in 17.5.0

BurningEnlightenment commented 1 year ago

@pchaurasia14 @stephentoub @clairernovotny There hasn't been any meaningful discussion in about a year, and I'm guessing that won't change until someone with the right credentials works on a solution. Please lock this thread until then to prevent further spamming, thank you.

Fell commented 1 year ago

I disagree. Closing this thread won't help with getting the problem fixed. Anyone who doesn't want "spam" can unsubscribe from this thread.

If anything, "spamming" is the only way people can express their interest in this problem.

shrek1402 commented 1 year ago

Still broken! How can you not cope with the arrow in 5 years? I send greetings to everyone who will face this problem in 2030, come here and see the lack of progress.

Vivraan commented 1 year ago

Joining the fray.

NPEX42 commented 1 year ago

Joining the Line

jthomazini commented 1 year ago

getting the popcorn and sitting at the corner of the room to watch the lack of progress happening in real time. Kudos to you in 2030 for checking if this has finally been fixed.

ifarbod commented 1 year ago

I'm calling it now, GTA 6 will be released before this issue gets fixed.

MrScottyTay commented 1 year ago

better support for ligatures in general would be good, the newly released Monaspace from MS themselves doesn't seem to really work in Visual Studio.

j2inet commented 1 year ago

Wow, this issue is several years old! The installation of Monaspace and the following failure to show the hypen based ligatures is what brought me here. I suppose in the grand scheme of things, this is a minor issue. I won't be hard on the VS devs for this. But if this ever does get fixed, I'll be very happy!

BertLamb commented 11 months ago

Visual Studio 17.8.1 still has this issue 😭

KesslerMentele commented 10 months ago

Its kind of ridiculous that this is still an issue. It has been several years now.

DylanWhite-Trimble commented 10 months ago

Please fix

MrShinshi commented 10 months ago

Visual Studio 17.8.4 , such a time-honored issue.