diff options
| author | 2022-01-02 08:38:11 +0200 | |
|---|---|---|
| committer | 2022-01-02 08:38:11 +0200 | |
| commit | d13e89cbbdda9722fc636b0666adce58501d1c9b (patch) | |
| tree | 9eeddb7ac0f286aeb710789eb2dd590418d146fa /src/Buffer.zig | |
| parent | Improved input (diff) | |
| download | es-d13e89cbbdda9722fc636b0666adce58501d1c9b.tar.gz es-d13e89cbbdda9722fc636b0666adce58501d1c9b.tar.xz es-d13e89cbbdda9722fc636b0666adce58501d1c9b.zip | |
Some changes in Syntax
Diffstat (limited to 'src/Buffer.zig')
| -rw-r--r-- | src/Buffer.zig | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/Buffer.zig b/src/Buffer.zig index 7afdb05..ce2212c 100644 --- a/src/Buffer.zig +++ b/src/Buffer.zig | |||
| @@ -529,20 +529,10 @@ pub fn selectSyntaxHighlighting(self: *Buffer) !void { | |||
| 529 | else | 529 | else |
| 530 | self.short_name; | 530 | self.short_name; |
| 531 | 531 | ||
| 532 | const ext = if (std.mem.lastIndexOfScalar(u8, name, '.')) |idx| name[idx..] else null; | 532 | self.syntax = Syntax.chooseSyntax(name); |
| 533 | for (Syntax.database) |syntax| { | 533 | if (self.syntax == null) { |
| 534 | for (syntax.filematch) |filematch| { | 534 | if (std.mem.lastIndexOfScalar(u8, name, '.')) |idx| { |
| 535 | const is_ext = filematch[0] == '.'; | 535 | self.syntax = Syntax.chooseSyntax(name[idx..]); |
| 536 | if ((is_ext and ext != null and std.mem.eql(u8, ext.?, filematch)) | ||
| 537 | or (!is_ext and std.mem.eql(u8, name, filematch))) { | ||
| 538 | self.syntax = syntax; | ||
| 539 | |||
| 540 | for (self.rows.items) |*row| { | ||
| 541 | try row.updateSyntax(self); | ||
| 542 | } | ||
| 543 | |||
| 544 | return; | ||
| 545 | } | ||
| 546 | } | 536 | } |
| 547 | } | 537 | } |
| 548 | } | 538 | } |