TD-Completes-Me. A Simple Auto-Completion Engine for TouchDesigner - 2020-04-30 17:20

TD-Completes-Me. A Simple Auto-Completion Engine for TouchDesigner

Link to main site


WUT :exploding_head:

I loves me some pycharm but I might have to change editors for this.

Bright times for that good snake :wink:

wow! had no idea this was even technically possible. So cool. +1 for sublime, but if not honestly I’d be tempted to switch for something like this as I spend far more time than I ever expected these days in an IDE. awesome work!

:+1: Great. Really helpful tool.

Damn, awesome work - thanks so much for sharing :love_you_gesture:
I tried something similar a while ago but didn’t achieve a working system. Really nice that you managed to build this :star_struck:

+1 for sublime text.

1 Like

Amazing, awesome work!

Thanks for the kind words friends!

The project is still in (semi) active development as my freetime waxes and wanes so if you discover any bugs head over to the issues section of the repo and start up a thread. If you’ve got any feedback or features(besides a Sublime implementation. I hear that one for sure) that you think would improve the experience of using the extension hit me up via this thread or a DM

thanks again!


1 Like

Hi, this looks great. I’m just installing the VS Code part.

What do I do with the .tox?

Does td_completes_me.tox need to go in the project component, or can it go anywhere?

I’d like to set up my default blank .toe for starting a new project so it has the tox added by default.

just discovering this now - what an awesome idea !
Thanks @davet for starting this

hey there! Sorry for the late reply to your question. I’m not so good at forum monitoring. The best way to reach me re: TD-Completes-Me is opening an issue via the github repo if the behavior of the module is not what you would expect.

This is a good question. I normally drop it in the project component but it could probably go anywhere. There’s nothing really in the TOX logic that relies on the network structure. If you want to get a sense of how the module tries to figure out the autocompletions the logic is all in the main extension. It’s been a minute since I poked at it but I think it tries to figure out the operator context based on the file name of the DAT that’s currently being edited in the external editor.

No worries, I figured it out.Now I have it in my default blank project when I start Touch. It definitely :slight_smile: makes life nicer. Thanks for the time you put into this.

+1 Sublime text (even if I use Nova at the moment)

Hello All,

I finally got around to looking into the feasibility of a Sublime Text implementation. Turns out it was relatively straight forward to implement. If you check out the dev branch of the repo you’ll find a subl folder that has a TDCompletesMe.sublime-package thing in it.

In theory adding the plugin to your ST install should be as simple as adding this guy to the Installed Packages directory of ST. I also threw the source code of the package in there as well for good measure.

In theory this thing will try and get completions from the TDCompletesMe TOX using the same TCP protocol whenever ST asks for completions. I’ve been using Ctrl+Space to trigger completions.

Caveat Emptor: This is a bit of a beta build. ST4 is apparently around the corner and has much prettier support for completions and LSP protocals so we’ll have to wait until then to get the fancy things like DocStrings and such. If you want the full goodness of TDCompletesMe the VsCode version is still the way to go.

Anyway. here’s the zip if you don’t feel like cloning things from github. (3.1 KB)

Have fun and happy coding!



Very cool David, thanks for all your effort on this! Sublimers rejoice :tada:

Thank you for giving attention to ST. I’ve managed to install the package but still can’t make it work. I’ve posted on the issue thread that was already open for ST there.

Whaaaaat! :smiley: I have been hoping for this to exist since i dont know when. Super cool, thanks!

I just discovered this, and wow! What a game-changer. Very happy to find that it also works when syncing the dat to a file, as that’s become an important part of my workflow with big python files.