summaryrefslogtreecommitdiff
path: root/.zshrc
diff options
context:
space:
mode:
authorjustsaumit <justsaumit@draconyan.xyz>2022-03-02 11:23:45 +0530
committerjustsaumit <justsaumit@draconyan.xyz>2022-03-02 11:23:45 +0530
commita754011fc58e83f38cadc5bc10492ab961c9c540 (patch)
treed7c3cd6fd254fb7e52759f77e44193bf103de177 /.zshrc
parent98bbe7bd7fcec209e2408ff0b086858715ca89e0 (diff)
spring cleaning 0.1
Diffstat (limited to '.zshrc')
-rw-r--r--.zshrc82
1 files changed, 82 insertions, 0 deletions
diff --git a/.zshrc b/.zshrc
new file mode 100644
index 0000000..b606dce
--- /dev/null
+++ b/.zshrc
@@ -0,0 +1,82 @@
+##zshell configuration
+
+# Enable colors and have a proper PS1
+autoload -U colors && colors
+PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%~%{$fg[red]%}]%{$reset_color%}$%b "
+
+# defines different colors for files in ls output(by default in bash)
+alias ls='ls --color'
+
+# History in cache directory
+HISTSIZE=
+SAVEHIST=
+HISTFILE=~/.cache/zsh/zsh_history
+
+# Basic auto/tab completion
+autoload -U compinit
+zstyle ':completion:*' menu select
+zstyle ':completion::complete:*' gain-privileges 1
+zmodload zsh/complist
+compinit
+_comp_options+=(globdots) #include hidden files
+
+#auto cd
+setopt autocd extendedglob nomatch
+
+##vi mode
+#bindkey -v
+#export KEYTIMEOUT=1
+
+# Use vim keys in tab compete menu:
+bindkey -M menuselect 'h' vi-backward-char
+bindkey -M menuselect 'j' vi-up-line-or-history
+bindkey -M menuselect 'k' vi-down-line-or-history
+bindkey -M menuselect 'l' vi-forward-char
+
+# Change cursor shape for different vi modes.
+#function zle-keymap-select {
+# if [[ ${KEYMAP} == vicmd ]] ||
+# [[ $1 = 'block' ]]; then
+# echo -ne 'e[1 q'
+# elif [[ ${KEYMAP} == main ]] ||
+# [[ ${KEYMAP} == viins ]] ||
+# [[ ${KEYMAP} == '' ]] ||
+# [[ $1 = 'line' ]]; then
+# echo -ne '\e[5 q'
+# fi
+#}
+#zle -N zle-keymap-select
+#zle-line-init() {
+# zle -K viins
+# echo -ne "\e[5 q"
+#}
+#zle -N zle-line-init
+#echo -ne '\e[1 q' #default to block cursor
+
+
+
+# Key Bindings
+[[ -n "${key[Home]}" ]] && bindkey -- "${key[Home]}" beginning-of-line
+[[ -n "${key[End]}" ]] && bindkey -- "${key[End]}" end-of-line
+# [[ -n "${key[Insert]}" ]] && bindkey -- "${key[Insert]}" overwrite-mode
+[[ -n "${key[Backspace]}" ]] && bindkey -- "${key[Backspace]}" backward-delete-char
+[[ -n "${key[Delete]}" ]] && bindkey -- "${key[Delete]}" delete-char
+[[ -n "${key[Up]}" ]] && bindkey -- "${key[Up]}" up-line-or-history
+[[ -n "${key[PageUp]}" ]] && bindkey -- "${key[PageUp]}" up-line-or-history
+[[ -n "${key[Down]}" ]] && bindkey -- "${key[Down]}" down-line-or-history
+[[ -n "${key[PageDown]}" ]] && bindkey -- "${key[PageDown]}" down-line-or-history
+[[ -n "${key[Left]}" ]] && bindkey -- "${key[Left]}" backward-char
+[[ -n "${key[Right]}" ]] && bindkey -- "${key[Right]}" forward-char
+[[ -n "${key[Shift-Tab]}" ]] && bindkey -- "${key[Shift-Tab]}" reverse-menu-complete
+
+
+
+#key[Control-Left]="${terminfo[kLFT5]}"
+#key[Control-Right]="${terminfo[kRIT5]}"
+
+[[ -n "${key[Control-Left]}" ]] && bindkey -- "${key[Control-Left]}" backward-word
+[[ -n "${key[Control-Right]}" ]] && bindkey -- "${key[Control-Right]}" forward-word
+
+# Load aliases
+[ -f "$HOME/.config/aliasrc" ] && source "$HOME/.config/aliasrc"
+