diff --git a/.zprofile b/.zprofile index b6ee4f7..f850af7 100644 --- a/.zprofile +++ b/.zprofile @@ -1,18 +1,6 @@ export BROWSER=conkeror export EDITOR="emacsclient -c -a emacs" -INFOPATH="$HOME/documents/info" -INFOPATH="$INFOPATH:/usr/local/emacs/share/info" -INFOPATH="$INFOPATH:/usr/share/info" -INFOPATH="$INFOPATH:/usr/local/clark/share/info" -export INFOPATH="$INFOPATH:/usr/local/stumpwm/share/info" - -PATH="${HOME}/usr/bin:${PATH}:/usr/local/bin:/usr/local/stumpwm/bin" -PATH="/usr/local/scwm/bin:$PATH" -PATH="/usr/local/clfswm/bin:$PATH" -PATH="/usr/local/clark/bin:$PATH" -export PATH="/usr/local/emacs/bin:$PATH" - if [ -z "$SSH_AGENT_PID" ]; then eval `ssh-agent` fi diff --git a/.zsh/functions/Makefile b/.zsh/functions/Makefile index d410977..617d883 100644 --- a/.zsh/functions/Makefile +++ b/.zsh/functions/Makefile @@ -2,6 +2,6 @@ SUBDIR=functions objects=chpwd_show_todo chpwd_update_git_vars env get_cnt line \ precmd_maybe_festival precmd_update_git_vars precmd_update_updates \ preexec_update_vars prompt prompt_git_info rprompt \ - update_current_git_vars welcome venv + update_current_git_vars welcome venv add-to-list include ../../dotfiles.mk diff --git a/.zsh/functions/add-to-list b/.zsh/functions/add-to-list new file mode 100644 index 0000000..18720e0 --- /dev/null +++ b/.zsh/functions/add-to-list @@ -0,0 +1,10 @@ +# -*- mode: sh; -*- +if [[ ! "${(P)${1}}" =~ (^|:)"$2"(:|$) ]]; then + if [ -n "$3" ]; then + # Append + typeset -g $1="${(P)${1}}:$2" + else + # Prepend + typeset -g $1="$2:${(P)${1}}" + fi +fi diff --git a/.zshrc b/.zshrc index 735e5bc..c639e9f 100644 --- a/.zshrc +++ b/.zshrc @@ -70,6 +70,13 @@ case $TERM in ;; esac +add-to-list PATH "$HOME/usr/bin" +add-to-list PATH "/usr/local/clark/bin" t + +add-to-list INFOPATH "$HOME/documents/info" +add-to-list INFOPATH "$HOME/.emacs.d/vendor-lisp/org/doc" +add-to-list INFOPATH "/usr/local/clark/share/info" t + # Set terminal keys bindkey "\e[1~" beginning-of-line bindkey "\e[4~" end-of-line