diff --git a/packages/app-frontend/src/features/components/ComponentsInspector.vue b/packages/app-frontend/src/features/components/ComponentsInspector.vue
index 4b4076056..289d94828 100644
--- a/packages/app-frontend/src/features/components/ComponentsInspector.vue
+++ b/packages/app-frontend/src/features/components/ComponentsInspector.vue
@@ -43,11 +43,11 @@ export default defineComponent({
onKeyDown((event) => {
// ƒ,ß,® - these are the result keys in Mac with altKey pressed
- if ((event.key === 'f' || event.key === 'ƒ') && event.altKey) {
+ if (((['f', 'ƒ', 'а']).includes(event.key)) && event.altKey) {
treeFilterInput.value.focus()
return false
}
- else if ((event.key === 's' || event.key === 'ß') && event.altKey && !pickingComponent.value) {
+ else if ((['s', 'ß', 'ы']).includes(event.key) && event.altKey && !pickingComponent.value) {
startPickingComponent()
return false
}
diff --git a/packages/app-frontend/src/features/components/SelectedComponentPane.vue b/packages/app-frontend/src/features/components/SelectedComponentPane.vue
index c1e6673d8..9b0124254 100644
--- a/packages/app-frontend/src/features/components/SelectedComponentPane.vue
+++ b/packages/app-frontend/src/features/components/SelectedComponentPane.vue
@@ -3,7 +3,7 @@ import StateInspector from '@front/features/inspector/StateInspector.vue'
import EmptyPane from '@front/features/layout/EmptyPane.vue'
import { computed, defineComponent, ref, watch } from 'vue'
-import { SharedData, copyToClipboard, getComponentDisplayName } from '@vue-devtools/shared-utils'
+import { SharedData, copyToClipboard, getComponentDisplayName, openInEditor } from '@vue-devtools/shared-utils'
import { onKeyDown } from '@front/util/keyboard'
import RenderCode from './RenderCode.vue'
import { useSelectedComponent } from './composable'
@@ -34,10 +34,18 @@ export default defineComponent({
const stateFilterInput = ref()
onKeyDown((event) => {
// ∂ - the result key in Mac with altKey pressed
- if ((event.key === 'd' || event.key === '∂') && event.altKey) {
+ if ((['d', '∂', 'в'].includes(event.key)) && event.altKey) {
stateFilterInput.value.focus()
return false
}
+
+ if ((['o', 'o', 'щ']).includes(event.key) && event.altKey) {
+ const file = selectedComponent.data.value?.file
+ if (file) {
+ openInEditor(file)
+ }
+ return false
+ }
}, true)
const sameApp = computed(() => selectedComponent.data.value?.id.split(':')[0] === selectedComponentId.value?.split(':')[0])
diff --git a/packages/app-frontend/src/locales/en.js b/packages/app-frontend/src/locales/en.js
index cff0ebef0..b7515f4e0 100644
--- a/packages/app-frontend/src/locales/en.js
+++ b/packages/app-frontend/src/locales/en.js
@@ -70,7 +70,7 @@ export default {
},
ComponentInspector: {
openInEditor: {
- tooltip: 'Open <>{{file}} in editor',
+ tooltip: '[[{{keys.alt}}]] + [[O]] Open <>{{file}} in editor',
},
},
EventsHistory: {