Skip to content

Commit 2d43fb4

Browse files
committed
w
1 parent 0d97cc6 commit 2d43fb4

File tree

5 files changed

+480
-3
lines changed

5 files changed

+480
-3
lines changed

.claude/commands/pdf-to-html.md

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
---
2+
description: Convert any PDF document to an accessible HTML version
3+
argument-hint: <path-to-pdf>
4+
model: sonnet
5+
---
6+
7+
Convert the specified PDF document into an accessible standalone HTML version.
8+
9+
**Task:** Create an HTML version of the PDF document: `$ARGUMENTS`
10+
11+
## Instructions:
12+
13+
1. **Locate the PDF**:
14+
- Search for the PDF file in the repository using the provided path or filename
15+
- If just a filename is provided, search the entire repository for it
16+
- Common locations include: `graduate/docs/`, `undergraduate/docs/`, `img/`, etc.
17+
18+
2. **Extract content**:
19+
- If the user has provided the text content, use that
20+
- Otherwise, read any existing markdown or text versions of the document in the repository
21+
- The user may paste the content directly in their message
22+
23+
3. **Create HTML version**: Generate a standalone HTML page with:
24+
- Jekyll front matter with appropriate layout, title, and permalink
25+
- Embedded CSS using CSS variables for dark mode support (--text-color, --card-bg, --bg-color)
26+
- Semantic HTML5 structure with proper headings (h1, h2, h3)
27+
- ARIA attributes for accessibility (role, aria-label, aria-labelledby)
28+
- Responsive design that works on mobile and desktop
29+
- UVA branding colors (orange accent: #e57200)
30+
- Preserve all content exactly as in the PDF
31+
- **Use MathML for all mathematical notation** (Greek letters, superscripts, subscripts, fractions, etc.)
32+
33+
4. **Save the file**:
34+
- Save the HTML file in the same directory as the PDF
35+
- Use a kebab-case filename (e.g., `algebra-general-exam-syllabus.html`)
36+
- The permalink should match the directory structure
37+
38+
5. **Update links**: Find and update the relevant include or page file that links to this PDF to add an HTML version link:
39+
- Search for references to the PDF filename in the repository
40+
- Add ` &bull; <a href="{{ site.url }}/path/to/html">HTML version</a>` after the PDF link
41+
- Use "HTML version" not "accessible HTML version"
42+
43+
6. **Verify**: Confirm the file structure matches the site's standards and uses proper Jekyll conventions.
44+
45+
## Example output structure:
46+
47+
```html
48+
---
49+
layout: g_page
50+
title: Document Title
51+
permalink: /graduate/docs/document-name/
52+
nav_parent: Graduate
53+
---
54+
55+
<style>
56+
.container {
57+
/* CSS using var(--text-color), var(--card-bg) for dark mode */
58+
}
59+
</style>
60+
61+
<article class="container" role="main">
62+
<h1>Document Title</h1>
63+
<!-- Content here -->
64+
</article>
65+
```
66+
67+
Ask the user if they need to provide the PDF text content first, or if you should search for it in the repository.

Gemfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,5 @@ gem "jekyll-feed"
99
gem "html-proofer"
1010
gem 's3_website'
1111
gem 'jekyll-redirect-from'
12+
gem 'erb'
13+
gem 'logger'

_includes/grad_general_exams.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@ Students are expected to attempt two different general examinations before the b
1313
Syllabi for the Algebra, Analysis, and Topology General Examinations:
1414
<ul>
1515
<li>
16-
<a href="{{ site.url }}/graduate/docs/Syllabus for Algebra General Exam 1 - update 2023.pdf">Syllabus for Algebra General Exam</a> (<a href="{{ site.url }}/graduate/docs/algebra-general-exam-syllabus/">HTML version</a>)<br>
16+
<a href="{{ site.url }}/graduate/docs/Syllabus for Algebra General Exam 1 - update 2023.pdf">Syllabus for Algebra General Exam</a> &bull; <a href="{{ site.url }}/graduate/docs/algebra-general-exam-syllabus/">HTML version</a><br>
1717
</li>
1818
<li>
19-
<a href="{{ site.url }}/graduate/docs/Syllabus for Analysis General Exam 2.pdf">Syllabus for Analysis General Exam</a>
19+
<a href="{{ site.url }}/graduate/docs/Syllabus for Analysis General Exam 2.pdf">Syllabus for Analysis General Exam</a> &bull; <a href="{{ site.url }}/graduate/docs/analysis-general-exam-syllabus/">HTML version</a><br>
2020
</li>
2121
<li>
22-
<a href="{{ site.url }}/graduate/docs/Syllabus for Topology General Exam 3.pdf">Syllabus for Topology General Exam</a>
22+
<a href="{{ site.url }}/graduate/docs/Syllabus for Topology General Exam 3.pdf">Syllabus for Topology General Exam</a> &bull; <a href="{{ site.url }}/graduate/docs/topology-general-exam-syllabus/">HTML version</a><br>
2323
</li>
2424
</ul>
Lines changed: 196 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
---
2+
layout: g_page
3+
title: Analysis General Exam Syllabus
4+
permalink: /graduate/docs/analysis-general-exam-syllabus/
5+
nav_parent: Graduate
6+
---
7+
8+
<style>
9+
.syllabus-container {
10+
max-width: 900px;
11+
margin: 0 auto;
12+
padding: 2rem 1rem;
13+
background-color: var(--card-bg);
14+
color: var(--text-color);
15+
line-height: 1.7;
16+
}
17+
18+
.syllabus-container h1 {
19+
color: var(--text-color);
20+
font-size: 2rem;
21+
margin-bottom: 0.5rem;
22+
border-bottom: 3px solid #e57200;
23+
padding-bottom: 0.5rem;
24+
}
25+
26+
.syllabus-container .revision-date {
27+
color: var(--text-color);
28+
opacity: 0.8;
29+
font-style: italic;
30+
margin-bottom: 2rem;
31+
font-size: 0.95rem;
32+
}
33+
34+
.syllabus-container h2 {
35+
color: #e57200;
36+
font-size: 1.5rem;
37+
margin-top: 2.5rem;
38+
margin-bottom: 1rem;
39+
border-left: 4px solid #e57200;
40+
padding-left: 0.75rem;
41+
}
42+
43+
.syllabus-container h3 {
44+
color: var(--text-color);
45+
font-size: 1.2rem;
46+
margin-top: 2rem;
47+
margin-bottom: 0.75rem;
48+
font-weight: 600;
49+
}
50+
51+
.syllabus-container ol,
52+
.syllabus-container ul {
53+
margin-left: 1.5rem;
54+
margin-bottom: 1rem;
55+
}
56+
57+
.syllabus-container li {
58+
margin-bottom: 0.75rem;
59+
color: var(--text-color);
60+
}
61+
62+
.syllabus-container .topic-list {
63+
counter-reset: topic-counter;
64+
list-style: none;
65+
margin-left: 0;
66+
}
67+
68+
.syllabus-container .topic-list > li {
69+
counter-increment: topic-counter;
70+
position: relative;
71+
padding-left: 2rem;
72+
margin-bottom: 1rem;
73+
}
74+
75+
.syllabus-container .topic-list > li::before {
76+
content: counter(topic-counter) ".";
77+
position: absolute;
78+
left: 0;
79+
font-weight: bold;
80+
color: #e57200;
81+
}
82+
83+
.syllabus-container .references {
84+
background-color: var(--bg-color);
85+
border: 1px solid var(--text-color);
86+
border-radius: 8px;
87+
padding: 1.5rem;
88+
margin-top: 2rem;
89+
opacity: 0.9;
90+
}
91+
92+
.syllabus-container .references h3 {
93+
margin-top: 0;
94+
}
95+
96+
.syllabus-container .references ul {
97+
list-style: disc;
98+
margin-left: 1.5rem;
99+
}
100+
101+
.syllabus-container .references li {
102+
margin-bottom: 0.5rem;
103+
}
104+
105+
/* MathML styling for dark mode */
106+
.syllabus-container math {
107+
color: var(--text-color);
108+
}
109+
110+
@media (max-width: 768px) {
111+
.syllabus-container {
112+
padding: 1rem 0.5rem;
113+
}
114+
115+
.syllabus-container h1 {
116+
font-size: 1.5rem;
117+
}
118+
119+
.syllabus-container h2 {
120+
font-size: 1.3rem;
121+
}
122+
123+
.syllabus-container h3 {
124+
font-size: 1.1rem;
125+
}
126+
}
127+
</style>
128+
129+
<article class="syllabus-container" role="main" aria-labelledby="syllabus-title">
130+
<h1 id="syllabus-title">Analysis General Exam Syllabus</h1>
131+
<p class="revision-date">Revised March 2023</p>
132+
133+
<section aria-labelledby="basics-section">
134+
<h2 id="basics-section">Basics (common for complex and real parts)</h2>
135+
<ol class="topic-list">
136+
<li>Elementary set operations, countable and uncountable sets.</li>
137+
<li>Open, closed, compact, and connected sets on the line and in Euclidean space.</li>
138+
<li>Completeness, infima and suprema, limit points, lim inf, lim sup.</li>
139+
<li>Bolzano-Weierstrass, Heine-Borel theorems.</li>
140+
<li>Continuous, uniformly continuous, differentiable functions.</li>
141+
<li>Extreme value, intermediate value, mean value theorems.</li>
142+
</ol>
143+
</section>
144+
145+
<section aria-labelledby="complex-analysis-section">
146+
<h2 id="complex-analysis-section">Complex Analysis</h2>
147+
<ol class="topic-list">
148+
<li>Series of functions, power series, and power series of elementary functions, uniform convergence, Weierstrass <math><mi>M</mi></math> test. Formula for the radius of convergence of a power series.</li>
149+
<li>Analytic and harmonic functions, Cauchy-Riemann equations.</li>
150+
<li>Power series and Laurent series.</li>
151+
<li>Elementary conformal mappings, fractional linear mappings. The Cayley transform.</li>
152+
<li>Cauchy's integral theorem and Cauchy integral formula. Morera's theorem. Goursat's theorem.</li>
153+
<li>Power series representation is equivalent to complex differentiability, and the power series converges in any ball where the function is complex differentiable. Classification of singularities. Meromorphic functions. Casorati-Weierstrass (Sokhotski) theorem.</li>
154+
<li>Argument principle, open mapping theorem, maximum principle, Rouché's theorem, Schwarz's lemma, Liouville's theorem. Hurwitz' theorem.</li>
155+
<li>Cauchy's residue theorem, evaluation of definite integrals. Evaluation of infinite series via residue theory.</li>
156+
<li>Normal families. Montel's theorem. Riemann mapping theorem.</li>
157+
</ol>
158+
</section>
159+
160+
<section aria-labelledby="real-analysis-section">
161+
<h2 id="real-analysis-section">Real Analysis</h2>
162+
<ol class="topic-list">
163+
<li><math><mi>σ</mi></math>-algebras of sets.</li>
164+
<li>Lebesgue measures and abstract measures, signed measures. Lebesgue-Stieltjes measures on the real line and their correspondence with increasing, right continuous functions.</li>
165+
<li>Measurable functions. Approximation by simple functions. Riemann and Lebesgue integrals.</li>
166+
<li>Monotone convergence and dominated convergence theorems, Fatou's lemma.</li>
167+
<li>Product spaces and product measure, Fubini-Tonelli theorems.</li>
168+
<li>Absolute continuity of measures, Radon-Nikodym theorem. Lebesgue-Radon-Nikodym decomposition.</li>
169+
<li>Hardy-Littlewood maximal function: the maximal inequality for the Hardy-Littlewood maximal function and the Vitali covering lemma. The Lebesgue differentiation theorem.</li>
170+
<li>Absolute continuity of functions, differentiation and the Fundamental Theorem of Calculus for absolutely continuous functions. The correspondence between absolutely continuous functions on <math><mi></mi></math> and measures on <math><mi></mi></math> which are absolutely continuous with respect to the Lebesgue measure. Bounded variation functions and their correspondence with complex measures on <math><mi></mi></math>.</li>
171+
<li>Hölder's inequality, Jensen's inequality.</li>
172+
<li><math><msup><mi>L</mi><mi>p</mi></msup></math> spaces, completeness. Approximation of <math><msup><mi>L</mi><mi>p</mi></msup></math>-functions on <math><msup><mi></mi><mi>d</mi></msup></math> by compactly supported continuous functions.</li>
173+
<li>Hilbert space, projection theorem, Riesz representation theorem, orthonormal sets, <math><msup><mi>L</mi><mn>2</mn></msup></math> spaces.</li>
174+
<li><math><msup><mi>L</mi><mi>p</mi></msup></math>-<math><msup><mi>L</mi><msup><mi>p</mi><mo></mo></msup></msup></math> duality when <math><mrow><mfrac><mn>1</mn><mi>p</mi></mfrac><mo>+</mo><mfrac><mn>1</mn><msup><mi>p</mi><mo></mo></msup></mfrac><mo>=</mo><mn>1</mn></mrow></math>.</li>
175+
<li>Elementary Fourier series, Riesz-Fischer and Parseval theorems. Riemann-Lebesgue theorem. Dirichlet kernel.</li>
176+
<li>Fourier transforms in <math><msup><mi></mi><mi>d</mi></msup></math>, Plancherel and Parseval's theorems, Fourier transforms of derivatives and translations. Riemann-Lebesgue lemma. Hausdorff-Young's inequality.</li>
177+
<li>Convolutions: Fourier transforms of convolutions, approximations to the identity, approximation of functions on <math><msup><mi></mi><mi>d</mi></msup></math> by compactly supported smooth functions. Young's inequality for convolution.</li>
178+
</ol>
179+
</section>
180+
181+
<section class="references" aria-labelledby="references-section">
182+
<h3 id="references-section">References</h3>
183+
<ul>
184+
<li>R. G. Bartle, <i>Elements of Real Analysis</i></li>
185+
<li>W. Rudin, <i>Principles of Mathematical Analysis</i></li>
186+
<li>H. L. Royden, <i>Real Analysis</i></li>
187+
<li>G. Folland, <i>Real Analysis</i></li>
188+
<li>S. Axler, <i>Measure, Integration &amp; Real Analysis</i></li>
189+
<li>L. V. Ahlfors, <i>Complex Analysis</i></li>
190+
<li>J. B. Conway, <i>Functions of a Complex Variable</i></li>
191+
<li>T. Gamelin, <i>Complex Analysis</i></li>
192+
<li>D. Marshall, <i>Complex Analysis</i></li>
193+
<li>E. Stein and R. Shakarchi, <i>Complex Analysis</i></li>
194+
</ul>
195+
</section>
196+
</article>

0 commit comments

Comments
 (0)