diff --git a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx index 46874d0bd589..e85fcd247933 100644 --- a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx +++ b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx @@ -419,8 +419,9 @@ export function Prompt(props: PromptProps) { } function shouldSyncVimRegister(event: { name?: string; ctrl?: boolean; meta?: boolean; super?: boolean }) { - if (!useSystemClipboardRegister()) return false + if (!useSystemClipboardRegister() || !vimEnabled()) return false if (event.ctrl || event.meta || event.super) return false + if (vimState.isInsert() || vimState.isReplace() || vimState.isCopy()) return false return event.name?.toLowerCase() === "p" }