vscode 截断长的内嵌提示

snz8szmq  于 6个月前  发布在  Vscode
关注(0)|答案(8)|浏览(56)

问题

请查看 microsoft/TypeScript#56541
TypeScript的内嵌提示可能相当长。以前我们将这些内嵌提示截断为30个字符。然而,当我们为交互式内嵌提示添加支持时,我们禁用了这种截断。
在与TS团队讨论这个问题时,我们意识到让VS Code控制截断而不是让各个语言/扩展程序来控制可能会更有意义。这样一来,用户体验更加一致,而且扩展程序也无法通过发送非常长的内嵌提示来破坏我们。
Rust扩展程序目前也有截断其内嵌提示的逻辑。

建议

为内嵌提示添加默认长度限制。我们还可以添加一个设置,让用户控制这个限制。
此外,也许我们可以提供一种方法,如果您真的想查看完整的提示。可以在悬停时显示或在工具提示中显示。

smdnsysy

smdnsysy2#

随着新的TS交互式更改,这是一个非常需要的功能。我正在使用mongoose,当启用内联提示时,它会将剩余的代码推送到下一行。

这里有一个例子:

我认为另一个可能解决这个问题的方法是,默认将内联提示截断为30个字符,当ctrl + hover出现在内联提示上时,它会展开以显示完整的内联提示并可以与之交互。此外,默认情况下ctrl + click是前进到定义的方式。

iyzzxitl

iyzzxitl3#

#201190 为这个添加了第一个版本。这有点笨拙,并且将内嵌限制为每行43个字符。可以通过以下方式进一步改进:

  • 使限制动态化以适应视口宽度
  • 考虑行内容(例如,具有动态限制并允许水平填充视口)
  • 尊重不同的标签部分并在它们内部进行截断
dgsult0t

dgsult0t4#

关于这个PR(#201190),是否有任何进展?代码有时难以阅读。

kgsdhlau

kgsdhlau5#

我也有同样的问题,在使用嵌入提示时:

这太糟糕了:我无法限制长度

jgwigjjp

jgwigjjp6#

#201190 为这个添加了第一个版本。这有点笨拙,并且将内嵌限制为每行43个字符。可以通过以下方式进一步改进:

  • 将限制设置为视口宽度的动态值
  • 考虑行内容(例如,有一个动态限制并允许水平填充视口)
  • 尊重不同的标签部分并在其中进行截断

我对引入硬性截断内嵌提示的限制的方式感到惊讶。虽然我完全理解没有限制的情况下,例如 TypeScript 代码会出现问题,但它严重限制了我的语言扩展的功能。
即使行非常短(但同时在内嵌提示信息方面相对较丰富),内嵌提示信息也会被不必要的截断,例如:

是否有可能在下一个 Visual Studio Code 版本中全局或使语言扩展可配置?

jpfvwuh4

jpfvwuh47#

如果这是可配置的,并且我们可以为单个插图提示设置最大长度。否则,如果其中一个太长,那么在同一表达式中的所有后续提示都将被隐藏。

wsewodh2

wsewodh28#

请使截断功能可配置。我真的非常需要无限制的嵌入提示。

相关问题