VSCode——愉快的写C#

写Unity项目

VSCode安装插件C#,并在Unity中选择OpenC#Project,此时C#代码智能提示功能生效,即可使用VSCode写Unity项目了。

ps:项目更新到Unity2018后,出现C#插件智能提示失效的错误, 日志信息:

Failed to load project file 'f:*******\Assembly-CSharp.csproj'.
f:\Projects*******\Assembly-CSharp.csproj
C:\Users#######.vscode\extensions\ms-vscode.csharp-1.15.2.omnisharp\1.30.1\msbuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(1126,5): Error: The reference assemblies for framework ".NETFramework,Version=v4.7.1" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend.

根据error信息,到.NETFramework4.7.1官网下载这里下载安装好,然后重新打开项目就可以了。


如果需要断点调试,安装插件Debugger for Unity

当然,为了更好的使用,还可以安装以下插件:

  • C# FixFormat:格式化C#代码。
  • C# XML Documentation:一键注释
  • Unity Snippets:提供Unity Snippets例如Awake(),Start(),OnColliderEnter()等。
  • luaide:如果unity的热更新方案采用lua,那么可以试试这款vscode插件,对于lua代码提示和lua断点调试支持的都比较好,之前工作的时候也是买过正版的。不过现在好像有其他下载量更高的vscode-lua插件了,但现在不写lua了,所以也没用过别的。

直接运行一段C#代码

有时我们只想反复运行测试一小段算法代码,这时频繁启动unity就很烦。通过CodeRunner插件,可以不用启动项目,直接运行一段C#代码。

  1. VSCode安装CodeRunner。
  2. 新建Test.cs,输入以下代码。
Console.WriteLine("Hello C#");
  1. 选择代码右键RunCode,出现乱码。
[Running] scriptcs "f:\tempCodeRunnerFile.cs"
'scriptcs' �����ڲ����ⲿ���Ҳ���ǿ����еij���
�����������

[Done] exited with code=1 in 0.018 seconds

解决方案

  • vscode的编码方案修改为UTF-8:无效。
  • 修改windows的控制台输出编码。
    有时候vscode输出乱码是由于windows系统自带的控制台编码不对导致的,修改vscode文件编码后,还需要修改windows控制台编码。

打开控制台属性:

打开控制台属性.png

修改下方的默认编码页

控制台属性.png

但是发现新版控制台是无法修改的:


新版控制台.png

所以只能通过注册表修改:
比如这个方案提到的注册表位置:

HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe

然而图样图森破,我的注册表是这样的:


我的注册表.png

这是由于我的win10版本,默认采用的控制台是powershell而不是cmd。所以可以换回cmd,也可以修改powershell的输出编码。

powershell注册表这边没有CodePage这一项不要紧,我们自己新建一个就可以了。例如这个方案PowerShell中文乱码

通过cmd的chcp命令可以查看当前cmd的编码,chcp [xxx]可以切换编码,但是只对当前窗口有效。

  1. cmd乱码解决后,重新RunCode,仍然无法运行:
    image.png

    查看CodeRunner主页:
    image.png

    所以接下来需要安装scriptcsscriptcs介绍
    通过The package manager for Windows安装scriptcs。官方的安装教程很详细,装好后可以尝试下从命令行写C#。
    cmd写C#.png

Good,安装成功,可以直接从CodeRunner运行C#了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 13,918评论 0 38
  • 大家好,欢迎来到“布道”指南的第二期。首先解释下,标题中的“布道”毫无任何宗教元素,只是来自和朋友间的玩笑,换句话...
    ljgibbs阅读 4,288评论 0 13
  • 这座城市很美 有来来往往的车 它的灯一直亮着 我打那儿路过 看见狰狞的鬼面 三环路上有个红衣姑娘 昏黄的路灯下 看...
    秭绯阅读 202评论 0 0
  • Acer4750g太老了,散热不好,笔记本通痛。决心装上水冷。加装U型回路管的方法。 一、准备 Acer 4750...
    码宝兄弟阅读 1,762评论 0 0
  • 关于android开发项目结构创建。 project :项目{-- common包:公共类 {Constant:常...
    Themores阅读 389评论 0 2