He encontrado una manera de hacer lo que quieres: imagínate una escena con un cubo pcube1 y otro cubo pcube2, la idea es hacer que si seleccione el pcube1, el manipulador sea rotate, en modo world, y si seleccione pcube2 el manipulador sea rotate en modo Gimbal, éste script lo hace.
$sel01 = `ls -sl`.
If ($sel01[0] == pcube1) { tmaniprotatecontext -e -mode 1 rotate;}.
Else if ($sel01[0] == pcube2) { tmaniprotatecontext -e -mode 2 rotate;}.
El problema es que, aunque añadas esto como expresión en la escena, no se actualiza cada vez que seleccione algo. Una solución sería asignar el script a la tecla de rotar, así miraría lo que tienes seleccionado, y si el objeto está en la lista que hayas personalizado de rotaciones, pondré el manipulador rotar en el modo que sea, y si no estí, la tecla actuar? Como el rotar normal.
He visto una cosa que no sé si estaba en la versión 6, y es, en el atribute editor de un objeto, pestaña transform-display, en show manip default, deja poner estas opciones:
None.
Rotate.
Translate.
Scale.
Transform.
Global default.
Smart.
Specified.
Quizás la de specified permita hacer algo así, habrá que investigar, pero la otra manera creo que, una vez bien hecho el script, es bastante cómoda. Saludos.