aboutsummaryrefslogtreecommitdiffstats
path: root/.zshrc
blob: 595c26b7ab72193de6fa74f6864ae1b4501d4f5e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# Copyright (c) 2021 Cameron Katri
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
#

export ZSH="$HOME/.oh-my-zsh"
ZSH_THEME="spaceship"
DISABLE_LS_COLORS="true"
plugins=(git man mosh)
source $ZSH/oh-my-zsh.sh

SPACESHIP_PROMPT_ORDER=(time user dir host git package node docker venv pyenv exec_time line_sep battery vi_mode jobs exit_code char)

export LANG=en_US.UTF-8

# Various editors and fix aliases with sudo
export EDITOR=nvim
export COLORTERM=1 CLICOLOR=1
export JCOLOR=1
bindkey '^E' edit-command-line
alias code='code-oss'
alias sudo='sudo '
alias fuzz="fzf --preview 'bat --style=numbers,changes --color=always --line-range :500 {}' --preview-window=right:66%"
alias sort='LC_ALL=C sort'
alias diff='LC_ALL=C TZ=UTC diff'
alias ls='ls --color=auto -F'
alias diffstat='diffstat -C'
export BAT_THEME="Nord"

# Setup LSCOLORS, LS_COLORS and completion
# https://git.cameronkatri.com/opendircolors
test -r ~/.nord_colors && eval $(opendircolors ~/.nord_colors)
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}

# Use the correct key with git
export GIT_SSH_COMMAND='ssh -i ~/.ssh/git -o IdentitiesOnly=yes'

# Qt Theme
export QT_QPA_PLATFORMTHEME=gtk2

setopt AUTO_CD
cdpath=(. ~/Documents)

setxkbmap -option compose:rctrl

export GPG_TTY=$(tty)

export LESS='-FiMRx2$z-4$Dd+c$Du+g'

#if ! mount -t fusefs --libxo=json | \
#jq -e '.mount.mounted[] | select(.node == "/usr/home/cameron/Documents/smbnetfs")' >/dev/null; then
#	smbnetfs $HOME/Documents/smbnetfs
#fi

source ~/.crossenv.zsh

source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh

source /usr/local/share/examples/fzf/shell/completion.zsh

PROG=tea _CLI_ZSH_AUTOCOMPLETE_HACK=1 source $HOME/.config/tea/autocomplete.zsh

# I don't regularly check my system mail so give me an alert
if mail -e; then
	echo "You have mail!"
fi

export CVS_RSH=ssh

alias dotgit='git --git-dir=$HOME/Documents/dotfiles --work-tree=$HOME'