terminal: Unable to find the selected font "Cascadia Mono".

There is a bug in the application deployment platform on recent versions of Windows that results in the Cascadia Mono font (the default font) being unreadable. Terminal cannot read it, and if it tries it will crash.

Unfortunately, that means that through no fault of your own, you’ll get a dialog that says we can’t find Cascadia Mono or Cascadia Code.

KNOWN SOLUTIONS

  • Either reboot or
  • choose to “Repair” the Terminal application in the “All apps” list in Settings.

repair-terminal-windows-11

ONLY COMMENT HERE IF THE WORKAROUNDS DON’T HELP Since there are so many subscribers to this thread, we will lock it if it starts to accumulate unrelated commentary.

2021-06-10: we’ve locked it as folks haven’t read this disclaimer.

Original bug in Terminal 1.6

Environment

Windows build number: Microsoft Windows NT 10.0.19042.0
Windows Terminal version: 1.6.10571.0

Steps to reproduce

This ‘happens on my machine’, not sure if easily reproducible.

  • Start Microsoft Terminal

Expected behavior

Microsoft terminal opens on the default terminal

Actual behavior

A pop-up is shown with the following error message: screenshot of the error message Transcript:

Warning

Unable to find the selected font "Cascadia Mono".

"Consolas" has been selected instead.

Please either install the missing font or choose another one.

Additional information

Other applications, Microsoft Word, Paint.NET, show the Cascadia Mono font and allow usage without any issues.

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 35
  • Comments: 52 (8 by maintainers)

Commits related to this issue

Most upvoted comments

I know the issue is closed, but i had it happen today for the very first time ever, couldnt find cascadia mono, on v1.8.1521.0 “repaired” the app from the windows 10 settings menu, restarted terminal and it worked

After upgrading to 1.6.10571.0, this happens to me as well. But starting as administrator does not help for me. Any other workaround?

I ran into a similar issue. I followed all sorts of instructions from various different posts online and I finally got powershell to recognize the right font but windows terminal would still not pick it up. here is my powershell core rendering the font Space Mono for Powerline correctly.
image

A screenshot of the console’s properties: image

However, I tried the same in Windows Terminal and guess what? image

settings file: image

I got lucky and got help from smart people online by posting this question on twitter -https://twitter.com/eakangk/status/1369949792034562048?s=20

And someone responded that I was using the full name of the font and not the short name. I quickly opened the modern font setting window and searched for the font ‘space’ and that was when I realised, I couldn’t find it. image

However the same font would show up in the old schools c:\windows\fonts folder: image

This prompted me to think that maybe, i didn’t really install it for all users. Luckily I had a clone of https://t.co/Xo6f5LikOV?amp=1 so I rightclicked the font and clicked install for all users. image

and guess what happened next? image it appeared in Font Settings!

I couldn’t wait to open up my windows terminal to check how it looked like and… wait for it… image it worked.

Thank you everyone for the valuable suggestions and directing me to this issue here. i had almost given up on this back in January, thinking I was taking too long to set up a prompt.

Okay.

Here’s my plan:

  • A. I’m going to remove the string comparison test as a way of triggering this dialog box. Instead, I’m going to make the font resolution code return a bool or some sort of indicator when it decides to try the hardcoded font list (Consolas). The dialog will only pop if that flag is set. This should eliminate the scenario where the proposed name was close enough for DirectWrite to resolve it to ONE of the font’s known names and we give a really dumb pop up because the string doesn’t match in case (or otherwise exactly)
  • B. I’m going to add a small amount of retry resolution in the font fallback routine (prior to the previous flagging) that will trim off, word by word from the tail, the phrase that you’ve given us as the font and ask DirectWrite to try again. That will crudely resolve the case where people are specifying weight or other suffixes and we fall back to Consolas and show the annoying dialog.
  • C. In the future, we’ll perhaps try to parse weight suffixes out of the specified font name and transform them into weight values or something more complicated. Backlog item.
  • D. For the cases where the font is somehow installed but is not turning up in the system font cache, I’m generally going to have to defer to the OS side bug. I’m not supposed to really be able to do anything if the system can’t figure out the difference between per user and per system installs or mushes up the status of fonts registered by installed packages.
  • E. In the future, we’ll try to have a fallback font loader that will at least attempt to get the Cascadia variants out of our own package by direct file open if the rest of the system font resolution chokes. Backlog item.

The first two (A and B) are what I want to send as a PR for this bug. I’ll file or find and link the backlog ones (C and E). And I’ll try to file or find and link the OS issue as well (D).

