( action: string, context: KeybindingContextName, fallback: string, )
| 36 | * // Returns the user's configured binding, or 'ctrl+o' as default |
| 37 | */ |
| 38 | export function getShortcutDisplay( |
| 39 | action: string, |
| 40 | context: KeybindingContextName, |
| 41 | fallback: string, |
| 42 | ): string { |
| 43 | const bindings = loadKeybindingsSync() |
| 44 | const resolved = getBindingDisplayText(action, context, bindings) |
| 45 | if (resolved === undefined) { |
| 46 | const key = `${action}:${context}` |
| 47 | if (!LOGGED_FALLBACKS.has(key)) { |
| 48 | LOGGED_FALLBACKS.add(key) |
| 49 | logEvent('tengu_keybinding_fallback_used', { |
| 50 | action: |
| 51 | action as AnalyticsMetadata_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS, |
| 52 | context: |
| 53 | context as AnalyticsMetadata_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS, |
| 54 | fallback: |
| 55 | fallback as AnalyticsMetadata_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS, |
| 56 | reason: |
| 57 | 'action_not_found' as AnalyticsMetadata_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS, |
| 58 | }) |
| 59 | } |
| 60 | return fallback |
| 61 | } |
| 62 | return resolved |
| 63 | } |
| 64 |
no test coverage detected