Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions app/appearance/langs/ar_SA.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "الرجاء فتح دفتر الملاحظات أولاً",
"copyBlockRef": "نسخ كمرجع كتلة",
"copyBlockEmbed": "نسخ ككتلة تضمين",
"copyMarkdown": "نسخ كـ Markdown",
"linkLevel": "العمق",
"mark": "تمييز",
"splitLR": "تقسيم لليمين",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/de_DE.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "Bitte öffnen Sie zuerst ein Notizbuch",
"copyBlockRef": "Blockreferenz kopieren",
"copyBlockEmbed": "Blockeinbettung kopieren",
"copyMarkdown": "Als Markdown kopieren",
"linkLevel": "Tiefe",
"mark": "Markieren",
"splitLR": "Rechts aufteilen",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/en_US.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "Please open a notebook first",
"copyBlockRef": "Copy block ref",
"copyBlockEmbed": "Copy block embed",
"copyMarkdown": "Copy as Markdown",
"linkLevel": "Depth",
"mark": "Mark",
"splitLR": "Split Right",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/es_ES.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "Por favor, abra primero un cuaderno de notas",
"copyBlockRef": "Copiar bloque referencia",
"copyBlockEmbed": "Copiar bloque incrustado",
"copyMarkdown": "Copiar como Markdown",
"linkLevel": "Profundidad",
"mark": "Marca",
"splitLR": "Dividir a la derecha",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/fr_FR.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "Veuillez d'abord ouvrir un carnet de notes",
"copyBlockRef": "Copier bloc réf",
"copyBlockEmbed": "Copier le bloc en tant que bloc incorporé",
"copyMarkdown": "Copier comme Markdown",
"linkLevel": "Niveaux",
"mark": "Mark",
"splitLR": "Split Droit",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/he_IL.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "אנא פתח מחברת קודם",
"copyBlockRef": "העתק הפניה לבלוק",
"copyBlockEmbed": "העתק הטמעה לבלוק",
"copyMarkdown": "העתק כ-Markdown",
"linkLevel": "עומק",
"mark": "סמן",
"splitLR": "חלק ימינה",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/it_IT.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "Si prega di aprire prima un taccuino",
"copyBlockRef": "Copia riferimento blocco",
"copyBlockEmbed": "Copia incorporamento blocco",
"copyMarkdown": "Copia come Markdown",
"linkLevel": "Profondità",
"mark": "Segna",
"splitLR": "Dividi a destra",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/ja_JP.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "最初にノートブックを開いてください",
"copyBlockRef": "ブロック参照としてコピー",
"copyBlockEmbed": "埋め込みブロックとしてコピー",
"copyMarkdown": "Markdown としてコピー",
"linkLevel": "深さ",
"mark": "ハイライト",
"splitLR": "右に分割",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/pl_PL.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "Proszę najpierw otworzyć notes",
"copyBlockRef": "Skopiuj odniesienie do bloku",
"copyBlockEmbed": "Skopiuj blok osadzony",
"copyMarkdown": "Skopiuj jako Markdown",
"linkLevel": "Głębokość",
"mark": "Zaznacz",
"splitLR": "Podziel w prawo",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/pt_BR.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "Por favor, abra um bloco de notas primeiro",
"copyBlockRef": "Copiar referência de bloco",
"copyBlockEmbed": "Copiar bloco incorporado",
"copyMarkdown": "Copiar como Markdown",
"linkLevel": "Profundidade",
"mark": "Marca",
"splitLR": "Dividir à Direita",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/ru_RU.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "Пожалуйста, сначала откройте блокнот",
"copyBlockRef": "Скопировать ссылку на блок",
"copyBlockEmbed": "Скопировать встроенный блок",
"copyMarkdown": "Скопировать как Markdown",
"linkLevel": "Глубина",
"mark": "Значить",
"splitLR": "Разделить направо",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/zh_CHT.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "請先打開一個筆記本",
"copyBlockRef": "複製為塊引用",
"copyBlockEmbed": "複製為嵌入塊",
"copyMarkdown": "複製為 Markdown",
"linkLevel": "層級",
"mark": "標記",
"splitLR": "向右並排顯示",
Expand Down
1 change: 1 addition & 0 deletions app/appearance/langs/zh_CN.json
Original file line number Diff line number Diff line change
Expand Up @@ -1180,6 +1180,7 @@
"newFileTip": "请先打开一个笔记本",
"copyBlockRef": "复制为块引用",
"copyBlockEmbed": "复制为嵌入块",
"copyMarkdown": "复制为 Markdown",
"linkLevel": "层级",
"mark": "标记",
"splitLR": "向右分屏",
Expand Down
32 changes: 29 additions & 3 deletions app/src/menus/commonMenuItem.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import {getSearch, isMobile, isValidAttrName} from "../util/functions";
import {isLocalPath, movePathTo, moveToPath, pathPosix} from "../util/pathName";
import {MenuItem} from "./Menu";
import {saveExport} from "../protyle/export";
import {isInAndroid, isInHarmony, openByMobile} from "../protyle/util/compatibility";
import {isInAndroid, isInHarmony, openByMobile, writeText} from "../protyle/util/compatibility";
import {fetchPost, fetchSyncPost} from "../util/fetch";
import {hideMessage, showMessage} from "../dialog/message";
import {Dialog} from "../dialog";
Expand Down Expand Up @@ -380,8 +380,8 @@ export const openAttr = (nodeElement: Element, focusName = "bookmark", protyle?:
});
};

export const copySubMenu = (ids: string[], accelerator = true, focusElement?: Element) => {
return [{
export const copySubMenu = (ids: string[], accelerator = true, focusElement?: Element, stdMarkdownId?: string) => {
const menuItems = [{
id: "copyBlockRef",
iconHTML: "",
accelerator: accelerator ? window.siyuan.config.keymap.editor.general.copyBlockRef.custom : undefined,
Expand Down Expand Up @@ -448,6 +448,32 @@ export const copySubMenu = (ids: string[], accelerator = true, focusElement?: El
}
}
}];

if (stdMarkdownId) {
menuItems.push({
id: "copyMarkdown",
iconHTML: "",
label: window.siyuan.languages.copyMarkdown,
accelerator: undefined,
click: async () => {
const response = await fetchSyncPost("/api/export/exportMdContent", {
id: stdMarkdownId,
refMode: 3,
embedMode: 1,
yfm: false,
fillCSSVar: false,
adjustHeadingLevel: false
});
const text = response.data.content;
writeText(text);
if (focusElement) {
focusBlock(focusElement);
}
}
});
}

return menuItems;
};

export const exportMd = (id: string) => {
Expand Down
2 changes: 1 addition & 1 deletion app/src/protyle/header/openTitleMenu.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
label: window.siyuan.languages.copy,
icon: "iconCopy",
type: "submenu",
submenu: copySubMenu([protyle.block.rootID])
submenu: copySubMenu([protyle.block.rootID], true, undefined, protyle.block.showAll ? protyle.block.id : protyle.block.rootID)
}).element);
if (!protyle.disabled) {
window.siyuan.menus.menu.append(movePathToMenu([protyle.path]));
Expand Down