All Projects → bitboxer → manpages

bitboxer / manpages

Licence: MIT License
Gem to add man pages support to ruby gems

Programming Languages

ruby
36898 projects - #4 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to manpages

rails-mini-profiler
Performance profiling for Rails, made simple 🦔
Stars: ✭ 380 (+900%)
Mutual labels:  rubygems
crm114.rb
[Retired] Ruby interface to the CRM114 Controllable Regex Mutilator.
Stars: ✭ 29 (-23.68%)
Mutual labels:  rubygems
maloss
Towards Measuring Supply Chain Attacks on Package Managers for Interpreted Languages
Stars: ✭ 46 (+21.05%)
Mutual labels:  rubygems
sinator
Sinatra application generator
Stars: ✭ 19 (-50%)
Mutual labels:  rubygems
gemdiff
Find source repositories for ruby gems. Open, compare, and update outdated gem versions
Stars: ✭ 116 (+205.26%)
Mutual labels:  rubygems
middleman-robots
middleman-robots is extension of Middleman. This extension create robots.txt by config.rb.
Stars: ✭ 33 (-13.16%)
Mutual labels:  rubygems
harvesting
Ruby wrapper for the Harvest API v2
Stars: ✭ 24 (-36.84%)
Mutual labels:  rubygems
termichunk
Organize chunks of text within terminals
Stars: ✭ 12 (-68.42%)
Mutual labels:  rubygems
slack neuralyzer
Ruby gem for clean up messages and files on Slack.
Stars: ✭ 58 (+52.63%)
Mutual labels:  rubygems
ebnf
EBNF parser and generic parser generator for Ruby.
Stars: ✭ 101 (+165.79%)
Mutual labels:  rubygems
drunker
Distributed CLI runner on AWS CodeBuild
Stars: ✭ 22 (-42.11%)
Mutual labels:  rubygems
ManOpen
A macOS GUI application for viewing Unix manual pages.
Stars: ✭ 18 (-52.63%)
Mutual labels:  man-page
ManDrake
Native Mac man page editor with syntax coloring, mandoc syntax checking & live preview.
Stars: ✭ 130 (+242.11%)
Mutual labels:  man-page
rubysec.github.io
Current home of rubysec.com
Stars: ✭ 25 (-34.21%)
Mutual labels:  rubygems
jquery-datatables
Jquery datatables ruby gems for assets pipeline
Stars: ✭ 73 (+92.11%)
Mutual labels:  rubygems
vultr.rb
Ruby bindings for VULTR API v2.
Stars: ✭ 47 (+23.68%)
Mutual labels:  rubygems
ruby-sensor
💎 Ruby Distributed Tracing & Metrics Sensor for Instana
Stars: ✭ 23 (-39.47%)
Mutual labels:  rubygems
capsulecd
Continuous Delivery for automating package releases (npm, cookbooks, gems, pip, jars, etc)
Stars: ✭ 96 (+152.63%)
Mutual labels:  rubygems
codice fiscale
A Ruby gem that calculates the Italian Tax ID (Codice Fiscale)
Stars: ✭ 17 (-55.26%)
Mutual labels:  rubygems
afip bill
A small library to generate a bill's PDF
Stars: ✭ 19 (-50%)
Mutual labels:  rubygems

Manpages

Build Status Gem

This plugin will add man pages support to ruby gems. Instead of adding a new command like gem-man it will try to link the files to a place the man command automatically discovers.

With rvm and chruby it works out of the box, but sadly for rbenv we need to add hooks that modify the man symlink depending on the ruby version currently used.

Installation

gem install manpages && gem manpages --update-all

This plugin automatically hooks into the ruby gems system. Every gem installed afterwards is checked for manpages. If this gem finds them, it exposes them to the man command.

Using this with rbenv

Sadly rbenv uses shims to hide the actual executables. This makes it a bit harder to make this gem work in that environment.

This gem provides hooks to change the man path for the current used ruby version. To install them execute the following line:

curl -o- https://raw.githubusercontent.com/bitboxer/manpages/master/rbenv/rbenv_hook_install.sh | bash

After the hooks are installed, rbenv will always change the man symlink to the currently used ruby version. Sadly rbenv does not provide a hook that is fired when switching ruby versions. This means that the path can only be corrected when executing a command provided by a gem. If you want to have the correct man page for a gem, you need to execute the command of that gem, first.

How this works

After a gem is installed, this plugin will check for a directory called man within the gem and link the manpages it finds to BIN_DIR/../share/man, where BIN_DIR is the directory where the executable of the gem is installed.

Most man versions will automatically search this directory and no additional work is required. If you install a gem that includes a man page (e.g. guard), you can simply use man guard and you will see the man page the gem provided.

Providing man pages with your gem

The most common way in the ruby world to create a man page is through a tool called ronn. Ronn uses a modified variant of markdown as source file. More details about the format can be found here. In the newest version kramdown also is able to generate man pages.

Make sure the resulting manpage is in a folder called man in the root of the gem. Files stored in that directory will automatically be exposed to the man command.

Examples for gems with manpages are guard or gem-man.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].