diff options
Diffstat (limited to 'src/builtins.zig')
| -rw-r--r-- | src/builtins.zig | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/builtins.zig b/src/builtins.zig index c483482a..f4e22308 100644 --- a/src/builtins.zig +++ b/src/builtins.zig @@ -312,6 +312,26 @@ pub const FontSel = struct { } }; +pub const TreeContext = struct { + pub const enabled = pardes.syntax.enabled; + pub const takes_arg = true; + + pub fn run(c: Ctx) void { + if (comptime !enabled) unreachable; + if (!panes.File.supportsContext(c.pane)) return; + const file = &c.pane.file.?; + const arg = std.mem.trim(u8, c.arg orelse "", " \t\r\n"); + const on = if (arg.len == 0) !file.tree_context else if (std.mem.eql(u8, arg, "on")) true else if (std.mem.eql(u8, arg, "off")) false else { + c.p.reportError(c.id, "TreeContext", error.ExpectedOnOrOff); + return; + }; + file.tree_context = on; + file.syntax_dirty = true; + c.pane.wrap_n = 0; + c.pane.context_rows = 0; + } +}; + pub const PdfFit = struct { pub const enabled = pardes.pdf_enabled; pub fn run(c: Ctx) void { |
