refactor: rename yt-dlp download directories and update associated scripts and help messages.

This commit is contained in:
Marco Gallegos
2025-11-21 08:31:53 -06:00
parent e18adc35bc
commit 67f4cad5f3
3 changed files with 28 additions and 20 deletions

View File

@@ -184,22 +184,24 @@ killport() {
serve() { python -m http.server "${1:-8000}"; } serve() { python -m http.server "${1:-8000}"; }
# --- yt-dlp --------------------------------------------------------------- # --- yt-dlp ---------------------------------------------------------------
export YTDLP_DIR="$HOME/videos/youtube" export YTDLP_VIDEO_DIR="$HOME/Movies/Youtube"
mkdir -p "$YTDLP_DIR"/{audio,video} >/dev/null 2>&1 export YTDLP_AUDIO_DIR="$HOME/Music/Youtube"
mkdir -p "$YTDLP_VIDEO_DIR" "$YTDLP_AUDIO_DIR" >/dev/null 2>&1
ytm() { ytm() {
if [[ -z "$1" || "$1" == "-h" || "$1" == "--help" ]]; then if [[ -z "$1" || "$1" == "-h" || "$1" == "--help" ]]; then
echo "Uso: ytm <url|busqueda> - Descarga audio MP3 en $YTDLP_DIR/audio" echo "Uso: ytm <url|busqueda> - Descarga audio MP3 en $YTDLP_AUDIO_DIR (calidad maxima)."
return 0 return 0
fi fi
yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 \ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 \
--embed-metadata --embed-thumbnail \ --embed-metadata --embed-thumbnail \
-o "$YTDLP_DIR/audio/%(title).180s.%(ext)s" "$1" -o "$YTDLP_AUDIO_DIR/%(title).180s.%(ext)s" "$1"
} }
ytv() { ytv() {
if [[ -z "$1" ]]; then if [[ -z "$1" ]]; then
echo "Uso: ytv <url|busqueda> [1080|720|480]" && return 1 echo "Uso: ytv <url|busqueda> [1080|720|480|best] - Descarga video MP4 en $YTDLP_VIDEO_DIR."
return 1
fi fi
local quality="${2:-best}" local quality="${2:-best}"
local fmt local fmt
@@ -210,14 +212,14 @@ ytv() {
*) fmt='bv*[ext=mp4]+ba/b[ext=mp4]/b' ;; *) fmt='bv*[ext=mp4]+ba/b[ext=mp4]/b' ;;
esac esac
yt-dlp -f "$fmt" --embed-subs --embed-metadata --embed-thumbnail \ yt-dlp -f "$fmt" --embed-subs --embed-metadata --embed-thumbnail \
-o "$YTDLP_DIR/video/%(title).180s.%(ext)s" "$1" -o "$YTDLP_VIDEO_DIR/%(title).180s.%(ext)s" "$1"
} }
ytls() { ytls() {
echo "Audios recientes:" echo "Audios recientes ($YTDLP_AUDIO_DIR):"
ls -1t "$YTDLP_DIR/audio" 2>/dev/null | head -5 | sed 's/^/ /' || echo " (vacio)" ls -1t "$YTDLP_AUDIO_DIR" 2>/dev/null | head -5 | sed 's/^/ /' || echo " (vacio)"
echo "Videos recientes:" echo "Videos recientes ($YTDLP_VIDEO_DIR):"
ls -1t "$YTDLP_DIR/video" 2>/dev/null | head -5 | sed 's/^/ /' || echo " (vacio)" ls -1t "$YTDLP_VIDEO_DIR" 2>/dev/null | head -5 | sed 's/^/ /' || echo " (vacio)"
} }
# --- SSH Agent ------------------------------------------------------------ # --- SSH Agent ------------------------------------------------------------
@@ -266,14 +268,19 @@ fi
# --- Ayuda rapida --------------------------------------------------------- # --- Ayuda rapida ---------------------------------------------------------
vanity_help() { vanity_help() {
cat <<EOF cat <<'EOF'
Comandos claves: Vanity CLI — comandos principales:
ytv / ytm / ytls - Descargas con yt-dlp ytv <url> [calidad] Descarga videos en ~/Movies/Youtube (calidad: best/1080/720/480).
venv create/on/off - Manejo rapido de entornos Python ytm <url> Extrae audio MP3 a ~/Music/Youtube con metadatos y caratula.
mkcd / extract / killport / serve - Utilidades basicas ytls Lista los ultimos archivos descargados por ytv/ytm.
reload - Recarga este archivo venv create|on|off Simplifica la creacion y activacion de entornos Python (.venv).
mkcd <ruta> Crea un directorio y cambia a el en un paso.
extract <archivo> Descomprime en el formato correcto automaticamente.
killport <puerto> Mata cualquier proceso que use el puerto indicado.
serve [puerto] Sirve la carpeta actual via HTTP (por defecto 8000).
reload Recarga la configuracion actual (~/.zshrc).
EOF EOF
} }
alias help='vanity_help' alias help='vanity_help'
echo "[Vanity Shell] Ejecuta 'help' para ver los comandos principales." echo "Vanity CLI | 'help' sirve para ver los comandos."

