little blurb on binds in source
how to bind keys (note: wait command is disabled in gmod and maybe others) Notes: Gmod might reset these settings sometimes so i advise you to make a script in garrysmod/garrysmod/cfg and exec it when and if it resets.
Syntax: bind * +jump (for a single command) bind * "say desu" (if there are spaces) bind "*" "say desu" (in the cfg) key list