Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 如何在OSX上从Unity打开Visual Studio代码(0.5.0-0.7.0)_Macos_Unity3d_Visual Studio Code - Fatal编程技术网

Macos 如何在OSX上从Unity打开Visual Studio代码(0.5.0-0.7.0)

Macos 如何在OSX上从Unity打开Visual Studio代码(0.5.0-0.7.0),macos,unity3d,visual-studio-code,Macos,Unity3d,Visual Studio Code,Visual Studio代码(0.3.0-0.7.0)默认在新窗口中打开文件,因此如果在Unity中双击项目视图中的文件或控制台中的任何日志,它将打开一个新窗口,而不是在已打开的现有窗口中打开文件 如果通过命令行arg-r,Visual Studio代码(0.5.0-0.7.0)将在现有窗口中打开一个文件,但是Unity不允许您在OSX上自定义命令行参数,这是一个仅限Windows的功能 在Visual Studio代码(0.3.0-0.7.0)中,有没有一种方法可以将文件从Unity打开到现

Visual Studio代码(0.3.0-0.7.0)默认在新窗口中打开文件,因此如果在Unity中双击项目视图中的文件或控制台中的任何日志,它将打开一个新窗口,而不是在已打开的现有窗口中打开文件

如果通过命令行arg-r,Visual Studio代码(0.5.0-0.7.0)将在现有窗口中打开一个文件,但是Unity不允许您在OSX上自定义命令行参数,这是一个仅限Windows的功能


在Visual Studio代码(0.3.0-0.7.0)中,有没有一种方法可以将文件从Unity打开到现有窗口中?

有一种方法,但这是一种痛苦。创建调用Visual Studio代码的shell脚本,并将Unity提供的文件路径传递给它:

"/Applications/Visual Studio Code.app/Contents/MacOS/Electron" -r -g $1

exit 0
然后,您需要从该shell脚本生成一个.app。我使用了一个名为的程序来制作.app。如果您使用Platypus,请确保选中“接受丢弃的项目”复选框,直到我使用此选项,它才对我起作用

创建.app后,需要将该应用设置为Unity中的外部编辑器

希望将来Unity将允许为OSX发送自定义参数,而不仅仅是Windows。如果Unity将行号和列号传递给定制的外部编辑器也很好,目前这些详细信息只传递给某些Unity认可的编辑器。我实在想不出为什么他们不能将这些信息作为附加参数传递。由于未传递该信息,这意味着您无法配置此脚本以打开可能出现错误的文件行,这是一个错误


此外,如果VisualStudio代码团队只是在“首选项”中添加一个选项,使其默认为在现有窗口中打开文件,而不是默认为新窗口,那么这个完整的答案将是不必要的。目前,他们的网站上列出了几个功能请求,这里有一个:

您好,您可以使用此插件在VSCode for Unity中获得完整的调试支持

统一的VS代码

此插件可在MacOS和Windows上运行,并提供以下功能:

•一个启用VS代码集成的选项(编辑器–>资产–>启用集成),这将更新您的解决方案文件并(更重要的是)保持它们的同步。这还会在Unity首选项中设置首选的外部工具编辑器。 *请注意,旧的“syncmonodevelop”选项现在已从V5.2版的Unity编辑器中消失 •它写出必要的(有时很难找到)VS代码配置文件,包括在编辑器中隐藏“非代码”文件的功能(隐藏.sln、.csproj和始终存在的unity.meta文件) 还有一些其他设置可以帮助加速集成。 •每次自动将VS代码直接启动到项目文件夹。你不再需要担心保持窗口打开,或者如果你在多个项目上工作,你也不用担心切换窗口


需要注意的一点是,一旦启用VSCode集成,在“外部工具”首选项中更改首选的代码编辑器将无效,因为插件将接管打开代码文件的任务。

感谢发布您的解决方案。我必须在shell脚本中改变的一件事是在$1参数周围加引号,以避免有空格的文件路径出现问题。