Was wondering if there were any plans to allow a python linter or if its currently possible? I know a lot of times, client projects come up and the goal is to get it done asap, which leads to not necessarily bad code, but code that is hard to come back and read again, maintain, etc, and having a linter encourage the people writing code to follow certain guidelines would be beneficial.
I’m working on improving the script editing experience right now. Linting/formatting (perhaps using a no-config formatter like black is something I’ve considered, but it’s a non-trivial effort, mostly due to the unusual execution environment. There aren’t a lot of written-in-Java formatters for Python code - which doesn’t mean it’s impossible to do first-party, but it’s a lot of effort (and some risk) for relatively low gain.
Yea fair enough I know it’s a very odd execution environment so I didn’t think there was a straightforward way. Even sans a linter though, I hope maybe some auto-completer when calling functions with popups that have the paramters/doc string would be pretty useful.
You may be pleased to know that pressing Ctrl+Space brings up an auto-completer just like you described whenever you’re typing out a (e: system, such as system.db or system.tag) function name in a script.
Related, I think it’s a feature that needs to be brought to user’s attentions somehow within the designer space. The docs do an okay job at pointing it out, but many users won’t read those pages in their entirety. Something like a first-time script workspace popup or just some simple reminder text beneath script workspaces might be good additions to the designer.
Ah I did not know that! Thanks
Actually this doesn’t seem to work for me. Any idea why?
Whoops! I missed a big asterisk there…the autocomplete only works (as far as I am aware) on system.* functions (so you could type, for example, system.tag and get the docstrings for all the system.tag functions).
Sorry about that! That’s what I get for quickly typing up a response when it’s time to go home on Friday, haha.
Oh ok that works for me for system.* functions. Thanks.