Flexible Windows by Jon Ingold

The extension Flexible Windows by Jon Ingold gives me the following error:

I can only assume there is some kind of error in the extension. What I don’t understand is why. :blush:

No, there’s no error in the extension. My guess is that you are trying to include Flexible Windows alongside an extension that already includes it. Try commenting out the line “Include Flexible Windows by Jon Ingold” in your game to see if that helps. Another possibility is that you are including Glulx Text Effects somewhere in your game file, which is not necessary since FW already includes that. (Inform is not really as good as it might initially seem to be at dealing with multiple extensions.)


Erik -There must be something wrong in my code. I pulled the three offending lines into a standalone and they work fine. I guess I will have to take the existing code apart a line at a time. Right back to the old methods I have used for 50 years. Greg

I though it just ignored multiple inclusions of the same extension?

It does, but it might still include the extension in the wrong place. See bug #666.

Sort of. But Inform isn’t very smart about it. If both “include” instructions are in your game file, then one will simply be ignored, as you would expect. If one of the instructions is in an extension, though, things can go haywire. For example, Glulx Text Effects is a dependency of Flexible Windows, and Flexible Windows includes a table continuation from GTE. If you do this:

Include Flexible Windows by Jon Ingold. Include Glulx Text Effects by Emily Short.

…then Inform will ignore the include instruction for Glulx Text Effects that’s contained in Flexible Windows in favor of the instruction in the story file, thus breaking the source-order-dependent parts of FW.

There are also bugs to do with ordering that I’ve never figured out well enough to file a report. For example, my Glulx Input Loops extensions includes Flexible Windows in its very first line. But odd bugs (not compile errors!) can occur in the functionality if you don’t also include FW just before Glulx Input Loops in the game file, e.g.:

[code]Include Flexible Windows by Jon Ingold.
Include Glulx Input Loops by Erik Temple.

—Glulx Input Loops----
Include Flexible Windows.[/code]

That one just mystifies me…

All of this gets hairy enough that most of my extensions now include a section explaining how to include them relative to other extensions.


It’s me, back again!

I finally got around to trying a fix for this Flexible Windows problem. I isolated the text in question and started fumbling with it. No problems seem to appear. Then when I return to the full text I get a full range of problems, depending upon where I place to line:


Look at this sequence:

Putting the last line anywhere in the stack will cause a large number of errors to be displayed (some internal to the extension and some external). Yet, when I extract the stack to a virgin project (name, room, and stack) I get no errors. So, I guess I’m asking if anybody has ever had a similar problem and what is the true solution? :confused:

Greg The Elder.

Wow, and I thought I used a lot of extensions in Aotearoa! Just curious – what’s your approximate ratio of actual story code to code that modifies and integrates your extensions?

Would it be possible for inform to use its relations system to graph the dependency tree and then always be able to generate the include list in the right order using its route finding algorithm? I would think doing so would squish that bug for good. Use route finding to include all the extensions in the right dependency order, then the story file.

See comments on inform7.com/mantis/view.php?id=666 .

Also, it’s not ideal forum etiquette to jump in on threads that have been inactive for years. There’s usually a reason the discussion died down. I’m not saying you should never do it, but do it conservatively.