GH hotkeys & shortcuts

Back in October last year, I attended the ACADIA conference where I was lucky enough to have chosen the ‘Open Geodata + Performance ‘ workshop run by Mostapha Sadeghipour Roudsari, Chris Mackey and Elcin Ertugrul. While other workshops focused on Processing or Dynamo, this particular workshop focused on Grasshopper. Participant’s Grasshopper knowledge ranged from beginner to expert. As is the custom in this type of conference, the workshop leaders shared their screen for all to follow. Although I would classify myself as an advanced Grasshopper user, it never ceases to amaze me how much one can learn from sharing your screen.

From what I have witnessed, most people learn a software in a very ad-hoc way. They might attend a two or three-day class, watch a few tutorial videos here or here, post a few forum questions, and generally stumble through the learning process. No one learns an entire program from beginning to end before starting to use the software properly. This constraint means that there are often gaps in people’s knowledge. Watching Mostapha write a simple Ladybug script during the conference, I discovered the ‘Moses’ command, a simple command which splits the canvas (like Moses parting the Red Sea) so that new components can be inserted. While I’m sure many Grasshopper users are familiar with this command, it was utterly foreign to me. It was like discovering a hidden world in Super Mario Bros – where a whole new world of possibilities existed. This discovery started to get me thinking – How many other shortcuts don’t I know? After a quick Google search, I came across this post, which I have reposted below. I hope that you discover something new and that it opens up a whole new world of possibilities to your existing workflows.

While the Grasshopper menu shortcuts are customisable, there are some special keys and mouse-button combinations that trigger specific functions in the Grasshopper canvas. These are as follows.


  • RMB+Drag = Pan left/right/up/down
  • RMB+Ctrl+Drag = Zoom in/out
  • Scroll Wheel = Zoom in/out
  • MMB+Click = Wheel menu
  • Spacebar = Wheel menu
  • LMB+Alt+Drag = Split canvas – tap alt to change x/y axis direction

While over an empty canvas spot

  • LMB+Drag = Selection rectangle
  • LMB+Shift+Drag = Addition selection rectangle
  • LMB+Ctrl+Drag = Removal selection rectangle
  • RMB+Click = Canvas menu
  • Double click + type 0<10 or 0.0<5.0<10.0 = Number slider with min/max value
  • Double click + type ” or // = Panel

While over an object

  • LMB+Drag = Drag selected objects
  • LMB+Shift+Drag = Drag selected objects along 45-degree guides
  • LMB+Drag+Alt = Copy all dragging objects
  • LMB+Click = Either select one object or do nothing if object is already selected
  • LMB+Shift+Click = Add an object to the selection
  • LMB+Ctrl+Click = Remove an object from the selection
  • LMB+Ctrl+Shift+Click = Toggle the selection state
  • LMB+Ctrl+Alt = Info mode
  • LMB+Ctrl+Shift+Alt = Save info mode as image
  • RMB+Click = Object context menu

While over an input/output grip

  • LMB+Drag = Create a new wire
  • LMB+Shift+Drag = Create a new wire without erasing old wires
  • LMB+Ctrl+Drag = Erase an existing wire by tracing over it
  • LMB+Ctrl+Shift+Drag = Move all existing wires to some other grip
  • LMB+Drag+RMB = Create a new wire without exiting the wire tool
  • LMB+Drag+RMB+Shift = Add a wire without exiting the wire tool
  • LMB+Drag+RMB+Control = Remove a wire without exiting the wire tool

While over a component icon on the tool panels

  • LMB+Shift+Click = Create a component aggregate

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.