Skip to content

Commit ff5b369

Browse files
committed
update readme
1 parent 44ef751 commit ff5b369

File tree

1 file changed

+148
-5
lines changed

1 file changed

+148
-5
lines changed

README.md

Lines changed: 148 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,148 @@
1-
# EmmyLuaDebugger
2-
OS | CI status
3-
---------- | ----------
4-
MAC & Linux|[![Build Status](https://travis-ci.org/EmmyLua/EmmyLuaDebugger.svg?branch=master)](https://travis-ci.org/EmmyLua/EmmyLuaDebugger)
5-
Windows|[![Build status](https://ci.appveyor.com/api/projects/status/dp7yb09v07lq80t7?svg=true)](https://ci.appveyor.com/project/EmmyLua/emmyluadebugger)
1+
<div align="center">
2+
3+
# 🚀 EmmyLua Debugger
4+
5+
[![Build Status](https://img.shields.io/badge/build-passing-brightgreen?style=flat-square)](https://github.com/EmmyLua/EmmyLuaDebugger)
6+
[![Lua Version](https://img.shields.io/badge/lua-5.1%20%7C%205.2%20%7C%205.3%20%7C%205.4%20%7C%20LuaJIT-orange?style=flat-square)](#lua-support)
7+
8+
**High-performance cross-platform Lua debugger with full debugging features including breakpoints, variable watch, stack trace, and more.**
9+
10+
</div>
11+
12+
---
13+
14+
## ✨ Features
15+
16+
- 🎯 **Full Debugging Features** - Breakpoints, step execution, variable watch, stack trace
17+
- 🌍 **Cross-Platform Support** - Windows, macOS, Linux
18+
-**High Performance** - Efficient debugging communication based on TCP protocol
19+
- 🔧 **Easy Integration** - Supports multiple Lua versions and game engine integration
20+
21+
## 🎮 Supported Platforms
22+
23+
| Platform | Status | Notes |
24+
|---------------|--------|------------------------|
25+
| Windows x64 || Fully supported |
26+
| macOS || Intel & Apple Silicon |
27+
| Linux || any |
28+
29+
## 🔧 Lua Support
30+
31+
| Lua Version | Status | Notes |
32+
|-------------|--------|-----------------|
33+
| Lua 5.1 || Fully supported |
34+
| Lua 5.2 || Fully supported |
35+
| Lua 5.3 || Fully supported |
36+
| Lua 5.4 || Fully supported |
37+
| LuaJIT || Fully supported |
38+
39+
## 🚀 Quick Start
40+
41+
### 1. Clone the Repository
42+
43+
```bash
44+
git clone https://github.com/EmmyLua/EmmyLuaDebugger.git
45+
cd EmmyLuaDebugger
46+
```
47+
48+
### 2. Build the Project
49+
50+
#### Windows (Visual Studio)
51+
```bash
52+
mkdir build
53+
cd build
54+
cmake .. -DEMMY_LUA_VERSION=54
55+
cmake --build . --config Release
56+
```
57+
58+
#### macOS/Linux
59+
```bash
60+
mkdir build
61+
cd build
62+
cmake .. -DEMMY_LUA_VERSION=54 -DCMAKE_BUILD_TYPE=Release
63+
cmake --build . --config Release
64+
```
65+
66+
### 3. Basic Usage
67+
68+
#### Integrate the debugger in your Lua code:
69+
70+
```lua
71+
-- Load the debugger module
72+
local dbg = require('emmy_core')
73+
74+
-- Start the TCP debug server
75+
dbg.tcpListen('localhost', 9966)
76+
77+
-- Wait for IDE connection
78+
dbg.waitIDE()
79+
80+
-- Set a strong breakpoint here
81+
dbg.breakHere()
82+
83+
-- Your Lua code
84+
print("Hello, EmmyLua Debugger!")
85+
```
86+
87+
#### Connect the debugger in your IDE:
88+
89+
1. Open an IDE that supports EmmyLua (e.g., IntelliJ IDEA + EmmyLua plugin)
90+
2. Configure the debug connection: `TCP Connect` mode, address `localhost:9966`
91+
3. Click to start debugging
92+
4. Set breakpoints in your code and enjoy debugging!
93+
94+
## 📚 Documentation
95+
96+
## 🛠️ Build Options
97+
98+
| Option | Default | Description |
99+
|-----------------------|---------|------------------------------------|
100+
| `EMMY_LUA_VERSION` | `54` | Lua version (51/52/53/54/jit) |
101+
| `EMMY_USE_LUA_SOURCE` | `OFF` | Whether to build with Lua source |
102+
103+
### Advanced Build Examples
104+
105+
```bash
106+
# Build for a specific version
107+
cmake .. -DEMMY_LUA_VERSION=53
108+
# Build using Lua source
109+
cmake .. -DEMMY_USE_LUA_SOURCE=ON
110+
```
111+
112+
### Development Environment Setup
113+
114+
1. Install required build tools:
115+
- Windows: Visual Studio 2019+
116+
- macOS: Xcode + Command Line Tools
117+
- Linux: GCC 7+ or Clang 6+
118+
119+
2. Install CMake 3.11+
120+
121+
3. Clone and build the project:
122+
```bash
123+
git clone --recursive https://github.com/EmmyLua/EmmyLuaDebugger.git
124+
cd EmmyLuaDebugger
125+
mkdir build && cd build
126+
cmake ..
127+
cmake --build .
128+
```
129+
130+
## 🙏 Acknowledgements
131+
132+
- [libuv](https://github.com/libuv/libuv) - Cross-platform asynchronous I/O library
133+
- [nlohmann/json](https://github.com/nlohmann/json) - Modern C++ JSON library
134+
- [Lua](https://www.lua.org/) - Powerful embedded scripting language
135+
136+
## 📞 Support & Contact
137+
138+
- 🐛 [Report Issues](https://github.com/EmmyLua/EmmyLuaDebugger/issues)
139+
- 💬 [Discussion](https://github.com/EmmyLua/EmmyLuaDebugger/discussions)
140+
---
141+
142+
<div align="center">
143+
144+
**⭐ If you find this project helpful, please give us a Star!**
145+
146+
Made with ❤️ by [EmmyLua Team](https://github.com/EmmyLua)
147+
148+
</div>

0 commit comments

Comments
 (0)