SHML is a shell framework for faster and easier script development.
HTML has CSS, terminals have "ANSI/VT100 Control Sequences". SHML makes is easy to apply some style to your shell scripts without trying to remember that Yellow =
\033[33m instead Yellow is
# Unix-like $ sudo bash -c 'curl -L https://raw.githubusercontent.com/odb/shml/1.1.0/shml.sh -o /usr/local/bin/shml && chmod +x /usr/local/bin/shml' # Homebrew $ brew install shml # npm $ npm install -g shml
You can just download SHML without installing it...
$ git clone https://github.com/odb/shml.git
$ wget https://raw.githubusercontent.com/odb/shml/master/shml.sh
In order to use SHML you must tell your shell environment where it is located. Lets assume that we are writing a BASH script and want to use SHML.
If you installed in using the 1-liner above you would do:
#!/usr/bin/env bash source $(which shml)
If you downloaded SHML using git or wget you would do:
#!/usr/bin/env bash source ./shml.sh
#!/usr/bin/env bash source "$(which shml)" echo " $(fgcolor red) This will make the text red... $(fgcolor end) "
View all examples: https://odb.github.io/shml/getting-started/
Contributions are more than welcome. Before submitting ANY new features please read the Contribution Guidelines.
To report any bugs or if you have a feature request feel free to open an issue.
Updating The Docs
Updating the docs requires Ruby/Jekyll to generate & view locally.
$ cd docs/ $ gem install bundler $ bundle install
Generate and serve:
$ bundle exec jekyll s --watch
Then go to: