diff --git a/.claude/skills/job-application-assistant/05-cv-templates.md b/.claude/skills/job-application-assistant/05-cv-templates.md index 090a34e..a911a6d 100644 --- a/.claude/skills/job-application-assistant/05-cv-templates.md +++ b/.claude/skills/job-application-assistant/05-cv-templates.md @@ -25,6 +25,13 @@ Expected output: `Output written on main_.pdf (2 pages, ...)`. Any page \moderncvstyle{banking} \moderncvcolor{blue} +% Force both first and last name AND section headings to render in moderncv +% blue (color1). Default banking on lualatex+MiKTeX leaves these black, which +% looks inconsistent with the rest of the blue accent scheme. +\renewcommand*{\firstnamestyle}[1]{{\fontsize{34}{36}\bfseries\upshape\color{color1}#1}} +\renewcommand*{\lastnamestyle}[1]{{\fontsize{34}{36}\bfseries\upshape\color{color1}#1}} +\renewcommand*{\sectionstyle}[1]{{\sectionfont\color{color1}#1}} + \usepackage[utf8]{inputenc} \usepackage{hyperref} \hypersetup{ @@ -59,6 +66,36 @@ Expected output: `Output written on main_.pdf (2 pages, ...)`. Any page \end{document} ``` +### Color overrides + +The three `\renewcommand*` lines in the preamble are required on lualatex+MiKTeX. Without them the firstname, lastname, and section headings render in black even though `\moderncvcolor{blue}` is set, which looks inconsistent with the rest of the blue accent scheme (links, bullet markers, contact icons). The override forces all three to use `color1` (moderncv's accent colour, which becomes blue under `\moderncvcolor{blue}`). Both names render bold; if you prefer the firstname in regular weight, change the firstnamestyle override from `\bfseries` to `\mdseries`. Don't drop the override - on most modern installs the defaults render visibly wrong. + +### Spacing inside itemize lists (important) + +**Do not place `\vspace{...}` between `\item` entries in an `itemize` list.** Even though the source looks symmetric, this pattern occasionally produces a noticeably oversized gap before a single item: the inter-item `\vspace` creates a paragraph break that interacts unpredictably with the list's internal `\itemsep`, so LaTeX renders one of the gaps wider than the rest. Remove the inter-item `\vspace` and let `itemize` use its native uniform spacing. + +```latex +% WRONG - intermittently produces an oversized gap before one bullet +\begin{itemize} +\item \textbf{Foo}: ... +\vspace{1pt} +\item \textbf{Bar}: ... +\vspace{1pt} +\item \textbf{Baz}: ... +\end{itemize} + +% RIGHT - uniform spacing using the list's native itemsep +\begin{itemize} +\item \textbf{Foo}: ... +\item \textbf{Bar}: ... +\item \textbf{Baz}: ... +\end{itemize} +``` + +Two related patterns are fine and should be kept: +- `\vspace{1pt}` immediately after `\section{...}` (between section heading and first item) - this is between the heading and the list, not between list items. +- `\vspace{3pt}` between top-level `\cventry` blocks in Professional Experience or Education - this gives breathing room between roles and renders consistently. + ## Section-by-Section Tailoring ### Profile Statement / Elevator Pitch (Best Practice) diff --git a/SETUP.md b/SETUP.md index 029e0eb..0421164 100644 --- a/SETUP.md +++ b/SETUP.md @@ -143,7 +143,7 @@ After `/apply` creates the LaTeX files: ```bash # Compile CV -cd cv && pdflatex main_.tex && cd .. +cd cv && lualatex main_.tex && cd .. # Compile cover letter cd cover_letters && xelatex cover__.tex && cd .. @@ -158,7 +158,7 @@ This is expected if you haven't set up salary benchmarking. The `/apply` workflo Make sure Bun is installed and you ran `bun install` in each CLI directory. The tools require network access to fetch job listings. ### LaTeX compilation errors -- CV: uses `pdflatex` (standard LaTeX) +- CV: uses `lualatex` (pdflatex often fails on modern MiKTeX with `fontawesome5` font-expansion errors; lualatex handles the same sources cleanly) - Cover letter: uses `xelatex` (for custom fonts in `OpenFonts/fonts/`) - Make sure your LaTeX distribution includes the `moderncv` package diff --git a/cv/main_example.tex b/cv/main_example.tex index 7601be8..c60ba03 100644 --- a/cv/main_example.tex +++ b/cv/main_example.tex @@ -3,12 +3,20 @@ %% Use as a master reference when tailoring role-specific CVs. %% %% SETUP: Run /setup to populate this with your actual information. -%% Compile with: pdflatex main_example.tex +%% Compile with: lualatex main_example.tex +%% (pdflatex often fails on modern MiKTeX with fontawesome5 font-expansion errors.) \documentclass[11pt,a4paper,sans]{moderncv} \moderncvstyle{banking} \moderncvcolor{blue} +% Force both first and last name AND section headings to render in moderncv +% blue (color1). Default banking on lualatex+MiKTeX leaves these black, which +% looks inconsistent with the rest of the blue accent scheme. +\renewcommand*{\firstnamestyle}[1]{{\fontsize{34}{36}\bfseries\upshape\color{color1}#1}} +\renewcommand*{\lastnamestyle}[1]{{\fontsize{34}{36}\bfseries\upshape\color{color1}#1}} +\renewcommand*{\sectionstyle}[1]{{\sectionfont\color{color1}#1}} + \usepackage[utf8]{inputenc} \usepackage{hyperref} \hypersetup{ @@ -49,16 +57,12 @@ \begin{itemize} \item \textbf{[Skill Category 1]}: [Specific skills, frameworks, tools. Be concrete.] -\vspace{1pt} \item \textbf{[Skill Category 2]}: [Specific skills, frameworks, tools.] -\vspace{1pt} \item \textbf{[Skill Category 3]}: [Specific skills, frameworks, tools.] -\vspace{1pt} \item \textbf{[Skill Category 4]}: [Domain expertise, methods, approaches.] -\vspace{1pt} \item \textbf{[Skill Category 5]}: [Tools, platforms, software.] @@ -76,11 +80,8 @@ \item{\cventry{[YYYY--Present]}{[Job Title]}{[Company]}{[City, Country]}{}{\vspace{1pt} \begin{itemize} \item [Achievement or responsibility 1 - be specific, use numbers where possible] - \vspace{1pt} \item [Achievement or responsibility 2] - \vspace{1pt} \item [Achievement or responsibility 3] - \vspace{1pt} \item [Achievement or responsibility 4] \end{itemize}}} @@ -90,9 +91,7 @@ \item{\cventry{[YYYY--YYYY]}{[Job Title]}{[Company]}{[City, Country]}{}{\vspace{1pt} \begin{itemize} \item [Achievement or responsibility 1] - \vspace{1pt} \item [Achievement or responsibility 2] - \vspace{1pt} \item [Achievement or responsibility 3] \end{itemize}}} @@ -102,7 +101,6 @@ \item{\cventry{[YYYY--YYYY]}{[Job Title]}{[Company]}{[City, Country]}{}{\vspace{1pt} \begin{itemize} \item [Achievement or responsibility 1] - \vspace{1pt} \item [Achievement or responsibility 2] \end{itemize}}}