mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-17 07:00:12 +01:00
This commit is contained in:
parent
33ea08dcd0
commit
3727bd7254
1 changed files with 7 additions and 6 deletions
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"github.com/88250/gulu"
|
"github.com/88250/gulu"
|
||||||
"github.com/88250/lute/ast"
|
"github.com/88250/lute/ast"
|
||||||
"github.com/88250/lute/parse"
|
"github.com/88250/lute/parse"
|
||||||
"github.com/88250/protyle"
|
|
||||||
"github.com/gabriel-vasile/mimetype"
|
"github.com/gabriel-vasile/mimetype"
|
||||||
"github.com/siyuan-note/filelock"
|
"github.com/siyuan-note/filelock"
|
||||||
"github.com/siyuan-note/httpclient"
|
"github.com/siyuan-note/httpclient"
|
||||||
|
|
@ -462,13 +461,14 @@ func RenameAsset(oldPath, newName string) (err error) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
newPath := "assets/" + util.AssetName(newName) + filepath.Ext(oldPath)
|
newName = util.AssetName(newName) + filepath.Ext(oldPath)
|
||||||
|
newPath := "assets/" + newName
|
||||||
if err = gulu.File.Copy(filepath.Join(util.DataDir, oldPath), filepath.Join(util.DataDir, newPath)); nil != err {
|
if err = gulu.File.Copy(filepath.Join(util.DataDir, oldPath), filepath.Join(util.DataDir, newPath)); nil != err {
|
||||||
util.LogErrorf("copy asset [%s] failed: %s", oldPath, err)
|
util.LogErrorf("copy asset [%s] failed: %s", oldPath, err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
oldName := path.Base(oldPath)
|
||||||
|
|
||||||
luteEngine := NewLute()
|
|
||||||
notebooks, err := ListNotebooks()
|
notebooks, err := ListNotebooks()
|
||||||
if nil != err {
|
if nil != err {
|
||||||
return
|
return
|
||||||
|
|
@ -484,18 +484,19 @@ func RenameAsset(oldPath, newName string) (err error) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if !bytes.Contains(data, []byte(oldPath)) {
|
if !bytes.Contains(data, []byte(oldName)) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
data = bytes.Replace(data, []byte(oldPath), []byte(newPath), -1)
|
data = bytes.Replace(data, []byte(oldName), []byte(newName), -1)
|
||||||
if writeErr := filelock.NoLockFileWrite(treeAbsPath, data); nil != writeErr {
|
if writeErr := filelock.NoLockFileWrite(treeAbsPath, data); nil != writeErr {
|
||||||
util.LogErrorf("write data [path=%s] failed: %s", treeAbsPath, writeErr)
|
util.LogErrorf("write data [path=%s] failed: %s", treeAbsPath, writeErr)
|
||||||
err = writeErr
|
err = writeErr
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
tree, parseErr := protyle.ParseJSONWithoutFix(luteEngine, data)
|
p := filepath.ToSlash(strings.TrimPrefix(treeAbsPath, filepath.Join(util.DataDir, notebook.ID)))
|
||||||
|
tree, parseErr := LoadTree(notebook.ID, p)
|
||||||
if nil != parseErr {
|
if nil != parseErr {
|
||||||
util.LogErrorf("parse json to tree [%s] failed: %s", treeAbsPath, parseErr)
|
util.LogErrorf("parse json to tree [%s] failed: %s", treeAbsPath, parseErr)
|
||||||
err = parseErr
|
err = parseErr
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue