Skip to content

Commit ef2d2d6

Browse files
author
hackape
committed
Accept Merge Request #11 windows 下的快捷键:(yangzhen/ot -> ot)
Merge Request: windows 下的快捷键 Created By: @杨臻
2 parents f1026b7 + fb88625 commit ef2d2d6

File tree

5 files changed

+72
-26
lines changed

5 files changed

+72
-26
lines changed

app/commands/keymaps.js

Lines changed: 61 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,65 @@
11
// Unavailable shortcuts: shift / ctrl + (q|n|w|t|↹)
2-
export default {
3-
'alt+n': 'file:new_file',
4-
'alt+shift+n': 'file:new_folder',
5-
'cmd+s': 'file:save',
6-
'cmd+ctrl+c': 'git:commit',
7-
'esc': 'modal:dismiss',
8-
'cmd+shift+p': 'global:command_palette',
9-
'cmd+p': 'global:file_palette',
10-
'cmd+alt+1': 'editor:split_pane_1',
11-
'cmd+alt+shift+1': 'editor:split_pane_1',
12-
'cmd+alt+2': 'editor:split_pane_vertical_2',
13-
'cmd+alt+shift+2': 'editor:split_pane_horizontal_2',
14-
'cmd+alt+3': 'editor:split_pane_vertical_3',
15-
'cmd+alt+shift+3': 'editor:split_pane_horizontal_3',
16-
'cmd+alt+4': 'editor:split_pane_vertical_4',
17-
'cmd+comma': 'global:show_settings',
18-
'alt+b': 'global:show_branches',
2+
const os = (navigator.platform.match(/mac|win|linux/i) || ['other'])[0].toLowerCase()
3+
export const isMac = (os === 'mac')
4+
5+
let keymaps
6+
let modifierKeysMap
7+
if (isMac) {
8+
keymaps = {
9+
'alt+n': 'file:new_file',
10+
'alt+shift+n': 'file:new_folder',
11+
'cmd+s': 'file:save',
12+
'cmd+ctrl+c': 'git:commit',
13+
'esc': 'modal:dismiss',
14+
'cmd+shift+p': 'global:command_palette',
15+
'cmd+p': 'global:file_palette',
16+
'cmd+alt+1': 'editor:split_pane_1',
17+
'cmd+alt+shift+1': 'editor:split_pane_1',
18+
'cmd+alt+2': 'editor:split_pane_vertical_2',
19+
'cmd+alt+shift+2': 'editor:split_pane_horizontal_2',
20+
'cmd+alt+3': 'editor:split_pane_vertical_3',
21+
'cmd+alt+shift+3': 'editor:split_pane_horizontal_3',
22+
'cmd+alt+4': 'editor:split_pane_vertical_4',
23+
'cmd+comma': 'global:show_settings',
24+
'alt+b': 'global:show_branches',
25+
}
26+
modifierKeysMap = {
27+
ctrl: '⌃',
28+
alt: '⌥',
29+
cmd: '⌘',
30+
comma: ',',
31+
shift: '⇧',
32+
}
33+
} else {
34+
keymaps = {
35+
'alt+n': 'file:new_file',
36+
'alt+shift+n': 'file:new_folder',
37+
'ctrl+s': 'file:save',
38+
'ctrl+alt+c': 'git:commit',
39+
'esc': 'modal:dismiss',
40+
'ctrl+shift+p': 'global:command_palette',
41+
'ctrl+p': 'global:file_palette',
42+
'ctrl+alt+1': 'editor:split_pane_1',
43+
'ctrl+alt+shift+1': 'editor:split_pane_1',
44+
'ctrl+alt+2': 'editor:split_pane_vertical_2',
45+
'ctrl+alt+shift+2': 'editor:split_pane_horizontal_2',
46+
'ctrl+alt+3': 'editor:split_pane_vertical_3',
47+
'ctrl+alt+shift+3': 'editor:split_pane_horizontal_3',
48+
'ctrl+alt+4': 'editor:split_pane_vertical_4',
49+
'ctrl+comma': 'global:show_settings',
50+
'alt+b': 'global:show_branches',
51+
}
52+
modifierKeysMap = {
53+
ctrl: 'Ctrl',
54+
alt: 'Alt',
55+
cmd: 'Cmd',
56+
comma: ',',
57+
shift: 'Shift',
58+
}
1959
}
2060

21-
export const modifierKeysMap = {
22-
ctrl: '⌃',
23-
alt: '⌥',
24-
cmd: '⌘',
25-
comma: ',',
26-
shift: '⇧',
61+
export default keymaps
62+
63+
export {
64+
modifierKeysMap
2765
}

app/components/MenuBar/utils.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import keyMapConfig, { modifierKeysMap } from '../../commands/keymaps'
1+
import keyMapConfig, { modifierKeysMap, isMac } from '../../commands/keymaps'
22

33

44
const findKeyByValue = value => Object
@@ -8,8 +8,14 @@ const findKeyByValue = value => Object
88
return p
99
}, {})[value] || ''
1010

11-
const withModifierKeys = value => value.split('+')
11+
const withModifierKeys = value => {
12+
if (isMac) {
13+
return value.split('+')
1214
.map(e => modifierKeysMap[e] || e.toUpperCase()).join('')
15+
}
16+
return value.split('+')
17+
.map(e => modifierKeysMap[e] || e.toUpperCase()).join('+')
18+
}
1319

1420

1521
const mapShortcutToConfig = configs => configs.map(config => ({

app/components/Panel/PanelContent.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ const PanelContent = ({ panel }) => {
3737
case 'PANEL_RIGHT':
3838
return (
3939
<SidePanelContainer side='right'>
40-
<SidePanelView key='collaborate' label={{ text: 'Collaborate', icon: 'fa fa-users', weight: 1000 }} active >
40+
<SidePanelView key='collaborate' label={{ text: i18n`ot.sidebarLabel`, icon: 'fa fa-users', weight: 1000 }} active >
4141
<Collaboration />
4242
</SidePanelView>
4343
</SidePanelContainer>

app/i18n/en_US/ot.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
"inviteBtn": "Invite",
1010
"sharePlaceHolder": "username or email",
1111
"groupChat": "Group Chat",
12+
"sidebarLabel": "Collaborate",
1213
"shareWS": "Share this workspace",
1314
"chatPlaceHolder": "Your message here (Shift + Enter for new line)"
1415
}

app/i18n/zh_CN/ot.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
"inviteBtn": "邀请",
1010
"sharePlaceHolder": "用户名或邮箱",
1111
"groupChat": "聊天",
12+
"sidebarLabel": "协同编辑",
1213
"shareWS": "分享工作区",
1314
"chatPlaceHolder": "请输入消息 (Shift + Enter 换行)"
1415
}

0 commit comments

Comments
 (0)