Skip to content

Releases: demonnic/muddler

Run muddler with -w to watch for file changes

14 Apr 18:04
Compare
Choose a tag to compare

What's Changed

  • add watch option to automatically rebuild on source file modification by @krystophv in #35
    • -w or --watch flag to muddler to turn this on.

New Contributors

Full Changelog: 1.0.3...1.1.0

Another missing keycode

18 Nov 23:37
Compare
Choose a tag to compare

They found another one! This release adds support for | in keys. Minor change.

Add handling for 'Space' in keybindings

15 Nov 01:40
Compare
Choose a tag to compare

It was brought to my attention that muddler couldn't handle keybindings for 'space' so I added it.

Minor bugfix for Windows

09 Jan 03:34
Compare
Choose a tag to compare

Windows cmd and powershell should work properly now

Due to an inconsistency in my code, and forgetting that Windows is UTF-16 by default, incorrect packages were being created which did not contain the proper directory structure or contents when running muddler from the distribution zip on Windows.

This release ensures the file is written as UTF-8 and that the proper path separator is used on all platforms.

1.0.0 release! Objects in the package root, scripts in the folders, and an alternate filter token set

09 Oct 22:27
Compare
Choose a tag to compare

Whaaaaat?! 1.0.0??

Yeeeeah, muddler's been used by enough people in packages they're actually distributing now that it's probably over due, and with this release I feel like some of the biggest hurdles to 1.0.0 have been cleared, so... just going to bite the bullet and release 1.0.0 now!

New alternatives to @PKGNAME@ and @Version@

Thanks to @wbk you can now use __PKGNAME__ and __VERSION__ as the tokens for filtering this information into your code. This should hopefully help reduce the number of 'errors' being reported by the lua language server in your IDE of choice, since __PKGNAME__ etc are valid Lua variable identifiers.

Create items which aren't in a subfolder!

Also thanks to @wbk you can now define items outside of a subfolder, in the root of the object type. For instance, the file layout

src/triggers
src/triggers/Bar.lua
src/triggers/Foo.lua
src/triggers/FooBar
src/triggers/FooBar/Beep.lua
src/triggers/FooBar/triggers.json
src/triggers/triggers.json

Used to produce a package which looked like this:
image

But now it correctly produces a package which looks like this:
image

Add lua code to your folders

Another often asked about feature, you can now add code to your folders. So for instance if you want a folder in your scripts called "Initialize" which contained variable initialization for the items contained within you, you can now add that code to a lua file of the same name. So to continue the same example, you would add Initialize.lua to the Initialize folder, like so:

src/scripts/Initialize/scripts.json
src/scripts/Initialize/Initialize.lua

Adds project generation options to muddler

10 Aug 00:47
Compare
Choose a tag to compare

This release will create a buildable muddler file tree for you to help you get started with muddler. It adds two new switches to the muddle command.

  • muddle --generate
    • This will ask you a series of questions and build out the project based on your responses.
  • muddle --default
    • This will generate a project named TemplateProject in the TemplateProject directory, with all the example objects (triggers, aliases, etc) and all default options selected for everything else.

Both options will generate the mfile, and a README.md file. Additionally, generate will give you the option to generate the following things (default generates the lot):

  • triggers
  • aliases
  • keybindings
  • scripts
  • timers
  • a .gitignore file

image

Several minor updates and infrastructure changes

20 Jul 03:12
Compare
Choose a tag to compare

This update doesn't bring much in the way of new functionality, but it does fix some bugs and increase jdk compatibility.

Bugs fixed:

  • muddler now checks for a src directory before actually making any changes. (#25)
  • muddler now ensures the write buffer for the XML is flushed before moving on. (#26)

Compatibility improvements:

  • Now using latest stable Groovy (4.0.3)
  • gradle bump
  • remove usage of .size property on ArrayLists, which is not supported in later JDKs
  • tested working with JDKs 8, 11, 17, and 18
  • docker image built using eclipse-temurin jdk 18, as adoptopenjdk seems to no longer be supported.

Smooth out pathing issues for the CI bridge

04 Nov 23:29
Compare
Choose a tag to compare

Since Lua (and thus Mudlet) can handle its paths with / on all three operating systems, I've standardized muddler and the muddler ci bridge to use that for its path delimiter in the .output file and file watches. This way we don't have to worry about escaping the \ if it is the file separator, and that it should just work no matter what OS you run it on.

If you already have one setup using \ as the file separator it'll sub it out internally, no worries.

Add version information to build output, and basic CLI argument parsing

14 Oct 02:52
63678a1
Compare
Choose a tag to compare

Just a couple small changes for this one. Muddler will now include the version of muddler being used in its build output.

It also now parses command line arguments. Just -h|--help for usage and -v|--version to print the version and exit at the moment but this was necessary to set the stage for future functionality anyway, and it's honestly past time I added these two switches.

I also set the muddle shell wrapper around using the docker implementation to autopull the latest image if necessary

Fix function keys, increased compatibility for the CI bridge

21 Aug 23:53
1c4a714
Compare
Choose a tag to compare

F keys

Found a bug during a presentation today which caused the F1-F18 keys to not be properly converted. This resolves that issue.

CI Bridge

The Muddler mpackage for use in automating reinstall of packages/etc has been updated under the covers to use relative pathing instead of full. This will make using muddler in WSL work with running Mudlet in windows over docker/etc. Your path would still be "C:/Users/demonnic/gitbox/MDK" for instance, but it should now work regardless of how you ran muddler as long as Mudlet can find the path.

No changes should be required on your end for this, it should "Just Work".