It would be nice if there was an option to specify a command to call when a user ID is not found in the author map. For example given a file
#!/bin/sh finger $1 | grep Name: | sed 's/.*Name:\s*'
If we set
hgsubversion.dyn_author_name=id_to_name.sh, then each time Mercurial encounters an unknown svn user name it would add a line equivalent to
$name=$(id_to_name.sh $name) to the author map.