From 5262da31979f82a27dd53a60a8bf3fc411a1a848 Mon Sep 17 00:00:00 2001 From: Shubham Saini Date: Thu, 28 May 2020 22:43:05 +0530 Subject: updated zsh --- zsh/.zshrc | 160 ++++++++++++++++++++----------------------------------------- 1 file changed, 51 insertions(+), 109 deletions(-) diff --git a/zsh/.zshrc b/zsh/.zshrc index 41c6603..eb0636d 100644 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -1,122 +1,64 @@ -# If you come from bash you might have to change your $PATH. -# export PATH=$HOME/bin:/usr/local/bin:$PATH +# history +HISTFILE=~/.cache/zsh/history +HISTSIZE=1000 +SAVEHIST=1000 +setopt appendhistory hist_ignore_all_dups hist_ignore_space -# Path to your oh-my-zsh installation. -export ZSH="/home/fd0e/.oh-my-zsh" +#exports export VISUAL=nvim export EDITOR="$VISUAL" export BROWSER=firefox export PATH=$PATH:$HOME/.local/bin:$HOME/bin -export XDG_CURRENT_DESKTOP=bspwm - -# Set name of the theme to load --- if set to "random", it will -# load a random theme each time oh-my-zsh is loaded, in which case, -# to know which specific one was loaded, run: echo $RANDOM_THEME -# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes -ZSH_THEME="sammy" - -# Set list of themes to pick from when loading at random -# Setting this variable when ZSH_THEME=random will cause zsh to load -# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/ -# If set to an empty array, this variable will have no effect. -# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) - -# Uncomment the following line to use case-sensitive completion. -# CASE_SENSITIVE="true" - -# Uncomment the following line to use hyphen-insensitive completion. -# Case-sensitive completion must be off. _ and - will be interchangeable. -# HYPHEN_INSENSITIVE="true" - -# Uncomment the following line to disable bi-weekly auto-update checks. -# DISABLE_AUTO_UPDATE="true" - -# Uncomment the following line to automatically update without prompting. -# DISABLE_UPDATE_PROMPT="true" - -# Uncomment the following line to change how often to auto-update (in days). -# export UPDATE_ZSH_DAYS=13 - -# Uncomment the following line if pasting URLs and other text is messed up. -# DISABLE_MAGIC_FUNCTIONS=true - -# Uncomment the following line to disable colors in ls. -# DISABLE_LS_COLORS="true" - -# Uncomment the following line to disable auto-setting terminal title. -# DISABLE_AUTO_TITLE="true" - -# Uncomment the following line to enable command auto-correction. -# ENABLE_CORRECTION="true" - -# Uncomment the following line to display red dots whilst waiting for completion. -# COMPLETION_WAITING_DOTS="true" - -# Uncomment the following line if you want to disable marking untracked files -# under VCS as dirty. This makes repository status check for large repositories -# much, much faster. -# DISABLE_UNTRACKED_FILES_DIRTY="true" - -# Uncomment the following line if you want to change the command execution time -# stamp shown in the history command output. -# You can set one of the optional three formats: -# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" -# or set a custom format using the strftime function format specifications, -# see 'man strftime' for details. -# HIST_STAMPS="mm/dd/yyyy" - -# Would you like to use another custom folder than $ZSH/custom? -# ZSH_CUSTOM=/path/to/new-custom-folder - -# Which plugins would you like to load? -# Standard plugins can be found in ~/.oh-my-zsh/plugins/* -# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ -# Example format: plugins=(rails git textmate ruby lighthouse) -# Add wisely, as too many plugins slow down shell startup. -plugins=(git sudo extract python common-aliases) - -source $ZSH/oh-my-zsh.sh - -# User configuration - -# export MANPATH="/usr/local/man:$MANPATH" - -# You may need to manually set your language environment -# export LANG=en_US.UTF-8 - -# Preferred editor for local and remote sessions -# if [[ -n $SSH_CONNECTION ]]; then -# export EDITOR='vim' -# else -# export EDITOR='mvim' -# fi - -# Compilation flags -# export ARCHFLAGS="-arch x86_64" - -# Set personal aliases, overriding those provided by oh-my-zsh libs, -# plugins, and themes. Aliases can be placed here, though oh-my-zsh -# users are encouraged to define aliases within the ZSH_CUSTOM folder. -# For a full list of active aliases, run `alias`. -# -# Example aliases -# alias zshconfig="mate ~/.zshrc" -# alias ohmyzsh="mate ~/.oh-my-zsh" -alias key="vim $HOME/.config/sxhkd/sxhkdrc" -alias wm="vim ~/.config/bspwm/bspwmrc" +export XDG_CURRENT_DESKTOP=spectrwm + +setopt autocd extendedglob nomatch globdots correctall +unsetopt beep +bindkey -v + +# completions +zstyle :compinstall filename '/home/x/.zshrc' +autoload -U colors && colors +autoload -Uz compinit && compinit +zstyle ':completion:*' menu select +zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*' +#zstyle ':completion:*:descriptions' format '%U%B%d%b%u' +#zstyle ':completion:*:warnings' format '%BSorry, no matches for: %d%b' + +# sources +source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh + +# prompt +PROMPT=$'\n'"%B%F{240}%m "$'\n'"%(?.%F{248}▲.%F{red}?%?)%f " +git_branch() { + git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/' +} +setopt PROMPT_SUBST +RPROMPT='%9c%{%F{green}%}$(git_branch)%{%F{none}%} $ ' + +# aliases +alias ls='ls --color=auto' +alias ll='ls --color=auto -al' +alias key="vim $HOME/.config/spectrwm/keybindings.conf" +alias wm="vim ~/.config/spectrwm/spectrwm.conf" alias f="ranger" -alias nu="nmcli connection up " alias weather="curl wttr.in" -alias py="/bin/python" -alias py2="/bin/python2" +alias py="/usr/bin/python" alias pg="ping google.com" alias pubip="curl ipinfo.io/ip" alias k="pkill " alias m="cmus" alias vimrc="vim $HOME/.config/nvim/init.vim" -alias poly="vim $HOME/.config/polybar/config" -alias v="/usr/bin/nvim" -alias vim="/usr/bin/nvim" -alias sudo="doas " +alias v="nvim" +alias vim="nvim" +alias sudo="sudo " +alias parrot="VBoxManage startvm Parrot" + +up() { + curl -F "file=@$*" https://0x0.st | xclip -selection clipboard +} + +dict() { + curl dict://dict.org/d:$* +} -source /usr/share/zsh/site-functions/zsh-syntax-highlighting.zsh -- cgit v1.2.3