(I could easily have added to similar old threads, but I think I’ve read somewhere that re-using old threads is considered inappropriate here.)
I’m looking for a text editor for writing Inform 6 games. I’m using UltraEdit on my desktop computer, but it’s a single licence, and I’m just setting up a laptop and don’t want to pay for a second licence. My main “requirements” would be -
Syntax highlighting (well, brackets…)
Foldable code and/or a navigation pane
The navigation thing is crucial to me because I’m sorting my code into rooms, NPCs, verbs, other routines etc. and I find jumping-by-searching very annoying, especially when I’ve e.g. forgotten the room name where an NPC is located. The Inform 7 IDE with its “Content” pane is a good start, it’s only lacking the option to fold in parts of the chapters and to fold out teh sections.
The old threads recommend various editors like (Neo)Vim, but if someone knew which editors feature navigation/folding, I’d be sure those would be worth trying out.
Have you looked into VSCode? I’m not sure if has an extension for inform specifically, but the folding code is already there. I’m certain the AI will learn the syntax soon enough for highlighting as well.
I use VSCode. Syntax highlighting is good and the terminal window is useful for testing code as you develop the game. Extensions are available for both Inform 6 and 7.
if I got correctly what dsherwood means for “aggressive”, I was surprised in finding it in the debian distro (Debian has a rather, uh, strict, concept of opensource; installing said package, I quickly figured that is easy to tame the “aggressiveness” (dunno if the option “don’t phone home at seattle” was specific of the Debian build, but is here…) but I kept it around until Kate got inform 7 and Dialog syntax highlighting. Kate has Inform 6 and Tads3 (which is good enough for Tads 2) highligting, and someone has written (is somewhere in a thread in this forum) an Hugo highligter, so my recommendation is Kate, which has folding (but I use jumping-on-search on well-chosen comments (an ancient but valid idea, borrowed from Toyshop source…) ) and tabs, the latter allow easy handling of multiple source files. so is my main editor (I also use nano for quick’n dirty editing, esp. of makefiles)
Side note, if Lazarus got a GCC backend, will be the ideal for people who came from the Borland line of dev tools… and yes, I sometimes code (not IF related) in Freepascal.
After seeing a few screenshots on its website I though Geany is the thing for me, but I’ve now installed it and I fear it’s not suitable for me. It does have this foldable “symbol” list which I thought is exactly what I’m looking for, but…
…am I correct to assume that you can’t define any line as a symbol? Like, I have a simple remark line “! NPCs” in my source code and I want that to become a bookmark. But Gleany can’t do that, right?
Unfortunately not. Or at least I haven’t found a way to do so. It’s extremely useful for languages it has built-in (C, Python, etc), but not for anything else (Dialog, Inform).
If Kate can do symbol lists for other languages, that’s going to jump to the top of my chart!
It “remembers” the text on the right, and if I click on a line it brings me to the attributed line, which changes dynamically when I change the source code. Not exactly what I want, but already helpful.)
Visual Studio Code is not part of any version of Debian.
There are third party projects that strip out Microsoft’s tracking BS, but the official builds all have it. Microsoft’s repos contain code, but the binaries you download from them contain additional mystery ingedients and are NOT open source licensed.
The only editor I know that ships with Inform 6 support out of the box is (Neo)Vim. No idea if that includes code folding. I also made my own syntax highlighting file for Micro, but nothing more.
if requested, I’ll give a screenshot from Synaptic (I prefer NOT give out screenshots from root/admin tools…) , but I note that indeed is absent from the official package list (packages.debian.org)
If you tried it with Inform 6 syntax you probably wouldn’t get results which were as good as what is being presented in the screenshots, although it would be interesting to see what it is able ascertain.
(If the program isn’t aware of the syntax then I think you would just be left with indentation based folding and folding of special comments.)