diff --git a/src/config/locales/en/translation.json b/src/config/locales/en/translation.json
index 59ce4ff5..70da029e 100644
--- a/src/config/locales/en/translation.json
+++ b/src/config/locales/en/translation.json
@@ -148,6 +148,21 @@
},
"list_membership": {
"title": "List Memberships"
+ },
+ "shortcut": {
+ "title": "Keyboard shortcuts",
+ "ctrl_number": "Switch accounts",
+ "ctrl_k": "Jump to other timelines",
+ "ctrl_n": "Open the new toot modal",
+ "ctrl_enter": "Post the toot",
+ "j": "Select the next toot",
+ "k": "Select the previous toot",
+ "r": "Reply to the toot",
+ "b": "Reblog the toot",
+ "f": "Favourite the toot",
+ "o": "Open details of the toot",
+ "p": "Open account profile of the toot",
+ "esc": "Close current page"
}
},
"cards": {
diff --git a/src/config/locales/ja/translation.json b/src/config/locales/ja/translation.json
index 243dadee..eabe0eb5 100644
--- a/src/config/locales/ja/translation.json
+++ b/src/config/locales/ja/translation.json
@@ -148,6 +148,21 @@
},
"list_membership": {
"title": "リストメンバー管理"
+ },
+ "shortcut": {
+ "title": "キーボードショートカット",
+ "ctrl_number": "アカウントの切り替え",
+ "ctrl_k": "タイムラインの移動",
+ "ctrl_n": "トゥートモーダルの表示",
+ "ctrl_enter": "トゥート送信",
+ "j": "次のトゥートを選択",
+ "k": "前のトゥートを選択",
+ "r": "リプライ",
+ "b": "ブースト",
+ "f": "お気に入り",
+ "o": "トゥート詳細を開く",
+ "p": "発言主のプロフィールを開く",
+ "esc": "ページを閉じる"
}
},
"cards": {
diff --git a/src/renderer/components/TimelineSpace.vue b/src/renderer/components/TimelineSpace.vue
index 4e854acd..4b743e2b 100644
--- a/src/renderer/components/TimelineSpace.vue
+++ b/src/renderer/components/TimelineSpace.vue
@@ -5,6 +5,8 @@
:element-loading-text="$t('message.loading')"
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0, 0, 0, 0.8)"
+ v-shortkey="{help: ['h']}"
+ @shortkey="handleKey"
>
Ctrl(Cmd) + 1, 2, 3... | +{{ $t('modals.shortcut.ctrl_number') }} | +
Ctrl(Cmd) + k | +{{ $t('modals.shortcut.ctrl_k') }} | +
Ctrl(Cmd) + n | +{{ $t('modals.shortcut.ctrl_n') }} | +
Ctrl(Cmd) + Enter | +{{ $t('modals.shortcut.ctrl_enter') }} | +
j | +{{ $t('modals.shortcut.j') }} | +
k | +{{ $t('modals.shortcut.k') }} | +
r | +{{ $t('modals.shortcut.r') }} | +
b | +{{ $t('modals.shortcut.b') }} | +
f | +{{ $t('modals.shortcut.f') }} | +
o | +{{ $t('modals.shortcut.o') }} | +
p | +{{ $t('modals.shortcut.p') }} | +
esc | +{{ $t('modals.shortcut.esc') }} | +