What are "primitives" and how to access to use them

I saw a project that, when i opened it, i saw this "primitive" block with html stuff in it. can you guys help me with that?

The primitive blocks are made for use of allowing libraries to use javascript without needing to turn on javascript extensions. Think of it like verified javascript functions.

Since they are only meant for use in libraries, you should be using the library blocks instead.

how to access a library?

file > libraries

Screenshot 2023-12-17 134348

which?

Depends what you want to do! Look through the libraries. The chooser will show you what blocks are available in each library:

in which library contains primitives, i'm currently using scisnap

dont use them, theres nothing they do diffrently from the blocks in libraries
it will just make everything more confusing

theyre hidden for a reason after all

I'VE FOUND THEM!! IT'S IN THE "run scisnap!" BLOCK!!

theyre in custom block definitions for every library*

DO NOT USE THEM ALL THE FUNTIONS THOSE BLOCKS DO IS IN THE ALREADY EXISTING LIBRARIES AND IT WILL MAKE EVERYTHING MORE CONFUSING

they are very vauge on what they actually do and without looking at the libraries they come from its impossible to know how they work

ESPECIALLY with sci snap

importing that one adds TONS of options to the dropdown making it really hard to find stuff that isnt sci snap

a lot of them..?

just use the library blocks and not the primitives. you are not supposed to use the grey primitive type blocks

You can also find it by clicking the settings icon and turning on Extension blocks. I suggest only using the primitive block if you want to use a library block once (saves the block from appearing in the palette) or if you want to make a block pack.

The non-SciSnap stuff is at the bottom of the dropdown. Also, remember to use the scrollbar

But I would actually create the block with the primitive in it instead to explain what you're actually doing. If you don't want it to show in the palette, just edit the block, right click the definition, and toggle "in palette".

That is actually the only time you should ever use them.

I think that custom blocks can build up lag, the more custom blocks, the laggier it is. SciSnap! does so, I tried loading SciSnap! on a device that doesn't work well as a computer at one time and the libraries menu broke.

That's only for loading the blocks. Once the blocks are loaded, there's minimul lag. In fact, the only lag I got on my phone when loading the scisnap library, was just loading the library, and scrolling in the pallette (well, in the large scisnap categories). Other than that, there wasn't any lag.

This means that it's really just loading and moving large amounts of blocks at the same time, the amount of custom blocks does not have any other effect.

this is chaos man..