Replies: 2 comments 1 reply
-
|
@sinelaw I opened a discussion instead of an issue because I thought maybe you have better ideas. |
Beta Was this translation helpful? Give feedback.
1 reply
-
|
Makes sense, it's a bit like emacsclient too. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
My use case with VS Code
When I use VS Code as my editor, I often use its Integrated Terminal to interact with
git. And VS Code itself (code --wait) is my git commit editor.Whenever I run
git commit -v(without message) in my Integrated Terminal, a new VS Code tab would open for me to edit my message. I finish my commit message by Ctrl + SCtrl + W andgitwould register that message.VS Code has few properties that make this works well:
code --wait <filename>would open a new tab inside an existing VS Code window. VS Code only create a new window if the path is a directory instead of a file.--waitflag tells thecodeprocess to wait for the open tab from anothercodeinstance to close before closing.code --waitwould immediately grab focus from the Integrated Terminal.code --waitwould immediately return the user focus to the Integrated Terminal, enabling the user to continue with other commands (git pushfor example).Fresh doesn't support such use case
freshinside an Integrated Terminal offreshwould create a nestedfreshinstance.freshinstance shall not receive the usual keyboard shortcuts nor mouse signals because the parentfreshhas intercepted all of them.freshis impossible. Ctrl + Q would close the parentfreshitself. Attempting the menu bar doesn't work either.Suggestions
freshcommand to create new tab inside existingfreshinstance instead of a new one. Thefreshcommand should wait for the tab.fresh. Perhaps via an environment variable? When there is a parentfresh, running thefreshcommand should create a new editor tab.freshinsidefresh. A terminal application is expected to always create a new instance, so even when onefreshinstance already exist in one terminal emulator session, anotherfreshinstance should still be created in another unrelated terminal emulator session.freshalready. (This seems obvious, but the browser tabs don't work this way, closing a browser tab would switch the user to the tab stand next to it instead)Beta Was this translation helpful? Give feedback.
All reactions