it should be
on ^*:TEXT:*:?:
not
on ^*:TEXT:?:*:

that's the problem