Duplicate a cable by holding option and dragging from the input port

Alt/Shift/Cmd-drag a cable from an input to copy it, whichever is best suited. If you have a lot of nodes that use the same input it would be a lot less time consuming and messy to be able to copy the cable from the first you drag over from a render node than to drag over all cables from the render node.

I’ve opened this feature request for community voting.

I just noticed that this is a duplicate of a feature on this list: https://community.vuo.org/t/-/4632. Should this be kept as an emphasis feature request?

Yes, actually, I think we should split that other mega-feature-request into smaller ones (like this one). So I’ll keep this feature request open.

Author of the mega-feature-request here… This is a feature I’m really missing from QC. The opt+drag shortcut is already reserved for forcing event-only cables, I understand, but the option key is used for forcing a copy of something across the Mac OS, so I think using that key is important for this.

@smokris - Here are two ideas on how to implement this, beyond the obvious use-another-modifier-key-and-drag solution:

  1. Click and drag a cable from a node’s output to another node’s input, but instead of releasing the mouse button, press and release the option key to drop a cable. Then continue to drag the mouse to another input and repeat, all without releasing the mouse button (until you’re finished, of course).
  2. Click and drag a cable from a node’s output to another node’s input and release to drop a cable. Then, opt+click the cable near the input and drag. The cable is duplicated, so the original cable stays put, and a new cable can be created originating from the same output without having to drag it from the output itself. (I notice in 1.2.1 that opt+clicking and dragging a cable away from an input behaves like a normal drag, but pressing option once the drag is initiated turns the cable into an event-only cable. So this solution would require that a opt+drag continues to be distinct from a drag-then-opt.)

It actually sounds like the simplest and most UI-convention-following solution would be to change the shortcut for event-only cables. If event-only cables were shift-drag, then duplicating cables could be option-drag.

1 Like

Nice stuff guys ! My 2 cent resume, ideas and questions :

a - Drag / hold a cable from an Output Port for multiple Input Ports (based on Philip’s ideas).

Opt + drag a cable from an Output Port, release the cable on a first Input Port of a first node, and as long as you’d hold the Opt key, the mouse would drag that cable, click on several other Input Ports to connect that cable to other nodes, release the Opt key when you’re done.

So in the screenshot below, I could opt+drag one and only cable from Mix Audio Channels and connect it to both
Calculate Loudness AND Calculate Amplitude for Frequencies.

b - Duplicate an already connected cable for other ports (Martinus original idea if I’m right).

Opt + drag an already connected cable from an Input Port to allow you to connect it to another node (so instead of taking away the cable from that Input Port, it would duplicate).

This will be great when working somewhere on the canvas far away from the node that the cable is from because you wouldn’t have to scroll the whole canvas back and forth to re-drag a new cable.

In the 2nd screenshot below, I could opt+drag the already connected cable from Calculate Loudness to connect it to Calculate Amplitude for Frequencies too, without having to go back to the original node.

c - a + b - Combine both

b could act the same as a, when opt + drag a cable from an Input Port to duplicate the already connected cable, as long as you’d hold the Opt key down, it would allow you to connect it to multiple ports.

Looks like @Pianomatic’s idea (2) and @Bodysoulspirit’s idea (b) are the same — Option-dragging an existing cable makes a duplicate. When you regular-drag a cable from an input port, it would still disconnect the cable from that port and allow reconnecting it to another port. When you option-drag a cable from an input port, it would leave one copy of the cable connected and give you another one that’s disconnected and can be reconnected to another port.

That sounds like a good way to implement this feature.

@Pianomatic’s idea (1) involves tapping the option key to create cables. @Bodysoulspirit’s idea (a) involves clicking to create cables. I don’t think either of those approaches would be as usable as the previous one, because they’re not so much variations on the existing action for creating a cable (dragging), they’re more separate actions.

In QC, if holding option while connecting a cable to an input, it would connect and a new cable, coming from the same output as the first cable, would be created automatically. It was super-easy this way to connect one output to many inputs without much time spent. I’d suggest the same or similar behaviour here too.

So to summarize everything above (including what I’m hoping for in this post)… It would mean the following changes:

  1. Dragging an event-only cable would be done using the shift key instead of the option key
  2. Clicking an existing cable’s handle while holding option would leave that cable in place and create a duplicate that could be connected to an input somewhere else in the composition
  3. A mechanism for simultaneously connecting a cable to an input and duplicating the cable for quick connection to another input in the composition (Opt+release, then click while continuing to hold option to connect to other inputs; or force-touch for those with the fancy new trackpads; or press option (or double press) while dragging a cable to connect it and duplicate the cable)

@PIanomatic, what we had in mind for this feature request is somewhat different. Agreed on (1). For (2), we’d substitute “dragging” for “clicking”.

The “clicking” version of (2), and all of (3), would involve a second UI modification: being able to initiate and connect cables by clicking. I think this has also been suggested to improve usability with a stylus. If it’s important to you, I’d appreciate if you could create a separate feature request. Open question: how would this affect / be affected by the fact that a single-click on a port displays the port popover?

Released in 1.2.6.