Skip to content

Commit 0b540cf

Browse files
feat: add presentation mode (#215)
1 parent 053e49b commit 0b540cf

21 files changed

Lines changed: 1199 additions & 484 deletions

File tree

src/main/menu/main.ts

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,19 @@ const editorMenu: MenuItemConstructorOptions[] = [
352352
}
353353
},
354354
{
355-
label: i18n.t('menu:editor.previewMarkdown'),
355+
label: i18n.t('menu:editor.previewCode'),
356+
accelerator: 'Shift+CommandOrControl+P',
357+
click: () => {
358+
BrowserWindow.getFocusedWindow()?.webContents.send(
359+
'main-menu:preview-code'
360+
)
361+
}
362+
}
363+
]
364+
365+
const markdownMenu: MenuItemConstructorOptions[] = [
366+
{
367+
label: i18n.t('menu:markdown.preview'),
356368
accelerator: 'Shift+CommandOrControl+M',
357369
click: () => {
358370
BrowserWindow.getFocusedWindow()?.webContents.send(
@@ -361,11 +373,11 @@ const editorMenu: MenuItemConstructorOptions[] = [
361373
}
362374
},
363375
{
364-
label: i18n.t('menu:editor.previewCode'),
365-
accelerator: 'Shift+CommandOrControl+P',
376+
label: i18n.t('menu:markdown.presentationMode'),
377+
accelerator: 'Control+CommandOrControl+P',
366378
click: () => {
367379
BrowserWindow.getFocusedWindow()?.webContents.send(
368-
'main-menu:preview-code'
380+
'main-menu:presentation-mode'
369381
)
370382
}
371383
}
@@ -425,6 +437,10 @@ const menuItems: MenuItemConstructorOptions[] = [
425437
label: i18n.t('menu:editor.label'),
426438
submenu: editorMenu
427439
},
440+
{
441+
label: i18n.t('menu:markdown.label'),
442+
submenu: markdownMenu
443+
},
428444
{
429445
label: i18n.t('menu:help.label'),
430446
submenu: helpMenu

src/main/services/i18n/locales/en/menu.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,12 @@
6464
"label": "Editor",
6565
"copy": "Copy Snippet to Clipboard",
6666
"format": "Format",
67-
"previewMarkdown": "Preview Markdown",
6867
"previewCode": "Preview Code",
6968
"previewScreenshot": "Preview Screenshot"
69+
},
70+
"markdown": {
71+
"label": "Markdown",
72+
"presentationMode": "Presentation Mode",
73+
"preview": "Preview"
7074
}
7175
}

src/main/services/i18n/locales/es_ES/menu.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,13 @@
6161
"label": "Editor",
6262
"copy": "Copiar Snippet al Portapapeles",
6363
"format": "Formato",
64-
"previewMarkdown": "Previsualizar en Markdown",
64+
"previewMarkdown": "",
6565
"previewCode": "Previsualizar Código",
6666
"previewScreenshot": "Previsualizar Captura de Pantalla"
67+
},
68+
"markdown": {
69+
"label": "Markdown",
70+
"presentationMode": "Presentation Mode",
71+
"preview": "Preview"
6772
}
6873
}

src/main/services/i18n/locales/pt_BR/menu.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,12 @@
6161
"label": "Editor",
6262
"copy": "Copiar para área de transferencia",
6363
"format": "Formatar",
64-
"previewMarkdown": "Pré-visualizar marcador",
6564
"previewCode": "Pré-visualizar código",
6665
"previewScreenshot": "Pré-visualizar captura de tela"
66+
},
67+
"markdown": {
68+
"label": "Markdown",
69+
"presentationMode": "Presentation Mode",
70+
"preview": "Preview"
6771
}
68-
}
72+
}

src/main/services/i18n/locales/ru/menu.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,12 @@
6464
"label": "Редактор",
6565
"copy": "Скопировать сниппет в буфер",
6666
"format": "Форматировать",
67-
"previewMarkdown": "Просмотр Markdown",
6867
"previewCode": "Просмотр результата HTML/CSS",
6968
"previewScreenshot": "Просмотр скриншота"
69+
},
70+
"markdown": {
71+
"label": "Markdown",
72+
"presentationMode": "Режим презентации",
73+
"preview": "Просмотр Markdown"
7074
}
7175
}

src/main/services/i18n/locales/zh_CN/menu.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,12 @@
6161
"label": "编辑器",
6262
"copy": "将代码片段复制至剪贴板",
6363
"format": "格式化",
64-
"previewMarkdown": "预览 Markdown",
6564
"previewCode": "预览 HTML 和 CSS",
6665
"previewScreenshot": "生成并预览代码截图"
66+
},
67+
"markdown": {
68+
"label": "Markdown",
69+
"presentationMode": "Presentation Mode",
70+
"preview": "Preview"
6771
}
68-
}
72+
}

src/main/services/i18n/locales/zh_HK/menu.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,12 @@
6161
"label": "編輯器",
6262
"copy": "將代碼片段複製至剪貼板",
6363
"format": "格式化",
64-
"previewMarkdown": "預覽 Markdown",
6564
"previewCode": "預覽 HTML 和 CSS",
6665
"previewScreenshot": "生成並預覽代碼截圖"
66+
},
67+
"markdown": {
68+
"label": "Markdown",
69+
"presentationMode": "Presentation Mode",
70+
"preview": "Preview"
6771
}
68-
}
72+
}

src/main/services/i18n/locales/zh_TW/menu.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,12 @@
6161
"label": "編輯器",
6262
"copy": "將程式碼片段複製至剪貼簿",
6363
"format": "格式化",
64-
"previewMarkdown": "預覽 Markdown",
6564
"previewCode": "預覽 HTML 和 CSS",
6665
"previewScreenshot": "生成並預覽程式碼截圖"
66+
},
67+
"markdown": {
68+
"label": "Markdown",
69+
"presentationMode": "Presentation Mode",
70+
"preview": "Preview"
6771
}
68-
}
72+
}

src/main/store/module/preferences.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ export default new Store<PreferencesStore>({
3333
darkMode: true,
3434
width: 600
3535
},
36+
markdown: {
37+
presentationScale: 1.3
38+
},
3639
language: 'en'
3740
}
3841
})

src/renderer/App.vue

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ const init = async () => {
7373
appStore.sizes.sidebar = store.app.get('sidebarWidth')
7474
appStore.sizes.snippetList = store.app.get('snippetListWidth')
7575
appStore.screenshot = store.preferences.get('screenshot')
76+
appStore.markdown = store.preferences.get('markdown')
7677
7778
snippetStore.sort = store.app.get('sort')
7879
@@ -213,6 +214,13 @@ ipc.on('main-menu:new-fragment', () => {
213214
ipc.on('main-menu:preview-markdown', async () => {
214215
if (snippetStore.currentLanguage === 'markdown') {
215216
snippetStore.isMarkdownPreview = !snippetStore.isMarkdownPreview
217+
track('snippets/markdown-preview')
218+
}
219+
})
220+
ipc.on('main-menu:presentation-mode', async () => {
221+
if (snippetStore.currentLanguage === 'markdown') {
222+
router.push('/presentation')
223+
track('snippets/presentation-mode')
216224
}
217225
})
218226

0 commit comments

Comments
 (0)