binman - UNIX man pages for Ruby bin/ scripts

binman produces UNIX man pages for your Ruby bin/ scripts using markdown(7), roff(7), Redcarpet2 for conversion thereof, and man(1).

Obligatory Screen-shot of binman(1) in action!

Here is an example bin/ script to help get you started!


Features


Prerequisites


Installation

As a Ruby gem (without markdown to roff converter):

gem install binman

As a Ruby gem (with extra cheese and everything please):

gem install binman --development

As a Git clone:

git clone git://github.com/sunaku/binman
cd binman
bundle install

Invocation

If installed as a Ruby gem:

binman

If installed as a Git clone:

bundle exec ruby -Ilib bin/binman

Just pass --help to see its man page.


Usage

In your bin/ scripts

Add the following lines to your bin/ script and you've got --help options!

require 'binman'
BinMan.help # show man page and exit if ARGV has -h or --help

Or, if you're on a diet:

require 'binman'
BinMan.show # just show the man page; no fancy extras, please!

See the API documentation for more delicious recipes.

In your Rakefile

Add the following line to your Rakefile and you've got a binman task!

require 'binman/rake_tasks'

It will pre-build UNIX man page files for your bin/ scripts into a man/ directory so that your end-users do not need the markdown to roff converter installed in order to view your man pages! Just remember to add the man/ directory's contents to your gemspec or release package:

Gem::Specification.new do |s|
  # ... your stuff ...
  s.files += Dir['man/**/*']
end

License

Released under the ISC license. See the LICENSE file for details.