首页
/ LuaFormatter 使用教程

LuaFormatter 使用教程

2024-08-16 22:29:15作者:姚月梅Lane

1. 项目的目录结构及介绍

LuaFormatter 是一个用于格式化 Lua 代码的开源工具。以下是其基本的目录结构:

LuaFormatter/
├── CMakeLists.txt
├── LICENSE
├── README.md
├── bin/
├── cmake/
├── config/
├── doc/
├── include/
├── src/
├── test/
└── tools/
  • CMakeLists.txt: 用于构建项目的 CMake 配置文件。
  • LICENSE: 项目的许可证文件,采用 Apache-2.0 许可证。
  • README.md: 项目的基本介绍和使用说明。
  • bin/: 存放编译后的可执行文件。
  • cmake/: 包含 CMake 构建过程中需要的额外模块。
  • config/: 存放项目的配置文件。
  • doc/: 存放项目的文档文件。
  • include/: 存放项目的头文件。
  • src/: 存放项目的源代码文件。
  • test/: 存放项目的测试代码文件。
  • tools/: 存放项目相关的工具文件。

2. 项目的启动文件介绍

LuaFormatter 的启动文件是 bin 目录下的可执行文件。通常,编译后会在 bin 目录下生成一个名为 lua-format 的可执行文件。

使用方法如下:

./lua-format [Lua scripts] [OPTIONS]
  • Lua scripts: 需要格式化的 Lua 脚本文件。
  • OPTIONS: 可选参数,例如 -h 显示帮助信息,-v 开启详细模式等。

3. 项目的配置文件介绍

LuaFormatter 的配置文件通常位于 config 目录下,或者可以通过 --config=[file] 选项指定配置文件路径。配置文件的格式为 JSON 或 YAML。

以下是一个示例配置文件的内容:

{
  "column_limit": 80,
  "indent_width": 2,
  "use_tab": false,
  "tab_width": 2,
  "continuation_indent_width": 4,
  "spaces_before_call": 1
}
  • column_limit: 每行的最大字符数。
  • indent_width: 缩进的宽度。
  • use_tab: 是否使用制表符进行缩进。
  • tab_width: 制表符的宽度。
  • continuation_indent_width: 续行缩进的宽度。
  • spaces_before_call: 函数调用前的空格数。

通过修改配置文件,可以自定义 LuaFormatter 的格式化规则。

登录后查看全文

项目优选

收起
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
281
583
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
465
378
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
51
14
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
358
37
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
56
128
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
105
187
CangjieMagicCangjieMagic
基于仓颉编程语言构建的 LLM Agent 开发框架,其主要特点包括:Agent DSL、支持 MCP 协议,支持模块化调用,支持任务智能规划。
Cangjie
571
40
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
350
252
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
93
246
ruoyi-airuoyi-ai
RuoYi AI 是一个全栈式 AI 开发平台,旨在帮助开发者快速构建和部署个性化的 AI 应用。
Java
101
28