Using the command line?

Hi folks,

I’ve used i7 before, but on a different machine. I ended up installing the command-line version on my current computer (running PCLinuxOS). I’ve figured out that I can edit the code with a text editor and go in and compile it through the command line. But when using the ©ompile or (G)o commands, Inform compiles the program, and tells me “Inform 7 has finished.” Then it simply flashes “lines 1-38/38 (END)” and I can’t figure out how to get to actually running the game! None of the keys seem to have any effect. What does it want from me? A cookie?

It’s a pity all the getting-started manuals assume I have the GUI.

Okay. Pressed q twice and got into the game. Still, any manual info about working in the command line would be very appreciated.

Okay. It should be rather clear I’m new to Linux as well.

I’ve figured out from a programmer’s guide that when I say compile, Inform7 compiles my code into Inform6, which then compiles it into the game. These are two discrete processes. Pressing q will skip the output and go right to whether it succeeds or fails (not worth doing if I want to see WHY my code is failing). Once the output is complete I must press q to jump to the next step. Assuming all goes well, after the second process I will either return to the menu or go into the game (which may be quit using normal text-adventure commands, q or quit with a confirmation), depending on what I’ve selected.

I’m still wondering how (E)diting works. It’s still confusing what that tool is. I assume ®elease compiles it into a stand-alone file to be read with an interpreter, based on my (S)ettings.

Hope this helps some other newb in the distant future who googles just the right phrase…

The main issue with interactive invocation of i7 is that it’s actually a very basic set of pipes, stuffing results from one process to another while showing off the results in a pager (<= bunch of scary talk that isn’t necessary). So, as you mentioned, it takes, translates it into I6 code, sends the output (all those percentages) to less (i.e. a pager, a program that allows you to scroll back and forth in some text in the command line), waits until less ends (when you press [Q], for quit), tells the I6 compiler “Here’s the source code, go do your job!”, sends the output from this compiler to less (again), and optionally either calls an interpreter to play the compiled game (if you chose G) or copies the compiled file, along with every other required file (“Release along with…”) to the Materials/Release/ folder. However, from what I can tell, quitting less before it reaches the end of the text (i.e. if you haven’t seen the “Inform 7 has finished.” message, along with a blinking (END) below) leads to corrupted source for whatever reason, so once your game grows to a certain size, you’ll need to press [SPACE] to get to the end.

In standard setting, i7 uses dumb-frotz for playing the compiled game (i.e. when you press [G] for (G)o in the menu), which is a very simple interpreter for z-code (maybe for glulx as well, but I honestly don’t remember, since I changed my settings long ago) running in command line.

And as for (E)diting, it simply opens the file in a text editor. It doesn’t show up, I believe, unless you have some editor set up in your settings (well, there’s one other way to do it, but that’s probably a bit too arcane for the average user), so (S)ettings > (I)DE Options > Set (E)ditor - if it’s a graphical editor (like gedit, Kate, or GVim), you probably want to (&) toggle it to background, so that you don’t have to close down the program every time you want to recompile. Command line editors (vim, emacs) need to run in foreground.

A thousand thanks.