macOS中xcode一直饱受诟病,占用的性能高,不支持个性化插件,没有AI功能,开发效率低下。
本文帮助你通过配置让Vscode也实现高效的SwiftUI开发,同时支持编译和模拟器,不过目前单页面的preview暂不支持。cursor中的配置也是类似
插件安装
Vscode中需要安装Swift,codeLLDB,SweetPad插件,用于Swift语言的支持,debug,格式化等
sourcekit-lsp配置
在安装了插件之后,随便打开一个Swift的文件,就会发现有Cannot find 'type' in scope SourceKit之类的报错,无法找到你定义的内容,对应这个问题需要安装Xcode-Build-Server配置一下
https://github.com/SolaWing/xcode-build-serverhttps://github.com/SolaWing/xcode-build-server可以通过brew直接安装这个工具
brew install xcode-build-server
然后进入项目的目录配置一下sourcekit-lsp
# *.xcworkspace or *.xcodeproj should be unique. can be omit and will auto choose the unique workspace or project.
xcode-build-server config -workspace *.xcworkspace -scheme <XXX>
xcode-build-server config -project *.xcodeproj -scheme <XXX>
比如我的项目叫Vacation
热加载配置
这里使用Inject做热加载配置
https://github.com/krzysztofzablocki/Injecthttps://github.com/krzysztofzablocki/Inject这里通过url先给xcode导入包,然后再把包添加为项目的依赖
接着给项目添加链接参数,在Build-Setting中,通过ALL,找到Linking,再定位到Other Linker Flags,加入两个参数
-Xlinker -interposable
接着前往release的下载最新的injection app,并添加到应用中
https://github.com/johnno1962/InjectionIII/releaseshttps://github.com/johnno1962/InjectionIII/releases接着启动inject app,然后open project,接着运行prepare project即可,程序会在询问你是否需要继续操作后,给所有View 添加相关的代码
最终效果