Inform7 IDE Slow Editing

Hi, all.

I’m editing a larger file in the Inform7 IDE and am experiencing very slow editing. I’ve searched and found no one else reporting this. I can edit small files with no lag, but large files present a huge lag as I type. Compiling happens at normal speed. Attached is a link to a video of me typing far ahead of the buffer.

Here are the deets of my file:

The 33597-word source text has successfully been translated into a world with 41 rooms and 184 things, and the index has been brought up to date.

And the details of my version of Inform:

Download file: I7-6M62-OSX-Interim.dmg
Inform version: 1.68.1
OS: MacOS Catalina

But this also happens with earlier versions of Inform, such as I7-6M62-OSX.dmg

Thanks for any leads to fixing this.

1 Like

I’m not a macOS user, but here’s one thing that’s been the root cause of several Mac Inform 7 slowness problems discussed on the forum in the past: you should clean out your project’s Skein once in a while, if you’re not already doing so. (The skein, in case you don’t know, is a feature that lets you track separate playthroughs in your piece, move by move; if you’ve never cleaned it out, or if it’s been a long long time, it can be the root cause of slowness.)

Unfortunately, clearing the skein doesn’t help. This is a problem I observe with every large file I edit, whether it has been tested or ever compiled before.

Also, since the inform7 error tracking seems to be down, does any one have a suggestion of where to go to get current support for Inform?

The Mac IDE is at https://github.com/TobyLobster/Inform , so you can put a note there.

I admit that I don’t know what’s going on. I’ve edited games of that size in the IDE without trouble.

I remember a Mac syntax-coloring bug which led to slow editing, but that was fixed many releases ago.

The only thing I can think of is that your source is particularly hard to syntax-color. I’m not sure what would cause that, though.

Thanks, Andrew… I’ll file an issue and see who has a suggestion or more diagnostic tools.

Andrew, I thought it might be a large block of ChangeLog notes that I kept in comment form in the file, but it wasn’t that. I also thought I might have a tricky hanging bracket or quote that was making the file difficult, but it appears not.

It appears to not be purely an issue of length, as I pasted in half of the text of Pride and Prejudice and noted only a small slow down. With the entire book, typing was considerably slower.

It appears that there are processes that happen after every keystroke whose rapidity is affected by the length/complexity of the text.

Would it help to try my source file?

It might, although I make no promises. :)

Do you want to post it? Or you could just email it to me (erkyrath@eblong.com).

Again, I am not a macOS person. However, a classic problem for text editors is that very very very long single lines (which might appear to the end-user as paragraphs – I mean, any single stretch of text that doesn’t have a new line character in the middle) tend to make the text editor slow down.

So I guess what I’m suggesting is: if you have very long paragraphs in your source, does the IDE editor get more responsive if you break them up into smaller chunks?

1 Like

I don’t have a Mac to test, so this is a complete stab in the dark, but I seem to recall (from years ago) that some I7 IDEs had a setting in the preferences called “Elastic tabstops”, and that this setting caused slow-down during editing, for me and others.

So if that setting is still there, you could try turning it off.

Sorry if this turns out to be a red herring, but I figured it was worth a try, and quick to check (or rather un-check the option, as it were). :slightly_smiling_face:

1 Like

I tried loading the project you sent (by email) in the latest Inform IDE (1.68.1), and I had no problems editing at all.

(I have that elastic tabstop preference turned on. It’s now called “auto-space table columns” in the preferences pane.)

I didn’t see anything in the code that looked suspicious, either. No particularly long paragraphs or comments or I6 inclusions. No line break peculiarities.

The only thing that was slightly odd was a bunch of table declarations with extra tabs:

Table of Smarter Parser Messages (continued)
	rule name		message
	stripping niceties rule		"[run paragraph on]"

According to normal I7 style, these lines would be unindented. The compiler doesn’t care – your code works – but the indentation trips up the “auto-space table columns” preference; those tables are not in fact auto-spaced in the editor.

But, as I said, I don’t see any slowdown problems. So that indentation is a red herring as far as I can tell.

Andrew, do you have the latest Mac release for Catalina or another release?

I have Big Sur 11.1, which is later than that.

It would be strange if the editing code had broken only on Catalina, though. 1.68.1 was released for Catalina.

Actually I also have Big Sur. So that’s mysterious.

OK, I should’ve thought of this experiment earlier, but it is definitely syntax highlighting related. If I disable syntax highlighting, I get no typing lag.

1 Like

Hi!
I am having the same problem. And the solution was indeed disabling the syntax highlighting feature. It was working quite fine until I (unfortunately) updated the Big Sur version to 11.13.1 hoping to fix some screen glitches. Not only my external monitor is not working at all, but also Inform became unbelievably slow.
Is there some other text writer that you would recommend to write the text using syntax highlighting? Is a feature that I’ve became an addict to, my source text has plenty of substitutions, so I’m kind of lost now because the colors were really helping me.
Any suggestions are very welcome.
Thank you!

I gave up on the IDE. I started using Atom which is a sophisticated editor I use for most of my programming. There is a inform7 context highlighting plugin.

I had some challenges around representation of headings and the IDE (still used for compiling) overwriting the file I was editing (as described here).

But these were largely overcome by adding a few rules in Atom to increase the size and font-weight of hedings. And the overwriting problem was overcome with this great suggestion.

Thanks a lot! I will read more and see if it helps.

I’m afraid this syntax-coloring slowdown is connected to some factor that we don’t yet understand. Wes saw it starting on MacOS 10.15; you saw it starting on 11.13.1; I don’t see it at all.

I don’t use Mac, so I can’t help you. However, mysterious slowdown points me to 2 possible causes: 1. Cache Memory. 2. Bad library.

It may be worth it to run test files ( no need to compile, just load it in the editor) in ever increasing size and see what it does.

  1. Cache: the operation will go smoothly until there’s a jump in sluggishness
  2. Library: Response time will worsen in exponential manner.

I personally ran into the second issue on my Google Doc, where I notice slowdown starting on page 100 and get progressively worse until it became intolerable.

Another note is that I ran into sluggish editor, not due to the editor, but due to the windowing system. The slowdown would be of constant time. For some reason, the display was set to Smooth Font, and that’s the difference between slow and fast. The problem immediately disappeared when I turn off that option. This setting can be found both in OS desktop and IDE. So, it bears checking on all settings. I doubt that is your case, since it’s fast if you turn off syntax highlighting.

So, if you want to know what causes it, check for memory, and whether the slowdown behavior changes when the file size is different, and in what way.

Another note: does the editor uses regex for syntax highlighting? Some languages/libraries are notably slow with those. I don’t see why it would work on some, but not the other, though. Unless it’s a dynamically linked library.