V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
s1n1an
V2EX  ›  编辑器

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

  •  1
     
  •   s1n1an · 57 天前 · 832 次点击
    这是一个创建于 57 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用腻了 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 条回复    2025-07-07 19:43:12 +08:00
    TimePPT
        1
    TimePPT  
    PRO
       57 天前
    之前也遇到过各种 Ligatures 不正常情况,后来索性关了:)
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   918 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 20:19 · PVG 04:19 · LAX 13:19 · JFK 16:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.