-
-
Save Anon-Exploiter/4e12193df0099183d18720c6471d571a to your computer and use it in GitHub Desktop.
# ~/.zshrc file for zsh non-login shells. | |
# see /usr/share/doc/zsh/examples/zshrc for examples | |
setopt autocd # change directory just by typing its name | |
#setopt correct # auto correct mistakes | |
setopt interactivecomments # allow comments in interactive mode | |
setopt ksharrays # arrays start at 0 | |
setopt magicequalsubst # enable filename expansion for arguments of the form ‘anything=expression’ | |
setopt nonomatch # hide error message if there is no match for the pattern | |
setopt notify # report the status of background jobs immediately | |
setopt numericglobsort # sort filenames numerically when it makes sense | |
setopt promptsubst # enable command substitution in prompt | |
WORDCHARS=${WORDCHARS//\/} # Don't consider certain characters part of the word | |
# hide EOL sign ('%') | |
export PROMPT_EOL_MARK="" | |
# configure key keybindings | |
bindkey -e # emacs key bindings | |
bindkey ' ' magic-space # do history expansion on space | |
bindkey '^[[3;5~' kill-word # ctrl + Supr | |
bindkey '^[[1;5C' forward-word # ctrl + -> | |
bindkey '^[[C' forward-word # ctrl + -> | |
bindkey '^[[1;5D' backward-word # ctrl + <- | |
bindkey '^[[D' backward-word # ctrl + <- | |
bindkey '^[[5~' beginning-of-buffer-or-history # page up | |
bindkey '^[[6~' end-of-buffer-or-history # page down | |
bindkey '^[[Z' undo # shift + tab undo last action | |
# enable completion features | |
autoload -Uz compinit | |
compinit -d ~/.cache/zcompdump | |
zstyle ':completion:*:*:*:*:*' menu select | |
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' # case insensitive tab completion | |
# History configurations | |
HISTFILE=~/.zsh_history | |
HISTSIZE=1000 | |
SAVEHIST=2000 | |
setopt hist_expire_dups_first # delete duplicates first when HISTFILE size exceeds HISTSIZE | |
setopt hist_ignore_dups # ignore duplicated commands history list | |
setopt hist_ignore_space # ignore commands that start with space | |
setopt hist_verify # show command with history expansion to user before running it | |
#setopt share_history # share command history data | |
# force zsh to show the complete history | |
alias history="history 0" | |
# make less more friendly for non-text input files, see lesspipe(1) | |
#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" | |
# set variable identifying the chroot you work in (used in the prompt below) | |
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then | |
debian_chroot=$(cat /etc/debian_chroot) | |
fi | |
# set a fancy prompt (non-color, unless we know we "want" color) | |
case "$TERM" in | |
xterm-color|*-256color) color_prompt=yes;; | |
esac | |
# uncomment for a colored prompt, if the terminal has the capability; turned | |
# off by default to not distract the user: the focus in a terminal window | |
# should be on the output of commands, not on the prompt | |
force_color_prompt=yes | |
if [ -n "$force_color_prompt" ]; then | |
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then | |
# We have color support; assume it's compliant with Ecma-48 | |
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such | |
# a case would tend to support setf rather than setaf.) | |
color_prompt=yes | |
else | |
color_prompt= | |
fi | |
fi | |
if [ "$color_prompt" = yes ]; then | |
PROMPT=$'%F{%(#.blue.green)}┌──${debian_chroot:+($debian_chroot)──}(%B%F{%(#.red.blue)}%n%(#.💀.㉿)%m%b%F{%(#.blue.green)})-[%B%F{reset}%(6~.%-1~/…/%4~.%5~)%b%F{%(#.blue.green)}]\n└─%B%(#.%F{red}#.%F{blue}$)%b%F{reset} ' | |
RPROMPT=$'%(?.. %? %F{red}%B⨯%b%F{reset})%(1j. %j %F{yellow}%B⚙%b%F{reset}.)' | |
# enable syntax-highlighting | |
if [ -f /home/placeDirectoryorUserNameHere/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ] && [ "$color_prompt" = yes ]; then | |
# ksharrays breaks the plugin. This is fixed now but let's disable it in the | |
# meantime. | |
# https://github.com/zsh-users/zsh-syntax-highlighting/pull/689 | |
unsetopt ksharrays | |
. /home/placeDirectoryorUserNameHere/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh | |
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern) | |
ZSH_HIGHLIGHT_STYLES[default]=none | |
ZSH_HIGHLIGHT_STYLES[unknown-token]=fg=red,bold | |
ZSH_HIGHLIGHT_STYLES[reserved-word]=fg=cyan,bold | |
ZSH_HIGHLIGHT_STYLES[suffix-alias]=fg=green,underline | |
ZSH_HIGHLIGHT_STYLES[global-alias]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[precommand]=fg=green,underline | |
ZSH_HIGHLIGHT_STYLES[commandseparator]=fg=blue,bold | |
ZSH_HIGHLIGHT_STYLES[autodirectory]=fg=green,underline | |
ZSH_HIGHLIGHT_STYLES[path]=underline | |
ZSH_HIGHLIGHT_STYLES[path_pathseparator]= | |
ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]= | |
ZSH_HIGHLIGHT_STYLES[globbing]=fg=blue,bold | |
ZSH_HIGHLIGHT_STYLES[history-expansion]=fg=blue,bold | |
ZSH_HIGHLIGHT_STYLES[command-substitution]=none | |
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[process-substitution]=none | |
ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[single-hyphen-option]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[double-hyphen-option]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[back-quoted-argument]=none | |
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]=fg=blue,bold | |
ZSH_HIGHLIGHT_STYLES[single-quoted-argument]=fg=yellow | |
ZSH_HIGHLIGHT_STYLES[double-quoted-argument]=fg=yellow | |
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]=fg=yellow | |
ZSH_HIGHLIGHT_STYLES[rc-quote]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]=fg=magenta | |
ZSH_HIGHLIGHT_STYLES[assign]=none | |
ZSH_HIGHLIGHT_STYLES[redirection]=fg=blue,bold | |
ZSH_HIGHLIGHT_STYLES[comment]=fg=black,bold | |
ZSH_HIGHLIGHT_STYLES[named-fd]=none | |
ZSH_HIGHLIGHT_STYLES[numeric-fd]=none | |
ZSH_HIGHLIGHT_STYLES[arg0]=fg=green | |
ZSH_HIGHLIGHT_STYLES[bracket-error]=fg=red,bold | |
ZSH_HIGHLIGHT_STYLES[bracket-level-1]=fg=blue,bold | |
ZSH_HIGHLIGHT_STYLES[bracket-level-2]=fg=green,bold | |
ZSH_HIGHLIGHT_STYLES[bracket-level-3]=fg=magenta,bold | |
ZSH_HIGHLIGHT_STYLES[bracket-level-4]=fg=yellow,bold | |
ZSH_HIGHLIGHT_STYLES[bracket-level-5]=fg=cyan,bold | |
ZSH_HIGHLIGHT_STYLES[cursor-matchingbracket]=standout | |
fi | |
else | |
PROMPT='${debian_chroot:+($debian_chroot)}%n@%m:%~%# ' | |
fi | |
unset color_prompt force_color_prompt | |
# If this is an xterm set the title to user@host:dir | |
case "$TERM" in | |
xterm*|rxvt*) | |
TERM_TITLE='\e]0;${debian_chroot:+($debian_chroot)}%n@%m: %~\a' | |
;; | |
*) | |
;; | |
esac | |
new_line_before_prompt=yes | |
precmd() { | |
# Print the previously configured title | |
print -Pn "$TERM_TITLE" | |
# Print a new line before the prompt, but only if it is not the first line | |
if [ "$new_line_before_prompt" = yes ]; then | |
if [ -z "$_NEW_LINE_BEFORE_PROMPT" ]; then | |
_NEW_LINE_BEFORE_PROMPT=1 | |
else | |
print "" | |
fi | |
fi | |
} | |
# enable color support of ls, less and man, and also add handy aliases | |
if [ -x /usr/bin/dircolors ]; then | |
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" | |
alias ls='ls --color=auto' | |
#alias dir='dir --color=auto' | |
#alias vdir='vdir --color=auto' | |
alias grep='grep --color=auto' | |
alias fgrep='fgrep --color=auto' | |
alias egrep='egrep --color=auto' | |
alias diff='diff --color=auto' | |
alias ip='ip --color=auto' | |
export LESS_TERMCAP_mb=$'\E[1;31m' # begin blink | |
export LESS_TERMCAP_md=$'\E[1;36m' # begin bold | |
export LESS_TERMCAP_me=$'\E[0m' # reset bold/blink | |
export LESS_TERMCAP_so=$'\E[01;33m' # begin reverse video | |
export LESS_TERMCAP_se=$'\E[0m' # reset reverse video | |
export LESS_TERMCAP_us=$'\E[1;32m' # begin underline | |
export LESS_TERMCAP_ue=$'\E[0m' # reset underline | |
# Take advantage of $LS_COLORS for completion as well | |
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" | |
fi | |
# some more ls aliases | |
alias ll='ls -l' | |
alias la='ls -A' | |
alias l='ls -CF' | |
# enable auto-suggestions based on the history | |
if [ -f /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh ]; then | |
. /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh | |
# change suggestion color | |
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=#999' | |
fi |
how to enable web search plugin on kali linux zsh file ? I tried few times but failed..... ref: https://github.com/ohmyzsh/ohmyzsh/blob/master/plugins/web-search/web-search.plugin.zsh
@mairm1340 did you read the ohmyzsh's README.md?
just copy paste the function in your zshrc?
just copy paste the function in your zshrc?
I did but it did not work. I could not figure out where i went wrong and hence reached out here..
how to enable web search plugin on kali linux zsh file ? I tried few times but failed..... ref: https://github.com/ohmyzsh/ohmyzsh/blob/master/plugins/web-search/web-search.plugin.zsh
@mairm1340 did you read the ohmyzsh's README.md?
I did mate but i m missing on something. I love the kali zshrc file which i feel is very clean. I just need the web search plugin and i could not make it work. for sure I did something wrong but I could not figure it out and hence need some help/advise so that i can correct it.
@mairm1340 Its not just copy .zshrc.
Please really read all the readme file.
It says that you have to replace the .zshrc by this file at first.
Then you need to configure your custom directory. You will let your plugins there.
Then you need to download your plugins in this directory and enable that plugin in your .zshrc
Also, each plugin has another readme with particular notes on its installation and usage.
@mairm1340 Its not just copy .zshrc. Please really read all the readme file.
It says that you have to replace the .zshrc by this file at first. Then you need to configure your custom directory. You will let your plugins there. Then you need to download your plugins in this directory and enable that plugin in your .zshrc
Also, each plugin has another readme with particular notes on its installation and usage.
HI
thank you for your guidance.
I did add the source path for web search plugin and i do have the plugin folder in .oh-my-zsh folder
i did enable syntax highlighting and auto correct and they work without any issues
@mairm1340
I'm happy for you! 😄
Nice job, keep rockin'! 🤘
how to enable web search plugin on kali linux zsh file ?
I tried few times but failed.....
ref:
https://github.com/ohmyzsh/ohmyzsh/blob/master/plugins/web-search/web-search.plugin.zsh