mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-22 01:20:12 +01:00
This commit is contained in:
parent
b038135338
commit
5a206a770f
2 changed files with 35 additions and 21 deletions
|
|
@ -5,7 +5,7 @@ import {newFile} from "../util/newFile";
|
||||||
import {getDockByType} from "../layout/util";
|
import {getDockByType} from "../layout/util";
|
||||||
import {confirmDialog} from "../dialog/confirmDialog";
|
import {confirmDialog} from "../dialog/confirmDialog";
|
||||||
import {getSearch, isMobile} from "../util/functions";
|
import {getSearch, isMobile} from "../util/functions";
|
||||||
import {isLocalPath, movePathTo} from "../util/pathName";
|
import {isLocalPath, movePathTo, pathPosix} from "../util/pathName";
|
||||||
import {MenuItem} from "./Menu";
|
import {MenuItem} from "./Menu";
|
||||||
import {hasClosestByClassName} from "../protyle/util/hasClosest";
|
import {hasClosestByClassName} from "../protyle/util/hasClosest";
|
||||||
import {saveExport} from "../protyle/export";
|
import {saveExport} from "../protyle/export";
|
||||||
|
|
@ -711,6 +711,10 @@ export const exportMd = (id: string) => {
|
||||||
export const openMenu = (src: string, onlyMenu = false) => {
|
export const openMenu = (src: string, onlyMenu = false) => {
|
||||||
const submenu = [];
|
const submenu = [];
|
||||||
if (isLocalPath(src)) {
|
if (isLocalPath(src)) {
|
||||||
|
if (Constants.SIYUAN_ASSETS_EXTS.includes(pathPosix().extname(src)) &&
|
||||||
|
(!src.endsWith(".pdf") ||
|
||||||
|
(src.endsWith(".pdf") && !src.startsWith("file://")))
|
||||||
|
) {
|
||||||
submenu.push({
|
submenu.push({
|
||||||
label: window.siyuan.languages.insertRight,
|
label: window.siyuan.languages.insertRight,
|
||||||
accelerator: "Click",
|
accelerator: "Click",
|
||||||
|
|
@ -726,6 +730,19 @@ export const openMenu = (src: string, onlyMenu = false) => {
|
||||||
openBy(src, "app");
|
openBy(src, "app");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
/// #endif
|
||||||
|
} else {
|
||||||
|
/// #if !BROWSER
|
||||||
|
submenu.push({
|
||||||
|
label: window.siyuan.languages.useDefault,
|
||||||
|
accelerator: "Click",
|
||||||
|
click() {
|
||||||
|
openBy(src, "app");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
/// #endif
|
||||||
|
}
|
||||||
|
/// #if !BROWSER
|
||||||
submenu.push({
|
submenu.push({
|
||||||
label: window.siyuan.languages.showInFolder,
|
label: window.siyuan.languages.showInFolder,
|
||||||
accelerator: "⌘Click",
|
accelerator: "⌘Click",
|
||||||
|
|
@ -736,7 +753,7 @@ export const openMenu = (src: string, onlyMenu = false) => {
|
||||||
/// #endif
|
/// #endif
|
||||||
} else {
|
} else {
|
||||||
submenu.push({
|
submenu.push({
|
||||||
label: window.siyuan.languages.useBrowserView,
|
label: window.siyuan.languages.useDefault,
|
||||||
accelerator: "Click",
|
accelerator: "Click",
|
||||||
click: () => {
|
click: () => {
|
||||||
/// #if !BROWSER
|
/// #if !BROWSER
|
||||||
|
|
|
||||||
|
|
@ -302,8 +302,7 @@ export const contentMenu = (protyle: IProtyle, nodeElement: Element) => {
|
||||||
try {
|
try {
|
||||||
// * _ [ ] ! \ ` < > & ~ { } ( ) = # $ ^ |
|
// * _ [ ] ! \ ` < > & ~ { } ( ) = # $ ^ |
|
||||||
let clipText = await navigator.clipboard.readText();
|
let clipText = await navigator.clipboard.readText();
|
||||||
clipText = clipText.replace(/\*/g, "\\*").replace(/\_/g, "\\_").replace(/\[/g, "\\[").replace(/\]/g, "\\]").replace(/\!/g, "\\!").replace(/\\/g, "\\").replace(/\`/g, "\\`").replace(/\</g, "\\<").replace(/\>/g, "\\>").
|
clipText = clipText.replace(/\*/g, "\\*").replace(/\_/g, "\\_").replace(/\[/g, "\\[").replace(/\]/g, "\\]").replace(/\!/g, "\\!").replace(/\\/g, "\\").replace(/\`/g, "\\`").replace(/\</g, "\\<").replace(/\>/g, "\\>").replace(/\&/g, "\\&").replace(/\~/g, "\\~").replace(/\{/g, "\\{").replace(/\}/g, "\\}").replace(/\(/g, "\\(").replace(/\)/g, "\\)").replace(/\=/g, "\\=").replace(/\#/g, "\\#").replace(/\$/g, "\\$").replace(/\^/g, "\\^").replace(/\|/g, "\\|");
|
||||||
replace(/\&/g, "\\&").replace(/\~/g, "\\~").replace(/\{/g, "\\{").replace(/\}/g, "\\}").replace(/\(/g, "\\(").replace(/\)/g, "\\)").replace(/\=/g, "\\=").replace(/\#/g, "\\#").replace(/\$/g, "\\$").replace(/\^/g, "\\^").replace(/\|/g, "\\|");
|
|
||||||
pasteText(protyle, clipText, nodeElement);
|
pasteText(protyle, clipText, nodeElement);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e);
|
console.log(e);
|
||||||
|
|
@ -684,9 +683,7 @@ export const linkMenu = (protyle: IProtyle, linkElement: HTMLElement, focusText
|
||||||
}
|
}
|
||||||
}).element);
|
}).element);
|
||||||
}
|
}
|
||||||
if (isLocalPath(linkAddress)) {
|
|
||||||
openMenu(linkAddress);
|
openMenu(linkAddress);
|
||||||
}
|
|
||||||
window.siyuan.menus.menu.element.classList.remove("fn__none");
|
window.siyuan.menus.menu.element.classList.remove("fn__none");
|
||||||
if (focusText || protyle.lute.IsValidLinkDest(linkAddress)) {
|
if (focusText || protyle.lute.IsValidLinkDest(linkAddress)) {
|
||||||
window.siyuan.menus.menu.element.querySelectorAll("input")[1].select();
|
window.siyuan.menus.menu.element.querySelectorAll("input")[1].select();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue