display 46 is the "game" display, the one that shows all the time while running around. I don't know who figured that out, but that's the way it is. There are other displays out there, like one for the "gear" screen and so on. But yeah.
_this select 0 =: the eventhandler has a _this array, like all other eventhandlers, and the first element in the _this array is a number corresponding to whatever key was pressed (shift in your case). Whenever you press a key, you see, the "KeyDown" eventhandler runs - much like every time you hit someone with a "hit" eventhandler that eventhandler runs. What the code does is make sure that you only run the script whenever the key -you're- interested in is pressed.
And you can execute a script with arguments just like any other! just add them before:
"if (_this select 1) == 42) then {[yourarguments, 3] execvm ""yourscript.sqf""}"
Oh, and don't use nil! Use nul or null or something, but not nil=; it will break all the nil-related commands (isNil etc). It's a bit of a bug, but yeah.
Don't know how the addeventhandler works as opposed to set - someone else who knows how it works will have to enlighten you on that.
Wolfrug out.