How to combine buy binds with key bindings?

I don't recommend using the main movement keys to buy something. You might cause the spam filter to trigger (too many commands in a short amount of time), which will block further commands for some time.

What you're asking for is:
bind S "+back; buy smokegrenade"

...but a better solution is using unused keys, like the numpad or some F-keys. You can even buy a complete loadout within seconds. That's how I do it.

For example:

bind KP_INS "buy vesthelm;buy vest"
bind KP_DEL "buy defuser"
bind KP_ENTER "buy smokegrenade"
bind KP_PLUS "buy hegrenade;buy incgrenade;buy molotov"
bind KP_MINUS "buy flashbang"

This will let you buy your equipment without any problems. 0 buys armor, , buys a defuser and the right sided keys all grenades. You can extend this by using the numbers to buy specific weapons or even a donation button: bind KP_5 "buy m4a1;buy ak47;drop" (this buys a rifle and drops it right away).^

Edit:

Combining a "+something" command with other stuff seems to cause unexpected behavior. You can avoid this by using an alias. I have successfully tested this one:

alias +mvgren "+back; buy smokegrenade"
alias -mvgren "-back"
bind s "+mvgren"

(you can name that alias whatever you want)


In Counter-Strike 1.6 and before you could bind multiple actions to a button by using ; separator, I'm pretty sure this is the same for CS:GO. For example, this bind will make you kill with 1 shot, even if you shoot in the air(even with a flashbang):

bind mouse1 "+attack;kill"