Controlling how contents are presented

Ok, I can’t quite work this out. Let’s say, for arguments sake, I have a table. The table is marked as “enterable” but what the player is actually doing is hiding underneath it. I add some suitable grammar lines like understand “get under [table]” as entering" and everything works fine.

The problem is, if the player should happen to drop anything under there, then the item will be listed as being “in” the table rather than “under” it. I.e. it’ll say something like “In the table is whatsit”. How do I change it to say “Under the table is a whatsit”? I thought a “before listing contents of the table” rule might work:

Before listing contents of the table:
    say "Under the table is ";

But it seems to still print the “In the table” part first!

Maybe something like:

The space under the table is an enterable container. It is part of the table.

Ron Newcomb’s extension Default Messages can be used to tweak some of these messages – though not all of them I think: the you-can-also-see rule (from the rules for the printing the locale description acticvity) would still give you “In the table you can see a whatsit.”, since apparently this rule doesn’t make use of the library messages at all. But it’s possible to replace it, too, with a custom you-can-also-see rule, of course.

Could you make “under the table” a location that is “in” from.the room that encloses it and then just adjust scope to make things audible or visible from.there?