Well, I complained about this before and nothing changed but why not complain some more
Problem: Write code in the AppGameKit IDE on OSX and put underscores anywhere. The underscores show up as space even if the underscore is there. This is a problem in variable names, constants, strings (file names etc).
I just spent some time debugging a weird error due to this. So not just the looks but this easily creates extra bugs. On Windows version of AppGameKit this is not a problem as the IDE shows the underscores there just fine (or so I recall..).
My example from today:
// show all errors
SetErrorMode(2)
// set window properties
SetWindowTitle( "bugtest" )
SetWindowSize( 1024, 768, 0 )
SetWindowAllowResize( 1 ) // allow the user to resize the window
// set display properties
SetVirtualResolution( 1024, 768 ) // doesn't have to match the window
SetOrientationAllowed( 1, 1, 1, 1 ) // allow both portrait and landscape on mobile devices
SetSyncRate( 30, 0 ) // 30fps instead of 60 to save battery
SetScissor( 0,0,0,0 ) // use the maximum available screen space, no black borders
UseNewDefaultFonts( 1 ) // since version 2.0.22 we can use nicer default fonts
#constant STATE MAINMENU 1
#constant STATE_PLAYING 2
type GameStateType
state as integer
endtype
do
Print( ScreenFPS() )
Sync()
loop
This gives an error of "main.agc: 24: error: Unexpected token "1"
24 is the line "state as integer"
So if you look at this in the AppGameKit IDE on OSX the #constant definitions look like this:
#constant STATE MAINMENU 1
#constant STATE PLAYING 2
whereas they are really stored as
#constant STATE MAINMENU 1
#constant STATE_PLAYING 2
which is also how it should be displayed.
but on OSX you cannot tell if it was that or
#constant STATE_MAINMENU 1
#constant STATE_PLAYING 2
Also a related aspect to this bug is that #constant docs only give examples of having a single name and value:
https://www.appgamekit.com/documentation/language/1_constant.htm
as in #constant NAME VALUE
So no idea what does the above version of even does:
#constant STATE MAINMENU 1
Because it is of the form #constant NAME1 NAME2 VALUE
So you might even expect the compiler to complain about the actual error cause here (broken #constant declaration which is not visible on OSX). But who knows.
Anyway, the point of this overly long story being, please make the underscore visible on AppGameKit OSX IDE.