Today, I wrote a small tool to make your eZ80 programs prettier
entirely in the broswer!
It...
- adjusts your indentation so it stays with the stack, assuming you are using push/pop. (I'm not sure if I can check other methods, like directly manipulating the stack pointer, without a bunch of extra code)
- formats your comments to increase readability.
- is entirely customizable, so if you don't like something you can fork the project and change it.
- probably won't mess with the functional aspects of your code. (if it does, file a bug report/post in the thread)
- tells you approximately how many changes were made (I like stats)
- probably will have more things going for it in the future
I wrote it as a tool so I could make my code nicer-looking without too much effort. I'm not at the point where I'm writing "smart-person" assembly yet, but I figure I'll get there soon enough. If you put any code in and it comes out functionally different/breaks, please create a bug, giving me the relevant code before/after prettification. I understand that different compilers have different directives/formatting requirements and stuff, so I might have to provide different options for different compilers. I also understand that this is probably useless with good programming practices.
The default settings used are simply my personal preferences (i.e. use 2 spaces instead of a tab, 2 more spaces before a comment, etc), but (as I said above) this is
all changeable, you can find documentation on the individual options
here. It was designed and written for myself, but if there's something you don't like, you can change it. If there's something that I'm missing that you think should be added as a default option, please tell me about it!
Check it out
here!
To-Do:
- Allow comments in the inputted code to disable formatting for sections/lines/blocks of code.
- More customization features.
- Even more customization features.
- Document the features I added.
- Improve the website (allow customizing features in the browser, so you don't have to fork or open the JS console)