Compare commits
1 Commits
ea61bde858
...
osc-52-pas
| Author | SHA1 | Date | |
|---|---|---|---|
| 44ae82b5d6 |
@@ -49,7 +49,7 @@ commands:
|
||||
if which vim &> /dev/null; then
|
||||
# Exit the autoenv before editing.
|
||||
_autoenv_exit $PWD
|
||||
if $EDITOR -p $PWD/.enter $PWD/.exit; then
|
||||
if vim -p $PWD/.enter $PWD/.exit; then
|
||||
# If enter script exists, authorize it.
|
||||
[ -f $PWD/.enter ] && _autoenv_authorized $PWD/.enter yes
|
||||
# If exit script exists, authorize it.
|
||||
@@ -97,8 +97,8 @@ commands:
|
||||
echo '.enter or .exit not found'; return 1
|
||||
fi
|
||||
_autoenv_exit $PWD
|
||||
virtualenv -p `command -v python` .local
|
||||
echo 'source ${0:a:h}/.local/bin/activate' >> .enter
|
||||
virtualenv .local
|
||||
echo 'source .local/bin/activate' >> .enter
|
||||
echo 'deactivate' >> .exit
|
||||
_autoenv_authorized $PWD/.enter yes
|
||||
_autoenv_authorized $PWD/.exit yes
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
#compdef build-dir
|
||||
|
||||
_arguments \
|
||||
'(-h --help)'{-h,--help}'[show this help message and exit]' \
|
||||
'(-s --show)'{-s,--show}'[show the current build directory]' \
|
||||
'(-h --help)'{-h,--help}'[]' \
|
||||
'--build[invoke a build after selection]' \
|
||||
'1:directory:_files'
|
||||
|
||||
@@ -32,8 +32,8 @@ fi
|
||||
# Interactively choose a `~build` directory for `build` to build.
|
||||
build-dir() {
|
||||
local usage='usage: build-dir [-h] [--build] [<directory>]'
|
||||
local -a help show do_build
|
||||
zparseopts -D h=help -help=help s=show -show=show -build=do_build
|
||||
local -a help do_build
|
||||
zparseopts -D h=help -help=help -build=do_build
|
||||
if [[ -n $help ]]; then
|
||||
cat << EOF
|
||||
$usage
|
||||
@@ -45,22 +45,12 @@ positional arguments:
|
||||
|
||||
optional arguments:
|
||||
-h, --help show this help message and exit
|
||||
-s, --show show the current build directory
|
||||
--build invoke a build after selection
|
||||
EOF
|
||||
return
|
||||
fi
|
||||
error() { echo "\e[31merror:\e[0m $1" }
|
||||
warning() { echo "\e[33mwarning:\e[0m $1" }
|
||||
if [[ -n $show ]]; then
|
||||
if [[ ! -n $build_dir ]]; then
|
||||
error "build directory not set"
|
||||
return 1
|
||||
else
|
||||
echo "$build_dir"
|
||||
return
|
||||
fi
|
||||
fi
|
||||
local local_build_dir
|
||||
if [[ ${#*} -gt 1 ]]; then
|
||||
echo $usage
|
||||
|
||||
@@ -66,7 +66,7 @@ fresh_line_one() {
|
||||
# Construct the time and directory portions of the prompt
|
||||
local time_stamp="%{%F{244}%}%D{%H:%M:%S}%{%f%}"
|
||||
[[ -n $SANDBOX_HOME ]] && \
|
||||
local directory="%{%F{220}%}$SANDBOX_NAME${PWD#$SANDBOX_HOME}%{%f%}" || \
|
||||
local directory="%{%F{3}%}$SANDBOX_NAME${PWD#$SANDBOX_HOME}%{%f%}" || \
|
||||
local directory="%{%F{37}%}%~%{%f%}"
|
||||
|
||||
# Check we are in a git repository
|
||||
|
||||
12
tasks.yaml
12
tasks.yaml
@@ -10,17 +10,9 @@
|
||||
become: true
|
||||
apt:
|
||||
name:
|
||||
- pinentry-curses
|
||||
- silversearcher-ag
|
||||
- unzip
|
||||
- zsh-doc
|
||||
state: present
|
||||
|
||||
- name: zsh install macOS packages
|
||||
when: ansible_os_family == "Darwin"
|
||||
become: false
|
||||
homebrew:
|
||||
name: the_silver_searcher
|
||||
- pinentry-curses
|
||||
- unzip
|
||||
state: present
|
||||
|
||||
- name: zsh clone plugin repos
|
||||
|
||||
@@ -11,7 +11,7 @@ for completion in $zsh_completions/src/_*; do
|
||||
# Remove existing completion file if it exists.
|
||||
[ -f $symlink ] && rm $symlink
|
||||
# Check if the command exists on the PATH.
|
||||
if command -v ${name:1} &> /dev/null; then
|
||||
if which ${name:1} &> /dev/null; then
|
||||
# Symlink the completion for the existing command.
|
||||
[ `uname` = Darwin ] && \
|
||||
ln -s $completion $symlink || ln -sr $completion $symlink
|
||||
|
||||
@@ -16,7 +16,10 @@ fi
|
||||
|
||||
# Abstract different ways to paste from the clipboard.
|
||||
# TODO: Use OSC-52 to get the clipboard, not widely supported though
|
||||
if [ "`uname`" = "Darwin" ]; then
|
||||
if [ -n "$SSH_CONNECTION" ]; then
|
||||
# Use OSC-52 to get the clipboard
|
||||
alias paste='printf "\033]52;c;?\a"'
|
||||
elif [ "`uname`" = "Darwin" ]; then
|
||||
# Use pbpaste to get the clipboard
|
||||
alias paste='pbpaste'
|
||||
elif which xclip &> /dev/null; then
|
||||
|
||||
22
zshenv
22
zshenv
@@ -37,7 +37,7 @@ export CCACHE_CONFIGPATH=$HOME/.config/ccache
|
||||
export CCACHE_DIR=$HOME/.cache/ccache
|
||||
|
||||
# Add default CMake generator
|
||||
command -v ninja &> /dev/null && \
|
||||
which ninja &> /dev/null && \
|
||||
export CMAKE_GENERATOR=Ninja
|
||||
|
||||
# Remove duplicates from environment variables
|
||||
@@ -47,12 +47,8 @@ typeset -U MANPATH; export MANPATH
|
||||
typeset -U INFOPATH; export INFOPATH
|
||||
|
||||
# Set default editor.
|
||||
if command -v nvim &> /dev/null; then
|
||||
export EDITOR=`command -v nvim`
|
||||
elif command -v vim &> /dev/null; then
|
||||
export EDITOR=`command -v vim`
|
||||
fi
|
||||
export GIT_EDITOR=$EDITOR
|
||||
which vim &> /dev/null && \
|
||||
export EDITOR=`which vim`
|
||||
|
||||
# Use ~/.local for pip installs on macOS
|
||||
[ "`uname`" = "Darwin" ] && export PYTHONUSERBASE=$HOME/.local
|
||||
@@ -81,24 +77,24 @@ export PYLINTHOME=~/.local/share/pylint
|
||||
export VIRTUAL_ENV_DISABLE_PROMPT=1
|
||||
|
||||
# If pinentry-curses exists, use it for lastpass-cli
|
||||
command -v pinentry-curses &> /dev/null && \
|
||||
which pinentry-curses &> /dev/null && \
|
||||
export LPASS_PINENTRY=pinentry-curses
|
||||
|
||||
# Teach these some XDG Base Directory Spec manners
|
||||
export IPYTHONDIR=$HOME/.config/ipython
|
||||
command -v cargo &> /dev/null && \
|
||||
which cargo &> /dev/null && \
|
||||
export CARGO_HOME=$HOME/.local/share/cargo
|
||||
if command -v ccache &> /dev/null; then
|
||||
if which ccache &> /dev/null; then
|
||||
export CCACHE_CONFIGPATH=$HOME/.config/ccache.conf
|
||||
export CCACHE_DIR=$HOME/.cache/ccache
|
||||
fi
|
||||
command -v conan &> /dev/null && \
|
||||
which conan &> /dev/null && \
|
||||
export CONAN_USER_HOME=$HOME/.local/share/conan
|
||||
command -v docker &> /dev/null && \
|
||||
which docker &> /dev/null && \
|
||||
export DOCKER_CONFIG=$HOME/.local/share/docker
|
||||
export GTK_RC_FILES=$HOME/.config/gtk/gtkrc
|
||||
export GTK2_RC_FILES=$HOME/.config/gtk-2.0/gtkrc
|
||||
command -v rustup &> /dev/null && \
|
||||
which rustup &> /dev/null && \
|
||||
export RUSTUP_HOME=$HOME/.local/share/rustup
|
||||
export PYLINTHOME=$HOME/.cache/pylint
|
||||
# TODO: terminfo
|
||||
|
||||
13
zshrc
13
zshrc
@@ -68,7 +68,7 @@ autoload -U compinit
|
||||
compinit
|
||||
|
||||
# Add pip to the old completion engine if present
|
||||
if command -v pip &> /dev/null; then
|
||||
if which pip &> /dev/null; then
|
||||
function _pip_completion {
|
||||
local words cword
|
||||
read -Ac words
|
||||
@@ -172,16 +172,15 @@ fi
|
||||
# Frequntly used directories
|
||||
function frequent-directory() { export $1; hash -d $1 }
|
||||
frequent-directory Projects="$HOME/Projects"
|
||||
frequent-directory Sandbox="$HOME/Sandbox"
|
||||
|
||||
# Load work related config
|
||||
[ -f ~/.config/work/zshrc ] && source ~/.config/work/zshrc
|
||||
|
||||
# Aliases
|
||||
alias grep='grep --color=always'
|
||||
command -v cmake &> /dev/null && \
|
||||
which cmake &> /dev/null && \
|
||||
alias cninja='cmake -GNinja -DCMAKE_EXPORT_COMPILE_COMMANDS=ON'
|
||||
command -v ssh &> /dev/null && \
|
||||
which ssh &> /dev/null && \
|
||||
alias ssh='TERM=xterm-256color ssh'
|
||||
alias weather="curl wttr.in"
|
||||
alias cls="clear && printf '\e[3J'"
|
||||
@@ -189,15 +188,15 @@ alias cls="clear && printf '\e[3J'"
|
||||
case `uname` in
|
||||
Linux)
|
||||
alias ls='ls -F --color=auto'
|
||||
if command -v cgdb &> /dev/null; then
|
||||
if which cgdb &> /dev/null; then
|
||||
alias debug='cgdb --args'
|
||||
elif command -v gdb &> /dev/null; then
|
||||
elif which gdb &> /dev/null; then
|
||||
alias debug='gdb --args'
|
||||
fi
|
||||
;;
|
||||
Darwin)
|
||||
alias ls='ls -GFh'
|
||||
command -v lldb &> /dev/null && \
|
||||
which lldb &> /dev/null && \
|
||||
alias debug='lldb --'
|
||||
;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user