diff --git a/internal/buffer/buffer.go b/internal/buffer/buffer.go index 6365cec022..dc4d037f1c 100644 --- a/internal/buffer/buffer.go +++ b/internal/buffer/buffer.go @@ -699,6 +699,7 @@ func (b *Buffer) UpdateRules() { header, err = highlight.MakeHeaderYaml(data) if err != nil { screen.TermMessage("Error parsing header for syntax file " + f.Name() + ": " + err.Error()) + continue } file, err := highlight.ParseFile(data) if err != nil { diff --git a/pkg/highlight/parser.go b/pkg/highlight/parser.go index b41c83c5fc..f46d8259d6 100644 --- a/pkg/highlight/parser.go +++ b/pkg/highlight/parser.go @@ -109,7 +109,7 @@ func MakeHeader(data []byte) (*Header, error) { if fnameRgx != "" { header.FtDetect[0], err = regexp.Compile(fnameRgx) } - if headerRgx != "" { + if err == nil && headerRgx != "" { header.FtDetect[1], err = regexp.Compile(headerRgx) } @@ -135,7 +135,7 @@ func MakeHeaderYaml(data []byte) (*Header, error) { if hdrYaml.Detect.FNameRgx != "" { header.FtDetect[0], err = regexp.Compile(hdrYaml.Detect.FNameRgx) } - if hdrYaml.Detect.HeaderRgx != "" { + if err == nil && hdrYaml.Detect.HeaderRgx != "" { header.FtDetect[1], err = regexp.Compile(hdrYaml.Detect.HeaderRgx) }