2017-05-30 45 views
8

我正在寻找一种方法来复制VSCode中的$ psISE功能,至少就发现编辑器中打开的活动文件的文件名而言。

作为背景:

我想迁移到使用VSCode为PowerShell的编辑,而不是因为ISE是VSCode未来。我们在迁移某些工作流时遇到问题(特别是签署脚本)。在ISE中,我创建了一个使用$psise.currentfile.fullpath的函数,以便我们可以轻松地签署在ISE中打开的文件。我想重新创建这个vscode,但我没有找到任何方式来确定打开的文件是什么。我们倾向于以交互方式运行(即我们在ISE中进行测试,将其交给我们想要在另一个盒子上测试的地方,然后输入Set-CoSAuthenticodeSignature,这是一个自定义函数,可以包装set-authenticodesignature,但默认设置并自动找到文件,如果我们没有指定的话),所以我们不想一直输入路径名,特别是因为我们现在不需要。

谢谢!

回答

4

我认为它还没有实现($ psise)。您可以在vscode-powershell项目中为VSCode提交问题。 A similar one已经提交。

至少你可以使用这样的 $context = [Microsoft.Powershell.EditorServices.Extensions.EditorContext]$psEditor.GetEditorContext()

然后你就可以访问当前文件... $context.CurrentFile.

又见this video的介绍...

+0

这正是我需要!谢谢!获取文件的路径实际上是$ context.CurrentFile.Path。你的解决方案让我获得了比我问的更多的信息,这真是太棒了!谢谢! – Danny

相关问题