我想实现一个使用语言服务器协议的VSCode扩展,但我希望服务器组件位于实际的服务器上(在云中),而不是VSCode扩展的一部分.
我可以设置客户端扩展以通过websockets或HTTP连接到服务器吗?
visual-studio-code vscode-extensions language-server-protocol
我正在监听并获取一个用于文件内容和文件路径信息onWillSaveTextDocument的实例。vscode.TextDocument
仅创建该对象的新实例会很方便,而不是从文件路径重新创建所有信息。
我希望有这样的东西:
const document = new TextDocument(myFilePath);
Run Code Online (Sandbox Code Playgroud) 尝试添加悬停以将悬停添加到我的 VS Code 扩展中。我能够使用语法突出显示和命令来工作,但坚持添加此悬停功能。
我认为我的阻碍是如何正确实现HoverProvider API。我正在下面对悬停提供程序进行一个简单的测试,当一系列标记被识别为关键字时,该提供程序就会激活HELLO。我在测试中实现的悬停。我用来vsce package在本地打包和测试我的扩展。
我的扩展命令有效,但是当我将鼠标悬停在“HELLO”一词上时,我的悬停不会出现。
./client/扩展.js
const vscode = require('vscode');
function activate(context) {
console.log('Congratulations, your extension "star-rod" is now active!');
let disposable = vscode.commands.registerCommand('extension.mamar', () => {
vscode.window.showInformationMessage("The Star Rod... is powerful beyond belief. It can grant any wish. For as long as we can remember, Bowser has been making wishes like, for instance... 'I'd like to trounce Mario' or 'I want Princess Peach to like me.' Of course, …Run Code Online (Sandbox Code Playgroud) GitHub Copilot 在要求重新启动我安装的最后一个更新的 vscode 后停止工作,现在它甚至不显示图标,也没有任何建议,就好像它没有安装一样。
我卸载了所有内容,甚至是 vscode 本身,删除了所有文件和配置图标,以防出现冲突或错误,但扩展仍然无法工作。
如果有人知道如何修复它或导致错误的原因,我将非常感激。
这确实是一个由两部分组成的问题,但它们的脉络相同,所以我会在一个帖子中提问。
当我翻阅各种颜色时,我发现它们也有改变Output窗口颜色的能力。我可以使用哪个 VS Code 设置来更改此输出的颜色?具体来说,我不是在询问终端,我是在询问使用 coderunner 作为示例时显示输出的输出窗口。请参阅屏幕截图以查看我指的是哪个窗口。
第二个问题是我可以看到输出确实支持多种颜色。我正在尝试使用cpprintpython lib 中的模块将prettyprinter彩色输出打印到此窗口。当我在终端中运行脚本时,我得到了颜色,但在输出窗口中,我没有得到任何颜色。我有可能在输出窗口中获得与终端中类似的彩色输出吗?我假设输出窗口支持颜色,因为[Running]...和 end 是彩色的。
谢谢!
我正在将我的评论荧光笔重建为一个新的扩展。
但是,我现在遇到了一个问题,我收到以下警告:
(node:4904) [DEP0005] DeprecationWarning:
Buffer() is deprecated due to security and usability issues.
Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
Run Code Online (Sandbox Code Playgroud)
到目前为止,我可以在我的扩展中找到我从未使用过的功能,Buffer()
我认为它来自vscode模块。
当警告发生时,块注释突出显示停止工作。
对于我在开发模式下的扩展来说,这个问题正在打破。
但是,我的旧扩展在开发模式和发布版本中存在相同的问题。
仅在发布版本中不报告警告。
我很抱歉没有包含一个最小的、可重复的例子。
更新:
在我的评论突出显示的最新版本中,我修复了块评论突出显示。至少我已经修复了我最后损坏的东西。
在(node:4904) [DEP0005] DeprecationWarning不断打破罕见的情况下我的延长,这种情况发生在我所有的环境。
重新启动 vscode 或重新启动操作系统有时可以修复它。我注意到当我的扩展程序损坏时,其他扩展程序也会中断。
我运行的操作系统:
在两个操作系统上,我都运行 nvm 来管理 node 和 npm 版本。我目前有 2 台计算机都使用指定的操作系统进行双启动 两台计算机上都出现了问题。
我使用 Windows VS 代码和此扩展“远程 SSH”、“远程 X11”、“远程 X11 (SSH)”来连接远程服务器并从远程服务器获取图形。
我运行 VcXsrv、Pageant。如果我直接连接 Pageant,X11 转发就可以工作。如果我在远程服务器中设置“export DISPLAY=localhost:10.0”,它甚至可以在 VS code 终端中工作。因此,除了 Remote X11 之外,所有功能都有效,它无法设置 DISPLAY 变量,并显示以下日志: Failed to get DISPLAY: Error: Invalid cygwin unix socket path
windows remote-server x11-forwarding visual-studio-code vscode-extensions
我正在为vscode开发扩展,我想显示一个自定义对话框来帮助用户配置ini文件.
可以使用标签和输入创建自定义对话框吗?
TLDR; 我如何使用扩展名着色扩展名定义的语法,而不是实际上是用户必须启用的颜色主题?
我正在尝试将这个Sublime Text插件(ToDone)移植到VSCode.
它为待办事项列表创建语法,然后使用语法突出显示来强调重要任务,静音已完成的任务等.
我发现"editor.tokenColorCustomizations",通过自定义颜色主题.当我在用户设置中使用它时,它可以使用新语法,但是当我package.json#contributes在扩展清单的部分中使用它时,它会失败.
{
"contributes": {
"languages": [
{
"id": "todone",
"aliases": [
"ToDone",
"To-Done"
],
"extensions": [
".todone",
".todo"
]
}
],
"grammars": [
{
"language": "todone",
"scopeName": "text.todone",
"path": "./todone.tmLanguage"
}
],
"configurationDefaults": {
"[todone]": {
"editor.insertSpaces": false,
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "symbol.definition.task-heading.todone",
"settings": {
"foreground": "#ff8800"
}
}
]
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
到目前为止,语法似乎没问题 - 它正是Sublime插件正在使用的内容,并且正确应用了用户设置中的颜色.此外,设置的格式似乎正常,因为"editor.insertSpaces"正在应用并且颜色在用户设置中存在时正在工作.
最后,我在扩展package.json中'Warning' 'Unknown editor configuration …
syntax-highlighting visual-studio-code vscode-extensions vscode-settings
我正在寻找Visual Studio Code(vscode)中的扩展名,可以在其中定义我的自定义代码大纲。本质上,以树状方式列出我的所有函数/定义。
假设我使用的是一种简单的语言,如下所示:
begin foo1 arriving procedure
move into queue1
print queue1
send to foo2
end
begin foo2 arriving procedure
move into queue2
print queue2
send to foo3
end
Run Code Online (Sandbox Code Playgroud)
我想知道是否有vscode的扩展,让我实现这样的事情:

如果可以点击,那就太好了。导航/转到定义,并且在更复杂的代码的情况下可以扩展。
到目前为止,我发现了什么。
vscode代码大纲 https://github.com/patrys/vscode-code-outline ,我喜欢这个扩展,除了它不适用于我的语言。 .js文件的示例图像
显示功能 https://marketplace.visualstudio.com/items?itemName=qrti.funclist
Sourcecookifier记事本++(可以做我想做的,但对于记事本++明显)
我喜欢第二个扩展名(显示功能),因为它很容易在vscode / settings文件中进行自定义。您可以从设置中定义自己的正则表达式。但是,它不在固定到编辑器的大纲视图中。现场也不会令人耳目一新。
我也喜欢第一个扩展,因为它在树状视图中,但是我似乎不知道如何以及在何处修改设置以实现所描述的布局。
如果有人能指出正确的方向,将不胜感激。我已经尝试了一些代码轮廓扩展文档,但是我认为这对我没有任何意义。
PS:关于StackOverflow的第一篇文章,请让我知道是否应该添加/更改。
提前致谢。