Vscode-tads3tools extension release 0.6.4

You can disregard that… I think my browser was no longer supported by GitHub, and I downloaded a different one…

Ok, good you got it working!

Just saying this in case it is unclear for anyone wanting to trying the extension out and because I think I’ve have forgot to mention it the readme:

There’s actually no need to involve github at all unless you want to participate in the project yourself since the extension is available in the extension marketplace from within vscode. Just open the extension tab and search for “tads”, select and click install.

I see there’s relative few downloads from marketplace in the extension statistics, so I just figure people use the more cumbersome approach to install it it by first packaging it with vsce.

2 Likes

I’m looking forward to exploring your program, it looks great! I haven’t had much time with it yet, but one of the first things I noticed was that the symbols didn’t show up in the Outline section. Also, how do you set it up to find the tads library? Do you have to copy all the library source into your project folder?

I did eventually realize that you could search for your extension straight through VSCode (which I’m not familiar with using yet), and installed it that way…

During preprocessing the compiler iterates all files in the project by building it with the instructions in the t3m files that the project uses. The extension uses this compilation process and extracts the paths while compiling the code and then filters out the library specific files and builds a cache for it, so no, no need to copy the library source into the project folder, that will just slow it down I believe.

If the outliner doesn’t produce anything I’d suggest to take a look in the menu option View/Output and select “Tads3 Language Server” in the selector for more clues.

Other things to check:

  • Can you build the project in a terminal with just “t3make -f WhatYourMakefileIsCalled.t3m” (if it can, the extension should have everything it needs)

  • Is the “t3make” command accessible globally?

  • Otherwise you might need to change the setting tads3.compiler.path to match the path you have to that executable.

I will check those things out once I get time, thanks Tomas!

My t3m file includes an -I option, based on the fact that when the adv3 code was located in usr/… it was recompiling the library files on every build instead of just changed files (which you helped me out with). Does that make a difference?

Under Outline it says Loading document symbols for ‘my file.t’…, but it never shows up, even after a long time

Again, new to VS… I just saved a new workspace, then chose Add Folder to Workspace from File menu, which was the folder containing my source and t3m file. Is there anything else I need to do for the extension to parse it all as Tads code? The editor confirms that the tads3 extension is globally enabled… if multiple various extensions are enabled in VSCode, how does it know which ones to apply to a given file? (For instance, C++ extensions are also active… how does the workspace know to interpret an open folder as Tads instead of C++?)

The “-l” option should be fine. Were you able compile the game in a standalone terminal window with just your Makefile.t3m?

About several extensions that uses the same file extension, from my experience it doesn’t know, so if you have multiple extensions active for the same file extension, like C++, C++ usually takes precedence of the language mode on header “.h”-files. Maybe there’s a way to control this, but I haven’t investigated it. For now I recommend to disabling c/c++ extensions while working on tads3 projects.

Also, I’m wondering about “my file.t”. Not sure if it’s the culprit, but try renaming it so it doesn’t include whitespaces.

Would the output log be of any use here? View -> Output and select Tads3 Language Server from the drop-down box.

1 Like

I completely misspoke when I said the -I option was in my Makefile… it was in my .command file. I had tried to set the include path under Settings:Extensions:Tads3:Include, but in any case, once I added the -I option to my .t3m, pitched the old object files and tinkered around a bit more, it finally parsed all the symbols! I’m really excited to play with this over the next couple of evenings and see how much it’s going to boost efficiency. Thanks so much, and I’ll try to give some more specific feedback after I’ve actually put it to use!

2 Likes

(Also, ‘my file.t’ was just an example, none of my actual source files have spaces in their names…)

Have a nice morning wish.

I have been using the VSCode editor with the Python and TADS3 extensions installed for several days, whenever I try to save a python file, the editor displays a dialog box asking for the location of the t3m file, see the pictures in the appendix. In order not to see this message, I always have to deactivate the TADS3 extension. Can I request a review?


If you mean a Pull Request, Sure thing! I’ve been noticing this myself but have been occupied with figuring out a lost password the last couple of weeks. It has crippled me to say the least :confused:

Any contribution is most welcome!

And today, of all days I finally figured it out! (Must be the fate) :sunny: In case I misunderstood you earlier, I’m willing to fix this bug myself now, but since I at the same time would like to encourage teamwork I’ll happily step aside if you like to fix it yourself :slight_smile:

1 Like

Have a nice morning wish

thank you very much for the quick answer, I tried the C ++ extension for sure, in addition to Python, the same problem appears. I’m very happy to help with its solution, only my programming experience is minimal so far (basic scripts in Python plus I create a game in TADS3, where I carefully study huge manuals).

Can I ask for guidance on where the error may be? I downloaded the whole project in the current version 0.2.0 from Github and researched the available .json and .ts files, I really have no idea what settings to change.

Hi! Sorry. I had a little time to spend during the weekend and since i didn’t get an immediate answer I wasn’t sure you would be up for it so I started working on the issue in the branch feature/bugfixes. Not sure yet if there’s much else to do besides testing it.

The extension was always active before even when not used. Now it only starts when either detecting the tads3 language or when using the command to create a new project.
Also It won’t show the dialog now even if the extension has been activated and the editor has started working on other kinds of projects.

2 Likes

But let me put it this way. If anyone of you see something you want to fix and you want to help out more than just by reporting the issue (which is equally fine by the way), you are most welcome to do so, anytime at your own initiative. Only requirement I have is that I review all code before merging it and have the final say in what gets in and not.

In order to participate, just clone the repo, make the fix and then suggest a pull request between your repository and mine. If you think you would like to help out on a continuous basis just ask and I’ll add certain rights to you to work directly in my repository.

Depending on your skill there might be areas more beginner friendly than others. I believe the snippets can be greatly improved for instance. Especially differentiating between adv3 and adv3Lite types of snippets. This isn’t a top priority for me, but it’s one area I would greatly appreciate help with.

1 Like