Wishlist: automatic adding output/input names with wire drag

I rely on custom output and input labels on most of my components as a way to clarify the information flow within the definition and make modifying and debugging, sometimes years later, much easier.

I use lots of group labels and subgroup labels as well, but I find that the output/input labels are extremely helpful as a form of code commenting within any group.

With the current version of Grasshopper this practice of applying custom labels everywhere requires lots of copying and pasting with each new wire connection.

It would be so much faster if I could use a modifier key combination when making a wire connection which would automatically bring the output label over to the input label I’m connecting to. For example, holding Shift + Alt while making a new wire connection would copy the output label to the input label of the component I’m connecting to.

I don’t know if anyone else uses custom labeling in this way, but it has definitely saved me loads of time when returning to a definition to add to it months or years later.


I added this as a toggle while creating new wires (note: it doesn’t work for moving existing wires). It’s always off by default (but I can easily make it sticky) but pressing the Alt key will toggle between regular and copyname mode. In copyname mode the dashed wire is drawn in crimson rather than the usual black.

Presumably this will be available next Tuesday when the WIP goes out.



Thanks so much David. This will make a huge difference to my workflow.


This is working very well and is extremely convenient!

One minor glitch: the arrowheads on connecting wires are always facing to the left now, no matter which direction I’m dragging in - output to input or input to output.

This should now be fixed in next week’s WIP release.

1 Like

Thanks again for this functionality David, it’s working beautifully and this is a huge help for ease of use and clarity of data flow through GH definitions.

I’m so happy with this that I’d like to add another wishlist item: to extend this functionality to the inputs of the Merge component.

The copyname mode is almost working for Merge inputs already, except that they disappear when the last wire is added which triggers the adding of an additional input to that Merge instance.

It’s almost like a puzzle game trying to get the copynames to work with Merge inputs: custom labels problem.gh (4.5 KB)

Also the Merge custom input names disappear when the .gh document is closed and then opened again.

I also would love it if I could apply custom labels to the outputs of List Item components! But I’ll be glad for any further implementation of this super cool functionality.