Fork me on GitHub

lightning by cldwalker

Speed for your shell and the commandline


gem install lightning


Lightning is a commandline framework that lets users wrap commands with shell functions that are able to refer to any filesystem path by its basename. To achieve this, a group of paths to be translated are defined with shell globs. These shell globs, known as a lightning bolt, are then applied to commands to produce functions. In addition to translating basenames to full paths, lightning functions can autocomplete these basenames, resolve conflicts if they have the same name, leave any non-basename arguments untouched, and autocomplete directories above and below a basename. To make bolts shareable between users and functions easier to create, lightning has generators. A generator generates filesystem-specific globs for a bolt. Lightning comes with some default generators. Users can make their own generators with generator plugins placed under ~/.lightning/generators/.

Read documentation.


You can download this project in either zip or tar formats, or clone the project with Git:

$ git clone git://


Issues, bugs, feature requests? Please report them on github.


Check out blog posts related to this project.




Gabriel Horner (gabriel.horner [AT]