mirror of
https://github.com/marcogll/mac_vntySet.git
synced 2026-01-13 13:25:15 +00:00
refactor: Improve setup script robustness, modularity, and Docker handling, and remove example zshrc.
This commit is contained in:
153
.zshrc.example
153
.zshrc.example
@@ -1,95 +1,28 @@
|
||||
# .zshrc.example
|
||||
# Archivo de ejemplo para configurar Zsh + Oh My Zsh.
|
||||
# Bien documentado para entender qué hace cada sección.
|
||||
# Puedes copiarlo a ~/.zshrc y modificarlo según tus preferencias.
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# 1. PATH y variables básicas
|
||||
# ------------------------------------------------------------
|
||||
# Añade rutas personalizadas al PATH si usas Homebrew, Node, Python, etc.
|
||||
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# 2. Oh My Zsh: tema y plugins
|
||||
# ------------------------------------------------------------
|
||||
# Tema visual del prompt. "powerlevel10k" es rápido y bonito.
|
||||
ZSH_THEME="powerlevel10k/powerlevel10k"
|
||||
|
||||
# Lista de plugins que se cargarán al iniciar Zsh.
|
||||
# Se recomienda no abusar de plugins para evitar lentitud.
|
||||
plugins=(
|
||||
git # shortcuts de git
|
||||
sudo # permite repetir comandos con sudo (!!)
|
||||
history # historial mejorado
|
||||
colorize # colorear salida de comandos
|
||||
docker # autocompletado para Docker
|
||||
docker-compose # autocompletado para Docker Compose
|
||||
npm # utilidades para Node
|
||||
node # autocompletado Node.js
|
||||
python # autocompletado Python
|
||||
pip # autocompletado pip
|
||||
golang # autocompletado Go
|
||||
copypath # copiar rutas al portapapeles
|
||||
copyfile # copiar archivos al portapapeles
|
||||
)
|
||||
|
||||
# Carga Oh My Zsh
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# 3. Configuraciones de historial
|
||||
# ------------------------------------------------------------
|
||||
HISTSIZE=5000 # tamaño en memoria
|
||||
SAVEHIST=5000 # tamaño en disco
|
||||
HISTFILE=~/.zsh_history # archivo donde se guarda
|
||||
setopt SHARE_HISTORY # compartir historial entre sesiones
|
||||
setopt HIST_IGNORE_DUPS # no guardar duplicados
|
||||
setopt HIST_IGNORE_SPACE # no guardar comandos que comiencen con espacio
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# 4. Alias útiles
|
||||
# ------------------------------------------------------------
|
||||
alias ll="ls -lah"
|
||||
alias gs="git status"
|
||||
alias gl="git log --oneline --graph --decorate"
|
||||
alias please="sudo !!" # magia pura ;)
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# 5. Mejoras de terminal
|
||||
# ------------------------------------------------------------
|
||||
# Colores más bonitos en 'ls'
|
||||
export CLICOLOR=1
|
||||
export LSCOLORS="GxFxCxDxBxegedabagacad"
|
||||
|
||||
# Editor de texto por defecto
|
||||
export EDITOR="nano"
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# 6. Powerlevel10k (si está instalado)
|
||||
# ------------------------------------------------------------
|
||||
# Este archivo se genera automáticamente cuando configuras p10k.
|
||||
# Si no existe, puedes generarlo ejecutando: p10k configure
|
||||
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||
# ~/.zshrc.example — Configuración adaptada para Vanity Shell en macOS
|
||||
# ---------------------------------------------------------------
|
||||
# Archivo totalmente documentado para uso dentro del entorno Vanity Shell.
|
||||
# Este archivo será copiado a ~/.zshrc por vanity_setup.sh.
|
||||
# Incluye: Oh My Zsh, Oh My Posh, plugins, historial, alias y funciones.
|
||||
# Vanity Shell — Configuración base para Zsh en macOS
|
||||
# ---------------------------------------------------------------
|
||||
# Incluye Oh My Zsh, Oh My Posh, historial afinado y alias útiles.
|
||||
# Este archivo es copiado automáticamente a ~/.zshrc por vanity_setup.sh.
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# PATH — rutas básicas del sistema
|
||||
# PATH — añade rutas clave antes del resto del sistema
|
||||
# ---------------------------------------------------------------
|
||||
export PATH="$HOME/bin:/usr/local/bin:/opt/homebrew/bin:$PATH"
|
||||
if [ -d /opt/homebrew/bin ]; then
|
||||
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
|
||||
fi
|
||||
if [ -d "$HOME/.local/bin" ]; then
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
fi
|
||||
if [ -d "$HOME/bin" ]; then
|
||||
export PATH="$HOME/bin:$PATH"
|
||||
fi
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Oh My Zsh — Framework principal
|
||||
# Oh My Zsh — Framework principal + plugins
|
||||
# ---------------------------------------------------------------
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
ZSH_THEME="robbyrussell"
|
||||
ZSH_THEME="robbyrussell" # el prompt real lo gestiona Oh My Posh
|
||||
|
||||
# Lista de plugins para mejorar la experiencia de ZSH.
|
||||
plugins=(
|
||||
git sudo history colorize
|
||||
docker docker-compose
|
||||
@@ -103,38 +36,68 @@ plugins=(
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Oh My Posh — Prompt con tema Catppuccin
|
||||
# Oh My Posh — Prompt moderno (tema Catppuccin)
|
||||
# ---------------------------------------------------------------
|
||||
eval "$(oh-my-posh init zsh --config ~/.poshthemes/catppuccin.omp.json)"
|
||||
if command -v oh-my-posh >/dev/null 2>&1; then
|
||||
eval "$(oh-my-posh init zsh --config ~/.poshthemes/catppuccin.omp.json)"
|
||||
fi
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Historial — configuración avanzada
|
||||
# Historial y opciones de shell
|
||||
# ---------------------------------------------------------------
|
||||
HISTFILE=~/.zsh_history
|
||||
HISTSIZE=50000
|
||||
SAVEHIST=50000
|
||||
HISTFILE=~/.zsh_history
|
||||
setopt SHARE_HISTORY
|
||||
setopt HIST_IGNORE_SPACE
|
||||
setopt HIST_IGNORE_DUPS
|
||||
setopt HIST_VERIFY
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Corrección y calidad de vida
|
||||
# ---------------------------------------------------------------
|
||||
setopt AUTO_CD
|
||||
setopt CORRECT
|
||||
setopt COMPLETE_ALIASES
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Alias útiles — Comandos abreviados para velocidad
|
||||
# Preferencias básicas
|
||||
# ---------------------------------------------------------------
|
||||
export CLICOLOR=1
|
||||
export LSCOLORS="GxFxCxDxBxegedabagacad"
|
||||
export EDITOR="nano"
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Alias — accesos rápidos de uso frecuente
|
||||
# ---------------------------------------------------------------
|
||||
alias ll="ls -lah"
|
||||
alias gs="git status"
|
||||
alias gs="git status -sb"
|
||||
alias gl="git log --oneline --graph --decorate"
|
||||
alias gc="git commit"
|
||||
alias gp="git push"
|
||||
alias d="docker"
|
||||
alias dc="docker compose"
|
||||
alias reload-zsh="source ~/.zshrc"
|
||||
alias portainer="open https://localhost:9443"
|
||||
alias ytv='yt-dlp -P "$HOME/videos/youtube"'
|
||||
alias ytm='yt-dlp -x --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s" -P "$HOME/musica/youtube"'
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Docker + Portainer
|
||||
# Integraciones opcionales
|
||||
# ---------------------------------------------------------------
|
||||
alias portainer="open http://localhost:9000"
|
||||
if command -v direnv >/dev/null 2>&1; then
|
||||
eval "$(direnv hook zsh)"
|
||||
fi
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Ayuda rápida de Vanity Shell
|
||||
# ---------------------------------------------------------------
|
||||
help() {
|
||||
cat <<'EOF'
|
||||
Vanity Shell — comandos rápidos:
|
||||
ytv <url> -> Descarga el video completo en ~/videos/youtube
|
||||
ytm <url> -> Descarga solo el audio (mp3) en ~/musica/youtube
|
||||
|
||||
Ejemplos:
|
||||
ytv https://youtu.be/videoID
|
||||
ytm https://youtu.be/trackID
|
||||
|
||||
Recuerda que ambos comandos requieren yt-dlp/ffmpeg instalados (el setup ya los incluye).
|
||||
EOF
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user