VScode配置LuatOS开发模拟环境

0x00 任务目标

  1. 配置VScode中的Lua开发环境,包含代码提示等工具。

  2. 配置Code Runner,让其Lua代码运行在VSCode中的LuatOS模拟器中。

0x01 配置Lua开发环境

VSCode支持在不同的工作环境配置不同插件,类似于虚拟环境。我们将在VSCode中配置专属于LuatOS的开发环境。

1. 创建VSCode配置环境并切换

启动VSCode,点击设置->配置文件(默认)->创建配置文件

在弹出的对话框中,输入我们创建的配置文件名称:"LuatOS",可自定义名称,并点击确认。

此时VSCode应该自动切换了配置文件,且插件应该仅仅安装了中文插件,这个环境非常纯净。如果没有切换或者想要切换到其他环境,可以在点击设置,切换不同的配置文件。

上图可以看到,我配置了很多配置文件,当前使用了LuatOS配置。

2. 安装LuatOS扩展

参考LuatOS官网文档,安装插件"LuatOS-SOC推荐拓展包"、"LuatOS-SOC代码补全"和"Code Runner",安装完成后应该如下图所示。

3. 创建HelloWorld工程

😊 此时,开发环境已经配置成功,可以在特定的位置创建一个工程目录,并用VSCode打开,笔者创建了一个HelloWorld工程,并编写了main.lua,如下图所示:

Lua 复制代码
PROJECT = "hello_world"
VERSION = "0.0.1"

-- 代码来自于LuatOS模拟器:"https://wiki.luatos.com/_static/luatos-emulator/lua.html"
-- 此处为纯lua5.3测试场地
-- 同时,支持加载sys库,使用task框架特性
-- 如下:

-- 加载sys库
sys = require("sys")

-- 启动一个定时器
sys.timerLoopStart(function()
    log.info("Timer:", os.time())
end, 1000)

-- 新建任务,每休眠2000ms继续一次
sys.taskInit(function()
    local count = 0
    while true do
        sys.wait(2000) -- 等待2000ms
        count = count + 1
        log.info("Task", "Running: ", count, "Times")
    end
end)

-- 用户代码已结束---------------------------------------------
-- 运行lua task,只能调用一次,而且必须写在末尾
-- 结尾总是这一句
print("HelloWorld")
sys.run()
-- sys.run()之后后面不要加任何语句!!!!!

0x02 配置LuatOS模拟器

1. 下载LuatOS模拟器文件并解压

前往合宙网盘下载对应文件,并解压到特定目录,笔者将文件解压至了目录:"D:\LuatOSeMulator"

2. 测试LuatOS是否正常使用

复制上述main.lua至该目录,利用命令行运行lua文件到模拟器中。

在当前目录下运行Windows PowerShell,并运行以下代码:

bash 复制代码
.\luatos.exe .\main.lua

😊 当前模拟器运行正常。

0x03 配置Code Runner一键运行在LuatOS模拟器中

本小节将介绍利用Code Runner直接在VSCode的终端中使用LuatOS模拟器运行Lua。

1. 配置Code Runner

通过UI或者快捷键打开Code Runner的配置项,可以看到以下配置项。

【必选配置项】Code-runner: Run In Terminal ,终端中运行,必须勾选。

【可选配置项】*Code-runner: Save All Files Before Run,*运行前保存所有文档,个人可以按照自己的需要勾选。

【可选配置项】*Code-runner: Save File Before Run,*运行前保存当前文档,个人可以按照自己的需要勾选。

除了"必选配置项"外,其余配置项可以根据自身配置。通过浏览或者利用搜索框筛选,找到配置项:"Executor Map"

点击"在setting.json中编辑",打开配置文本,找到lua的配置项,填写模拟器可执行文件的路径,如下图所示,并快捷键操作Ctrl+S保存设置。

😊 此时已经完成模拟器运行的配置。

2. 测试效果

在VSCode中,打开HelloWorld的main.lua,并点击"运行"按钮,若出现以下内容,则说明已经运行成功,终止运行请输入"Ctrl C"

0x04 存在的问题

1. 未配置调试

配置完成后,利用本文方法配置后,无法调试运行在LuatOS模拟器中的程序,可能需要Print大法。

2. 中文编码异常

若输出包含中文,编码异常,当前未找到方法解决,如下图片所示。

0x05 参考文档与资源

  1. 开发环境搭建 - LuatOS 文档

  2. LuatOS 在线模拟 - lua在线测试

  3. 合宙文件云盘

  4. vscode code runner配置_vs code code runner setting-CSDN博客

0x06 后记

  • No Pains,No Gains
相关推荐
梦幻通灵7 小时前
IDEA通过Contince接入Deepseek
java·ide·intellij-idea
鸡啄米的时光机7 小时前
vscode的一些实用操作
vscode·学习
浅陌sss9 小时前
Xlua中C#引用Lua变量,导致Lua侧的GC无法回收的原因及解决方法
c#·lua
Aphelios38010 小时前
Linux 下 VIM 编辑器学习记录:从基础到进阶(上)
java·linux·编辑器·vim
灰色人生qwer11 小时前
React + TypeScript+ Vite 配置路径别名和vscode智能路径提示
vscode·react.js·typescript
workflower12 小时前
实例研究:设计一个文档编辑器(24)- 完
java·开发语言·设计模式·编辑器·软件工程·需求分析·软件需求
莲动渔舟12 小时前
赶AI大潮:在VSCode中使用DeepSeek及近百种模型的极简方法
ide·人工智能·vscode·deepseek
张胤尘13 小时前
Lua | 面试题每日一练 (1)
开发语言·后端·lua
咩咩大主教13 小时前
VSCode运行Go程序报错:Unable to process `evaluate`: debuggee is running
开发语言·ide·vscode·golang·编辑器
佛曰我不想说话13 小时前
通过VSCode直接连接使用 GPT的编程助手
ide·vscode·copilot