Resolve line break errors in .tex file

This commit is contained in:
2024-12-10 15:16:52 -05:00
parent 78d325884f
commit a8e9fab725
4 changed files with 102 additions and 24 deletions

17
Dockerfile Normal file
View File

@@ -0,0 +1,17 @@
FROM ubuntu:24.04
# Prevent tzdata questions during install
ENV DEBIAN_FRONTEND=noninteractive
# Install TeX Live and required packages
RUN apt-get update && apt-get install -y \
texlive-full \
latexmk \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
# For build
CMD ["latexmk", "-pdf", "-file-line-error", "-halt-on-error", "-interaction=nonstopmode", "resume.tex", "cv.tex"]

55
build-local.sh Executable file
View File

@@ -0,0 +1,55 @@
#!/bin/bash
# Function to cleanup
cleanup() {
rm -f personal_info.tex.bak
}
# Ensure cleanup runs even if script fails
trap cleanup EXIT
# Create output directory
mkdir -p output
# Build public version
echo "Building public version..."
docker build --platform linux/arm64 -t resume-builder .
docker run --platform linux/arm64 --rm -v "$(pwd)/output:/workspace/output" resume-builder bash -c "latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode resume.tex cv.tex && cp *.pdf output/"
# Move files to final names
mv output/resume.pdf output/resume-public.pdf
mv output/cv.pdf output/cv-public.pdf
# Build private version
echo "Building private version..."
# Backup current personal_info.tex
cp personal_info.tex personal_info.tex.bak
# Create private info file
cat > personal_info.tex << EOL
% Private version of personal information
\\newcommand{\\personalName}{Sean O'Connor}
\\newcommand{\\personalEmail}{${PERSONAL_EMAIL:-}}
\\newcommand{\\personalPhone}{${PERSONAL_PHONE:-}}
\\newcommand{\\personalWebsite}{soconnor.dev}
\\newcommand{\\personalSchoolEmail}{${PERSONAL_SCHOOL_EMAIL:-}}
\\newcommand{\\personalHomeAddress}{${PERSONAL_HOME_ADDRESS:-}}
\\newcommand{\\personalSchoolAddress}{${PERSONAL_SCHOOL_ADDRESS:-}}
EOL
# Build private version using the same image
docker run --platform linux/arm64 --rm -v "$(pwd):/workspace" -v "$(pwd)/output:/workspace/output" resume-builder bash -c "latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode resume.tex cv.tex && cp *.pdf output/"
# Move files to final names
mv output/resume.pdf output/resume-private.pdf
mv output/cv.pdf output/cv-private.pdf
# Restore original personal_info.tex
mv personal_info.tex.bak personal_info.tex
echo "Build complete!"
echo "Generated files in output/:"
echo "- resume-public.pdf"
echo "- cv-public.pdf"
echo "- resume-private.pdf"
echo "- cv-private.pdf"

22
cv.tex
View File

@@ -43,16 +43,18 @@
\begin{minipage}[t]{\textwidth}
\centering
\ifx\personalEmail\empty\else
Personal: \personalEmail
\fi
Personal: \personalEmail%
\fi%
\ifx\personalSchoolEmail\empty\else
\ifx\personalEmail\empty\else\\\fi
School: \personalSchoolEmail
\fi
\ifx\personalEmail\empty\else\\\fi
School: \personalSchoolEmail%
\fi%
\ifx\personalWebsite\empty\else
\ifx\personalEmail\empty\else\\\fi
\ifx\personalSchoolEmail\empty\else\\\fi
Website: \href{https://\personalWebsite}{\personalWebsite}
\ifx\personalEmail\empty
\ifx\personalSchoolEmail\empty\else\\\fi
\else\\%
\fi
Website: \href{https://\personalWebsite}{\personalWebsite}%
\fi
\end{minipage}
@@ -101,7 +103,7 @@
\item Designed and deployed facility's first multi-camera live streaming system with ATEM production switchers and custom graphics pipeline
\item Developed real-time graphics integration system connecting race timing data to broadcast overlays
\item Operated replay and instant highlight system for live broadcast to FloRacing and NBC Sports networks
\item Managed live production during race events, coordinating camera operators, replay, and graphics control\\
\item Managed live production during race events, coordinating camera operators, replay, and graphics control
\end{itemize}
@@ -138,7 +140,7 @@
\textbf{Physics Teaching Assistant} \hfill \textbf{Aug 2023 - May 2024}
\begin{itemize}[noitemsep,topsep=2pt]
\item Assisted students during laboratory sections with introductory and exploratory physics lab experiments, working with industry-standard data collection and analysis tools\\
\item Assisted students during laboratory sections with introductory and exploratory physics lab experiments, working with industry-standard data collection and analysis tools
\end{itemize}
\textscbf{Miller Place School District} \hfill \textscbf{Miller Place, NY}

View File

@@ -49,23 +49,27 @@
\end{minipage}%
\begin{minipage}[t]{0.33\textwidth}
\centering
\ifx\personalEmail\empty\else
\personalEmail
\fi
\ifx\personalEmail\empty\else\personalEmail\fi%
\ifx\personalSchoolEmail\empty\else
\ifx\personalEmail\empty\else\\\fi
\personalSchoolEmail
\fi
\ifx\personalEmail\empty\else\\\fi
\personalSchoolEmail%
\fi%
\ifx\personalPhone\empty\else
\ifx\personalEmail\empty\else\\\fi
\ifx\personalSchoolEmail\empty\else\\\fi
\personalPhone
\fi
\ifx\personalEmail\empty
\ifx\personalSchoolEmail\empty\else\\\fi
\else\\%
\fi
\personalPhone%
\fi%
\ifx\personalWebsite\empty\else
\ifx\personalEmail\empty\else\\\fi
\ifx\personalSchoolEmail\empty\else\\\fi
\ifx\personalPhone\empty\else\\\fi
\href{https://\personalWebsite}{\personalWebsite}
\ifx\personalEmail\empty
\ifx\personalSchoolEmail\empty
\ifx\personalPhone\empty\else\\\fi
\else\\%
\fi
\else\\%
\fi
\href{https://\personalWebsite}{\personalWebsite}%
\fi
\end{minipage}%
\begin{minipage}[t]{0.33\textwidth}