Skip to content

jonasbn/bash_completion_cpanm

Repository files navigation

CPANMinus Bash Completion

Basic tab completion for cpanm.

License: MIT

Introduction

This is a basic completion implementation for cpanm (App::cpanminus) based on version 1.7043.

Usage

$ cpanm --<tab>

Download

$ curl https://raw.githubusercontent.com/jonasbn/bash_completion_cpanm/master/cpanm > cpanm

Installation

Where your completions are located might vary.

Personal

If you want to install them for your personal use, do the following.

Create the file: ~/.bash_completion, containing the code below:

for bcfile in ~/.bash_completion.d/* ; do
  . $bcfile
done

Ref: ServerFault.com: Standard place for user defined bash_completion.d scripts?

Create a directiory for your completions:

$ mkdir ~/.bash_completion.d

Copy your completions into the newly created directory:

$ cp cpanm ~/.bash_completion.d/

Start a new shell and you should be good to go.

System-wide example from Debian

Based on an introduction to bash completions on Debian.

$ sudo cp cpanm /etc/bash_completion.d/

System-wide example from OSX

This assumes you are using Homebrew

Do note that paths vary based on whether you are using bash 3 or 4

bash 3 (Formula: bash-completions):

$ cp cpanm /usr/local/etc/bash_completion.d/

And to activate right away:

$ source  /usr/local/etc/bash_completion.d/cpanm

bash 4 (Formula: bash-completions2)

$ cp cpanm /usr/local/share/bash-completion/completions/

And to activate right away:

$ source /usr/local/share/bash-completion/completions/cpanm

Motivation

cpanm is an important tool in my toolchain, so I wanted to have easy access to all the options available.

The programmatic capabilities of bash are truly powerful and useful and can be put to good use in use-cases like this.

See Also

A more elaborate piece of documentation on bash completions is available from The Linux Documentation Project in the Advanced Bash-Scripting Guide.

From the GNU Documentation.

Good two-part article, "An Introduction to Bash Completion": Part 1 and Part 2.

Please note that this experimental implementation has only been tested with bash version 3.

The most comprehensive collection of bash completions I have come across is the one from the Debian Linux distribution. It is also the one offered for OSX via Homebrew.

License

This is made available under the MIT license, see separate license file.

Copyright

©️ jonasbn 2017

About

Basic bash completion for cpanm

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages