Regression: spaces render too wide with a custom monospaced font

Open
#320,818 5 comments 0 reactions 1 assignee View on GitHub

@alexdima is already working on this.

Since Jun 10, 2026.

Assessment

This issue has not been assessed yet.

Description

font-rendering upstream

Does this issue occur when all extensions are disabled?: Yes

  • VS Code Version: 1.124
  • OS Version: win-11 25h2 x64

Type: Bug

After upgrading VS Code, a custom monospaced font that has worked correctly for years no longer preserves alignment.

I use a custom monospaced font that contains Latin characters, Chinese/CJK characters, and symbols. The font is designed so that Latin characters, symbols, and spaces occupy 1 cell, while Chinese/CJK characters occupy exactly 2 Latin cells.

However, this regression does not require any CJK characters to reproduce. It can be reproduced with English text and spaces only.

I have confirmed that the main problem is that the space character is being rendered too wide. This alone is enough to break column alignment. Some English characters also appear bolder than before, which may or may not be related, but the incorrect space width is the core regression.

I also tried changing the setting that controls whitespace rendering between svg and font, but the problem remains.

Expected behavior

Spaces should have the same advance width as Latin monospace characters in the selected font.

Usually, English text aligned with spaces should keep its columns:

This breaks layouts that rely on monospace alignment, even though the same font still works correctly in older VS Code versions.

Regression
This works correctly in VS Code 1.110.1.

It breaks after upgrading to a newer VS Code version. The version where I observed the regression was 1.124.0.

Steps to Reproduce:

  1. use monospaced font
  2. update vscode(user)
  3. open vscode
Dominant language
TypeScript
Stars
193k
Forks
42.9k
PR merge metrics
PR metrics pending

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from microsoft/vscode

All issues in microsoft/vscode

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.