VSCode 字体连字问题 - 这是谁的问题?
VSCode font ligature issue - Whose issue is it?
我正在使用最新的 vscode,使用 fira code ttf 字体和 ionide 插件来处理 F# 工作。我刚刚注意到一个问题,我认为这是最近 vscode 的新问题,我认为这是一个基础 VSCode 问题,但我不确定 - 它可能与 ionide 项目或字体。或者,electron 或 chrome 有问题吗?
简而言之,F# 中用于 lambda 函数声明的 -> 符号并不总能被识别。
正如您在上图中所见,用于声明匿名函数的 fun _ -> 语法在所有情况下都不会将 -> 呈现为箭头。即使在参数周围添加一个括号也会使其正常工作,用数字(但不是字母)替换参数也是如此。箭头连字在大型匹配语句中工作正常,但在这个特定的地方失败了。
我不认为它是字体,因为该字体包含正确的连字并且适用于大多数其他地方。我认为这与 how/when vscode 决定它应该替换连字有关。关于 x -> 的一些东西让它认为它不应该做任何事情,但是 (_) -> 没问题。我想 ionide 包可能会以某种方式影响连字检测,但我没有看到任何证据。
因此,在我将此作为问题报告给 vscode 之前,有没有人确切知道发生了什么,以及问题可能出在哪里?
编辑:它在不同上下文中失败的另一张照片。多参数函数渲染正确,单参数函数渲染不正确
对我来说,这看起来像是 F# 的 tmLanguage
文件的问题。
正如您在使用 Developer: Inpsect TM scopes
命令时看到的那样,在连字不起作用的情况下,-
和 >
是单独的标记 (1, 2),而在工作情况下,它只是一个标记 (->
):
我实际上在 #19183(对于 Haxe)中报告了一个非常相似的 ligature-related 问题,但在那种情况下 不是 似乎是一个问题与语法。
VSCode 似乎使用 ionide-fsgrammar 作为其 F# 语法,因此您可以在那里报告问题。
我正在使用最新的 vscode,使用 fira code ttf 字体和 ionide 插件来处理 F# 工作。我刚刚注意到一个问题,我认为这是最近 vscode 的新问题,我认为这是一个基础 VSCode 问题,但我不确定 - 它可能与 ionide 项目或字体。或者,electron 或 chrome 有问题吗?
简而言之,F# 中用于 lambda 函数声明的 -> 符号并不总能被识别。
正如您在上图中所见,用于声明匿名函数的 fun _ -> 语法在所有情况下都不会将 -> 呈现为箭头。即使在参数周围添加一个括号也会使其正常工作,用数字(但不是字母)替换参数也是如此。箭头连字在大型匹配语句中工作正常,但在这个特定的地方失败了。
我不认为它是字体,因为该字体包含正确的连字并且适用于大多数其他地方。我认为这与 how/when vscode 决定它应该替换连字有关。关于 x -> 的一些东西让它认为它不应该做任何事情,但是 (_) -> 没问题。我想 ionide 包可能会以某种方式影响连字检测,但我没有看到任何证据。
因此,在我将此作为问题报告给 vscode 之前,有没有人确切知道发生了什么,以及问题可能出在哪里?
编辑:它在不同上下文中失败的另一张照片。多参数函数渲染正确,单参数函数渲染不正确
对我来说,这看起来像是 F# 的 tmLanguage
文件的问题。
正如您在使用 Developer: Inpsect TM scopes
命令时看到的那样,在连字不起作用的情况下,-
和 >
是单独的标记 (1, 2),而在工作情况下,它只是一个标记 (->
):
我实际上在 #19183(对于 Haxe)中报告了一个非常相似的 ligature-related 问题,但在那种情况下 不是 似乎是一个问题与语法。
VSCode 似乎使用 ionide-fsgrammar 作为其 F# 语法,因此您可以在那里报告问题。