add new format headers

This commit is contained in:
Stanislav Seletskiy 2019-05-01 16:58:28 +03:00
parent 94f925d796
commit 45e96ed864
No known key found for this signature in database
GPG Key ID: E6B40F71C367E6B5
2 changed files with 20 additions and 7 deletions

View File

@ -22,10 +22,10 @@ Confluence instance and update it accordingly.
File in extended format should follow specification
```markdown
[]:# (X-Space: <space key>)
[]:# (X-Parent: <parent 1>)
[]:# (X-Parent: <parent 2>)
[]:# (X-Title: <title>)
<!-- Space: <space key> -->
<!-- Parent: <parent 1> -->
<!-- Parent: <parent 2> -->
<!-- Title: <title> -->
<page contents>
```

View File

@ -43,7 +43,10 @@ type Meta struct {
}
func ExtractMeta(data []byte) (*Meta, error) {
headerPattern := regexp.MustCompile(`\[\]:\s*#\s*\(([^:]+):\s*(.*)\)`)
var (
headerPatternV1 = regexp.MustCompile(`\[\]:\s*#\s*\(([^:]+):\s*(.*)\)`)
headerPatternV2 = regexp.MustCompile(`<!--\s*([^:]+):\s*(.*)\s*-->`)
)
var meta *Meta
@ -55,9 +58,19 @@ func ExtractMeta(data []byte) (*Meta, error) {
return nil, err
}
matches := headerPattern.FindStringSubmatch(line)
matches := headerPatternV2.FindStringSubmatch(line)
if matches == nil {
break
matches = headerPatternV1.FindStringSubmatch(line)
if matches == nil {
break
}
log.Warningf(
fmt.Errorf(`legacy header usage found: %s`, line),
"please use new header format: <!-- %s: %s -->",
matches[1],
matches[2],
)
}
if meta == nil {