Bash Alias Generator and Manager
Alf enhances your bash alias management. It was developed using the
Bashly Command Line Framework.
g s
for git status
).~/.bash_aliases
file, which is normally already sourced by your loginInstall the alf
executable script:
$ curl -Ls get.dannyb.co/alf/setup | bash
If you prefer to install manually, simply download the alf file,
place it somewhere in your path, and make it executable.
Note that alf requires bash 4.0 or higher (brew install bash
for mac users).
The easiest way to use alf is to create a repository on github, call italf-conf
, and put an alf.conf
file in it.
alf-conf
repository
$ alf connect <your github user>
$ alf save
$ source ~/.bash_aliases # this normally already exists in your ~/.bashrc
If you want to try alf before creating your github repo, use this method to
create your bash_aliases
file from a local configuration file.
alf.conf
fileSee the sample alf.conf file as a starting point.
$ alf save
$ source ~/.bash_aliases
$ alf --help
alf - Your Little Bash Alias Friend
Usage:
alf [command]
alf [command] --help | -h
alf --version | -v
Commands:
connect Connect to a remote git repository
download Perform git pull on the connected repo
upload Perform git commit and push on the connected repo
generate Generate aliases to stdout
save Generate aliases to ~/.bash_aliases
edit Open your alf.conf for editing
which Show the alias command
upgrade Upgrade alf to the latest version
info Show all alf related system facts
Options:
--help, -h
Show this help
--version, -v
Show version number
Environment Variables:
ALF_RC_FILE
Path to alfrc file
This file holds the path to the alf-conf repository
Default: ~/.alfrc
alf.conf
)To uninstall alf:
# Run the uninstall script
$ curl -Ls get.dannyb.co/alf/uninstall | bash
# Optionally, remove .alfrc (exists only if you have performed `alf connect`)
$ rm -f ~/.alfrc
# Optionally, remove .bash_aliases (exists only if you have performed `alf save`)
$ rm -f ~/.bash_aliases
Alf was tested on bash and zsh (and might work with other shells).
In all cases, bash version 4.0 or higher must be installed, since alf uses
associative arrays which are not available in older versions.
If your shell does not automatically source ~/.bash_aliases
on startup, you
should add this line to your startup script:
source ~/.bash_aliases
Oh-My-Zsh users may skip this step.
If you would like to have autocompletion for alf’s sub-aliases and you are using
zsh, you should enable completion by adding this to your ~/.zshrc
(if is it not
already there) before sourcing .bash_aliases
:
# Load completion functions
autoload -Uz +X compinit && compinit
autoload -Uz +X bashcompinit && bashcompinit
For a similar project, but for command shortcuts on a per-directory basis,
see opcode.
If you experience any issue, have a question or a suggestion, or if you wish
to contribute, feel free to open an issue.