Merge branch 'master' of github.com:luispcosta/bash-it

pull/596/head
luispcosta 2015-10-22 11:36:01 +01:00
commit 7cf97ba7ad
10 changed files with 61 additions and 14 deletions

View File

@ -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).

View File

@ -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 ""

View File

@ -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

View File

@ -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;
}

View File

@ -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

View File

@ -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
}

View File

@ -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

View File

@ -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/