View File

@@ -54,7 +54,7 @@ Cada ejecución genera un registro detallado en `.logs/vanity-YYYYmmdd-HHMMSS.lo
- Instala los plugins necesarios y refresca sus repositorios si ya existen. - Instala los plugins necesarios y refresca sus repositorios si ya existen.
- Coloca el tema Catppuccin en `~/.poshthemes` y activa Oh My Posh automáticamente. - Coloca el tema Catppuccin en `~/.poshthemes` y activa Oh My Posh automáticamente.
- Copia `source ~/.zshrc` al portapapeles para que puedas recargar la shell al finalizar. - Copia `source ~/.zshrc` al portapapeles para que puedas recargar la shell al finalizar.
- Genera los directorios `~/videos/youtube` y `~/musica/youtube` y define alias listos para descargar con `ytv <url>` (video completo) y `ytm <url>` (solo audio MP3). - Genera los directorios `~/Movies/Youtube` y `~/Music/Youtube` y define alias listos para descargar con `ytv <url>` (video completo) y `ytm <url>` (solo audio MP3).
- Añade un comando `help` dentro de Zsh que describe el uso de estos alias. - Añade un comando `help` dentro de Zsh que describe el uso de estos alias.
- Cambia la fuente predeterminada de la app Terminal a *MesloLGS Nerd Font* (tamaño 14) para que los iconos de Oh My Posh se vean bien desde el primer arranque. - Cambia la fuente predeterminada de la app Terminal a *MesloLGS Nerd Font* (tamaño 14) para que los iconos de Oh My Posh se vean bien desde el primer arranque.

View File

@@ -117,7 +117,7 @@ install_cli_dependencies() {
} }
setup_media_dirs() { setup_media_dirs() {
mkdir -p "$HOME/videos/youtube" "$HOME/musica/youtube" mkdir -p "$HOME/Movies/Youtube" "$HOME/Music/Youtube"
} }
configure_terminal_font() { configure_terminal_font() {
@@ -339,7 +339,7 @@ main_menu() {
echo " Q) Salir" echo " Q) Salir"
echo "" echo ""
local choice="" local choice=""
if read_menu_choice "Opción [A/C/D/Q]: "; then if read_menu_choice "Opción [A/C/D/U/Q]: "; then
choice="$REPLY" choice="$REPLY"
else else
echo "No se detecta una entrada interactiva; se seleccionará la opción 'A' por defecto." echo "No se detecta una entrada interactiva; se seleccionará la opción 'A' por defecto."
@@ -396,3 +396,4 @@ echo "source ~/.zshrc"
echo "" echo ""
wait_for_enter "Presiona Enter una vez hayas ejecutado el comando anterior en tu terminal… " wait_for_enter "Presiona Enter una vez hayas ejecutado el comando anterior en tu terminal… "
echo "Reinicia tu Mac para asegurarte de que todas las herramientas queden listas para el próximo arranque." echo "Reinicia tu Mac para asegurarte de que todas las herramientas queden listas para el próximo arranque."
echo "Vanity CLI | 'help' sirve para ver los comandos."