Det är flera delproblem som ska lösas och man måste ha lite koll på vad en browser får och inte får göra för att bryta ner det.
Det första problemet är hur man kopplar kortkommandon till gränssnittselement. Jag har inte jobbat med det själv, men jag noterar att det finns flera plugins till ramverk som t.ex. jQuery, så man slipper uppfinna hjulet själv.
Ett kortkommando innebär dock inte att en browser får exekvera kod hur som helst. Tvärtom gäller oerhört tighta restriktioner och i princip får du inte göra ett smack för att t.ex. exekvera AppleScript / ShellScripts etc (vilket är en jäkla tur det kan tilläggas)
Alltså får du i sådana fall sätta upp en server, precis som Mattias säger, där servern kan exekverar t.ex. PHP, och på omvägar och med rätt stort bök också AppleScript.
Problemet (eller möjligheten) med den ansatsen är då att scriptet då exekveras på servern, vilket ju vanligtvis är en annan maskin än den där webbsidan visas. Självklart är det möjligt att t.ex. köra en lokal webserver och då få det att ske på samma maskin.
Ett annat alternativ till en webbserver är att ha en helper app som definierar ett eget protokoll / URL handler, av typen "myprotocol://myserver/mypage[args]" Det som då händer är att vid t.ex. klick på en länk av det slaget tas länkförfrågan hand om av helper appen, som i sin tur får göra vad du ber om.
Ytterligare ett alternativ är att t.ex. göra en AIR-applikation, som får göra saker som en Browser inte är i närheten av, men som självklart kräver installation av programmet (kan ske via en hemsida) och AIR-ramverket.