Metacommand: Difference between revisions
Jump to navigation
Jump to search
Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link
No edit summary Tag: Manual revert |
No edit summary |
||
Line 6: | Line 6: | ||
| __TOC__ | | __TOC__ | ||
|} | |} | ||
==Legacy Metacommands (QBasic/QuickBASIC)== | == Legacy Metacommands (QBasic/QuickBASIC) == | ||
:*Legacy metacommands are normally used at the program start, they should have their own program line and must be commented with an ''[[Apostrophe|']]'' or [[REM]]. | :*Legacy metacommands are normally used at the program start, they should have their own program line and must be commented with an ''[[Apostrophe|']]'' or [[REM]]. | ||
* [[$DYNAMIC]] {{Text|set all program arrays as changeable in size using [[REDIM]].}} | * [[$DYNAMIC]] {{Text|set all program arrays as changeable in size using [[REDIM]].}} | ||
* [[$INCLUDE]] {{Text|designates a text code library file to include with the program.}} | * [[$INCLUDE]] {{Text|designates a text code library file to include with the program.}} | ||
Line 14: | Line 13: | ||
==QB64 Metacommands== | == QB64 Metacommands == | ||
:*QB64 metacommands must not necessarily used at the program start. However, it's still the best location for some of it (see individual descriptions). | :*QB64 metacommands must not necessarily used at the program start. However, it's still the best location for some of it (see individual descriptions). | ||
:*QB64 metacommands must not be commented with an ''[[Apostrophe|']]'' or [[REM]], but should have their own program line too. | :*QB64 metacommands must not be commented with an ''[[Apostrophe|']]'' or [[REM]], but should have their own program line too. | ||
* [[$ASSERTS]] {{Text|enables debug tests with the [[_ASSERT]] macro.}} | * [[$ASSERTS]] {{Text|enables debug tests with the [[_ASSERT]] macro.}} | ||
* [[$CHECKING]] {{Text|turns event and error checking OFF or ON.}} | * [[$CHECKING]] {{Text|turns event and error checking OFF or ON.}} | ||
Line 32: | Line 30: | ||
==OB64 Precompiler Commands== | == OB64 Precompiler Commands == | ||
:*These are a special type of ''{{Text|QB64 Metacommands|blue}}'', which allow for conditional compiling, hence including or excluding certain code sections depending on given conditions. | :*These are a special type of ''{{Text|QB64 Metacommands|blue}}'', which allow for conditional compiling, hence including or excluding certain code sections depending on given conditions. | ||
* [[$ELSE]] {{Text|used in conjunction with [[$IF]] for the precompiler.}} | * [[$ELSE]] {{Text|used in conjunction with [[$IF]] for the precompiler.}} | ||
* [[$ELSEIF]] {{Text|used in conjunction with [[$IF]] for the precompiler.}} | * [[$ELSEIF]] {{Text|used in conjunction with [[$IF]] for the precompiler.}} | ||
Line 43: | Line 40: | ||
{{PageSeeAlso}} | |||
* [[Statement]], [[Sub (explanatory)]] | * [[Statement]], [[Sub (explanatory)]] | ||
* [[Function (explanatory)]] | * [[Function (explanatory)]] |
Revision as of 22:25, 28 July 2022
Metacommands are commands that start with dollar sign ($). Those commands usually switch the program between different operation modes/behavior or provide extended functionality.
Legacy Metacommands (QBasic/QuickBASIC)
- $DYNAMIC set all program arrays as changeable in size using REDIM.
- $INCLUDE designates a text code library file to include with the program.
- $STATIC set all program arrays as unchangeable in size using DIM.
QB64 Metacommands
- $ASSERTS enables debug tests with the _ASSERT macro.
- $CHECKING turns event and error checking OFF or ON.
- $COLOR includes named color name constants in a program.
- $CONSOLE creates a console window that can be used throughout a program.
- $DEBUG enables debugging features, allowing you to step through your code line by line.
- $EXEICON used with a .ICO icon file name to embed the image into the QB64 executable.
- $NOPREFIX allows QB64-specific keywords to be used without the underscore prefix.
- $RESIZE used with ON allows a user to resize the program window where OFF does not.
- $SCREENHIDE hides the program window from view.
- $SCREENSHOW displays the program window after it was hidden.
- $VERSIONINFO adds metadata to Windows only binaries for identification purposes across the OS.
- $VIRTUALKEYBOARD (deprecated) turned the virtual keyboard ON or OFF for use in touch-enabled devices.
OB64 Precompiler Commands
- These are a special type of QB64 Metacommands, which allow for conditional compiling, hence including or excluding certain code sections depending on given conditions.
- $ELSE used in conjunction with $IF for the precompiler.
- $ELSEIF used in conjunction with $IF for the precompiler.
- $END IF used in conjunction with $IF for the precompiler.
- $ERROR used to trigger compiler errors from within the precompiling pass.
- $IF used to set an IF condition for the precompiler.
- $LET used to set a variable for the precompiler.
See also