mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-23 18:10:12 +01:00
Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
9a64c860ce
2 changed files with 36 additions and 3 deletions
|
|
@ -121,8 +121,30 @@ const getExportPath = (option: { type: string, id: string }, pdfOption?: PrintTo
|
||||||
lockFile(response.data);
|
lockFile(response.data);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let exportType = "HTML (SiYuan)"
|
||||||
|
let extension = "html"
|
||||||
|
switch (option.type) {
|
||||||
|
case "htmlmd":
|
||||||
|
exportType = "HTML (Markdown)";
|
||||||
|
break;
|
||||||
|
case "word":
|
||||||
|
exportType = "Word .docx";
|
||||||
|
extension = "docx";
|
||||||
|
break;
|
||||||
|
case "pdf":
|
||||||
|
exportType = "PDF";
|
||||||
|
extension = "pdf";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
dialog.showSaveDialog({
|
dialog.showSaveDialog({
|
||||||
defaultPath: response.data.rootTitle,
|
title: window.siyuan.languages.export + " " + exportType,
|
||||||
|
defaultPath: response.data.rootTitle + "." + extension,
|
||||||
|
filters: [{
|
||||||
|
name: exportType,
|
||||||
|
extensions: [extension]
|
||||||
|
}],
|
||||||
properties: ["showOverwriteConfirmation"],
|
properties: ["showOverwriteConfirmation"],
|
||||||
}).then((result: SaveDialogReturnValue) => {
|
}).then((result: SaveDialogReturnValue) => {
|
||||||
if (!result.canceled) {
|
if (!result.canceled) {
|
||||||
|
|
|
||||||
|
|
@ -180,13 +180,17 @@ func ExportDocx(id, savePath string) (err error) {
|
||||||
return errors.New(msg)
|
return errors.New(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err = gulu.File.Copy(tmpDocxPath, filepath.Join(savePath, name+".docx")); nil != err {
|
if 1 < strings.Count(savePath, filepath.Base(savePath)) {
|
||||||
|
savePath = filepath.Dir(savePath)
|
||||||
|
}
|
||||||
|
|
||||||
|
if err = gulu.File.Copy(tmpDocxPath, savePath); nil != err {
|
||||||
logging.LogErrorf("export docx failed: %s", err)
|
logging.LogErrorf("export docx failed: %s", err)
|
||||||
return errors.New(fmt.Sprintf(Conf.Language(14), err))
|
return errors.New(fmt.Sprintf(Conf.Language(14), err))
|
||||||
}
|
}
|
||||||
tmpAssets := filepath.Join(tmpDir, "assets")
|
tmpAssets := filepath.Join(tmpDir, "assets")
|
||||||
if gulu.File.IsDir(tmpAssets) {
|
if gulu.File.IsDir(tmpAssets) {
|
||||||
if err = gulu.File.Copy(tmpAssets, filepath.Join(savePath, "assets")); nil != err {
|
if err = gulu.File.Copy(tmpAssets, filepath.Join(filepath.Dir(savePath), "assets")); nil != err {
|
||||||
logging.LogErrorf("export docx failed: %s", err)
|
logging.LogErrorf("export docx failed: %s", err)
|
||||||
return errors.New(fmt.Sprintf(Conf.Language(14), err))
|
return errors.New(fmt.Sprintf(Conf.Language(14), err))
|
||||||
}
|
}
|
||||||
|
|
@ -199,6 +203,9 @@ func ExportMarkdownHTML(id, savePath string, docx bool) (name, dom string) {
|
||||||
|
|
||||||
tree = exportTree(tree, true)
|
tree = exportTree(tree, true)
|
||||||
name = path.Base(tree.HPath)
|
name = path.Base(tree.HPath)
|
||||||
|
if 1 < strings.Count(savePath, filepath.Base(savePath)) {
|
||||||
|
savePath = filepath.Dir(savePath)
|
||||||
|
}
|
||||||
|
|
||||||
if err := os.MkdirAll(savePath, 0755); nil != err {
|
if err := os.MkdirAll(savePath, 0755); nil != err {
|
||||||
logging.LogErrorf("mkdir [%s] failed: %s", savePath, err)
|
logging.LogErrorf("mkdir [%s] failed: %s", savePath, err)
|
||||||
|
|
@ -283,6 +290,10 @@ func ExportHTML(id, savePath string, pdf bool) (name, dom string) {
|
||||||
tree = exportTree(tree, true)
|
tree = exportTree(tree, true)
|
||||||
name = path.Base(tree.Path)
|
name = path.Base(tree.Path)
|
||||||
|
|
||||||
|
if 1 < strings.Count(savePath, filepath.Base(savePath)) {
|
||||||
|
savePath = filepath.Dir(savePath)
|
||||||
|
}
|
||||||
|
|
||||||
if err := os.MkdirAll(savePath, 0755); nil != err {
|
if err := os.MkdirAll(savePath, 0755); nil != err {
|
||||||
logging.LogErrorf("mkdir [%s] failed: %s", savePath, err)
|
logging.LogErrorf("mkdir [%s] failed: %s", savePath, err)
|
||||||
return
|
return
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue