Support broadcast input? #3703

Closed
opened 2026-01-30 23:27:43 +00:00 by claunia · 59 comments
Owner

Originally created by @shuosiw on GitHub (Sep 1, 2019).

Description of the new feature/enhancement

Sometimes i need to open many panes in a tab with splitHorizontal/splitVertical hotkeys. And then broadcast input to all the panes in current tab, or all tabs.

Is it possible to support broadcast input, like iterm2?

image

Originally created by @shuosiw on GitHub (Sep 1, 2019). <!-- 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING: 1. If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement. 2. If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement. 3. If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number). 4. If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement. 5. If I file something completely blank in the body, the core team may close my issue without further explanation or engagement. All good? Then proceed! --> # Description of the new feature/enhancement Sometimes i need to open many panes in a tab with splitHorizontal/splitVertical hotkeys. And then broadcast input to all the panes in current tab, or all tabs. Is it possible to support broadcast input, like iterm2? ![image](https://user-images.githubusercontent.com/2578976/64075757-fa971980-ccee-11e9-9e44-47aaf3bca76c.png) <!-- A clear and concise description of what the problem is that the new feature would solve. Describe why and how a user would use this new functionality (if applicable). --> <!-- A clear and concise description of what you want to happen. -->
Author
Owner

@zadjii-msft commented on GitHub (Sep 3, 2019):

I suppose there's no reason we couldn't support this.

It might need some refactoring to have a TermControl raise an event up to the App layer to have it transmit the input to all the terminals in the tab/window, but that's certainly possible.

@zadjii-msft commented on GitHub (Sep 3, 2019): I suppose there's no reason we _couldn't_ support this. It might need some refactoring to have a `TermControl` raise an event up to the `App` layer to have it transmit the input to all the terminals in the tab/window, but that's certainly possible.
Author
Owner

@shuosiw commented on GitHub (Sep 4, 2019):

@zadjii-msft
It is useful to maintain a series of servers with the same role. And now other popular terminals all support this feature, like iterm2 on OS X, cmder/conemu on windows, xshell/securCRT and so on.

SO PLEASE consider adding this feature!

@shuosiw commented on GitHub (Sep 4, 2019): @zadjii-msft It is useful to maintain a series of servers with the same role. And now other popular terminals all support this feature, like iterm2 on OS X, cmder/conemu on windows, xshell/securCRT and so on. SO PLEASE consider adding this feature!
Author
Owner

@zadjii-msft commented on GitHub (Oct 28, 2019):

Send the same command to all the active tabs within windows terminal

I hope windows terminal come with a feature that it can send the same command to all the active tabs.
Let's say we open 4 tabs within terminal,then each tab have a connection to a SSH server. and we want to know the status of the firewall on those server by issue "systemctl status firewalld" . but we want do it in one time. not one by one for each connection in these 4 tabs.

This feature had been implement in SecureCRT.

Bellow is the steps to send the same command to all active tabs in SecureCRT.

This can be done using the 'Chat Window'.

1. Select 'Chat Window' from the 'View' menu so that the window will be displayed.

2. Then just right click inside the 'Chat Window' and select the 'Send Chat to All Tabs' option in the pop-up menu.

3. Once enabled, any commands entered in the 'Chat Window' will be sent to all tabs when 'Enter' is pressed.

It will be very handy in daily task if it can be like that.

Originally posted by @tlsalex in #3352
@zadjii-msft commented on GitHub (Oct 28, 2019): > > # Send the same command to all the active tabs within windows terminal > > I hope windows terminal come with a feature that it can send the same command to all the active tabs. > Let's say we open 4 tabs within terminal,then each tab have a connection to a SSH server. and we want to know the status of the firewall on those server by issue "systemctl status firewalld" . but we want do it in one time. not one by one for each connection in these 4 tabs. > # This feature had been implement in SecureCRT. > > Bellow is the steps to send the same command to all active tabs in SecureCRT. > > This can be done using the 'Chat Window'. > > 1. Select 'Chat Window' from the 'View' menu so that the window will be displayed. > > 2. Then just right click inside the 'Chat Window' and select the 'Send Chat to All Tabs' option in the pop-up menu. > > 3. Once enabled, any commands entered in the 'Chat Window' will be sent to all tabs when 'Enter' is pressed. > > > # It will be very handy in daily task if it can be like that. ##### Originally posted by @tlsalex in #3352
Author
Owner

@Panlichen commented on GitHub (Aug 27, 2020):

We sure need that~

@Panlichen commented on GitHub (Aug 27, 2020): We sure need that~
Author
Owner

@a-abella commented on GitHub (Aug 27, 2020):

I am also very interested in this feature, and want to emphasize the multiple modes of broadcast operation that iTerm2 supports. It's important that broadcasting to all panes in the current tab be supported distinctly from broadcasting to all panes in the window.

@a-abella commented on GitHub (Aug 27, 2020): I am also very interested in this feature, and want to emphasize the multiple modes of broadcast operation that iTerm2 supports. It's important that broadcasting to all panes _in the current tab_ be supported distinctly from broadcasting to all panes in the window.
Author
Owner

@jeremymarlow commented on GitHub (Oct 21, 2020):

This is the only missing feature keeping this terminal from being used ubiquitously in my organization. Please add support for this!

@jeremymarlow commented on GitHub (Oct 21, 2020): This is the only missing feature keeping this terminal from being used ubiquitously in my organization. Please add support for this!
Author
Owner

@stealthsploit commented on GitHub (Nov 28, 2020):

Just throwing my six cents in on this, very interested as I've come from iTerm2 and also would find it very useful if there were options to broadcast to all panes in the current tab, as well as all panes in all tabs.

@stealthsploit commented on GitHub (Nov 28, 2020): Just throwing my six cents in on this, very interested as I've come from iTerm2 and also would find it very useful if there were options to broadcast to all panes in the current tab, as well as all panes in all tabs.
Author
Owner

@RJSzynal commented on GitHub (Dec 12, 2020):

Terminator also has the concept of groups. You can assign a pane to a named group and this allows broadcast to the group as well as all panes. This is very useful in the situation where I have both DB server and application server panes but want to broadcast to all of a particular type.
See here for an example: https://terminator-gtk2.readthedocs.io/en/latest/grouping.html

