Files
rope/README.md
T
yves-biener ae666cb436
Zig Project Action / Lint, Spell-check and test zig project (push) Has been cancelled
initial commit
based on sources of https://github.com/noahbald/noe which are MIT-licensed
2026-06-06 20:48:35 +02:00

27 lines
893 B
Markdown

# Rope
Implementation of a [rope datastructure](https://en.wikipedia.org/wiki/Rope_(data_structure)) in zig.
Based on the MIT-Licensed implementation of noahbald: https://github.com/noahbald/noe
Please check out his excelent [write up](https://www.noahwbaldwin.me/blogs/writing-an-editor) about the implementation of an editor in zig.
Another great resource for ropes has been created by [Zed](https://zed.dev/blog/zed-decoded-rope-sumtree), it is worth reading to further understand the implementation details of this implementation.
## Usage
To add or update `rope` as a dependency in your project run the following command:
```sh
zig fetch --save git+https://gitea.yves-biener.de/yves-biener/rope
```
Add the dependency to your module as follows in your *build.zig*:
```zig
const zterm: *Dependency = b.dependency("rope", .{
.target = target,
.optimize = optimize,
});
```