I'm trying to configure mercurial for use on a remote machine that has sshd running on an alternate port, and for which my login requires a particular key, which uses a passphrase.
ssh is configured and working fine, as with:

ssh -i ~/.ssh/id_rsa-xyz -p 1234 myuser@barney.example.com

My issue is what goes into the hgrc files to make this work with either of an alias (barney-stuff) or the default-push property:

hg push barney-alias
hg push

Most of the ssh documentation I've seen for Mercurial presumes the default port and a pre-loaded key.