@RJSzynal commented on GitHub (Dec 12, 2020): Terminator also has the concept of groups. You can assign a pane to a named group and this allows broadcast to the group as well as all panes. This is very useful in the situation where I have both DB server and application server panes but want to broadcast to all of a particular type. See here for an example: https://terminator-gtk2.readthedocs.io/en/latest/grouping.html
Author
Owner

@killa1218 commented on GitHub (Jan 5, 2021):

Maybe it would also be very helpful if we can choose which panes to sync input among, instead of sending input to all the panes. This helps when we would like some pane to be the monitor of status and other panes run the same command in different directories:
20210105105938

@killa1218 commented on GitHub (Jan 5, 2021): Maybe it would also be very helpful if we can choose which panes to sync input among, instead of sending input to all the panes. This helps when we would like some pane to be the monitor of status and other panes run the same command in different directories: ![20210105105938](https://user-images.githubusercontent.com/5045159/103601983-e8ae3200-4f45-11eb-832c-daa3032cf19e.png)
Author
Owner

@Jongsic commented on GitHub (Feb 3, 2021):

I am also very interested in this feature, When will this feature be released? release plan?

@Jongsic commented on GitHub (Feb 3, 2021): I am also very interested in this feature, When will this feature be released? release plan?
Author
Owner

@DHowett commented on GitHub (Feb 3, 2021):

It will be released within a month after someone implements it! We aren’t planning on doing it before version 2.0, however.

@DHowett commented on GitHub (Feb 3, 2021): It will be released within a month after someone implements it! We aren’t planning on doing it before version 2.0, however.
Author
Owner

@zljubisic commented on GitHub (Feb 15, 2021):

@DHowett can you please specify approximately when v2.0 will be released?

@zljubisic commented on GitHub (Feb 15, 2021): @DHowett can you please specify approximately when v2.0 will be released?
Author
Owner

@zadjii-msft commented on GitHub (Feb 16, 2021):

@zljubisic Nope, not really. I'd rather ship 2.0 when it's ready, rather than stick to a firm date. We're hoping for end-of-year-ish, but that's a very soft window.

@zadjii-msft commented on GitHub (Feb 16, 2021): @zljubisic Nope, not really. I'd rather ship 2.0 when it's ready, rather than stick to a firm date. We're hoping for end-of-year-ish, but that's a very soft window.
Author
Owner

@zljubisic commented on GitHub (Feb 16, 2021):

@zadjii-msft This broadcast input is the most needed option for every power user.
If you have to configure several servers at once, you cannot live without it.
I really like windows terminal, but when I have to broadcast input, I have to use terminator.
I cannot figure out why implementing such option is a (big) problem.

@zljubisic commented on GitHub (Feb 16, 2021): @zadjii-msft This broadcast input is the most needed option for every power user. If you have to configure several servers at once, you cannot live without it. I really like windows terminal, but when I have to broadcast input, I have to use terminator. I cannot figure out why implementing such option is a (big) problem.
Author
Owner

@zadjii-msft commented on GitHub (Feb 16, 2021):

There are frankly other things that are a higher priority. This issue isn't on the first page of issues sorted by 👍, which right now is our best metric for judging the relative importance of issues. Don't worry, we are planning on getting to this, we just have some other commitments we have to finish first.

@zadjii-msft commented on GitHub (Feb 16, 2021): There are frankly other things that are a higher priority. This issue isn't on [the first page of issues sorted by 👍](https://github.com/microsoft/terminal/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc), which right now is our best metric for judging the relative importance of issues. Don't worry, we _are_ planning on getting to this, we just have some other commitments we have to finish first.
Author
Owner

@zljubisic commented on GitHub (Feb 16, 2021):

You want to say that "Add emoji support to Windows Console" is of higher priority? 😁

@zljubisic commented on GitHub (Feb 16, 2021): You want to say that "Add emoji support to Windows Console" is of higher priority? 😁
Author
Owner

@zadjii-msft commented on GitHub (Feb 16, 2021):

@zljubisic I serve at the pleasure of the community ☺️

@zadjii-msft commented on GitHub (Feb 16, 2021): @zljubisic I serve at the pleasure of the community ☺️
Author
Owner

@zljubisic commented on GitHub (Feb 16, 2021):

😁

@zljubisic commented on GitHub (Feb 16, 2021): 😁
Author
Owner

@zadjii-msft commented on GitHub (Mar 1, 2021):

@carlos-zamora this is the one I was talking about in team sync

@zadjii-msft commented on GitHub (Mar 1, 2021): @carlos-zamora this is the one I was talking about in team sync
Author
Owner

@carlos-zamora commented on GitHub (Mar 2, 2021):

@zadjii-msft

Alright, pulled up my MacBook and played around with iTerm2's broadcast input feature. Here's my findings:

  • Modes:
    • (default) Send input to current session only
      • This is how Windows Terminal works now. You select a pane and any/all input goes to that pane.
    • *broadcast input to all panes in all tabs
      • A warning is displayed. See below.
      • In effect until you toggle it (goes back to default state), or switch states.
      • Still in effect if you switch tabs (makes sense).
    • *broadcast input to all panes in current tab
      • A warning is displayed. See below.
      • In effect until you toggle it (goes back to default state), or switch states.
      • The scope of the effect is limited to the tab. So if you switch tabs, the tab you switched to is in its own separate state. If you come back to the first tab, you'll still be in this broadcast input mode.
    • toggle broadcast input to current session
      • No warning displayed.
      • Toggling broadcast input to a terminal session toggles the active pane icon.
      • Strange interactions with the other modes:
        • If you're in a different broadcast input mode, then you toggle the input mode for a terminal session specifically, the active pane icons stay on all the other terminals. Instead, the active pane icon is removed from the current terminal session, but (counterintuitively, IMO) all input goes only to the current terminal session. Toggling broadcast input mode for this session again (enabling it), makes all input go to all active panes again.
  • Miscellaneous notes:
    • There seem to be three indicators for a terminal session: the active pane icon, a blinking cursor, and a darker background color (in-focus?).
    • Broadcast input modes mainly update the active pane icons and darker background color for panes that are accepting input.
    • Interestingly, there's only ever one pane with a blinking cursor on the screen. When the broadcast input mode is exited, focus returns to the pane with the blinking cursor.
  • Navigating between broadcast input modes
    • modes
      • default
        • option+shift+cmd+I
        • windows equivalent --> alt+shift+ctrl+I
      • all panes & all tabs
        • shift+cmd+I
        • windows equivalent --> shift+ctrl+I
      • all panes in current tab
        • option+cmd+I
        • windows equivalent --> alt+ctrl+I
      • toggle input for current session
        • ctrl+option+shift+cmd+I
        • windows equivalent --> we don't have enough keys!!!
    • other invocation methods
      • You can go to the "Shell" menu item, then down to "Broadcast Input". You'll get a list of things you can do (see image submitted by author).
      • All four modes of broadcast input have a keybinding (as described above)
      • You can also right click on a pane and select "Toggle broadcasting input".
      • Windows Terminal's command palette sounds really useful here to me. I personally would love to have all of these broadcast input things be in a nested command item. Then I can just choose the one I want.
      • Windows Terminal would greatly benefit from a context menu here for toggling broadcast input to a specific session.

When entering a mode where input is being broadcast to multiple panes (the modes with a * above), the following warning appears.
Broadcast warning

If some kind of broadcast input mode is enabled, the affected panes get an icon in the top left:
Pane with active input

Active Pane Icon

The icon looks like Mac's command button and a cute little apple logo.

iTerm2's documentation on broadcast input mode (from docs site)
Broadcast Input Mode Documentation

Let me know if you have any questions. I can always play with this feature more. :)

