You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+81-2Lines changed: 81 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,8 +29,9 @@ This project is not endorsed by or affiliated with the Hyprland project/HyprWM O
29
29
- 💬 **Conditional Directives** - `# hyprlang if/endif/noerror` support with negation
30
30
- 🎨 **Expression Escaping** - Escape expressions with `\{{}}` or `{\{}}` for literal braces
31
31
- 🔄 **Mutation & Serialization** - Modify config values and save back to files (optional)
32
+
- 📁 **Multi-File Mutation Tracking** - Track and save changes to the correct source file when using `source` directives
32
33
- 🎯 **Windowrule v3 / Layerrule v2** - Full support for new special category syntax with 85+ registered properties
33
-
- ✅ **Fully Tested** - 171 tests covering all features
34
+
- ✅ **Fully Tested** - 177 tests covering all features
34
35
35
36
## Installation
36
37
@@ -69,6 +70,8 @@ hyprlang = { version = "0.2.1", features = ["mutation"] }
69
70
This feature provides:
70
71
-**Mutation API** - Modify config values, variables, handlers, and special categories
71
72
-**Serialization** - Save configurations back to files with clean formatting
73
+
-**Multi-file tracking** - Automatically track which values came from which source file
74
+
-**Smart saving** - Save changes only to the modified files when using `source` directives
72
75
-**Two mutation styles** - Direct setters and mutable references
73
76
-**Round-trip support** - Parse → modify → save → parse
74
77
@@ -720,6 +723,74 @@ Run the comprehensive example:
720
723
cargo run --example mutation_example --features mutation
721
724
```
722
725
726
+
### Multi-File Mutation (Optional Feature)
727
+
728
+
When your configuration uses `source` directives to include other files, the mutation feature automatically tracks which values came from which file and saves changes only to the modified files:
0 commit comments