One Weird Trick That Could Save You… (Inform 7 tables)

If you’re working with large and complex tables in Inform 7, don’t do it in the IDE. The Inform 7 IDE is wonderful in many ways, but complicated tables get really, really hard to read  – especially if you have more columns than screen space.

table image

And if you want to insert a new column, rather than adding it at the end, then things get really messy.

Instead, build your table in a modern spreadsheet. (I’m fond of Calc in the OpenOffice suite, but LibreOffice and Excel are just fine too.) You can add columns, remove columns, sort data, swap around rows – all the good stuff you need.

When you’re ready to go, just copy your data and paste it into Inform, where the column separations will come in as tabs. Which is exactly what Inform 7 wants.

This weird trick brought to you by “Rainbows and Dance Parties!” and 18 Rooms to Home: Room 15 (still in-progress).

…and their tables.

(so many tables.)

Bookmark the permalink.


  1. I haven’t yet made much use of tables, but imagine writing all that information in for all of the >50 states and territories in long-form!

    I think I’m probably writing I7 a lot more verbosely and inefficiently than I should be, but verbose is what I already know and I just want to make things happen, so…

  2. This is great advice: the IDE with the wrapping text and unclear column-breaks is really ill-suited for creating tables.

  3. That’s a brilliant idea. Back when I still thought I could make a game I would have loved to know this.

  4. Oh hey, I stumbled on this googling something else.

    Copy/pasting to a spreadsheet app is also really really great if you get one of those “Inform found an error with the wrong type of data in a row” or “you went past the edge of the row” errors. You can see immediately what lines up, and what doesn’t.

    I have to admit I use notepad++ for editing Inform tables, as generally I have lots of columns with text & I don’t need to compile as much writing narratives.

Leave a Reply

Your email address will not be published. Required fields are marked *