@carlos-zamora commented on GitHub (Mar 2, 2021): @zadjii-msft Alright, pulled up my MacBook and played around with iTerm2's broadcast input feature. Here's my findings: - Modes: - (default) Send input to current session only - This is how Windows Terminal works now. You select a pane and any/all input goes to that pane. - *broadcast input to all panes in all tabs - A warning is displayed. See below. - In effect until you toggle it (goes back to default state), or switch states. - Still in effect if you switch tabs (makes sense). - *broadcast input to all panes in current tab - A warning is displayed. See below. - In effect until you toggle it (goes back to default state), or switch states. - The scope of the effect is limited to the tab. So if you switch tabs, the tab you switched to is in its own separate state. If you come back to the first tab, you'll still be in this broadcast input mode. - toggle broadcast input to current session - No warning displayed. - Toggling broadcast input to a terminal session toggles the active pane icon. - Strange interactions with the other modes: - If you're in a different broadcast input mode, then you toggle the input mode _for a terminal session specifically_, the active pane icons stay on all the other terminals. Instead, the active pane icon is removed from the current terminal session, but (counterintuitively, IMO) all input goes _only_ to the current terminal session. Toggling broadcast input mode for this session again (enabling it), makes all input go to _all_ active panes again. - Miscellaneous notes: - There seem to be three indicators for a terminal session: the active pane icon, a blinking cursor, and a darker background color (in-focus?). - Broadcast input modes mainly update the active pane icons and darker background color for panes that are accepting input. - Interestingly, there's only ever _one_ pane with a blinking cursor on the screen. When the broadcast input mode is exited, focus returns to the pane with the blinking cursor. - Navigating between broadcast input modes - modes - default - option+shift+cmd+I - windows equivalent --> alt+shift+ctrl+I - all panes & all tabs - shift+cmd+I - windows equivalent --> shift+ctrl+I - all panes in current tab - option+cmd+I - windows equivalent --> alt+ctrl+I - toggle input for current session - ctrl+option+shift+cmd+I - windows equivalent --> _we don't have enough keys!!!_ - other invocation methods - You can go to the "Shell" menu item, then down to "Broadcast Input". You'll get a list of things you can do (see image submitted by author). - All four modes of broadcast input have a keybinding (as described above) - You can also right click on a pane and select "Toggle broadcasting input". - Windows Terminal's command palette sounds really useful here to me. I personally would love to have all of these broadcast input things be in a nested command item. Then I can just choose the one I want. - Windows Terminal would greatly benefit from a context menu here for toggling broadcast input to a specific session. When entering a mode where input is being broadcast to multiple panes (the modes with a * above), the following warning appears. <img width="293" alt="Broadcast warning" src="https://user-images.githubusercontent.com/11050425/109692447-65701d80-7b3d-11eb-899f-7a38a666d4b5.png"> If some kind of broadcast input mode is enabled, the affected panes get an icon in the top left: <img width="720" alt="Pane with active input" src="https://user-images.githubusercontent.com/11050425/109692845-d9122a80-7b3d-11eb-80ff-ef00f66f2d30.png"> <img width="42" alt="Active Pane Icon" src="https://user-images.githubusercontent.com/11050425/109692974-f646f900-7b3d-11eb-95b7-b36737c6a993.png"> The icon looks like Mac's command button and a cute little apple logo. iTerm2's documentation on broadcast input mode (from [docs site](https://iterm2.com/documentation-one-page.html)) <img width="689" alt="Broadcast Input Mode Documentation" src="https://user-images.githubusercontent.com/11050425/109695131-6a829c00-7b40-11eb-97e1-e682b77bcea1.png"> Let me know if you have any questions. I can always play with this feature more. :)
Author
Owner

@zadjii-msft commented on GitHub (Mar 2, 2021):

@carlos-zamora thanks! Can you check one other thing for me? From https://github.com/microsoft/terminal/pull/9222#issuecomment-783539624

The scenario that gets me is like:

  1. Enable broadcast input for a pane in tab 1
  2. switch to tab 2
  3. execute action C to send input to all the panes in the current tab

Does that mean that you're now broadcasting to the pane in tab 1 and all the panes in tab 2? If at this point you:

  1. Switch to tab 3

now who's getting input? All the panes in tab 3? All the panes in tab 2? All the panes in 2, plus that first pane, plus the active pane in 3?

@zadjii-msft commented on GitHub (Mar 2, 2021): @carlos-zamora thanks! Can you check one other thing for me? From https://github.com/microsoft/terminal/pull/9222#issuecomment-783539624 > The scenario that gets me is like: > 1. Enable broadcast input for a pane in tab 1 > 2. switch to tab 2 > 3. execute action C to send input to all the panes in the current tab > > Does that mean that you're now broadcasting to the pane in tab 1 and all the panes in tab 2? If at this point you: > > 4. Switch to tab 3 > > now who's getting input? All the panes in tab 3? All the panes in tab 2? All the panes in 2, plus that first pane, plus the active pane in 3? >
Author
Owner

@carlos-zamora commented on GitHub (Mar 2, 2021):

@carlos-zamora thanks! Can you check one other thing for me? From #9222 (comment)

The scenario that gets me is like:

  1. Enable broadcast input for a pane in tab 1
  2. switch to tab 2
  3. execute action C to send input to all the panes in the current tab

Does that mean that you're now broadcasting to the pane in tab 1 and all the panes in tab 2? If at this point you:

  1. Switch to tab 3

now who's getting input? All the panes in tab 3? All the panes in tab 2? All the panes in 2, plus that first pane, plus the active pane in 3?

@zadjii-msft Surprisngly, step 3 removes the "toggle broadcast input" icon (or active pane icon, whatever), from tab 1. You are not only broadcasting input to all panes in tab 2.

If you then do step 4, all input now only goes to your active session in tab 3.

I think this is a bit of what I was saying where your broadcast mode is scoped to the tab unless you are broadcasting input to all panes in all tabs.

@carlos-zamora commented on GitHub (Mar 2, 2021): > @carlos-zamora thanks! Can you check one other thing for me? From [#9222 (comment)](https://github.com/microsoft/terminal/pull/9222#issuecomment-783539624) > > > The scenario that gets me is like: > > > > 1. Enable broadcast input for a pane in tab 1 > > 2. switch to tab 2 > > 3. execute action C to send input to all the panes in the current tab > > > > Does that mean that you're now broadcasting to the pane in tab 1 and all the panes in tab 2? If at this point you: > > > > 1. Switch to tab 3 > > > > now who's getting input? All the panes in tab 3? All the panes in tab 2? All the panes in 2, plus that first pane, plus the active pane in 3? @zadjii-msft Surprisngly, step 3 removes the "toggle broadcast input" icon (or active pane icon, whatever), from tab 1. You are not _only_ broadcasting input to all panes in tab 2. If you then do step 4, all input now _only_ goes to your active session in tab 3. I think this is a bit of what I was saying where your broadcast mode is scoped to the tab _unless_ you are broadcasting input to all panes in all tabs.
Author
Owner

@zadjii-msft commented on GitHub (Mar 2, 2021):

Interesting! That's not what I would have expected. Thanks for digging in on all this ☺️

@zadjii-msft commented on GitHub (Mar 2, 2021): Interesting! That's not what I would have expected. Thanks for digging in on all this ☺️
Author
Owner

@ydguala commented on GitHub (Jul 23, 2021):

I have tried this feature in other terminals and I am really missing it in Windows Terminal :')

@ydguala commented on GitHub (Jul 23, 2021): I have tried this feature in other terminals and I am really missing it in Windows Terminal :')
Author
Owner

@jvandervoort commented on GitHub (Sep 23, 2021):

I use split planes with Terminator on Linux to broadcast input to all panes within a tab. This is great when I want to login to a bunch of different cloud boxes running the same daemons to check logs, kick services, and do other various things all at once instead of one at a time. I can run it in WSL, but its horribly rendered and I like shiny things on my dual 4K monitors and Windows 11.

Windows Terminal has a lot of potential to convert over engineers currently using Linux and macOS , little features like this that make our lives easier and increase productivity go a long way to making people switch.

Hit me up if I can test any fun dev builds or give more detailed feedback.

@jvandervoort commented on GitHub (Sep 23, 2021): I use split planes with Terminator on Linux to broadcast input to all panes within a tab. This is great when I want to login to a bunch of different cloud boxes running the same daemons to check logs, kick services, and do other various things all at once instead of one at a time. I can run it in WSL, but its horribly rendered and I like shiny things on my dual 4K monitors and Windows 11. Windows Terminal has a lot of potential to convert over engineers currently using Linux and macOS , little features like this that make our lives easier and increase productivity go a long way to making people switch. Hit me up if I can test any fun dev builds or give more detailed feedback.
Author
Owner

@flashadvocate commented on GitHub (Sep 23, 2021):

I use split planes with Terminator on Linux to broadcast input to all panes within a tab. This is great when I want to login to a bunch of different cloud boxes running the same daemons to check logs, kick services, and do other various things all at once instead of one at a time. I can run it in WSL, but its horribly rendered and I like shiny things on my dual 4K monitors and Windows 11.

Windows Terminal has a lot of potential to convert over engineers currently using Linux and macOS , little features like this that make our lives easier and increase productivity go a long way to making people switch.

Hit me up if I can test any fun dev builds or give more detailed feedback.

The more recent work done to Windows Terminal Preview has been absolutely amazing. But for the love of all things good and holy, please spend some time on supporting broadcast input! Quite frankly, once we have this, I'm pretty much at feature parity with tools like iterm2, and as someone trying to make the switch to PC from a Mac, WSL2 and Windows Terminal have been a game changer.

@flashadvocate commented on GitHub (Sep 23, 2021): > I use split planes with Terminator on Linux to broadcast input to all panes within a tab. This is great when I want to login to a bunch of different cloud boxes running the same daemons to check logs, kick services, and do other various things all at once instead of one at a time. I can run it in WSL, but its horribly rendered and I like shiny things on my dual 4K monitors and Windows 11. > > Windows Terminal has a lot of potential to convert over engineers currently using Linux and macOS , little features like this that make our lives easier and increase productivity go a long way to making people switch. > > Hit me up if I can test any fun dev builds or give more detailed feedback. The more recent work done to Windows Terminal Preview has been absolutely amazing. But for the love of all things good and holy, **please** spend some time on supporting broadcast input! Quite frankly, once we have this, I'm pretty much at feature parity with tools like iterm2, and as someone trying to make the switch to PC from a Mac, WSL2 and Windows Terminal have been a game changer.
Author
Owner

@zadjii-msft commented on GitHub (Sep 23, 2021):

The spec is in #9365, we just have a lot of other priorities ahead of this one currently. Feedback is welcome there though!

@zadjii-msft commented on GitHub (Sep 23, 2021): The spec is in #9365, we just have a lot of other priorities ahead of this one currently. Feedback is welcome there though!
Author
Owner

@lajosthiel commented on GitHub (Nov 29, 2021):

@zadjii-msft IMHO this is one of the most useful features in Terminator/iterm2 for power users that have to do SSH sessions on multiple servers/instances. For me it's one of the most important feature in a good terminal emulator and I guess a lot of people would highly appreciate this feature being implemented rather sooner then later. IMHO it would be sufficient to just "make it work somehow" for now so we don't have to repeat/copy-paste between terminal windows. You could add the fancy stuff like groups etc. in a later release, but if we could have a base version for now that just broadcasts to all panes in the current tab I would be more than happy.

@lajosthiel commented on GitHub (Nov 29, 2021): @zadjii-msft IMHO this is one of the most useful features in Terminator/iterm2 for power users that have to do SSH sessions on multiple servers/instances. For me it's one of the most important feature in a good terminal emulator and I guess a lot of people would highly appreciate this feature being implemented rather sooner then later. IMHO it would be sufficient to just "make it work somehow" for now so we don't have to repeat/copy-paste between terminal windows. You could add the fancy stuff like groups etc. in a later release, but if we could have a base version for now that just broadcasts to all panes in the current tab I would be more than happy.
Author
Owner

@tommy-hansen commented on GitHub (Jan 6, 2022):

Not using iTerm2 but I'd be very happy with something that just works like Tmux's synchronize-panes feature. Nothing fancy, just send to all panes or not. (https://stackoverflow.com/a/23704472)

@tommy-hansen commented on GitHub (Jan 6, 2022): Not using iTerm2 but I'd be very happy with something that just works like Tmux's `synchronize-panes` feature. Nothing fancy, just send to all panes or not. (https://stackoverflow.com/a/23704472)
Author
Owner

@rmasci commented on GitHub (Jan 11, 2022):

On my mac I have a program I wrote that greps systems out of the /etc/hosts, then one by one opens them in tabs in iterm. So, with one command I can open all 20 prod systems. Then I can broadcast the input to all 20 systems to perform the task at hand. The first thing I look for in a terminal app is if it can do tabs. Then can I script the opening of those tabs. Then can I broadcast the input to those tabs. Iterm2 is really the reason I run a mac. Apple should be paying these guys. If Iterm ran on windows, I'd probably switch over to windows. I mean on my mac outlook, teams, word, powerpoint, excel, onenote, edge, vsCode, iterm are the programs I use most so if Windows had an iterm replacement why run a mac?

@rmasci commented on GitHub (Jan 11, 2022): On my mac I have a program I wrote that greps systems out of the /etc/hosts, then one by one opens them in tabs in iterm. So, with one command I can open all 20 prod systems. Then I can broadcast the input to all 20 systems to perform the task at hand. The first thing I look for in a terminal app is if it can do tabs. Then can I script the opening of those tabs. Then can I broadcast the input to those tabs. Iterm2 is really the reason I run a mac. Apple should be paying these guys. If Iterm ran on windows, I'd probably switch over to windows. I mean on my mac outlook, teams, word, powerpoint, excel, onenote, edge, vsCode, iterm are the programs I use most so if Windows had an iterm replacement why run a mac?
Author
Owner

@AlistairHardy commented on GitHub (Mar 2, 2022):

IMO, this is the one feature Windows Terminal is missing. I'm currently using the Tmux command in WSL to get this. I often setup multiple servers in HA clusters (for example, I'm currently installing a new Artifactory cluster) and the install process is normally 99% the same inputs.

@AlistairHardy commented on GitHub (Mar 2, 2022): IMO, this is the one feature Windows Terminal is missing. I'm currently using the Tmux command in WSL to get this. I often setup multiple servers in HA clusters (for example, I'm currently installing a new Artifactory cluster) and the install process is normally 99% the same inputs.
Author
Owner

@ghost commented on GitHub (Apr 7, 2022):

This is very much needed, and this is pretty much the only reason that i'm still using SecureCRT.

@ghost commented on GitHub (Apr 7, 2022): This is very much needed, and this is pretty much the only reason that i'm still using SecureCRT.
Author
Owner

@mburstinisc commented on GitHub (Apr 28, 2022):

Just want to chime in that doing this in an iTerm2/Terminator style where one of the windows is "active" is far better than SecureCRT style where there is a "chat window" that broadcasts later because an active window allows you to for command-line completion, etc.
Another vote that this is something that is very much needed.

@mburstinisc commented on GitHub (Apr 28, 2022): Just want to chime in that doing this in an iTerm2/Terminator style where one of the windows is "active" is far better than SecureCRT style where there is a "chat window" that broadcasts later because an active window allows you to <TAB> for command-line completion, etc. Another vote that this is something that is very much needed.
Author
Owner

@zadjii-msft commented on GitHub (Apr 28, 2022):

doing this in an iTerm2/Terminator style where one of the windows is "active" is far better than SecureCRT style where there is a "chat window" that broadcasts later

That's exactly how it's spec'd in #9365 😉

@zadjii-msft commented on GitHub (Apr 28, 2022): > doing this in an iTerm2/Terminator style where one of the windows is "active" is far better than SecureCRT style where there is a "chat window" that broadcasts later That's exactly how it's spec'd in #9365 😉
Author
Owner

@AssenSpassov commented on GitHub (Oct 10, 2022):

I also use tmux on Linux and it has this functionality built-in and it is quite handy. I have often dreamed to be able to do this with PowerShell and/or Dos (cmd) sessions though. Another advantage which Terminal could bring to the table is that maybe because terminal is a UI it would be possible to select panes with a checkbox and in a layout with e.g. 6 sessions, we select only 4 to be in sync with each other and the other 2 work independently from each other and all the rest, or they sync between the two of them regardless which one is active. The numbers are arbitrary and the functionality should be able to work with completely different division and number of synced pane-groups.

@AssenSpassov commented on GitHub (Oct 10, 2022): I also use tmux on Linux and it has this functionality built-in and it is quite handy. I have often dreamed to be able to do this with PowerShell and/or Dos (cmd) sessions though. Another advantage which Terminal could bring to the table is that maybe because terminal is a UI it would be possible to select panes with a checkbox and in a layout with e.g. 6 sessions, we select only 4 to be in sync with each other and the other 2 work independently from each other and all the rest, or they sync between the two of them regardless which one is active. The numbers are arbitrary and the functionality should be able to work with completely different division and number of synced pane-groups.
Author
Owner

@rmasci commented on GitHub (Oct 10, 2022):

Looking at Konsole -- you have a choice, either send it to all tabs in the
window, or send it to select. Picking select allows you to select which tab
to send the broadcast to. This would be a good feature to emulate with
terminal.

@rmasci commented on GitHub (Oct 10, 2022): Looking at Konsole -- you have a choice, either send it to all tabs in the window, or send it to select. Picking select allows you to select which tab to send the broadcast to. This would be a good feature to emulate with terminal.
Author
Owner

@tekkitan commented on GitHub (Oct 20, 2022):

This is definitely needed. Having a suitable iTerm2 replacement is pretty much the only thing keeping my company from switching from macOS to Windows. Seems small to some people but to developers and people that manage hundred of Linux systems, it is pretty much a must have quality of life feature.

@tekkitan commented on GitHub (Oct 20, 2022): This is definitely needed. Having a suitable iTerm2 replacement is pretty much the only thing keeping my company from switching from macOS to Windows. Seems small to some people but to developers and people that manage hundred of Linux systems, it is pretty much a must have quality of life feature.
Author
Owner

@easmithdev commented on GitHub (Oct 21, 2022):

I use Terminator inside an Ubuntu Desktop guest instance of VMware Workstation to get this feature. I use the guest instance for other things as well, but this feature is probably one of the main reasons. If Windows Terminal added the ability to do broadcasts to multiple panes and tabs, then that would be great.

I see that this issue was opened 3 years ago. Is it safe to assume this feature is just NOT going to be added? It's almost as if this is of little-to-no priority to the Windows Terminal developers. I wish there was a way to make them see that it would be a huge gamechanger if the feature was added, but I digress.

@easmithdev commented on GitHub (Oct 21, 2022): I use Terminator inside an Ubuntu Desktop guest instance of VMware Workstation to get this feature. I use the guest instance for other things as well, but this feature is probably one of the main reasons. If Windows Terminal added the ability to do broadcasts to multiple panes and tabs, then that would be great. I see that this issue was opened 3 years ago. Is it safe to assume this feature is just NOT going to be added? It's almost as if this is of little-to-no priority to the Windows Terminal developers. I wish there was a way to make them see that it would be a huge gamechanger if the feature was added, but I digress.
Author
Owner

@zadjii-msft commented on GitHub (Oct 22, 2022):

I'm sorry if we've given the impression that this feature isn't important. It absolutely is! I wish we had the resources available to us to get to everything the community asks for faster, but alas, we've got to pick and choose our battles.

We have had some progress on this in the past. There's a draft spec in #9365. There was a community PR a while back in #9222, which was quite promising but got a little too into the weeds for its own good. I don't think it's too far away from the finish line, just needs the diligence to polish it off.

@zadjii-msft commented on GitHub (Oct 22, 2022): I'm sorry if we've given the impression that this feature isn't important. It absolutely is! I wish we had the resources available to us to get to everything the community asks for faster, but alas, we've got to pick and choose our battles. We have had some progress on this in the past. There's a draft spec in #9365. There was a community PR a while back in #9222, which was quite promising but got a little too into the weeds for its own good. I don't think it's too far away from the finish line, just needs the diligence to polish it off.
Author
Owner

@bhowmickkrishnendu commented on GitHub (Nov 4, 2022):

is this going to introduce in next update ?

@bhowmickkrishnendu commented on GitHub (Nov 4, 2022): is this going to introduce in next update ?
Author
Owner

@zadjii-msft commented on GitHub (Nov 4, 2022):

is this going to introduce in next update ?

Nope. This currently isn't assigned to a milestone. Officially, we're still reviewing the spec, but we haven't really bumped that thread in a while. If someone were to come along and try to resurrect #9222, that might force our hand to get our gears in motion. This isn't currently planned for at least a few months.

We'll make sure to update this thread when there's progress. In the meantime, might I recommend the Subscribe button?
image
That way you'll be notified of any updates to this thread, without needlessly pinging everyone on this thread ☺️

@zadjii-msft commented on GitHub (Nov 4, 2022): > is this going to introduce in next update ? Nope. This currently isn't assigned to a milestone. Officially, we're still reviewing the spec, but we haven't really bumped that thread in a while. If someone were to come along and try to resurrect #9222, that might force our hand to get our gears in motion. This isn't currently planned for at least a few months. We'll make sure to update this thread when there's progress. In the meantime, might I recommend the Subscribe button? ![image](https://user-images.githubusercontent.com/18356694/91237459-5cbb0c80-e700-11ea-9347-b9b1ec2813b1.png) That way you'll be notified of any updates to this thread, without needlessly pinging everyone on this thread ☺️
Author
Owner

@zadjii-msft commented on GitHub (Nov 4, 2022):

Hey just as a feeler for folks following in this thread - How much demand is there for broadcasting to a subset of panes across multiple tabs? e.g.

  • Tab 1
    • Pane A
    • Pane B
    • Pane C
  • Tab 2
    • Pane D
    • Pane E
    • Pane F

Are folks looking for the ability to broadcast to [A, E] (for example)?

I'm pretty sure the spec currently covers

  • Broadcast to any subset of a single tab's panes
  • Broadcast to all panes in the current tab
  • Broadcast to all panes in all tabs

but only Proposal 2 in the spec covers "broadcast to multiple panes in multiple different tabs"

@zadjii-msft commented on GitHub (Nov 4, 2022): Hey just as a feeler for folks following in this thread - How much demand is there for broadcasting to a subset of panes across multiple tabs? e.g. * Tab 1 * Pane A * Pane B * Pane C * Tab 2 * Pane D * Pane E * Pane F Are folks looking for the ability to broadcast to [A, E] (for example)? I'm pretty sure the spec currently covers * Broadcast to any subset of a single tab's panes * Broadcast to all panes in the current tab * Broadcast to all panes in all tabs but only Proposal 2 in the spec covers "broadcast to multiple panes in multiple different tabs"
Author
Owner

@AlistairHardy commented on GitHub (Nov 4, 2022):

Hey just as a feeler for folks following in this thread - How much demand is there for broadcasting to a subset of panes across multiple tabs? e.g.

I could see that functionality being useful. It'd allow me to have a tab with a single pane to work on, but it that blurts it out to the next tab that contains several panes.

For me, the MVP is broadcasting to all panes in a single tab. Anything after that is a bonus.

@AlistairHardy commented on GitHub (Nov 4, 2022): > Hey just as a feeler for folks following in this thread - How much demand is there for broadcasting to a subset of panes across multiple tabs? e.g. I could see that functionality being useful. It'd allow me to have a tab with a single pane to work on, but it that blurts it out to the next tab that contains several panes. For me, the MVP is broadcasting to all panes in a single tab. Anything after that is a bonus.
Author
Owner

@a-abella commented on GitHub (Nov 4, 2022):

@zadjii-msft I think the current spec is entirely reasonable and is just about on equal terms with the capabilities of other popular terminal emulators. The second proposal sounds interesting from a flexibility standpoint but I think is ultimately unnecessary. If you want to broadcast to two specific panes there's no reason a user can't just create a new tab with only two panes and do their broadcasting in that tab.

I agree with @AlistairHardy, the important one is broadcasting to all panes in the current tab. I would call this behavior "familiar" and as a productivity feature, familiar is good.

@a-abella commented on GitHub (Nov 4, 2022): @zadjii-msft I think the current spec is entirely reasonable and is just about on equal terms with the capabilities of other popular terminal emulators. The second proposal sounds interesting from a flexibility standpoint but I think is ultimately unnecessary. If you want to broadcast to two specific panes there's no reason a user can't just create a new tab with only two panes and do their broadcasting in that tab. I agree with @AlistairHardy, the important one is broadcasting to all panes in the current tab. I would call this behavior "familiar" and as a productivity feature, familiar is good.
Author
Owner

@tekkitan commented on GitHub (Nov 4, 2022):

Hey just as a feeler for folks following in this thread - How much demand is there for broadcasting to a subset of panes across multiple tabs?

I would say that having the option to just do all panes in one tab would be worlds better than nothing at all. At least with that method we would be able to control which panes are in the active tab.

@tekkitan commented on GitHub (Nov 4, 2022): > Hey just as a feeler for folks following in this thread - How much demand is there for broadcasting to a subset of panes across multiple tabs? I would say that having the option to just do all panes in one tab would be worlds better than nothing at all. At least with that method we would be able to control which panes are in the active tab.
Author
Owner

@tommy-hansen commented on GitHub (Nov 4, 2022):

If we could just have broadcast to all panes in one tab in v1 it would be great! Then tinker around the edges as you please. 😉

@tommy-hansen commented on GitHub (Nov 4, 2022): If we could just have broadcast to all panes in one tab in v1 it would be great! Then tinker around the edges as you please. :wink:
Author
Owner

@lajosthiel commented on GitHub (Nov 6, 2022):

Are folks looking for the ability to broadcast to [A, E] (for example)?

IMHO, even though other Terminal Emulators support this, it could even be dangerous and unexpected as you broadcast to a session that is not visible to you. Personally, I'd rather open more terminals in the current tab and have all the sessions I broadcast input to in my view.

I'm pretty sure the spec currently covers

* Broadcast to any subset of a single tab's panes

From my point of view this is nice to have but not as important as:

* Broadcast to all panes in the current tab

This should be Version 1.

* Broadcast to all panes in all tabs

IMHO not needed at all.

@lajosthiel commented on GitHub (Nov 6, 2022): > Are folks looking for the ability to broadcast to [A, E] (for example)? IMHO, even though other Terminal Emulators support this, it could even be dangerous and unexpected as you broadcast to a session that is not visible to you. Personally, I'd rather open more terminals in the current tab and have all the sessions I broadcast input to in my view. > > I'm pretty sure the spec currently covers > > * Broadcast to any subset of a single tab's panes From my point of view this is nice to have but not as important as: > * Broadcast to all panes in the current tab This should be Version 1. > * Broadcast to all panes in all tabs IMHO not needed at all.
Author
Owner

@mburstinisc commented on GitHub (Nov 7, 2022):

Hey just as a feeler for folks following in this thread - How much demand is there for broadcasting to a subset of panes across multiple tabs? e.g.

* Tab 1
  
  * Pane A
  * Pane B
  * Pane C

* Tab 2
  
  * Pane D
  * Pane E
  * Pane F

Are folks looking for the ability to broadcast to [A, E] (for example)?

I'm pretty sure the spec currently covers

* Broadcast to any subset of a single tab's panes

* Broadcast to all panes in the current tab

* Broadcast to all panes in all tabs

but only Proposal 2 in the spec covers "broadcast to multiple panes in multiple different tabs"

I would be happy with all panes in a single tab or a subset of panes within a tab. I don't need all panes in all tabs.

A subset in the current tab lets me do what I need -- For example, I could start an upgrade in all panes than pause broadcast to all if a subset fail for the same reason and resolve those failures by broadcasting them if necessary.

I would also be happy if revision 1 gave us all panes in the tab and then the next update added the subset -- just at least get all panes out there!

@mburstinisc commented on GitHub (Nov 7, 2022): > Hey just as a feeler for folks following in this thread - How much demand is there for broadcasting to a subset of panes across multiple tabs? e.g. > > * Tab 1 > > * Pane A > * Pane B > * Pane C > > * Tab 2 > > * Pane D > * Pane E > * Pane F > > > Are folks looking for the ability to broadcast to [A, E] (for example)? > > I'm pretty sure the spec currently covers > > * Broadcast to any subset of a single tab's panes > > * Broadcast to all panes in the current tab > > * Broadcast to all panes in all tabs > > > but only Proposal 2 in the spec covers "broadcast to multiple panes in multiple different tabs" I would be happy with all panes in a single tab or a subset of panes within a tab. I don't need all panes in all tabs. A subset in the current tab lets me do what I need -- For example, I could start an upgrade in all panes than pause broadcast to all if a subset fail for the same reason and resolve those failures by broadcasting them if necessary. I would also be happy if revision 1 gave us all panes in the tab and then the next update added the subset -- just at least get all panes out there!
Author
Owner

@mirajgodha commented on GitHub (Nov 15, 2022):

This is must have feature, moving from MacOS iTerm2 to windows, and not having this features creates lot of problems when working on multiple machines simultaneously.
Hope to see this feature in near future release.

@mirajgodha commented on GitHub (Nov 15, 2022): This is must have feature, moving from MacOS iTerm2 to windows, and not having this features creates lot of problems when working on multiple machines simultaneously. Hope to see this feature in near future release.
Author
Owner

@matys1 commented on GitHub (May 1, 2023):

Any update on this?

@matys1 commented on GitHub (May 1, 2023): Any update on this?
Author
Owner

@zadjii-msft commented on GitHub (May 1, 2023):

It's in PR, which is linked to this thread. I'm hoping to merge it for 1.19. 1.18 was a little too busy to land this one too.

@zadjii-msft commented on GitHub (May 1, 2023): It's in PR, which is linked to this thread. I'm hoping to merge it for 1.19. 1.18 was a little too busy to land this one too.
Author
Owner

@Valeriemary commented on GitHub (May 3, 2023):

Thanks for the response

On Mon, May 1, 2023 at 4:26 AM Mike Griese @.***> wrote:

It's in PR, which is linked to this thread. I'm hoping to merge it for
1.19. 1.18 was a little too busy to land this one too.


Reply to this email directly, view it on GitHub
https://github.com/microsoft/terminal/issues/2634#issuecomment-1529604012,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6NWLSWJ7AGDKJHFFQSGYQ3XD6MXTANCNFSM4ISWQJCA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Lios

@Valeriemary commented on GitHub (May 3, 2023): Thanks for the response On Mon, May 1, 2023 at 4:26 AM Mike Griese ***@***.***> wrote: > It's in PR, which is linked to this thread. I'm hoping to merge it for > 1.19. 1.18 was a little too busy to land this one too. > > — > Reply to this email directly, view it on GitHub > <https://github.com/microsoft/terminal/issues/2634#issuecomment-1529604012>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/A6NWLSWJ7AGDKJHFFQSGYQ3XD6MXTANCNFSM4ISWQJCA> > . > You are receiving this because you are subscribed to this thread.Message > ID: ***@***.***> > -- Lios
Author
Owner

@3N4N commented on GitHub (Jul 18, 2023):

I am looking for a similar feature. Instead of sending a text over all the panes (broadcasting), I want to send a text to a specific pane. This needs to have a command-line action. The usecase is to send visually-selected text from Vim in MS Terminal to its adjacent pane. I found an action called sendInput, but don't know if that be called from the shell.

@3N4N commented on GitHub (Jul 18, 2023): I am looking for a similar feature. Instead of sending a text over all the panes (broadcasting), I want to send a text to a specific pane. This needs to have a command-line action. The usecase is to send visually-selected text from Vim in MS Terminal to its adjacent pane. I found an action called `sendInput`, but don't know if that be called from the shell.
Author
Owner

@DHowett commented on GitHub (Jul 18, 2023):

Interesting! We're not exactly keen today on adding support for wt send-input (or equivalent), on account of how it would trivially allow any application to inject input into any WT instance running at the user's integrity level. I wonder if there's another way to pull off what you're looking for.

(This is somewhat off topic for the "broadcast input" thread, so I'm going to fork it into a discussion if it continues 😄)

@DHowett commented on GitHub (Jul 18, 2023): _Interesting!_ We're not exactly keen today on adding support for `wt send-input` (or equivalent), on account of how it would trivially allow any application to inject input into any WT instance running at the user's integrity level. I wonder if there's another way to pull off what you're looking for. (This is somewhat off topic for the "broadcast input" thread, so I'm going to fork it into a discussion if it continues :smile:)
Author
Owner

@zadjii-msft commented on GitHub (Jul 18, 2023):

Yea, let's continue the send-input topic over in #9368. Thanks!

@zadjii-msft commented on GitHub (Jul 18, 2023): Yea, let's continue the `send-input` topic over in #9368. Thanks!
Author
Owner

@soheilamiri commented on GitHub (Dec 12, 2023):

Broadcast Input feature is very nice. can we customize it for specific panes not all panes ?

@soheilamiri commented on GitHub (Dec 12, 2023): Broadcast Input feature is very nice. can we customize it for specific panes not all panes ?
Author
Owner

@mhrdq8i commented on GitHub (Apr 14, 2024):

I see this issue is for more than 5ys ago.
But I didn't see it till now (2024)
Have they added it or not?

@mhrdq8i commented on GitHub (Apr 14, 2024): I see this issue is for more than 5ys ago. But I didn't see it till now (2024) Have they added it or not?
Author
Owner

@corbob commented on GitHub (Apr 14, 2024):

@mehrdadq8i: Yes, it's in version 1.19. You can enable it from the command palette. DevBlog announcing the preview: https://devblogs.microsoft.com/commandline/windows-terminal-preview-1-19-release

Docs details: https://learn.microsoft.com/en-us/windows/terminal/customize-settings/actions#broadcast-input

@corbob commented on GitHub (Apr 14, 2024): @mehrdadq8i: Yes, it's in version 1.19. You can enable it from the command palette. DevBlog announcing the preview: https://devblogs.microsoft.com/commandline/windows-terminal-preview-1-19-release Docs details: https://learn.microsoft.com/en-us/windows/terminal/customize-settings/actions#broadcast-input
Author
Owner

@Jaypers commented on GitHub (Apr 30, 2024):

Will this feature be implemented for sending the same input across all tabs not just panes within a tab or to all panes in a window?

@Jaypers commented on GitHub (Apr 30, 2024): Will this feature be implemented for sending the same input across all tabs not just panes within a tab or to all panes in a window?
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#3703