Help with extensions?

I’ve had endless trouble with extensions on my Mac…

how, precisely, do I uninstall an extension that I don’t want any longer?

Generally you don’t. Why do you want to uninstall it?

Cos I can’t figure out how to shut it off.

Information for how to shut it off would also be good.

Extensions are only included if you explicitly include them, with a line like “Include Modified Timekeeping by Daniel Stelzer”. If you don’t have any of those lines in your source file, no extensions will be included (or “turned on” as you put it).

But I haven’t explicitly included this one, and it’s still insisting on including itself in the release even though it shouldn’t be. I wrote an alternative English Language file for kicks, and now I can’t get the file to compile without it even after I’ve removed the extension from the Inform file altogether.

edit: fixed by deleting all my extensions.

Wacky, but effective.

It is possible for extensions to call other extensions within their source text if one depends on the other. That might have been what was happening.

Most of the time, as Draconis said, Extensions are kept in your own personal library and only included when you explicitly do so in the text of your project. You shouldn’t have any reason to uninstall an extension unless something seriously bugs out.

Something seriously bugged out.

Frankly, extensions never worked that well for me on Mac anyway, so I think I’ll give them a miss.

In this case, I think the issue is probably specific to the English Language extension. Writing with Inform §27.27 says:

which suggests that with this extension in particular, you may not be able to get it out of your project without seriously knowing what you’re doing. (The way Inform places its files on the Mac always confuses me; it likes to put them in a place that’s inaccessible to the Finder and search boxes.)

Anyway, it’s probably not a good idea to directly mess with the English Language extension. If you want to experiment with it, you can use another extension that replaces sections of the original extension, like this:

Section 3 - Further pronoun surprise (in place of Section 3 - Further pronouns in English Language by Graham Nelson)

For instance, if you install and include the attached extension (“English Language Surprise” by Matt Weiner), you will get a surprise whenever you have a message that uses the pronoun “It.” The best way to do this seems to be to plunge the player into darkness. But the original English Language extension is untouched, so you don’t have to worry about the modification spilling over into your projects if you don’t want it to, I don’t think.

(That extension is mostly a goof–Teaspoon, apologies for messing around while you’re having an annoying issue. But it does demonstrate a way to modify English Language without modifying the original file, which I think is probably dangerous.)
English Language Surprise.i7x (6.84 KB)

I’m pretty sure MacOS stuff goes in the Library folder, and several years ago they hid it by default so people wouldn’t mess with it. I believe you have to set a preference to show it by default.

I ran some script from the command line and I can navigate to it in the Finder now, but it’s still invisible to searches including the ones that you do in file pop-up menus. (This isn’t to say I ran the right script from the command line.)

How to get to the Library folder in Mavericks.

macworld.com/article/205722 … ricks.html

The File / Show Installed Extensions Folder menu option opens the correct folder (~/Library/Inform/Extensions) even if Library is hidden.

OK, but neither of those things makes the contents of the Library folder available to searches. If I type “English Language Surprise” into Spotlight, or into the search box that I get when I try to attach a file to a post in this forum, I don’t get the installed extension file.

I can get to it my navigating through my file paths–if I go to my Home->Library->Inform->Extensions->Matt Weiner->English Language Surprise–but this is cumbersome and I usually forget I can do it.

Mostly I’m mentioning this in order to point out to the OP (if they’re still reading) that the extensions can wind up in a somewhat nonintuitive place, which can make it hard to get rid of them. I suspect this isn’t a problem except for modified versions of English Language or Standard Rules, because those are the extensions that get included automatically. (Well, if you modify an extension and you can’t get rid of the modified copy and you want the old one back, that’s a problem whenever you include it. But not if you don’t include it.)

Right, sorry. I use command-line tools for searching that stuff.

Now that Inform supports loading extensions from project.materials/Extensions, there’s a good argument for using that location for all extensions used by a particular project.

  • Searchable
  • Can be backed up or put into version control along with the rest of your project
  • Each project has exactly the right version of each extension, regardless of what you used for later projects

The main downside to that, from my perspective, is I can’t access the extension from the File menu. Which means I can’t open it in the IDE, I need to go into my Materials folder and open it in a text editor without I7 syntax highlighting or nice table formatting.

The other thing for me is that usually either I’m working on the extension as a standalone thing, which means that I don’t want it in a materials file, or I’m just trying to upload it somewhere, which means I have to extract it from the Library once–but to put it in the materials folder I’d have to extract it anyway (I think).

Like this time, when I was hoping someone else would download my extension and find out what the surprise was! C’mon Hanon, you know you want to.

Okay, fine, I will have a cashew from this closed but completely innocent-looking can that rattles…

EAT CASHEWS
He saw nothing wrong with the cashews.

Thanks for the advice…

I’ll be pretty careful about how I go with my English language extension, then. Right now I’m not working on anything that needs an extension anyway.