diff --git a/README.md b/README.md index 6f8fa99b..ddf5f4de 100644 --- a/README.md +++ b/README.md @@ -94,6 +94,7 @@ + `Ctrl + K, Ctrl + L` 转换小写 + `Ctrl + Alt + R` 在内置终端里面运行选中内容 + `Ctrl + B + V` 粘贴 html 富文本 + + `Ctrl + Alt + Left/Right` 切换编辑器 Tab ## 开发 依赖安装和编译比较麻烦,请保证自己有足够耐心且有科学上网的手段。 @@ -140,12 +141,15 @@ yarn run start ## 更新日志 [最新发布](https://github.com/purocean/yn/releases) -### [v2.2.7](https://github.com/purocean/yn/releases/tag/v2.2.7) 2020-01-19 -1. 调整渲染的表格宽度 +### [v2.2.8](https://github.com/purocean/yn/releases/tag/v2.2.8) 2020-03-13 +1. 增加切换编辑器标签快捷键 `Ctrl + Alt + Left/Right`
展开查看更多版本记录 +### [v2.2.7](https://github.com/purocean/yn/releases/tag/v2.2.7) 2020-01-19 +1. 调整渲染的表格宽度 + ### [v2.2.6](https://github.com/purocean/yn/releases/tag/v2.2.6) 2020-01-16 1. 修复插入文档名称问题 diff --git a/frontend/src/components/FileTabs.vue b/frontend/src/components/FileTabs.vue index 896adb7d..69642478 100644 --- a/frontend/src/components/FileTabs.vue +++ b/frontend/src/components/FileTabs.vue @@ -18,7 +18,46 @@ export default { current: blankUri } }, + created () { + window.addEventListener('keydown', this.keydownHandler, true) + }, + beforeDestroy () { + window.removeEventListener('keydown', this.keydownHandler) + }, methods: { + keydownHandler (e) { + const findTab = offset => { + const tabs = [...this.tabs] + + if (tabs.length < 1) { + return null + } + + const currentIndex = tabs.findIndex(x => x.key === this.current) + let index = currentIndex + offset + + if (index < 0) { + index = tabs.length - 1 + } + + if (index >= tabs.length) { + index = 0 + } + + return tabs[index] + } + + // 快捷键切换最近文档 + if (e.altKey && e.ctrlKey) { + if (e.key === 'ArrowLeft') { + const prev = findTab(-1) + prev && this.switchTab(prev) + } else if (e.key === 'ArrowRight') { + const next = findTab(1) + next && this.switchTab(next) + } + } + }, setTabs (list) { this.$store.commit('app/setTabs', list) }, diff --git a/frontend/src/components/QuickOpen.vue b/frontend/src/components/QuickOpen.vue index 6bd30913..01a01608 100644 --- a/frontend/src/components/QuickOpen.vue +++ b/frontend/src/components/QuickOpen.vue @@ -210,7 +210,7 @@ export default { return list.sort((a, b) => { const at = map[`${a.repo}|${a.path}`] || 0 - const bt = map[`${a.repo}|${b.path}`] || 0 + const bt = map[`${b.repo}|${b.path}`] || 0 return bt - at }) diff --git a/help/FEATURES.md b/help/FEATURES.md index 3a3a3e17..74fb17e1 100644 --- a/help/FEATURES.md +++ b/help/FEATURES.md @@ -296,4 +296,5 @@ xml 代码块 第一行注释需要有 `--drawio--` 文字 1. 切换编辑器自动换行:`Alt + W` 或点击状态栏 `切换换行` 按钮 1. 粘贴 HTML 富文本为 Markdown `Ctrl + B + V` 1. 打开文件快速切换面板 `Ctrl + P` -1. 复制文档标题链接 `Ctrl + P` +1. 复制文档标题链接 `Ctrl + 单击标题` +1. 切换编辑器 Tab `Ctrl + Alt + Left/Right` diff --git a/package.json b/package.json index 683c3278..d06576a7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "yank.note.yang", - "version": "2.2.7", + "version": "2.2.8", "description": "Yank Note 一款面向程序员的 Markdown 笔记应用", "main": "dist/app.js", "license": "Apache-2.0",