当前位置: 首页 > article >正文

用Sublime编写Lua脚本

  大家好,我是阿赵。
  现在很多手游项目使用lua作为热更新的代码脚本,我一直很喜欢用Sublime来写lua程序。喜欢使用它的原因是它的轻量化,因为我经常要同时打开多个项目,Unity和VisualStudio这些软件都比较占用电脑的性能,很多时候会莫名的卡死机。而Sublime打开后占用系统资源不多,打开速度比较快,而功能也比较够用。
  使用的版本,建议是Sublime3的最新版,会多了跳转功能和页签滚动。
  这里简单的介绍一下用法:

一、文件夹打开

  通过OpenFolder菜单,可以打开一个文件夹。一般来说,就和VS打开一个项目有点类似,可以在项目内进行类的查找、方法查找、跳转、查看引用等操作。
在这里插入图片描述

  不过由于打开的文件里面可能会有一些我们不需要的文件,比如Unity引擎自动生成的meta文件,这时候可以设置过滤掉它。
  在菜单找到Settings,然后打开
在这里插入图片描述

  会看到左边是默认的设置,然后可以在右边添加我们自己的设置。
在这里插入图片描述

  在左边搜索file_exclude_patterns,会发现原来也有一些过滤的扩展名设置
在这里插入图片描述

  把他们复制到右边,然后在后面加上”*.meta”
在这里插入图片描述

{
	"file_exclude_patterns": ["*.pyc", "*.pyo", "*.exe", "*.dll", "*.obj","*.o", "*.a", "*.lib", "*.so", "*.dylib", "*.ncb", "*.sdf", "*.suo", "*.pdb", "*.idb", ".DS_Store", ".directory", "desktop.ini", "*.class", "*.psd", "*.db", "*.sublime-workspace","*.meta"],
}

  这样搜索的时候,就不会再匹配到meta文件了。

二、查找和跳转功能

1、查找

  查找功能的用法很简单,如果想在当前的文件里面查找,快捷键就是Ctrl+F。
  如果要在打开的整个文件夹里面查找,快捷键是Ctrl+Shift+F。

2、跳转

  Sublime有很多跳转功能,在Goto菜单栏可以查看得到。
在这里插入图片描述

  比较常用的是Ctrl+P,可以搜索文件夹里面的文件名
在这里插入图片描述

  还有Ctrl+R,可以搜索一个代码里面的方法名
在这里插入图片描述

  或者Ctrl+Shift+R,可以搜索整个文件夹里面所有代码里面的方法名
在这里插入图片描述

  自Sublime3某个版本开始,支持了代码的跳转,类似于VS那样,在调用方法的地方按F12可以跳转到该方法。还可以把鼠标悬停在方法上,看哪里调用了这个方法。这个功能Sublime2是没有的,如果你在用Sublime也没有发现这个功能,可以用Sublime自带的更新功能,把版本更新到最新就行。
  如果想按着Ctrl键然后鼠标点击方法名来跳转,可以这样做:
  在Preferences菜单下找到Browse Packages:
在这里插入图片描述

  在打开的目录里面,找到Default.sublime-mousemap文件,如果没有这个文件,就自己新建一个txt文件,然后改成这个名字。
在这里插入图片描述

  在这个文件里面输入以下内容:

Default.sublime-mousemap
[
  {
    "button": "button2",
    "count": 1,
    "modifiers": ["ctrl"],
    "command": "jump_back"
  },
  {
    "button": "button3",
    "count": 1,
    "modifiers": ["ctrl"],
    "command": "jump_forward"
  },
  {
    "button": "button1",
    "count": 1,
    "modifiers": ["ctrl"],
    "press_command": "drag_select",
    "command": "goto_definition"
  }
]

  这里的button1是鼠标左键,button2是鼠标右键,button是鼠标中键。
  我这里实现的功能是,按着ctrl键再按鼠标左键,就执行了goto_definition操作,也就是相当于F12。然后加多一个press_command用于drag_select操作,也就是拖动选择文字。如果不加这个,按着ctrl的时候就不能框选文字了。
  然后按着ctrl键再按鼠标右键,是执行了jump_back操作,意思是跳到上一个操作的位置。
  按着ctrl键再按鼠标中键,是执行了jump_forward操作,意思是跳到下一个操作的位置。
  这样设置了之后,就可以通过鼠标来执行跳转,不需要按F12跳方法,也不需要用默认的Alt+减号键来跳转上一个操作了。

三、Lua预编译

  用Sublime来写lua,可以通过预编译功能来检查语法错误:
  比如我这个代码里面写少了一个end,就会提示某个类的哪一行,因为什么原因而报错

在这里插入图片描述

  想使用这个功能,电脑上面先装一个Lua环境,我这里装了一个不是最新的版本:
在这里插入图片描述
  装好之后,在cmd命令行控制台输入lua,应该可以看到lua版本
在这里插入图片描述
  如果不行,就设置一下环境变量path,加入lua的安装路径。
  然后回到Sublime,在Tools/BulidSystem里面找到Lua:
在这里插入图片描述

  再到想检查的lua文件,按Ctrl+B,就能预编译了。
  如果在BuildSystem里面没有找到Lua,也可以自己新建一个:选择New Build System
在这里插入图片描述

  然后在新建的文件里面输入

{
"cmd": ["lua", "$file"], 
"file_regex": "^(?:lua:)?[\t ](...*?):([0-9]*):?([0-9]*)",  
"selector": "source.lua"  
}

  最后保存成MyLua.sublime-build
在这里插入图片描述

  这时候就可以看到刚才新建的MyLua可以选择了
在这里插入图片描述

  再次尝试Ctrl+B,如果有错误,就会得到提示,如果没有错误,就能看到Finished时间

在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/a/149311.html

相关文章:

  • opencv常用api
  • JavaWeb后端开发知识储备1
  • react 中 useContext Hook 作用
  • Spring Boot实现文件上传与OSS集成:从基础到应用
  • 排序算法 - 冒泡
  • Redis - 集群(Cluster)
  • 内存标记扩展(MTE):通过架构增强内存安全性
  • easyExcel自定义导出,指定列,设置请求头背景色,加入合计行,设置合计行字体,背景色等等
  • 办公软件定制开发在企业发展中的优势|app小程序搭建
  • ArkTS开发webview,html页面中的input和按钮等操作均无响应 【Bug已解决-鸿蒙开发】
  • 如何在安卓Termux中使用SFTP文件传输并结合内网穿透工具实现远程传输
  • elementui的table合并列,三个一组
  • office tool plus工具破解word、visio等软件步骤
  • C++基础 -10- 类的构造函数
  • Docker—共享应用程序
  • 20世纪30年代的大危机
  • c++环形队列
  • Linux grep命令
  • JavaWeb后端数据库MySQL的使用
  • 平凯星辰携手教育部教育管理信息中心,助力普惠教育数字化
  • Python与设计模式--桥梁模式
  • 互联网程序设计HTML+CSS+JS
  • Debian10安装VMware Tools
  • torch::和at:: factory function的差別
  • 【问题系列】消费者与MQ连接断开问题解决方案(一)
  • Go使用logrus框架