Skip to content

Releases: bald55/Keylang

Keylang v3.0.0

Choose a tag to compare

@bald55 bald55 released this 26 Feb 04:00
a4210da

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()
  • 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

Choose a tag to compare

@bald55 bald55 released this 28 Nov 22:43

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

Choose a tag to compare

@bald55 bald55 released this 16 Nov 05:57

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

Choose a tag to compare

@bald55 bald55 released this 08 Nov 03:47
d5ed2d5

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

Choose a tag to compare

@bald55 bald55 released this 06 Nov 22:52

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