[v.17.6] SimpleComplete | General scripting plugin

Hi, i can replicate the issue, will be fixed in next patch :+1:

1 Like

Patch 16.3:

  • The old functionality of “nil” in settings has been replaced by “void”, “nil” is now an actual setting value which you can use for import and snippet shorthands
    Setting a setting to “void” will set it to actual nil, I know a bit confusing but i couldnt think of a better solution :frowning:

  • Added a new command, reset: local | global. If the value is local, then the local settings will be synced with the global one. Else, the global setting values will be set to the default values.

1 Like

What is this supposed to mean lol, do I use “void” instead of “nil” for the previous nil behavior?

So… I can type nil as a shorthand? :thinking:

No, u still use nil to represent “no shorthand”, but void for “no setting” iylwim

1 Like

Ah ok, so setting it to void will clear the setting from the storage entirely?

1 Like

Yea and itll use the global one instead if its local

1 Like

--sc exportsettings: global still outputs as a local command

nil as a shorthand just does not work (ironically voiding it gives the intended behavior for nil)

setting a setting to void just makes it impossible to use until you restart studio

1 Like

Yea my bad xd

Did you download the new update? Fixed it after i realized the same

Yeah i’ll work on making it set to the default value when used on global settings instead of just removing it

1 Like

Patch 16.5:

  • --sc exportsettings: global now uses setglobal
  • Setting a global setting to void now sets its value to the default value
  • Using .or : as import shorthands now no longer prevent you from doing member accesses

    image
1 Like

Patch 16.6:

  • Doing auto imports inside method call parens (e.g, | = cursor, game:GetService(:|)) now work, and also now imports wont show up when doing game:GetService(...):| (dont ask me how long this took me) (Same thing works for . which means you can have . as a snippet and/or import shorthand! :smiley: )

Patch 16.7:

  • Fixed nil import shorthands just straight up not working (prefix matching issue) aswell as some minor performance issues and bugs
1 Like

There should be a trigger or option or something to not automatically create a variable if you’re in the process of defining one. I know this behavior is desired in some scenarios, perhaps to access something in the module (.new), but sometimes you may not want the variable to be named the same as the module.

Quick example:

current

local ReplicatedStorage = game:GetService("ReplicatedStorage")

local AnimationController = require(ReplicatedStorage.Utils.AnimationController)

local SimpleAnimate = AnimationController

new

local ReplicatedStorage = game:GetService("ReplicatedStorage")

local SimpleAnimate = require(ReplicatedStorage.Utils.AnimationController)
1 Like

I don’t really know how this would be implemented though, like maybe a RequireShorthand instead of an ImportShorthand?

That means 3 shorthands will exist though…

1 Like

I don’t either lol, either a shorthand or a simple toggle

orrrr… a custom directive?

i like to think of snippets as it’s own thing

1 Like

you also didn’t implement the context checker btw

if you can, make it so client scripts cannot require things like serverscriptservice and serverstorage, and by extension modules there

a tag to EXCLUDE modules from results would also be nice

1 Like

Right, will add this in update 17 when I finish fixing some issues with SimpleZone xd

1 Like

Update 17:

  • If the current script is a localscript/script with client runcontext, modules under ServerStorage and ServerScriptService will be blocked from auto import always, same thing for the services themselves.

  • Added the ModuleExcludeTag which is SC_Ignore by default, modules tagged with this tag won’t be considered when searching (Might also add a ModuleIncludeTag)

  • Fixed a bug where using an import shorthand right after another symbol eats it (e.g (!Pla) => Players))

1 Like

SC_Ancestor but not :broken_heart:

now that I think about it, you can probably add the idea I suggested in the form of an attribute

SC_VarName or something with the value being what the variable should be called

1 Like

Module ancestors are still useful when you wanna be able to access entire folders of modules without tagging everything, but this include tag will be useful for modules which you wanna include individually :V

I’ll think about it

1 Like

keep in mind that if you add this, there should probably also be a setting to change what the autocomplete callback is too

1 Like