Re: Revising US keyboards
There's already a modifier key you can use to do much of what you ask for in the "Euro key" in AltGr. With an US-international layout, AltGr N gives you ñ (alt AltGr E does indeed give € . They've even snuck in ÆØÅ in some random free spots.)
Of course, I'm partial to what I'm used to (no surprise there) - the standard norwegian layout. I've got a norwegian-layout mobel M here, and using that as a base:
* There's a number of dead keys you can use to build characters. I can type èéêëñ without too much trouble - as an example, é is AltGr+\ , followed by an e.
* Shift and dot, comma, hyphen gives the entirely logical colon, semicolon, underscore
* I like having ,.- on the right of M, but I guess that's a matter of taste.
There's a few downsides, though - I've got the quite useless ¤ as shift 4, with $ dowgraded to altGr 4. This makes PHP and shellscripts even less fun to type.
Ditto for {[]} - that's AltGr 7890. A fragment like " =$arr[$x][$y];} " is downright fiddly to get right.