Configuracion de zsh

Entradas Archivos Wallpaper ASCCI Problemas

Zsh tambien conovida como Z shell es un interprete de comandos para sistemas Unix, es la shell que viene por defecto en todas las mac.Es similar a la shell bash, pero en mi opinion tiene varias caracteristicas por defecto que la hacen mas moderna. Para aumentar sus capabilidades un administrador de plugins muy facil de instalar, que ya incluye varios plugins, modificaciones y alias asi como un prompt personalizado, este administrador de plugins se llama Oh-My-Zsh, lo malo de este es que yo siento que puede hacer la shell muy lenta al cargar por primera vez, asi que lo desinstale y solo agregue lo que necitaba y prompt personalizado, lo demas lo deseche y siento que ahor atengo mas control pues ahora se bien que hace cada cosa y el prompt tiene caracteristicas que no pense que podia tener asi como le quite otras que no me gustaba que tuviera.


format = '[░▒▓█](red)[$os$username $sudo](bg:red black)[](red bg:blue)$custom$git\_status$status$cmd\_duration[](green)'
right\_format = """$character$time"""
add\_newline = false

palette = 'foo'

[palettes.foo]
red="#d12e5f"
blue="#324aa8"
orange="#ff9e64"
purple="#5a4a78"
pur="#9a348e"
green="#047e84"

[character] # The name of the module we are configuring is 'character'
success\_symbol = '[➜](bold green)'
error\_symbol = '[✗](bold red) '


[git\_status]
style="bg:orange black"
deleted="✘ ${count} "
modified="!${count} "
staged="+${count} "
ahead="⇡${count}"
untracked="?${count}"
format = "[ $all\_status$ahead\_behind ]($style)[ ](orange bg:green )"
up\_to\_date = '✓'

[status]
style = 'bg:green blink pur bold'
symbol = '🔴'
success\_symbol = '🔴'
format = '[$symbol$common\_meaning$signal\_name$maybe\_int]($style)'
map\_symbol = true
disabled = false

[sudo]
symbol = ''
disabled = false
format="as $symbol "

[time]
disabled = false
time\_format = "%H:%M"
format = "🕙$time($style) "


[username]
format="$user"
show\_always = true

[cmd\_duration]
style = 'bg:green blink pur bold'
format="[$duration]($style)"

[os]
disabled=false
format="$symbol"
[os.symbols]
Linux=" "


[custom.dir]
command = 'Dirpath' 
when = true
format = '[$output]($style)[](blue bg:orange)'
style="bg:blue bold"

Lo que me da el siguiente prompt:

alias ls="ls --color=auto" 
alias diff='diff --color'
alias gc='git commit -m'
alias ga='git add'
alias gu='git add -u'
alias gs='git status'
alias gr='git restore'
alias gd='git diff'
alias pac='sudo pacman'
alias lf='lfrun'
#&&&&&&&&&&&&&&&&& SWITCH DIRS &&&&&&&&&&&&&&&&&&&&&&&&&&
lfcd () {
tmp="$(mktemp)"
lf -last-dir-path="$tmp" "$@"
if [ -f "$tmp" ]; then
dir="$(cat "$tmp")"
rm -f "$tmp"
[ -d "$dir" ] && [ "$dir" != "$(pwd)" ] && cd "$dir"
fi
}
bindkey -s '^o' 'lfcd\n'

#&&&&&&&&&&&&&&&&& Edit Line &&&&&&&&&&&&&&&&&&&&&&&&&&
autoload edit-command-line; zle -N edit-command-line
bindkey '^e' edit-command-line
* **Sugestiones:** Cuando quiero escribir un comando con un archivo si presiono **tab** zsh va a tratar de autocompletar lo que estaba tratando de escribir con una sugerencia, el motor es bastante inteligente y puede automaticamente seleccionar archivos del tipo especifico del cual el comando requiere, pero para mejorar esto le puse dos configuraciones, la cual le permite buscar en los archivo que comiencen con un "." y que no distinga entre mayusculas y minusculas, asi mismo que coloree las tipos de los archivos y que muestre el bloque blanco cuando se esta en el modo de seleccion.

autoload -U compinit
zstyle ':completion:\*' menu select
zmodload zsh/complist
compinit
\_comp\_options+=(globdots) # Include hidden files.
zstyle ':completion:\*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}' 'r:|[.\_-]=\* r:|=\*' 'l:|=\* r:|=\*'
eval "$(dircolors)"
zstyle ':completion:\*' list-colors ${(s.:.)LS\_COLORS}
# FInalmente utilize syntax-highlighting para los comandos, para lograr esto tuve que instalar **zsh-syntax-highlighting** con pacman y luego activarlo con el siguiente codigo

source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh