-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Terminal copy-paste appears in editor not terminal #7
Comments
All commands are executed in the context of the current editor. If you need behavior matching the paste shortcut, use the keyboard shortcut. |
Sorry, just for my understanding, are we closing this because it's too difficult to do (in that case maybe it could remain open as a long-term FR) or because we don't want this behavior? If we don't want this behavior, could you please elaborate a little about why just so that we're on the same page? |
I closed it because it seemed like a misunderstanding of the plugin and its role in coordination with your Talon scripts. I'll go ahead and re-open it. The main purpose of this plugin is to run commands in the current active editor in a way that's keybinding agnostic. The remaining functionality is to either provide feedback to the driving Talon package or to implement commands from VoiceCode which are difficult to do without state. (PSI ranges, selecting forward/back, etc.) This is why the original Talon contexts for IntelliJ tried to detect popup windows and dialogs so that normal commands are used instead. (Looking at the current knausj repo, all of that functionality seems to have been lost. You can test this by opening a modal and attempting to paste.) Assuming you did modify this plugin to send commands to non-editor components, you'd also need to plumb that state back into Talon so you can send the correct commands. That is, EditorPaste vs Terminal.Paste. And after all that, you would have built a paste command that does multiple RPC calls and lookups in order to emulate a subset of the behavior of pressing the original keyboard shortcut. |
As related to this issue anonfunc/intellij-voicecode#7 when a non-editor window of a Jetbrains product is open we still mark Jetbrains commands as active, meaning things like copy/paste or 'clear line' go to the editor, rather than the popup window. This was previously implemented using callbacks for the context in the original Talon. https://github.com/anonfunc/talon-user/blob/master/apps/jetbrains.py#L303 These have been replaced with scopes. The current scope updates when the UI fires an event. This does mean if you open the 'actions' dialogue (via the command please) then it doesn't trigger a UI update and the Jetbrains context is still active. Other popups do. I'm not sure what the performance hit would be running the check every second or two via cron so opted for this instead
As related to this issue anonfunc/intellij-voicecode#7 when a non-editor window of a Jetbrains product is open we still mark Jetbrains commands as active, meaning things like copy/paste or 'clear line' go to the editor, rather than the popup window. This was previously implemented using callbacks for the context in the original Talon. https://github.com/anonfunc/talon-user/blob/master/apps/jetbrains.py#L303 These have been replaced with scopes. The current scope updates when the UI fires an event. This does mean if you open the 'actions' dialogue (via the command please) then it doesn't trigger a UI update and the Jetbrains context is still active. Other popups do. I'm not sure what the performance hit would be running the check every second or two via cron so opted for this instead
As related to this issue anonfunc/intellij-voicecode#7 when a non-editor window of a Jetbrains product is open we still mark Jetbrains commands as active, meaning things like copy/paste or 'clear line' go to the editor, rather than the popup window. This was previously implemented using callbacks for the context in the original Talon. https://github.com/anonfunc/talon-user/blob/master/apps/jetbrains.py#L303 These have been replaced with scopes. The current scope updates when the UI fires an event. This does mean if you open the 'actions' dialogue (via the command please) then it doesn't trigger a UI update and the Jetbrains context is still active. Other popups do. I'm not sure what the performance hit would be running the check every second or two via cron so opted for this instead
As related to this issue anonfunc/intellij-voicecode#7 when a non-editor window of a Jetbrains product is open we still mark Jetbrains commands as active, meaning things like copy/paste or 'clear line' go to the editor, rather than the popup window. This was previously implemented using callbacks for the context in the original Talon. https://github.com/anonfunc/talon-user/blob/master/apps/jetbrains.py#L303 These have been replaced with scopes. The current scope updates when the UI fires an event. This does mean if you open the 'actions' dialogue (via the command please) then it doesn't trigger a UI update and the Jetbrains context is still active. Other popups do. I'm not sure what the performance hit would be running the check every second or two via cron so opted for this instead
While typing in the terminal inside the IDE, if you copy or paste with Talon, it applies the copy or the paste to the editor window (the file contents view) rather than to the current position of the cursor in the terminal. This only seems to affect copying paste and inserting text works fine.
Talon v0.2.0-8
Latest knausj develop (August 2 2021)
Encountered on Pycharm (but expect it's the same on all Jetbrains IDES)
Pycharm info:
The text was updated successfully, but these errors were encountered: