Remove code line numbers: Does as you would expect. Removes line
numbers from the code and changes GOTOs etc to use labels. The original file is
left intact and the new copy without line numbers opens in a new tab..
While MMBasic can run code with line numbers, it is much more efficient to
program without line numbers and using SUBs and FUNCTIONs instead of GOSUB etc.
Remove blank lines: Blank lines are good for readability but if memory
is tight, removing them will help a bit.
Copy and pasting code from Web or Word documents can sometimes result in double
spacing. This fixes that.
Remove comments: Strip all comments that start with '. Comments with REM will not be removed. Useful when memory is tight.
Remove Indents and Trailing spaces: Removes formatting to reduce file size. You can always use Format to reinstate Indents.
Crunch: Performs the three above operations in one step as well as
removing a lot of unnecessary white space. It tends to make code harder to read
so is not recommended unless you are really short on space.
It opens a new tab with the resulting file, leaving the original intact. Lines
starting with # are left intact.
By default the first line is left intact even
if it is a comment. The first line is special!
Remove non-ASCII characters: Replaces those annoying quotes that appear in code copied from PDF's or MS Word documents. It also replaces a few other troublesome space characters and any unicode that has crept in.
Make selected lines a comment: Useful for temporally removing sections of code.
Uncomment selected lines: Reverses the above.
Format. Adds Indents to make reading code easier. It also warns if there is a FOR...NEXT or DO...LOOP etc that is not correctly terminated. If the option to use soft-tabs (space characters), any TABs in the file will be converted.
Save keyword case: The keyword case seen in the edit window is
temporary and unless you choose to Save Keyword Case, your code will be saved in
the case you typed it in.
MMBasic is not case sensitive so it is purely cosmetic. You may wish to Save
keyword case before posting code on Internet forums or in documents. If you have
'Camel' case selected, normally it will not display as such but it will get converted
when you do a 'save keyword case'.
Merge: The code is scanned and any lines with INCLUDE
directives will have the file referenced inserted.
In the main code a comment line with either "$INCLUDE:" (Quick Basic style)
or "#INCLUDE" (C style) with indicate where the include file is to be
placed. Running ‘merge’ from the ‘Program’ menu will insert the library
files into the main file. A comment line will be inserted at the end of the
include file so you know what code was added. The original include directive has
another comment (‘) added to prevent subsequent merges from adding a second
copy of the include file. An include file can have its own includes. In both
cases, the added code is now part of a new file in a new tab, leaving the
original file intact. Note: Some versions of MMBasic also have INCLUDE
directives or an equivalent and that may be a better choice.
Display Variable Report. List all variables and labels used. You will get awarning if unpaired brackets are detected during the scan. With this list you can locate redundant code. It also lists sections of code that might get corrupted when posting on TBS forum.
DOS line endings/Unix line endings: Sets the line-endings. Maximites
are reasonable tolerant but it is safest to stick to DOS. It will tidy up inconsistencies
if code has been pasted from different sources.
MMEdit checks the first 1K of a file when it is loaded and if any <CR> is
found it assumes the file has <CRLF> line endings and converts the full
file to DOS.
If the check fails to find any <CR> in the first 1k, UNIX style lien
endings are assumed and the full file is set to UNIX <LF> only
Most 'mites prefer DOS <CRLF> line endings.
When files are being uploaded via MMCC using "Load and Run", AUTOSAVE
is used and the line-ending in the file is ignored and replaced with the
line-ending set in MMCC.
Last edited: 12 September, 2022