mirror of
https://github.com/kovetskiy/mark.git
synced 2025-04-24 05:42:40 +08:00
Revert "change page title"
This reverts commit 623dc5219b19916f010bffdcb4efbc1fa900d5ef.
This commit is contained in:
parent
e32dc2caaf
commit
9d91b6cb7a
11
README.md
11
README.md
@ -30,16 +30,15 @@ Confluence instance and update it accordingly.
|
|||||||
|
|
||||||
File in extended format should follow specification
|
File in extended format should follow specification
|
||||||
```markdown
|
```markdown
|
||||||
[]:# (Space: <space key>)
|
[]:# (X-Space: <space key>)
|
||||||
[]:# (Parent: <parent 1>)
|
[]:# (X-Parent: <parent 1>)
|
||||||
[]:# (Parent: <parent 2>)
|
[]:# (X-Parent: <parent 2>)
|
||||||
[]:# (Title: <rename title>)
|
[]:# (X-Title: <title>)
|
||||||
[]:# (Title: <title>)
|
|
||||||
|
|
||||||
<page contents>
|
<page contents>
|
||||||
```
|
```
|
||||||
|
|
||||||
There can be any number of 'Parent' headers, if mark can't find specified
|
There can be any number of 'X-Parent' headers, if mark can't find specified
|
||||||
parent by title, it will be created.
|
parent by title, it will be created.
|
||||||
|
|
||||||
## Usage:
|
## Usage:
|
||||||
|
60
main.go
60
main.go
@ -5,7 +5,7 @@ import (
|
|||||||
"bytes"
|
"bytes"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
netURL "net/url"
|
"net/url"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"regexp"
|
"regexp"
|
||||||
@ -120,7 +120,7 @@ const (
|
|||||||
type Meta struct {
|
type Meta struct {
|
||||||
Parents []string
|
Parents []string
|
||||||
Space string
|
Space string
|
||||||
Title []string
|
Title string
|
||||||
Layout string
|
Layout string
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -240,7 +240,7 @@ func main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
url, err := netURL.Parse(targetURL)
|
url, err := url.Parse(targetURL)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal(err)
|
logger.Fatal(err)
|
||||||
}
|
}
|
||||||
@ -290,43 +290,9 @@ func main() {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var target *PageInfo
|
||||||
target *PageInfo
|
|
||||||
rename *PageInfo
|
|
||||||
)
|
|
||||||
|
|
||||||
if len(meta.Title) > 1 {
|
if meta != nil {
|
||||||
page, _ := api.findPage(meta.Space, meta.Title[0])
|
|
||||||
if page == nil {
|
|
||||||
for i := len(meta.Title) - 1; i >= 0; i-- {
|
|
||||||
page, _ := api.findPage(meta.Space, meta.Title[i])
|
|
||||||
if page != nil {
|
|
||||||
rename = page
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if rename != nil && meta.Title[0] != "" {
|
|
||||||
logger.Tracef(
|
|
||||||
"renaming page '%s' to '%s'", rename.Title,
|
|
||||||
meta.Title[0],
|
|
||||||
)
|
|
||||||
|
|
||||||
page, err := api.getPageByID(rename.ID)
|
|
||||||
if err != nil {
|
|
||||||
logger.Fatal(err)
|
|
||||||
}
|
|
||||||
page.Links.Full = strings.Replace(
|
|
||||||
page.Links.Full,
|
|
||||||
netURL.QueryEscape(page.Title),
|
|
||||||
netURL.QueryEscape(meta.Title[0]), 1,
|
|
||||||
)
|
|
||||||
page.Title = meta.Title[0]
|
|
||||||
|
|
||||||
target = page
|
|
||||||
} else if meta != nil {
|
|
||||||
page, err := resolvePage(api, meta)
|
page, err := resolvePage(api, meta)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal(err)
|
logger.Fatal(err)
|
||||||
@ -422,12 +388,12 @@ func compileMarkdown(markdown []byte) []byte {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func resolvePage(api *API, meta *Meta) (*PageInfo, error) {
|
func resolvePage(api *API, meta *Meta) (*PageInfo, error) {
|
||||||
page, err := api.findPage(meta.Space, meta.Title[0])
|
page, err := api.findPage(meta.Space, meta.Title)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, ser.Errorf(
|
return nil, ser.Errorf(
|
||||||
err,
|
err,
|
||||||
"error during finding page '%s': %s",
|
"error during finding page '%s': %s",
|
||||||
meta.Title[0],
|
meta.Title,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -454,7 +420,7 @@ func resolvePage(api *API, meta *Meta) (*PageInfo, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
path := meta.Parents
|
path := meta.Parents
|
||||||
path = append(path, meta.Title[0])
|
path = append(path, meta.Title)
|
||||||
|
|
||||||
logger.Debugf(
|
logger.Debugf(
|
||||||
"resolving page path: ??? > %s",
|
"resolving page path: ??? > %s",
|
||||||
@ -485,16 +451,16 @@ func resolvePage(api *API, meta *Meta) (*PageInfo, error) {
|
|||||||
logger.Infof(
|
logger.Infof(
|
||||||
"page will be stored under path: %s > %s",
|
"page will be stored under path: %s > %s",
|
||||||
strings.Join(titles, ` > `),
|
strings.Join(titles, ` > `),
|
||||||
meta.Title[0],
|
meta.Title,
|
||||||
)
|
)
|
||||||
|
|
||||||
if page == nil {
|
if page == nil {
|
||||||
page, err := api.createPage(meta.Space, parent, meta.Title[0], ``)
|
page, err := api.createPage(meta.Space, parent, meta.Title, ``)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, ser.Errorf(
|
return nil, ser.Errorf(
|
||||||
err,
|
err,
|
||||||
"can't create page '%s': %s",
|
"can't create page '%s': %s",
|
||||||
meta.Title[0],
|
meta.Title,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -664,7 +630,7 @@ func extractMeta(data []byte) (*Meta, error) {
|
|||||||
meta.Space = strings.ToUpper(matches[2])
|
meta.Space = strings.ToUpper(matches[2])
|
||||||
|
|
||||||
case HeaderTitle:
|
case HeaderTitle:
|
||||||
meta.Title = append(meta.Title, matches[2])
|
meta.Title = strings.TrimSpace(matches[2])
|
||||||
|
|
||||||
case HeaderLayout:
|
case HeaderLayout:
|
||||||
meta.Layout = strings.TrimSpace(matches[2])
|
meta.Layout = strings.TrimSpace(matches[2])
|
||||||
@ -691,7 +657,7 @@ func extractMeta(data []byte) (*Meta, error) {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
if meta.Title[0] == "" {
|
if meta.Title == "" {
|
||||||
return nil, fmt.Errorf(
|
return nil, fmt.Errorf(
|
||||||
"page title is not set (%s header is not set)",
|
"page title is not set (%s header is not set)",
|
||||||
HeaderTitle,
|
HeaderTitle,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user