--- name: notebook_to_pdf kind: function lang: bash domain: infra version: "1.0.0" purity: impure signature: "notebook_to_pdf(project_dir: string, [pattern: string], [output_dir: string]) -> string" description: "Convierte notebooks Jupyter a PDF usando nbconvert webpdf con chromium. Lista los PDFs generados al finalizar." tags: [jupyter, notebook, pdf, export, nbconvert, playwright] uses_functions: [] uses_types: [] returns: [] returns_optional: false error_type: "error_go_core" imports: [] params: - name: project_dir desc: "directorio raĆ­z del proyecto con venv y notebooks" - name: pattern desc: "glob de notebooks a convertir (default: notebooks/*.ipynb)" - name: output_dir desc: "directorio destino para PDFs relativo a project_dir (default: notebooks/pdf/)" output: "lista de PDFs generados con sus rutas" tested: false tests: [] test_file_path: "" file_path: "bash/functions/infra/notebook_to_pdf.sh" --- ## Ejemplo ```bash source notebook_to_pdf.sh # Con defaults (notebooks/*.ipynb -> notebooks/pdf/) notebook_to_pdf /home/lucas/analysis/finanzas # Con pattern y output_dir custom notebook_to_pdf /home/lucas/analysis/finanzas "notebooks/01_*.ipynb" "exports/pdf/" ``` ## Notas Requiere nbconvert y playwright con chromium instalados (usa `install_nbconvert` antes). Usa el venv del proyecto directamente (`.venv/bin/jupyter`). El output_dir es relativo a project_dir. Imprime los PDFs generados con sus rutas al finalizar. Falla si no se genera ningun PDF.