mirror of
https://github.com/zyedidia/micro.git
synced 2026-02-06 15:10:27 +09:00
syntax: Provide default.yaml as fallback definition
This commit is contained in:
@@ -907,6 +907,30 @@ func (b *Buffer) UpdateRules() {
|
||||
if b.Highlighter == nil || syntaxFile != "" {
|
||||
if b.SyntaxDef != nil {
|
||||
b.Settings["filetype"] = b.SyntaxDef.FileType
|
||||
} else {
|
||||
for _, f := range config.ListRuntimeFiles(config.RTSyntax) {
|
||||
if f.Name() == "default" {
|
||||
data, err := f.Data()
|
||||
if err != nil {
|
||||
screen.TermMessage("Error loading syntax file " + f.Name() + ": " + err.Error())
|
||||
continue
|
||||
}
|
||||
|
||||
file, err := highlight.ParseFile(data)
|
||||
if err != nil {
|
||||
screen.TermMessage("Error parsing syntax file " + f.Name() + ": " + err.Error())
|
||||
continue
|
||||
}
|
||||
|
||||
syndef, err := highlight.ParseDef(file, header)
|
||||
if err != nil {
|
||||
screen.TermMessage("Error parsing syntax file " + f.Name() + ": " + err.Error())
|
||||
continue
|
||||
}
|
||||
b.SyntaxDef = syndef
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
16
runtime/syntax/default.yaml
Normal file
16
runtime/syntax/default.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
filetype: unknown
|
||||
|
||||
detect:
|
||||
filename: ""
|
||||
|
||||
rules:
|
||||
# Mails
|
||||
- special: "[[:alnum:].%_+-]+@[[:alnum:].-]+\\.[[:alpha:]]{2,}"
|
||||
# URLs
|
||||
- identifier: "(https?|ftp|ssh)://\\S+\\.\\S+[^])>\\s,.]"
|
||||
|
||||
- comment:
|
||||
start: "(^|\\s)#"
|
||||
end: "$"
|
||||
rules:
|
||||
- todo: "(TODO|XXX|FIXME):?"
|
||||
Reference in New Issue
Block a user