mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-01-02 14:58:49 +01:00
⚡ Support for saving .sy files in the single-line format https://github.com/siyuan-note/siyuan/issues/8712
This commit is contained in:
parent
eb65bb4ec0
commit
9eeee3965a
13 changed files with 55 additions and 22 deletions
|
|
@ -165,13 +165,14 @@ func prepareWriteTree(tree *parse.Tree) (data []byte, filePath string, err error
|
|||
renderer := render.NewJSONRenderer(tree, luteEngine.RenderOptions)
|
||||
data = renderer.Render()
|
||||
|
||||
// .sy 文档数据使用格式化好的 JSON 而非单行 JSON
|
||||
buf := bytes.Buffer{}
|
||||
buf.Grow(4096)
|
||||
if err = json.Indent(&buf, data, "", "\t"); nil != err {
|
||||
return
|
||||
if !util.UseSingleLineSave {
|
||||
buf := bytes.Buffer{}
|
||||
buf.Grow(1024 * 1024 * 2)
|
||||
if err = json.Indent(&buf, data, "", "\t"); nil != err {
|
||||
return
|
||||
}
|
||||
data = buf.Bytes()
|
||||
}
|
||||
data = buf.Bytes()
|
||||
|
||||
if err = os.MkdirAll(filepath.Dir(filePath), 0755); nil != err {
|
||||
return
|
||||
|
|
@ -205,19 +206,21 @@ func parseJSON2Tree(boxID, p string, jsonData []byte, luteEngine *lute.Lute) (re
|
|||
}
|
||||
if needFix {
|
||||
renderer := render.NewJSONRenderer(ret, luteEngine.RenderOptions)
|
||||
output := renderer.Render()
|
||||
data := renderer.Render()
|
||||
|
||||
buf := bytes.Buffer{}
|
||||
buf.Grow(4096)
|
||||
if err = json.Indent(&buf, output, "", "\t"); nil != err {
|
||||
return
|
||||
if !util.UseSingleLineSave {
|
||||
buf := bytes.Buffer{}
|
||||
buf.Grow(1024 * 1024 * 2)
|
||||
if err = json.Indent(&buf, data, "", "\t"); nil != err {
|
||||
return
|
||||
}
|
||||
data = buf.Bytes()
|
||||
}
|
||||
output = buf.Bytes()
|
||||
|
||||
if err = os.MkdirAll(filepath.Dir(filePath), 0755); nil != err {
|
||||
return
|
||||
}
|
||||
if err = filelock.WriteFile(filePath, output); nil != err {
|
||||
if err = filelock.WriteFile(filePath, data); nil != err {
|
||||
msg := fmt.Sprintf("write data [%s] failed: %s", filePath, err)
|
||||
logging.LogErrorf(msg)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue