This directory contains scripts for maintaining the Jekyll data files in _data.
ruby scripts/validate_data.rb
ruby scripts/format_yaml_spacing.rb
This inserts a blank line between top-level list items in _data/*.yml.
ruby scripts/normalize_publication_titles.rb
This ensures every publication has both title_latex and title_html.
title_latex is intended for LaTeX/CV output, while title_html is intended for
the website. Inline LaTeX math written as $...$ is converted to MathJax
\(...\) in title_html when title_html is missing.
To regenerate all title_html values from title_latex, run:
ruby scripts/normalize_publication_titles.rb --force-html
ruby scripts/sort_publication_articles.rb
This sorts only type: article records in _data/publications.yml by arXiv id
descending. Non-article records keep their current positions. To check without
rewriting the file:
ruby scripts/sort_publication_articles.rb --check
ruby scripts/render_pages.rb
The live publications and presentations pages are Liquid templates processed by GitHub Pages/Jekyll. This script is kept as a local preview and backup generator. By default it writes preview files:
web/publications/index.generated.html
web/presentations/index.generated.html
Only if you intentionally want to replace the Liquid templates with generated static HTML, overwrite the live HTML with:
ruby scripts/render_pages.rb --in-place
You can render one page at a time:
ruby scripts/render_pages.rb --page publications
ruby scripts/render_pages.rb --page presentations
ruby scripts/render_cv_tex.rb
This reads _data/publications.yml and _data/presentations.yml, keeps the
layout from CV/CV_original.tex and CV/publication_original.tex, and writes:
CV/CV.tex
CV/publication.tex
The generated files are local CV artifacts because CV/ is ignored by
.gitignore.
ruby scripts/sync_inspire.rb
By default this queries literature records associated with INSPIRE author record 1818804,
merges them into _data/publications.yml, and caches raw API responses under
data_raw/inspire.
Useful options:
ruby scripts/sync_inspire.rb --query 'a O.Fukushima.1'
ruby scripts/sync_inspire.rb --author-id 1818804
ruby scripts/sync_inspire.rb --output _data/publications_inspire.yml
Manual display fixes can be placed in _data/publication_overrides.yml.
ruby scripts/sync_orcid.rb
The default ORCID iD is 0000-0001-7205-5324. You can override it with:
ruby scripts/sync_orcid.rb --orcid 0000-0001-7205-5324
ORCID_ID=0000-0001-7205-5324 ruby scripts/sync_orcid.rb
If ORCID requires an access token for your environment, set ORCID_ACCESS_TOKEN.