Silencing chatty objects

My battles with Inform7 continue anon.

Here we have a strange situation.

[spoiler][code]“School’s Out” by test

The tiny classroom is a room. The description is “This is a tiny classroom with only one desk in it.”

The desk is a supporter in the tiny classroom. The description is “On the tiny desk is an atlas.”

The atlas is an openable container on the desk. The carrying capacity is 0. The description is “An atlas of the world.”

The pencilcase is an openable container on the desk. It is open. The description is “It’s a pencilcase.”

The pencil is a thing in the pencilcase. The description is “Aha! Your trusty HB #2.”

Rule for printing the name of the pencilcase while not inserting or removing:
say “pencilcase”;
omit contents in listing.

Rule for printing the name of the atlas while not inserting or removing:
say “atlas”;
omit contents in listing.

Rule for printing the name of the desk while not inserting or removing:
say “desk”;
omit contents in listing.

Before listing nondescript items of the tiny classroom:
if desk is marked for listing:
now the desk is not marked for listing;

test me with “x desk/x pencilcase”[/code][/spoiler]

From this, i’m getting some unexpected output:

No idea why the contents of the pencilcase are being reported, when i have an explicit rule stating that they shouldn’t be. i’m assuming i need to add a rule about describing the pencilcase, but as usual, syntax is tripping me up. (Is it “Rule for describing” or “Rule for printing the description of” or “To describe” or “To print the description of” or “Before describing/printing the description of” or [more likely] none of the above?)

Second problem: i guess i can infer from this that “omit contents in listing” doesn’t apply to supporters? So i scoured around and found (and implemented) The Eye of the Idol:

inform7.com/learn/man/RB_3_1.html

The new problem there is that when i make the desk a supporter that is in-place in the tiny classroom, this happens:

Super!

What i’m trying to accomplish is this:

There’s a desk. There’s a book on the desk. There’s a container on the desk. The container is unnoticed until you close the book (it was hiding beneath the cover). Neither the desk nor the book nor the container ever, ever report anything that is in, on, under, through, around, or casting suspicious glances at, them. i want to handle all of that on my own, through descriptions.

Attempting to answer my own question…

This will stop the room description from mentioning the things on the desk:

Rule for printing room description details of the oak desk: stop.

i still get a list of things when i examine the desk, though. Trying to keep that from happening.

The examine containers rule does nothing when examining the pencilcase.

This ought to get rid of the automatic listing of contents for the pencilcase.

Hooray! i just figured out how to disable the rule for everything, but i didn’t know/couldn’t find the sentence structure to disable the rule for one particular thing. Thanks for your help!

Glad I could help!