Releases: bald55/Keylang
Releases · bald55/Keylang
Release list
Keylang v3.0.0
v3.0.0!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
PHILOSOPHY IS NOW... GAMES!!! Keylang wasn’t exactly supposed to be a general purpose programming language, and I love games so yeah Keylang is game oriented now (which means performance must be TOP NOTCH!!!!!!!!!! and stuff)
Changes
- Bundles Python :D
- Uses PyPy instead of CPython
- Variants added. Variants of a function accessed with a tilde (~)
- “wait” function has variant “wait~async”. The async version of wait.
- Also has the variant “wait~until”. Waits until a condition is met.
- Also has the variant “wait~thread”. Waits to run the code in the block without blocking
- Default wait uses time.sleep()
- “wait” function has variant “wait~async”. The async version of wait.
- Lua embed changed to use LuaJIT
- Scripts can be moved around now without Lua embedding breaking
- Libraries that are already imported are now in autocomplete, highlighted cyan
- Loop added to new scripts by default to keep program alive
Additions
- “do” and “end” alias for { and }, respectively
- Python can now be used instead of Keylang, via python { “the python code” }
- “when” keyword. Listens for WHEN an event occurs. Allows you to state how frequent it checks inside the parentheses
- Also a “when~once” variant. Checks UNTIL the thing happens, then stops checking
- Keyboard input detectors. Use “if key(the_key) {}” to check if the key was pressed, if True, executes the code in the block
- “keyword” keyword. Makes a custom keyword that compiles into the EXACT code it was assigned, not preprocessing (ex. keyword yay = cube[x] += 1)
- “print_python” keyword. Prints the unpreprocessed Python for when you’re confused or when I was confused and there’s a weird Keylang bug that you need to report
- Updated website… again! Somewhat extreme style revamp
Keylang v2.0.0
v2.0.0!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
This update revamps a bit of stuff, as well as adding new features to the language and some improvements to the editor. Breaks compatibility with v1.x.x however
Changes
- “var” keyword
Variables are defined with the var keyword. When CREATING variables, you define it with var. When ACCESSING variables, you use nothing. - Commenting out while selecting multiple lines now only comments, no uncomments. Add shift to the shortcut to uncomment
- Editor restyled a bit
Additions
- Bracket pair autocomplete now doesn’t make you suffer if right before a character
- Say you have dict_name1. If you insert [ before the 1, it will NOT become dict_name[]1, but rather dict_name[1
- Built in looprate variable. It gets the rate of the last time it was called. Still may be buggy but it works for now
- Bookmarks sidebar (experimental), clicking on a line number will bookmark that line, pressing the bookmark on the bookmarks bar will make the screen go to that line, bookmarks save when window closed
- Editor title changed from Keylang Editor to Editing (the filepath)
Fixes
- Undo and redo no longer… suck
- Editor menu corner no longer says version 0.0.1 alpha
- loop{ (without whitespace) now works
- Find button stops highlighting if empty
Other stuff
- Autocomplete changes to Lua built ins when inside an embed_lua block
- Updated site to match current version
Keylang v1.0.0
v1.0.0!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
This update adds features to the language, editor and makes it like probably x3 less likely to have bugs
Lua embedding
You can now embed Lua into Keylang!!!!!!!!!!
Bug fixes
- Fixed { and } not working in strings
- F string support
- Fixed enter not working for autocomplete
- Fixed comment out shortcut not commenting out multiple lines
- Fixed several bugs with ‘s keyword, but not all bugs PYTHON IT’S NOT A STRING LITERAL
- Made inline } supported
- Made inline comments supported
- Fixed scroll bar being blindingly white when unable to scroll
Other stuff
- run_kl("test.kl") preprocesses and reads for you, went from 6 lines to 2 lines of code (you need to import “from runner.keylang_runner import run_kl”)
- Completed entire Get Started page
- Updated website
- .kl files show output in a terminal when ran, has Keylang icon
- Autocomplete contains in scope variables and functions and stuff
- Made the Keylang website link color in the menu less eye shattering I mean more pleasant
Keylang v0.2.0-beta
v0.2.0! stuff are.... fixed!
- Added “‘s” as a keyword, alias for “.”
- Fixed tab and untab keyboard shortcut
- Sometimes keyboard shortcuts randomly stop working correctly. I haven't fixed this haha I’ll do it next update
- Updated website
Not a very big update for now... its not a 0.1.2 though it wasn't that minimal
Keylang v0.1.1-beta
the read me is wrong i meant v0.1.1
New features! new stuff! not a lot however!
- Added version number to bottom left of editor menu
- Added site link to bottom right of editor menu
- You can now download directly from the site
Overall very minimal