Finally, @DHowett and I have an alternative/interim solution:

  1. @DHowett plans to pull the dialog from stable so it at least stops annoying people and is easy to service
  2. @DHowett and I agree that if we reach the end of April and my proposed fixes get into people’s hands and this is still a noisy issue… then we are going to yeet the entire dialog into space and note that it can only return once we have code that can better understand the text string for the font (like parsing out the weight as I said above) plus or minus a bead on the font file resolution problem.

Questions, comments, concerns… let me know. Otherwise just give me a thumbs up and give me a chance to get it done. Thanks.

I have a Similar experience but with the font “Cascadia Code PL”. The message does not go away if Started as Administrator.

The one installed from the store has no problem. But the one installed by scoop has the same issue.

It started happening to me today. Weeks no issues then all of WSL linux sessions closed, about 8 of them, while they were running tasks and without notifying me or giving me the option to delay/cancel/not update at this time! This is a very very bad update procedure as it closed active SSH connections in all of these. Fortunately I started the critical jobs via screen.

Apps, especially terminal apps, that can be open for extended periods of time while running long-running jobs should not silently just close and update in the middle of the night.

As near as I can tell an update was applied and my terminal is now 1.9.1523. Not happy that it silently updated and closed my active sessions. And now I have the missing font error too. Which I did not have before. In fact everything had been working very well before. Now it’s having problems. Very annoying.

I have done A, B, and E in the linked PR #9734.

I will still generate a follow up for C.

On the OS side (part D), we have identified a bug with package installation and the font paths in the registry and have the relevant teams committed to fixing it.

I have the same problem (Windows Terminal v1.6.10571.0 and “Monospace Regular” font). Installing the font “for all users” doesn’t solve the problem for me. Reinstalling windows terminal doesn’t help either.

But rolling back to the previous version (v1.5.10411.0) helped me.

Lest I only complain - I realize this is a preview release, so some hiccups are to be expected. I was caught off guard by the sudden closing and update without warning though. That’s not good.

@softwrx I had the same issue when auto-upgraded to 1.8.1521.0 which, as far as I know, is not pre-release. So I think the update process is borked.

As annoying as it was, I normally do not reboot because I might have things going for several days, I closed everything down and rebooted and it appears the error with the font has gone away.

So this “update” not only closed all my active terminal sessions without warning in the middle of the night, it also forced a reboot to fix this error.

Lest I only complain - I realize this is a preview release, so some hiccups are to be expected. I was caught off guard by the sudden closing and update without warning though. That’s not good.

Other than this one issue, the preview version has been working great. My only issue is an apparent lack of a keyboard shortcut to start a new terminal window. The preview has otherwise been very useful. The terminal preview, along with WSL, has enabled my switch from Mac to Windows as I live in various unix/linux terminals most of the day with my job. Good job on it.

open Windows Terminal Settings, add/change fontFace setting

{
    "profiles": {
         "defaults":  {
                "fontFace": "Consolas"  //  edit here

I am also suffering from this problem, after an automatic update via the Windows Store.

Off course I think of a possible fix right after submitting the issue.

Starting Microsoft Terminal as Administrator once fixes the issue. Subsequent runs as non-admin do not show the warning anymore.

Leaving the issue open so the maintainers can decide if this should be handled without the ‘start as admin’ workaround/fix.

I had the same thing as @ghylander and the proposed solution to repair the app did indeed work for me.

Had to

  1. Close Terminal
  2. Install font from https://github.com/microsoft/cascadia-code/releases for all users
  3. kill the explorer.exe process (from Task Manager)
  4. start the explorer.exe process (from Task Manager)
  5. Start Terminal

And the error was gone.

@brucek2 sorry about that. We actually had to push an update to make sure we didn’t crash when this happens. I edited the original/top post on this issue to sum up what’s happening.

@Xbuduo, @matthewbarreiro, and to anyone who used scoop to install Terminal, I resolved this “Cascadia Mono” font issue by also installing the cascadia-code package. It requires an admin prompt and the nerd-fonts bucket.

  1. Open terminal as Administrator
  2. Run scoop bucket add nerd-fonts
  3. Run scoop install cascadia-code

Hope that helps.

Install for all users FTW!

@lonelydev I’ve cloned that font repo. The I installed for all users these fonts:

  • Space Mono Bold for Powerline
  • Space Mono Bold Italic for Powerline
  • Space Mono for Powerline
  • Space Mone Italic for Powerline

I didn’t think I needed the others.

This hasn’t helped - I’m still getting that error message whenever I get into Windows Terminal

@Rod-in-NM seems like you need powerline fonts from https://github.com/powerline/fonts once you clone the repo to your pc, you can then choose to install the fonts you wish to Windows right clicking the font image and then clicking install for all users. image

That should get you the font you want. In my case, I configured my Windows Terminal to use Space Mono, so I only selectively installed that font and it started rendering correctly. image

Same thing here, Source Code Pro.