1

我目前正在尝试编写一个 VS Code 扩展,这有点令人沮丧。我按照这里所说的做了一切:

https://code.visualstudio.com/docs/extensions/example-hello-world

但是在使用yo code并输入所有必要的信息之后,我打开了相应的文件夹 VS Code 点击 F5 并且 VS Code 说我应该配置我的 launch.json (这应该由你的代码来完成,不是吗?)。但是,当我按下调试开始按钮时,会打开一个扩展主机窗口,如该教程中所述。但是:当我尝试执行扩展时,命令面板找不到它。

我尝试了几个命令名称,例如“hello world”“helloworld”或我提供的扩展名的变体yo code。我还注意到

"commands": [{ "command":"extension.sayHello", "title":"Hello World" }]

package.json 的一部分,但不知何故,我没有设法将它们放在一起以获得一个简单的、有效的 vs 代码扩展。在 youtube 上的教程视频中,每个人都可以在启动 VS Code 后按 F5,这是我做不到的。有点奇怪。

任何帮助表示赞赏!提前致谢。

编辑:附加信息。

当我激活 vs 代码以显示所有异常(甚至已处理)时,vs 代码在以下点停止(参见默认值:)

internal/process/stdio.js(核心模块)

// ...
case 'PIPE':
case 'TCP':
  var net = require('net');
  stream = new net.Socket({
    fd: fd,
    readable: false,
    writable: true
  });
  stream._type = 'pipe';
  break;

default:
  // VS CODE STOPS AT THE LINE FOLLOWING!
  // Probably an error on in uv_guess_handle()
  throw new Error('Implement me. Unknown stream file type!');
}
// Ignore stream errors.stream.on('error', function() {});
  } catch (error) {
stream = createDevNull();
}
//...

希望它有所帮助:(

4

1 回答 1

1

我通过更加关注阅读教程解决了我的问题。本教程告诉您通过按 F1 而不是 CTRL P 来激活命令面板。这解决了我的问题。

我没有更改代码中的任何内容;而是按 F1 代替 [CTRL] + [P] 似乎很重要,尽管它实际上会带来相同的输入。我仍然想知道为什么要区分 CTRL + P 和 F1 如果两者都带来相同的控件。:/

希望它也可以帮助其他初学者。干杯!

于 2016-06-27T08:52:33.960 回答