【问题标题】:Is there a granular way to set font features in VSCode?在 VSCode 中设置字体功能是否有精细的方法?
【发布时间】:2022-06-27 08:27:41
【问题描述】:

TL;DR

我需要能够在编辑器中将特定标记定义为使用某种字体功能,而无需将其强制用于存在的每种文本类型,也无需求助于 hacky 替代方案。


上下文:

在 Visual Studio Code 中,您可以使用设置 editor.fontLigatures 启用字体功能。我制作了一个自定义字体,添加了一个完全普通的 OTF 样式集 (SS) 来表示非代码文本,因此我可以使用常规的单色字体来显示代码,并使用更具可读性、视觉上不同的脚本字体来呈现 cmets 和注释块。

为了实现这一点,我只需要将 cmets 和注释块定位为应用了自定义样式集,但我发现在设置中没有办法让我指定具有足够粒度的字体功能,以便仅将它们用于非代码文本。

例如,您可以使用textMateRules 设置以这种粒度级别指定斜体:

editor.tokenColorCustomizations: {
    textMateRules: [
        {
            "scope": "comment",
            "settings": {
                "fontStyle": "italic"
            }
        },
        {
            "scope": "comment.block",
            "settings": {
                "fontStyle": "italic"
            }
        }
    ]
}

但是,我不能强制应用样式集。

为了解决这个问题,我使用this extension,它允许我将任意 CSS 注入编辑器。

目前我插入此代码:

/* Set documentation comments style */
.mtk38.mtki,
.mtk39.mtki {
    font-family: "MonoLisa Script Nerd Font";
    font-size: 1.1em;
    font-style: italic;
    font-weight: 375;
    font-feature-settings: ss02 on;
}
/* Set inline comments style */
.mtk15.mtki {
    font-family: "MonoLisa Script Nerd Font";
    font-size: 1.2em;
    font-style: italic;
    font-weight: 200;
    font-feature-settings: ss02 on;
}

这实现了我想要的结果(将样式集强制到编辑器显示标记的特定子集),但它迫使我对 VS Code 安装文件夹的权限坐立不安,并中断每次更新。我可以添加一个钩子,这样每次系统更新时,它都可以自动管理这个过程,但我所做的一切都非常糟糕,我确信必须有一个“正确”的方式来实现我想要的。

Here's a concrete example of how this looks

在 VSCode 中是否有细粒度的方式来设置字体功能?

【问题讨论】:

    标签: visual-studio-code font-feature-settings


    【解决方案1】:

    (剧透:no tengo la solución a lo que buscas)Hola Ágata!!! Anduve buscándote por todo Internet,necesito hablar con vos。 Soy Martín, este es mi numero, +5492246451456 mandame un WhatsApp porfa!!! Espero que andes bien, porfa escribime que tengo algunas cosas que seguro te van a interesar。

    PD:Tenias razón con lo de ui/ux

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-17
      • 2017-08-12
      • 1970-01-01
      • 2015-01-29
      相关资源
      最近更新 更多