Eng:Comment (programming feature)

Comments in the Scratch program are adjustable textboxes that can be attached to blocks, or left floating. The comment boxes can be adjusted both horizontally and vertically, dragged around the Scripts Area, and deleted. In a survey conducted by the Scratch Team, which tried to identify the top scripts used by Scratchers, the comment block (which was accidentally found by the survey engine due to technical reasons) ranked 10th, being 0.68% of all scripts on the website. This was surprising and encouraging to the Scratch Team.

History
The Scratch 1.2 beta introduced a comment block as a Control block that could be placed inside a script as one of its blocks. It made no change to the script, as it only held text however, newer users grew confused about it, causing it to be removed in the official Scratch 1.2 release.

The offline player will treat the comment block as an obsolete block, and as such, stop the script that contains the comment. This can be a problem for old projects that contain the comment block.

Both the Scratch Team and the Scratch community wanted the ability to add comments to scripts in order to improve their readability. Scratch 1.3 introduced the modern comments that are still used today. Since Scratch 1.4, comments can be stuck to a block so that comments remain attached when a script is dragged around. The font used with the comment block, also used in drop-down menus, was changed to Verdana with Scratch 1.3.

Use
A main use for comments is to explain how a script is working. An example is below:

when flag clicked switch to costume [costume1 v]//Preparing the project... set [variable v] to [0] go to x: (0) y: (0) forever if //Gameplay. change [variable v] by (1) end if  change [variable v] by (-1) end end

Another purpose of the comment feature is to provide some hidden info the user wishes to not share in the Notes and Credits.

Shapes
Comments can be shaped into two ways a full comment or a mini comment. The type can be changed by clicking the gray triangle at the upper-left of a comment.

In 2.0, comments are created by right clicking. If you right-click on a block, the comment will be connected by a (very) thin line to that block. You can edit or delete a comment by right clicking on it.

Mini comments are one line long and hold the amount of characters that will fit on one width of the comment. Change from Mini to Full by clicking the triangle at the top left of the comment. Full comments display all text entered into it, which can extend infinitely.

The width (size) of comments can be altered by clicking (the parallel lines at) the bottom right-hand corner of the comment, and dragging to the desired width (size). This can also be extended infinitely, and is particularly useful if the mini comment is too narrow to display a sufficient amount of characters.

Blocks Plugin
To use comments in the blocks plugin, simply add "//" after the block to be commented, and add the annotation after that. This syntax is derived from comments in most high-level languages. Comments in the Block Plugin look like:

move (10) steps // This is a comment attached to a block. move (10) steps // This is a comment attached to a block. //Stray comment //Stray comment