Merge branch 'master' of github.com:luispcosta/bash-it
commit
7cf97ba7ad
|
|
@ -10,7 +10,7 @@ Bash it provides a solid framework for using, developing and maintaining shell s
|
||||||
|
|
||||||
## Install
|
## Install
|
||||||
|
|
||||||
1. Check a clone of this repo: `git clone --depth=1 https://github.com/Bash-it/bash-it.git ~/.bash_it`
|
1. Check out a clone of this repo to a location of your choice, such as: `git clone --depth=1 https://github.com/Bash-it/bash-it.git ~/.bash_it`
|
||||||
2. Run `~/.bash_it/install.sh` (it automatically backs up your `~/.bash_profile` or `~/.bashrc`, depending on your OS)
|
2. Run `~/.bash_it/install.sh` (it automatically backs up your `~/.bash_profile` or `~/.bashrc`, depending on your OS)
|
||||||
3. Edit your modified config (`~/.bash_profile` or `~/.bashrc`) file in order to customize Bash it.
|
3. Edit your modified config (`~/.bash_profile` or `~/.bashrc`) file in order to customize Bash it.
|
||||||
4. Check out available aliases, completions and plugins and enable the ones you want to use (see the next section for more details).
|
4. Check out available aliases, completions and plugins and enable the ones you want to use (see the next section for more details).
|
||||||
|
|
|
||||||
12
install.sh
12
install.sh
|
|
@ -1,5 +1,5 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
BASH_IT="$HOME/.bash_it"
|
BASH_IT="$(dirname "$(readlink -f "$0")")"
|
||||||
|
|
||||||
case $OSTYPE in
|
case $OSTYPE in
|
||||||
darwin*)
|
darwin*)
|
||||||
|
|
@ -36,18 +36,19 @@ test -w "$HOME/$CONFIG_FILE" &&
|
||||||
cp -a "$HOME/$CONFIG_FILE" "$HOME/$CONFIG_FILE.bak" &&
|
cp -a "$HOME/$CONFIG_FILE" "$HOME/$CONFIG_FILE.bak" &&
|
||||||
echo -e "\033[0;32mYour original $CONFIG_FILE has been backed up to $CONFIG_FILE.bak\033[0m"
|
echo -e "\033[0;32mYour original $CONFIG_FILE has been backed up to $CONFIG_FILE.bak\033[0m"
|
||||||
|
|
||||||
cp "$HOME/.bash_it/template/bash_profile.template.bash" "$HOME/$CONFIG_FILE"
|
cp "$BASH_IT/template/bash_profile.template.bash" "$HOME/$CONFIG_FILE"
|
||||||
|
sed -i "s|{{BASH_IT}}|$BASH_IT|" "$HOME/$CONFIG_FILE"
|
||||||
|
|
||||||
echo -e "\033[0;32mCopied the template $CONFIG_FILE into ~/$CONFIG_FILE, edit this file to customize bash-it\033[0m"
|
echo -e "\033[0;32mCopied the template $CONFIG_FILE into ~/$CONFIG_FILE, edit this file to customize bash-it\033[0m"
|
||||||
|
|
||||||
function load_one() {
|
function load_one() {
|
||||||
file_type=$1
|
file_type=$1
|
||||||
file_to_enable=$2
|
file_to_enable=$2
|
||||||
[ ! -d "$BASH_IT/$file_type/enabled" ] && mkdir "$BASH_IT/${file_type}/enabled"
|
mkdir -p "$BASH_IT/${file_type}/enabled"
|
||||||
|
|
||||||
dest="${BASH_IT}/${file_type}/enabled/${file_to_enable}"
|
dest="${BASH_IT}/${file_type}/enabled/${file_to_enable}"
|
||||||
if [ ! -e "${dest}" ]; then
|
if [ ! -e "${dest}" ]; then
|
||||||
ln -s "../available/${file_to_enable}" "${dest}"
|
ln -sf "../available/${file_to_enable}" "${dest}"
|
||||||
else
|
else
|
||||||
echo "File ${dest} exists, skipping"
|
echo "File ${dest} exists, skipping"
|
||||||
fi
|
fi
|
||||||
|
|
@ -89,7 +90,8 @@ else
|
||||||
echo ""
|
echo ""
|
||||||
echo -e "\033[0;32mEnabling sane defaults\033[0m"
|
echo -e "\033[0;32mEnabling sane defaults\033[0m"
|
||||||
load_one completion bash-it.completion.bash
|
load_one completion bash-it.completion.bash
|
||||||
load_one plugins alias-completion.bash
|
load_one plugins alias-completion.plugin.bash
|
||||||
|
load_one aliases general.aliases.bash
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,8 @@ then
|
||||||
THEMES="$BASH_IT/themes/*/*.theme.bash"
|
THEMES="$BASH_IT/themes/*/*.theme.bash"
|
||||||
for theme in $THEMES
|
for theme in $THEMES
|
||||||
do
|
do
|
||||||
BASH_IT_THEME=$(basename -s '.theme.bash' $theme)
|
BASH_IT_THEME=${theme%.theme.bash}
|
||||||
|
BASH_IT_THEME=${BASH_IT_THEME##*/}
|
||||||
echo "
|
echo "
|
||||||
$BASH_IT_THEME"
|
$BASH_IT_THEME"
|
||||||
echo "" | bash --init-file $BASH_IT/bash_it.sh -i
|
echo "" | bash --init-file $BASH_IT/bash_it.sh -i
|
||||||
|
|
|
||||||
|
|
@ -196,3 +196,11 @@ function buf ()
|
||||||
local filetime=$(date +%Y%m%d_%H%M%S)
|
local filetime=$(date +%Y%m%d_%H%M%S)
|
||||||
cp -a "${filename}" "${filename}_${filetime}"
|
cp -a "${filename}" "${filename}_${filetime}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function del() {
|
||||||
|
about 'move files to hidden folder in tmp, that gets cleared on each reboot'
|
||||||
|
param 'file or folder to be deleted'
|
||||||
|
example 'del ./file.txt'
|
||||||
|
group 'base'
|
||||||
|
mkdir -p /tmp/.trash && mv "$@" /tmp/.trash;
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
cite about-plugin
|
cite about-plugin
|
||||||
about-plugin 'Helpers to get Docker setup correctly for docker-machine'
|
about-plugin 'Helpers to get Docker setup correctly for docker-machine'
|
||||||
|
|
||||||
# Note, this might need to be different if you use a machine other than 'dev',
|
# Note, this might need to be different if you use a machine other than 'dev'
|
||||||
# or its configured for a different IP
|
|
||||||
if [[ `uname -s` == "Darwin" ]]; then
|
if [[ `uname -s` == "Darwin" ]]; then
|
||||||
export DOCKER_HOST="tcp://192.168.99.100:2376"
|
# check if dev machine is running
|
||||||
export DOCKER_CERT_PATH="$HOME/.docker/machine/machines/dev"
|
docker-machine ls | grep --quiet 'dev.*Running'
|
||||||
export DOCKER_TLS_VERIFY=1
|
if [[ "$?" = "0" ]]; then
|
||||||
export DOCKER_MACHINE_NAME="dev"
|
eval "$(docker-machine env dev)"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
cite about-plugin
|
||||||
|
about-plugin 'mankier.com explain function to explain other commands'
|
||||||
|
|
||||||
|
explain () {
|
||||||
|
about 'explain any bash command via mankier.com manpage API'
|
||||||
|
param '1: Name of the command to explain'
|
||||||
|
example '$ explain # interactive mode. Type commands to explain in REPL'
|
||||||
|
example '$ explain 'cmd -o | ...' # one quoted command to explain it.'
|
||||||
|
group 'explain'
|
||||||
|
|
||||||
|
if [ "$#" -eq 0 ]; then
|
||||||
|
while read -p "Command: " cmd; do
|
||||||
|
curl -Gs "https://www.mankier.com/api/explain/?cols="$(tput cols) --data-urlencode "q=$cmd"
|
||||||
|
done
|
||||||
|
echo "Bye!"
|
||||||
|
elif [ "$#" -eq 1 ]; then
|
||||||
|
curl -Gs "https://www.mankier.com/api/explain/?cols="$(tput cols) --data-urlencode "q=$1"
|
||||||
|
else
|
||||||
|
echo "Usage"
|
||||||
|
echo "explain interactive mode."
|
||||||
|
echo "explain 'cmd -o | ...' one quoted command to explain it."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
cite about-plugin
|
||||||
|
about-plugin 'Defines the `code` executable for Visual Studio Code on OS X'
|
||||||
|
|
||||||
|
# Based on https://code.visualstudio.com/Docs/editor/setup
|
||||||
|
if [[ `uname -s` == "Darwin" ]]; then
|
||||||
|
function code () {
|
||||||
|
about 'Starts Visual Studio Code in the provided directory'
|
||||||
|
group 'visual-studio-code'
|
||||||
|
|
||||||
|
VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* ;
|
||||||
|
}
|
||||||
|
fi
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# Path to the bash it configuration
|
# Path to the bash it configuration
|
||||||
export BASH_IT="$HOME/.bash_it"
|
export BASH_IT="{{BASH_IT}}"
|
||||||
|
|
||||||
# Lock and Load a custom theme file
|
# Lock and Load a custom theme file
|
||||||
# location /.bash_it/themes/
|
# location /.bash_it/themes/
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue