# -*- mode: shell-script -*-
# vim:ft=zsh
autoload -Uz bracketed-paste-url-magic
zle -N bracketed-paste bracketed-paste-url-magic

setopt RM_STAR_WAIT
setopt PRINT_EIGHT_BIT      # Print character as eight bit to prevent mojibake
setopt COMBINING_CHARS      # Combine accents with the base character.
setopt INTERACTIVE_COMMENTS # Enable comments in interactive shell.
setopt RC_QUOTES            # Allow 'Henry''s Garage' instead of 'Henry'\''s Garage'.
unsetopt MAIL_WARNING       # Don't print a warning message if a mail file has been accessed.
setopt LONG_LIST_JOBS	    # List jobs in the long format by default.
setopt AUTO_RESUME	    # Attempt to resume existing job before creating a new process.
setopt NOTIFY		    # Report status of background jobs immediately.
unsetopt BG_NICE	    # Don't run all background jobs at a lower priority.
unsetopt HUP		    # Don't kill jobs on shell exit.
unsetopt CHECK_JOBS	    # Don't report on jobs when shell exit.
setopt AUTO_CD              # Auto changes to a directory without typing cd.
setopt AUTO_PUSHD           # Push the old directory onto the stack on cd.
setopt PUSHD_IGNORE_DUPS    # Do not store duplicates in the stack.
setopt PUSHD_SILENT         # Do not print the directory stack after pushd or popd.
setopt PUSHD_TO_HOME        # Push to home directory when no argument is given.
setopt CDABLE_VARS          # Change directory to a path stored in a variable.
setopt MULTIOS              # Write to multiple descriptors.
setopt AUTO_PARAM_SLASH     # Tab completing directory appends a slash
setopt PROMPT_SUBST

if [[ -n "$DISPLAY" ]] then;
  for z in ${ZDOTDIR}/x/*; do
    source ${z}
  done
fi

source $XDG_DATA_HOME/lscolors.sh

foreach programa (
  fzf/completion.zsh
  fzf/key-bindings.zsh
  zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.plugin.zsh
  zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
  ) {
  source /usr/share/$programa
}

for f in ${ZDOTDIR}/conf/*; do
  source "${f}"
done
