s1n1an
V2EX  ›  编辑器

JetBrains Mono 连字符导致 VSCode 括号着色不正确,能否禁用特定连字符?

  •  1
     
  •   s1n1an · Jul 7, 2025 · 2327 views
    This topic created in 309 days ago, the information mentioned may be changed or developed.

    用腻了 Fira Code ,最近特别喜欢 JetBrains Mono ,但是发现这个字体的连字符包含了 {{}},也就是说这两个括号会被变成一个字符,只能显示一种颜色,VSCode 对连字符始终依最后一个字符的颜色来着色。

    问题如图,双花括号触发连字符,就有问题: 1.png

    把字符拆开,就正常了: 2.png

    设置里面关闭连字符,着色也是正确,开连字符就不行。其实不止这一种情况,这个字体好像连字符种类非常多,有几个都是我不需要的。

    我去查了一下这个问题,GitHub 上倒是有不止一个反馈,官方的态度要么是 Won't fix 要么是 Not planned,看来指望官方解决是很难了,所以想来 V2EX 问问有什么好的解决方法。

    推荐试试大神 Belleve 做的字体 Iosevka,这个字体定制性极好,有多个变体(例如 Fira Code 和 JetBrains Mono 的变体),可自由定制连字符(它针对多种编程语言,分别提供了连字符的预设)。

    回到问题,针对其他的字体,有这些思路:

    1. 或许有第三方的 VSCode 括号着色插件,专门适配了连字符场景,可以替换掉 VSCode 的括号着色功能?
    2. 或许有字体定制工具,能修改字体,禁用掉其中一部分连字符?
    1 replies    2025-07-07 19:43:12 +08:00
    TimePPT
        1
    TimePPT  
    PRO
       Jul 7, 2025
    之前也遇到过各种 Ligatures 不正常情况,后来索性关了:)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   932 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 21:21 · PVG 05:21 · LAX 14:21 · JFK 17:21
    ♥ Do have faith in what you're doing.