extract-tikz

📁 pedrohcgs/claude-code-my-workflow 📅 9 days ago
4
总安装量
3
周安装量
#51255
全站排名
安装命令
npx skills add https://github.com/pedrohcgs/claude-code-my-workflow --skill extract-tikz

Agent 安装分布

openclaw 3
claude-code 3
codex 3
kiro-cli 3
kimi-cli 3
cursor 3

Skill 文档

Extract TikZ Diagrams to SVG

Extract TikZ diagrams from the Beamer source, compile to multi-page PDF, and convert each page to SVG for use in Quarto slides.

Steps

Step 0: Freshness Check (MANDATORY)

Before compiling, verify that extract_tikz.tex matches the current Beamer source.

  1. Find the Beamer source: ls Slides/$ARGUMENTS*.tex
  2. Extract all \begin{tikzpicture} blocks from Beamer
  3. Compare with Figures/$ARGUMENTS/extract_tikz.tex
  4. If ANY difference exists: update extract_tikz.tex from the Beamer source
  5. If extract_tikz.tex doesn’t exist: create it from scratch

Step 1: Navigate to the lecture’s Figures directory

cd Figures/$ARGUMENTS

Step 2: Compile the extract_tikz.tex file

TEXINPUTS=../../Preambles:$TEXINPUTS xelatex -interaction=nonstopmode extract_tikz.tex

Step 3: Count the number of pages

pdfinfo extract_tikz.pdf | grep "Pages:"

Step 4: Convert each page to SVG using 0-BASED INDEXING

CRITICAL: PDF pages are 1-indexed, but output SVG files are 0-indexed!

PAGES=$(pdfinfo extract_tikz.pdf | grep "Pages:" | awk '{print $2}')
for i in $(seq 1 $PAGES); do
  idx=$(printf "%02d" $((i-1)))
  pdf2svg extract_tikz.pdf tikz_exact_$idx.svg $i
done

Step 5: Sync to docs/ for deployment

cd ../..
./scripts/sync_to_docs.sh $ARGUMENTS

Step 6: Verify SVG files

  • Read 2-3 SVG files to confirm they contain valid SVG markup
  • Confirm file sizes are reasonable (not 0 bytes)

Step 7: Report results

Source of Truth Reminder

TikZ diagrams MUST be edited in the Beamer .tex file first, then copied verbatim to extract_tikz.tex. See .claude/rules/single-source-of-truth.md.