##
## .zshrc es referenciado en los intérpretes interactivos
## Debe contener los comandos para configurar los alias, las funciones,
## opciones, asociaciones de teclas (atajos), etcétera.
##---------------------------------------------------------------------
###==================SECCION DE CONFIGURACION DE TERMINAL==============
## Esto informa al Shell qué tipo terminal está usando o emulando.
## Tilde suporta muchas terminales y puede de hecho soportar mas.
## Para mayor información diríjase a /usr/lib/terminfo.
## La TTY por defecto es tipicamente una DEC vt100.
## La terminal xterm es un emulador de terminal capaz de presentar
## colores.
#TERM=vt100
#TERM=xterm
TERM=xterm-utf8
#TERM=xterm-256color
## Esto mantiene los procesos en 2do plano a velocidad completa.
#setopt NOBGNICE
## reinicia los procesos en ejecución al salir
#setopt HUP
##Agrega la dirección en la barra de la ventana de teminral
## de xterm u otros emuladores de terminal compatibles.
printf "\e]0;${USER}@${HOST}\a"
### ------- Comportamiento de la Campana de Terminal --------
## Descomente lo siguiente para desactivar la campana de terminal.
#unsetopt beep
## Descomente lo siguiente para no usar
## nunca jamás la campana de terminal
#setopt NO_BEEP
## Descomente esto para activar el uso
## de la campana de terminal
setopt beep
###==============SECCION DE HISTORIOA==========================
#setopt APPEND_HISTORY
## Descomente para compartir historia entre procesos Zsh
#setopt INC_APPEND_HISTORY
#setopt SHARE_HISTORY
###---Fin de sección Historia ---------------------------------
###============== * * * SECCION DEL ATOCOMPLETADO * * * ========
## Autocompletado básico de Zsh con Tab:
autoload -U compinit
## permite el completado con Tab en el medio de una palabra
setopt COMPLETE_IN_WORD
zstyle ':completion:*' menu select
zmodload zsh/complist
compinit
_comp_options+=(globdots) # Incluye archivos ocultos.
##--------- Fin de sección Autocompletado ---------------------
###======== * * * Sección de Keybinding * * * ===================
## Cambia la forma de cursor para diferentes modos vi.
function zle-keymap-select {
if [[ ${KEYMAP} == vicmd ]] ||
[[ $1 = 'block' ]]; then
#printf '%b' '\e]12;yellow\a'
echo -ne '\e[2 q'
elif [[ ${KEYMAP} == main ]] ||
[[ ${KEYMAP} == viins ]] ||
[[ ${KEYMAP} = '' ]] ||
[[ $1 = 'beam' ]]; then
# printf '%b' '\e]12;lime\a'
echo -ne '\e[1 q'
fi
}
#zle -N zle-line-init
#printf '%b' '\e]12;lime\a' #usar cursor lima al iniciar.
# preexec() { echo -ne '\e[2 q' ;} # Usa cursor cuadrado parpadeante en cada prompt nuevo.
# * * * Usa lf para cambiar directorios y aosciarlo a Ctrl-o * * *
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'
# Edita línea en Vim con Ctrl+e:
autoload edit-command-line; zle -N edit-command-line
bindkey '^e' edit-command-line
###------------------ fin de los keybindings -------------------
# Carga los alias y los atajos si existen.
[ -f "$HOME/.config/shortcutrc" ] && source "$HOME/.config/shortcutrc"
[ -f "$HOME/.config/aliasrc" ] && source "$HOME/.config/aliasrc"
## decide automáticamente cuándo paginar una lista de completado
#LISTMAX=0
## desactiva la revisión de correo electrónico
#MAILCHECK=0
###|||||||||||||||||| FIN DE LA CONFIGURACIÓN BÁSICA |||||||||||||||||||
####-------------configuración del prompt -----------------
# Coloca el prompt en la ventana de XTerm u otros emuladores de terminal.
printf "\e]0;${USER}@${HOST}\a"
# Esto dispone los colores en la terminal y los activa:
autoload -U colors && colors
# Esto configura el propmpt [usuario@host:dir~] $ y le da
# colores de la paleta de 16 colores para mayor compatibilidad).
#PS1="%B%{$fg[red]%}[%{$fg[green]%}%n%{$fg[blue]%}@%{$fg[yellow]%}%M%{$fg[red]%}:$fg[blue]%~%{$fg[red]%}]%{$reset_color%}$%b "
# Esto configura el prompt usuario@host:dir~ $ y le da
# colores de la paleta de 16 colores para mayro compatibilidad.
#
PS1="%B%{$fg[green]%}%n%{$fg[blue]%}@%{$fg[yellow]%}%M%{$fg[red]%}:$fg[blue]%~%{$reset_color%}$%b "
###-----------------fin de elección de prompt--------------
# ========== Sección de Intérpete en castellano =======
export LANG="es_ES.UTF-8"
export LC_CTYPE="es_ES.UTF-8"
export LC_ALL=es_ES.UTF-8
export TZ="UTC+3"
export LANGUAGE="es:ES_UTF-8"
# Que editor usar? Esto es estandar y tenemos Vi y, también el Pico.
#EDITOR=/bin/ed
VISUAL=/usr/bin/vim
#EDITOR=/usr/pkg/bin/pico
EDITOR=/usr/pkg/bin/nano
#servidor de noticias
NNTPSERVER=news.tilde.club
# Ahora continuaremos y activamos las variables de environment!
# Exportemoslas!
export PS1 TERM EDITOR VISUAL TZ NNTPSERVER
### |||||||||||||| FIN DEL ARRANQUE ||||||||||||||||||||||||
### A continuación se ejecutará lo normal cuando se inicie el
### intérprete de comandos Zoom Shell (Zsh).
###------- configuración de la campana--------------
## Suena un campanazo de terminal para avisar que está
## en línea incluso si no hay video:
echo -ne '\007'
####----------fin de configuración personalizada---------------
# Carga zsh-syntax-highlighting. Esta sección debe quedar siempre al
# final del archivo .zshrc.
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh 2>/dev/null