-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Description
I am a huge fan of bash-it, but the more I used it, the more I ran into some issues. Thats when I started to dig into the codebase, open PRs and contribute to the codebase. It is however, after digging deeper into some areas that I found myself moving lots of parts and restructuring big chunks the code. Moreover, I found various inconsistencies when it came to code style and adherence to bash best practices.
gaudi-bash is my fork with lots of opinionated changes in the code to suit my OCD-like nature. I am by no means a bash expert but I tried my best to conform to the best practices in here.
I also found lots of unused and redundant code, a huge part of that was to ensure backward compatibility with the older versions of bash-it. Sometimes, it is better to start fresh and put the past behind us!
The main changes in this repo are:
- Split the core engine from the components (plugins, aliases, completions and themes to be done soon)
- Split the code into smaller set of files e.g., components, helpers, utils, etc.
- Ensure consistent way of writing bash code (function definitions, comments, etc.)
- Following as much as possible bash best practices
- Make sure to comply with shellcheck as much as possible
- Ensure high coverage unit tests for all core functions and split test functions as well into small units
- Merged some of the work from bash-it issues and open PRs that made sense to me
- Adding more functions like
bash-it backupandbash-it restore
Again, I am by no means a bash expert but tried my best to work something that made sense to me, so I hope some of these decisions make sense to you as well :)