Update as of 18/1/2013
The options menu has been changed to make it easier to find the control rebinding for items. I have taken a new screenshot - simply click on steps 1 through 4 from anywhere in the game client to open up the menu and rebind your item hotkeys.
Note: this part of the answer is outdated, but I left it alone for now. If it's appropriate to delete it, mods are welcome to do so.
You can change the key bindings for both abilities and items by clicking their icons underneath the list of controls in the options menu. Below is a screenshot of the controls menu, you can see that I reassigned my items to numbers 1-4 and my extra mouse buttons.
It is not immediately apparent that these buttons which look like the ingame HUD are actually additional key binding options, but each one that is labelled can be changed.
It's also highly recommended that you rebind at least a few control group keys to something else, but it's rare that you will need all 6 control groups in a normal game. I chose F1-F3, but you can use whatever you like.
As you can see the shop is a grid of items.
Commands needed:
the command shop_nav_to_tab x
is the column you want in x(0-9)
the command shop_select_itemrow x
is the row you want in x(1-11)
example: you want town portal.
this would be shop_nav_to_tab 0
and shop_select_itemrow 5
to buy items you need 2 more commands:
dota_shop_force_hotkeys x
activates shopkeys(1) or disables them(0)
toggleshoppanel
just brings up the shop itself
Building:
we need to combine them all into one command:
bind k "dota_shop_force_hotkeys 1;toggleshoppanel;shop_nav_to_tab 0;shop_select_itemrow 5;toggleshoppanel;dota_shop_force_hotkeys 0"
would bind buying a town portal to the key k.
you can bind as many items as u want to one key. just add them after toggleshoppanel
:
bind j "clarity+tango+healing_salve" "dota_shop_force_hotkeys 1;toggleshoppanel;shop_nav_to_tab 0;shop_select_itemrow 1;shop_nav_to_tab 0;shop_select_itemrow 2;shop_nav_to_tab 0;shop_select_itemrow 3;toggleshoppanel;dota_shop_force_hotkeys 0"
// (0/1)=clarity (0/2)=Tango (0/3)=Healing_Salve
Extras:
for a better overview of the things you do you can use alias "namethecommandiwant"
for example:
alias "tp" "dota_shop_force_hotkeys 1;toggleshoppanel;shop_nav_to_tab 0;shop_select_itemrow 5;toggleshoppanel;dota_shop_force_hotkeys 0"
bind k "tp"
is the same code as above! you can just see the binding more clearly.
the clarity combo would be the following:
alias "clarity+tango+healing_salve" "dota_shop_force_hotkeys 1;toggleshoppanel;shop_nav_to_tab 0;shop_select_itemrow 1;shop_nav_to_tab 0;shop_select_itemrow 2;shop_nav_to_tab 0;shop_select_itemrow 3;toggleshoppanel;dota_shop_force_hotkeys 0"
// (0/1)=clarity (0/2)=Tango (0/3)=Healing_Salve
bind j "clarity+tango+healing_salve"
Best Answer
You can't shift queue an item swap because of the mechanic of the stash (you can interact with it only when you are in the fountain area). The best way to do it quickly is to swap it by drag & dropping the item you want to swap in your inventory on the one you want in your stash (or the other way arround). This is the way Dendi does it.
However, you can shift-queue to drop the item from your inventory (by drag and dropping them to the ground) while you are teleporting to the fountain. If you do this with your Dagon or Scythe of Vyse you'll regenerate your mana quickly and manage your time at the fountain better.