Luau-Powered Autocomplete & Language Features: Documentation + Full Release!

Hey Developers,

Exciting news— we’re going ahead with the full release of Script Editor Luau-Powered Autocomplete and Language Features!

Several months back we released a beta for these features, which completely revamped Script Editor Autocomplete, as well as a number of other editor features that now rely on intelligent Luau-powered type checking. An overview of these improvements can be seen at the original post here.

Since we released the beta, we’ve been hard at work squashing bugs and making improvements based on the feedback you’ve given us. In addition to bug fixes, we’ve also made some major improvements since the initial release, detailed below.

New Improvements

Script Editor Documentation

The original release of Luau-Powered Autocomplete did not include documentation for Autocomplete suggestions. We’ve now added this feature to both Autocomplete and Signature Help, and it works better than ever before!

Autocomplete Documentation

The majority of autocompletions now include a documentation view that provides important information on the suggestion’s usage. This includes function signatures where applicable, a summary of what the element is used for, and a link to the relevant Dev Hub page. You’re now provided with easily readable information to assist your usage of Roblox APIs.

Signature Help Documentation

We’ve also added documentation to the Signature Help widget that appears when entering parameters into a function call. This allows you to continue to receive context on an API method after the Autocomplete widget has been closed.

Documentation for Autocomplete and Signature Help, and the features themselves, can be toggled on/off in the Studio Settings menu, under ‘Script Editor’.

Improved Autocomplete Logic

We’ve continued to refine the logic powering Autocomplete suggestions since the original release of the beta. Autocompletions are now more relevant than ever to what you’ve typed!


                                  Before                                                                          After

Looking Forward

We’re continuing to implement quality of life improvements for these features. In the next months, you can expect to see additions such as:

  • Function signatures in the Autocomplete suggestion list only being displayed when documentation is toggled off (to avoid repeating information)
  • Automatic resizing of the Autocomplete documentation view to ensure all text is displayed without the need for scrolling
  • Expansion of documentation to ultimately cover all of our API members

Release Plan

Beginning on Monday 12/6, we’ll enable Luau-Powered Autocomplete and Language Features for a small number of users. Over several weeks, we’ll ramp up the number of users we enable the features for until we’ve reached 100% of the Studio user base. If you’ve already opted in to the beta, or do so before 12/6, you will not be affected by this process.

During this period we’ll closely monitor for crashes and errors. If any significant issues are discovered, we may choose to roll back the feature release to an opt-in beta while we make whatever fixes are necessary.

A huge thank you to the following who’ve helped make these features possible: @fun_enthusiast, @FunnyOldWorld, @swmaniac, @WheretIB, @GeneralRelish, @mrow_pizza, @Apakovtac, @yohooyohoo, @HugoBLH, @cruiser_forever, @iriszh, @windy0724, and @Rusi_002!

Happy scripting!

148 Likes

This topic was automatically opened after 11 minutes.

This doesn’t work on sitetest, lets go down a few versions because this is amazing

Will we get the ability to add our own documentation with a comment syntax?

-- Adds two numbers together
-- @param a The first number to add
-- @param b The second number to add
-- @returns The sum of A and B
function add(a: number, b: number): number

end
26 Likes

Finally, I can use functions without looking back at the documentation.
Thank you for this amazing update, I really hope we get to customize this to however we’d like soon in our Roblox Studio settings.

Would be nice if we could get this also, just like in vs code:

I saw this yesterday and I kind of made a revamp for it below

Here



Can’t wait to see other features coming soon.

7 Likes

Scripting now much much easier!

4 Likes

This is one step closer to eliminate the need of tooling, it’ll be interesting to see how that part of development turns out for the coming months as several updates have contributed to tooling becoming less of a need, but at the same time that field seems to be growing.

Maybe a little late, but better now than never.

1 Like

Wow. Guess it‘s time to put on my dev gloves again and come back to Roblox (one of the only updates I was hoping for)

2 Likes

This will save so much time for me: I won’t have to look back at documentation so often.

Also, quick question: why are updates for Roblox released in bursts? Is it intentional or just a coincidence?

2 Likes

Main reason of why I stopped codding on Roblox for a while

This may be just me (who was away from Roblox for basically 9-12 months), but didn‘t they said that they were working on multiple things and would release most of them at the end of 2021? It seems that this is happening rn

1 Like

Is there or will we have an option to convert a string argument into a type?

I mean something like this:

local function GetObject(class: string): typefromstring(class)
	--// typefromstring(string) is something I made up, but what it would do
	--// is return the matching type with the string given. 
	--// The string being from the parameters. 
	local Object = workspace:FindFirstChildWhichIsA(class)
	return Object
end

local object = GetObject("Part") 
--// type would be equal to the given class (the argument)
--// In this case, the variable 'object' has the type Part.
2 Likes

Yes, we definitely plan on allowing you to customize documentation at some point. There are a number of issues we’re ironing out before it’ll be possible, so we’ll keep you posted :slight_smile:

11 Likes

We tend to plan projects on a quarterly basis, so towards the end of any given quarter (like right now) we’re more likely to release things in somewhat of a “burst”

5 Likes

In general updates came in bursts lately, not just this one.

3 Likes

Best Feature EVER, This Helps ALOT.

2 Likes

Well Roblox version updates usually come out on every wednesday and they usually include flags for the new features that can be enabled at some point in time. So in a way, it is kind of intentional due to how updates work.

This would help me while I coding, great update. :grinning_face_with_smiling_eyes: :+1:

It would be nice to have comments on top of functions to reflect documentation, but with tags we can use to specify if a function is a constructor, yields, can error, etc, and for that I would actually suggest working with Moonwave, as it’s a very well known and used resource which is used for that, and Roblox LSP, popular VSCode extension, has plans to support it. It’s made by a known team, the Adopt Me team if I’m not being stupid.

On Moonwave, doc comments are shaped like this:

--[=[
    This function returns whether an object is cool.

    @yields
    @param object any
    @return isCool boolean
]=]
1 Like

Awesome stuff, nice upgrade. Can’t wait to check it out :fist:

1 Like

Now, we need something like Github Copilot :wink:

1 Like

This is really cool! It’s really comfortable coding now.

2 Likes