Show More
@@ -66,6 +66,78 define([ | |||||
66 | { shortcut: cmd_ctrl + "y", help:"redo" }, |
|
66 | { shortcut: cmd_ctrl + "y", help:"redo" }, | |
67 | ].concat( platform_specific ); |
|
67 | ].concat( platform_specific ); | |
68 |
|
68 | |||
|
69 | function humanize_key(key){ | |||
|
70 | if (platform === 'MacOS'){ | |||
|
71 | if (key.length === 1){ | |||
|
72 | key = key.toUpperCase(); | |||
|
73 | } | |||
|
74 | var d= { | |||
|
75 | // all these are unicode, will probably display badly on anything except macs. | |||
|
76 | // these are the standard symbol that are used in MacOS native menus | |||
|
77 | 'cmd':'β', | |||
|
78 | 'shift':'β§', | |||
|
79 | 'alt':'β₯', | |||
|
80 | 'up':'β', | |||
|
81 | 'down':'β', | |||
|
82 | 'left':'β', | |||
|
83 | 'right':'β', | |||
|
84 | 'eject':'β', | |||
|
85 | 'tab':'β₯', | |||
|
86 | 'capslock':'β§', | |||
|
87 | 'esc':'β', | |||
|
88 | 'ctrl':'β', | |||
|
89 | 'enter':'β©', | |||
|
90 | 'pageup':'β', | |||
|
91 | 'pagedown':'β', | |||
|
92 | 'home':'β', | |||
|
93 | 'end':'β', | |||
|
94 | 'altenter':'β€', | |||
|
95 | 'space':'β£', | |||
|
96 | 'backspace':'β€', | |||
|
97 | 'apple':'ο£Ώ', | |||
|
98 | }; | |||
|
99 | } else { | |||
|
100 | var d = { | |||
|
101 | 'shift':'Shift', | |||
|
102 | 'alt':'Alt', | |||
|
103 | 'up':'Up', | |||
|
104 | 'down':'Down', | |||
|
105 | 'left':'Left', | |||
|
106 | 'right':'Right', | |||
|
107 | 'tab':'Tab', | |||
|
108 | 'capslock':'Caps Lock', | |||
|
109 | 'esc':'Esc', | |||
|
110 | 'ctrl':'Ctrl', | |||
|
111 | 'enter':'Enter', | |||
|
112 | 'pageup':'Page Up', | |||
|
113 | 'pagedown':'Page Down', | |||
|
114 | 'home':'Home', | |||
|
115 | 'end':'End', | |||
|
116 | 'space':'Space', | |||
|
117 | 'backspace,':'Backaspace', | |||
|
118 | }; | |||
|
119 | } | |||
|
120 | return d[key.toLowerCase()]||key; | |||
|
121 | } | |||
|
122 | ||||
|
123 | function humanize_sequence(sequence){ | |||
|
124 | var joinchar = '-'; | |||
|
125 | if (platform === 'MacOS'){ | |||
|
126 | joinchar = ' '; | |||
|
127 | } | |||
|
128 | var hum = _.map(sequence.replace(/meta/g, 'cmd').split(','), humanize_shortcut).join(joinchar); | |||
|
129 | return hum; | |||
|
130 | } | |||
|
131 | ||||
|
132 | function humanize_shortcut(shortcut){ | |||
|
133 | var joinchar = '-'; | |||
|
134 | if (platform === 'MacOS'){ | |||
|
135 | joinchar = ''; | |||
|
136 | } | |||
|
137 | var sh = _.map(shortcut.split('-'), humanize_key ).join(joinchar); | |||
|
138 | return sh; | |||
|
139 | } | |||
|
140 | ||||
69 |
|
141 | |||
70 | QuickHelp.prototype.show_keyboard_shortcuts = function () { |
|
142 | QuickHelp.prototype.show_keyboard_shortcuts = function () { | |
71 | /** |
|
143 | /** | |
@@ -157,7 +229,12 define([ | |||||
157 |
|
229 | |||
158 | var build_one = function (s) { |
|
230 | var build_one = function (s) { | |
159 | var help = s.help; |
|
231 | var help = s.help; | |
160 |
var shortcut = |
|
232 | var shortcut = ''; | |
|
233 | if(s.shortcut){ | |||
|
234 | shortcut = prettify(humanize_sequence(s.shortcut)); | |||
|
235 | } else { | |||
|
236 | console.error('[debug] - nothing for', s) | |||
|
237 | } | |||
161 | return $('<div>').addClass('quickhelp'). |
|
238 | return $('<div>').addClass('quickhelp'). | |
162 | append($('<span/>').addClass('shortcut_key').append($(shortcut))). |
|
239 | append($('<span/>').addClass('shortcut_key').append($(shortcut))). | |
163 | append($('<span/>').addClass('shortcut_descr').text(' : ' + help)); |
|
240 | append($('<span/>').addClass('shortcut_descr').text(' : ' + help)); |
General Comments 0
You need to be logged in to leave comments.
Login now