Communitygithub.com

VesperaZephyr/agent-skills

Habilidade para re-edição (re-typeset, não tradução) de alta fidelidade de livros de matemática em LaTeX, abrangendo metodologias de engenharia e armadilhas comuns.

O que é agent-skills?

Esta habilidade capacita o agente a realizar a re-edição (re-typeset) de obras matemáticas escaneadas/PDF em LaTeX compilável, pesquisável e com links funcionais. Ela cobre quatro categorias principais de livros-fonte: (1) Livros ocidentais do tipo Springer GTM (com contador compartilhado gtmitem, TikZ nativo, CRLF sem BOM, build com xelatex); (2) Livros chineses de matemática (com xeCJK + Fandol + classe própria, como 'Mathematical Analysis' de Xu Senlin); (3) Monografias ocidentais com paginação por capítulo (classe própria, como 'Abelian l-Adic Representations' de Serre); (4) Monografias de volume único com numeração contínua e numeração simples por seção (classe própria, como 'Algebraic Theory of Numbers' de Samuel). A habilidade fornece disciplinas rígidas (como linhas CRLF, UTF-8 sem BOM, zero erros de compilação), uma tabela de armadilhas de alta frequência, uma estratégia completa de referência cruzada em sete rodadas, critérios de aceitação (incluindo scripts de verificação para livros chineses, paginação por capítulo e volume único) e um conjunto de scripts de auditoria. Ela é baseada em projetos reais concluídos, como a re-edição completa de Conway (GTM 96) e Samuel, todos com zero erros de compilação e zero links quebrados. Não se aplica a projetos puramente de tradução (mathtranslation).

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/VesperaZephyr/agent-skills/tree/HEAD/latex-book-retypeset

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Habilidade de Re-edição (Re-typeset) de Livros de Matemática em LaTeX

Objetivo e Escopo

Metodologia de engenharia e repositório de armadilhas para re-edição de alta fidelidade de monografias matemáticas digitalizadas / em PDF para código-fonte LaTeX compilável, pesquisável e com links funcionais. Origens práticas:

  • Ocidental: Conway, A Course in Functional Analysis GTM 96, re-edição completa (436 páginas, 11 capítulos + 3 apêndices, 0 erros de compilação / 0 links quebrados / 1606 saltos internos).

  • Chinês: Xu Senlin, Xue Chunhua, Mathematical Analysis (Volume 1), re-edição completa (551 páginas, 6 capítulos + prefácio + referências, 40 arquivos-fonte de capítulo, 23 TikZs nativos, 0 erros / 0 caracteres ausentes / 0 referências indefinidas / 0 Overfull / Camada PDF ?? 0).

  • Paginação por Capítulo Ocidental: Serre, Abelian l-Adic Representations and Elliptic Curves, re-edição completa (203 páginas originais → 129 páginas, prefácio + 4 capítulos + dois conjuntos de referências + índice, paginação por capítulo I-1/II-42/B-5/Index-3, 0 erros / 0 referências não definidas / 0 labels duplicados, ambiente de declaração com numeração manual + biblatex sortkey bloqueando numeração original).

  • Volume Único com Numeração Contínua Ocidental: Samuel, Algebraic Theory of Numbers, re-edição completa (110 páginas de texto original → 104 páginas, numeração simples por seção Theorem 1/(1), referências [1]–[9], exercícios numerados por capítulo, links de índice V.2; 371 labels / 846 destinos de links internos / 922 anotações de links PDF / 110 Q.E.D., 0 erros / 0 links quebrados / cor de link medida (0,0,178)).

  • Aplicável: Re-edição de livro original (não tradução). Quatro rotas: ① Springer GTM com contador único (gtmitem compartilhado, numeração \thesection.\arabic{gtmitem}); ② Livro chinês com classe própria (xeCJK + Fandol, arquivos por capítulo + gerador de saída); ③ Monografia com paginação por capítulo e classe própria (\chapcode + redefinição de \thepage, ambiente de declaração com numeração manual); ④ Monografia de volume único com numeração contínua e numeração simples por seção e classe própria (contadores por palavra-chave + reset por seção, \folio bloqueando apenas início de parte). Gráficos seguem a divisão 'Ilustrações matemáticas comuns' abaixo: redesenho editável com TikZ nativo; uso fiel pode manter vector PDF original.

  • Não aplicável: Projetos puramente de tradução do tipo mathtranslation (pertencem à habilidade mathtranslation).

Quando Usar

  • Usuário diz "re-editae este livro", "coloque este PDF em LaTeX", "complete referências cruzadas", "conserte overfull", "numeração de equações deslocadas", "OCR bagunçado".
  • Assumir um projeto de re-edição, precisa estabelecer linhas vermelhas de disciplina antes de começar.
  • Compilação apresenta multiply defined / undefined references / numeração deslocada / muitos overfull.

Disciplinas Rígidas (Linhas Vermelhas, Confirmar Antes de Começar)

ItemRequisito
Fim de LinhaCRLF, UTF-8 sem BOM (todos .tex/.cls/.py)
Buildxelatex -interaction=batchmode main.tex × 3 (após mudar label, limpar aux × 4)
Linha Vermelha de Qualidade0 erros de compilação, 0 referências indefinidas, 0 caracteres ausentes, 0 overfull em novas seções
Fonte de ConteúdoBaseado na imagem PDF do livro original; OCR é apenas índice de pesquisa
Mudar ConteúdoApenas alterar o gerador (make_chNN_secM.py) → montar; nunca editar diretamente chapters/*.tex
NumeraçãoPrimeiro escolher rota conforme livro original: GTM usa contador compartilhado gtmitem; monografias com numeração manual ou provas podem usar número de exibição original + contador de âncora oculto. Não alterar numeração original por continuidade
EquaçõesEquações interlineares não numeradas usar \[\] / align*, ou equation\notag; Proibido numerá-las
GráficosPriorizar redesenho com TikZ/PGFPlots nativo; quando livro original tem vetor confiável, pode manter vetor PDF diretamente. Proibido converter vetor para PNG e depois alegar que é sem perdas; bitmap do livro original deve registrar limitações originais

Mapeamento de Páginas do Livro Original

Página física = Página do livro + offset (GTM96 offset = 15). Medir offset primeiro, todas as verificações posteriores contra o livro original devem usar a página física.

Ilustrações Matemáticas Comuns: Fidelidade, Legibilidade e Verificação Figura por Figura

Esta seção se aplica a curvas, superfícies, campos vetoriais, grades de coordenadas, orientação/fronteira, diagramas de facetas, etc.; diagramas de comutação continuam com a auditoria aresta por aresta na próxima seção. Usar o fluxo de reparo de ilustrações compartilhado pelas duas habilidades, não aplicar mecanicamente o recorte ou escala de um livro específico.

Primeiro, fazer um levantamento independente das figuras no livro original e na cadeia de build real, depois criar um registro figura por figura, anotando página física / recorte, número da figura, todas as subfiguras, tags, setas/orientação, ativos de origem, página PDF final e evidência de verificação. Mesmo número ou nome de arquivo não exclui a possibilidade de 'figura errada substituir a correta'; verificar figuras adjacentes, especialmente várias figuras na mesma página e legendas à esquerda/direita.

Priorizar a retenção de vetores confiáveis do livro original; quando necessário chinesificação, fonte uniforme ou reparo geométrico, redesenhar com TikZ/PGFPlots nativo. Antes de redesenhar, listar fatos matemáticos visíveis: relações de coordenadas/curvas, pontos finais de vetores, número de curvas de nível e valores, orientação, símbolos de fronteira, oclusão e projeção. Não alterar esses fatos por estética. Figuras complexas de superfície e campo não devem ser degradadas para diagramas aproximados de significado semelhante. Re-organizar subfiguras deve manter ordem de leitura, significado de proporção e relações de conexão.

Renderização de 400 DPI é apenas bitmap; verdadeira reutilização de vetor requer preservação de caminhos PDF, glifos, transparência e revisão de saída. A caixa delimitadora do pacote de desenho pode conter pontos de controle de curva ou estar sujeita a restrições de corte interno; não se pode cegamente tomar a união, nem interseccioná-la com o recorte como evidência de truncamento. Corte automático gera apenas candidatos; deve-se verificar visualmente a página original completa, o candidato, e a página final do livro. Manter setas finas, tags distantes, numeração de subfiguras e margem de segurança adequada.

O tamanho da figura é determinado pelo tamanho de fonte final e espaço da página; não há largura mínima/máxima uniforme para todo o livro; largura usar \linewidth local, manter proporção de aspecto. Figuras densas podem ser ampliadas ou reorganizadas, mas não reduzidas cortando bordas/tags. A entrega do livro inteiro deve ter correspondência de página final para cada figura; compilação bem-sucedida, 256 números de figura correspondendo a 256 arquivos, alta similaridade de pixel, nenhum substitui conteúdo, cobertura e verificação visual.

Diagramas de Comutação e Auditoria de Fidelidade de Setas

Esta seção refere-se especificamente a diagramas de comutação compostos por nós e morfismos, grades de sequências exatas, diagramas de pullback/pushout, etc.; ilustrações geométricas comuns, curvas e matrizes de equações seguem suas próprias regras. Usar tikzcd para desenhar ou auditar, não usar array para construir diagramas de setas por padrão. Ao encontrar manuscritos antigos, não procurar apenas tikzcd: executar o scripts/inventory_diagrams.py da habilidade de auditoria associada, cobrindo todos os arquivos-fonte que realmente participam do build, arquivos de entrada, notas de rodapé/apêndices e definições de macros; classificar candidatos um por um como diagrama de comutação, fórmula/tabela, macro a expandir ou pendente. Diagramas de seta em array/aligned/matrix/CD/xymatrix também devem ser incluídos; matrizes comuns não devem ser migradas mecanicamente por conter ambiente de matriz.

Para cada diagrama, estabelecer grade de nós e lista de arestas a partir do PDF do livro original e do manuscrito re-editado, depois comparar aresta por aresta: origem, destino, ponta de seta, gancho de injeção, ponta dupla/sinal de igual/linha sem ponta, linha sólida/tracejada, tags e lado, nós vazios e linhas zero. r/l/u/d são deslocamentos geométricos, não podem substituir julgamento de direção de mapeamento; verificar from/to explícito, opções de seta reversa, nós nomeados e expansão real de macros. Injeção deve realmente mostrar gancho no PDF final, sobrejeção deve mostrar ponta dupla. hook' apenas troca o lado do gancho, não inverte a seta; \hookrightarrow em tags também não muda o estilo da aresta. Verificar ordem de sobreposição de opções locais com \tikzcdset, every arrow/.style, macros personalizadas; configurações rightarrow posteriores podem apagar hook anterior. Compilação bem-sucedida e presença de hook no código-fonte não substituem verificação de extremidade.

Usar a imagem da versão publicada do livro original para determinar fatos visíveis de nós e arestas; TeX original, OCR, semântica matemática são apenas evidência auxiliar. Mapear páginas físicas do original e do manuscrito separadamente, não usar números de página de teoremas/provas para inferir diretamente a página do diagrama. Olhar estrutura do diagrama inteiro primeiro, depois ampliar para verificar gancho, ponta dupla, pontas de seta e corte; verificar tanto o arquivo pequeno isolado quanto a página final do livro.

Se não puder visualizar a imagem diretamente, primeiro confirmar o caminho da imagem local e ferramenta de visualização, depois tentar novamente; erro de caminho/ferramenta não equivale a o modelo não ter capacidade visual. Se ainda não puder visualizar, seguir o fluxo de verificação sem visão da habilidade associada: expandir grade a partir do código-fonte usando &/\\ de nível superior (manter nós vazios e processar macros aninhadas), verificar direção das arestas e estilos efetivos; na região de corte PDF confirmada, verificar extensão de texto e caminhos vetoriais/glifos, distinguindo três tipos de evidência: topologia de código-fonte, geometria PDF e inspeção visual direta. Falha ao extrair traço de ponta de seta do PDF não prova que o diagrama original não tem seta. Manter figuras, arestas, números de linha, páginas do livro original / posições de corte que não puderam ser confirmadas; esses detalhes devem ser marcados como pendentes, compilação bem-sucedida ou → do OCR não substituem verificação visual.

Referência Rápida de Armadilhas Principais

Tabela completa em references/pitfalls.md. Mais frequentes:

  • Armadilha de Texto Duplo em PDF: Livro original tem camada de texto oculto HiddenHorzOCR, get_text() mistura e produz caracteres bagunçados (Jf=ℋ, &i(=ℬ). Fórmulas devem ser verificadas visualmente renderizando get_pixmap.
  • Contador Compartilhado para Equações Numeradas: Equações interlineares numeradas usar gtmeq (avança contador); equações com número à esquerda em branco usar equation\notag (não avança). equation puro cai no contador equation e renderiza número de capítulo.
  • Claim Numerado por Capítulo: Capítulos 1/2 claim* sem número, Capítulos 3/4/9 claim com número.
  • Não Adicionar Tags de Ambiente por Semântica: Livro original tem muitos parágrafos soltos; envolvê-los em remark por engano consome números e eleva todos os itens seguintes.
  • Referências Cruzadas A–E (detalhes em references/crossref.md): \gtmtarget deslocado antes de \item, duas formas de bloco de exercícios, regex \S ferindo, substituição de espaço em lote + erro falso de .aux antigo, adicionar número de capítulo zero / \ref{} vazio.
  • Vazamento de \pagestyle{empty} (perda de cabeçalhos e números de página em todo o livro): Arquivo de página de rosto define \pagestyle{empty} mas nunca restaura, causando perda de cabeçalhos e números de página em todas as páginas subsequentes. \thispagestyle afeta apenas a primeira página; deve-se restaurar explicitamente \pagestyle{fancy} nas macros de início de capítulo/prefácio/bibliografia/índice (veja seção específica 'Monografia com Paginação por Capítulo' abaixo).

Seção Específica para Monografia com Paginação por Capítulo (Formato \chapcode)

Livros do tipo Serre reiniciam a numeração de página a cada capítulo e usam prefixo de capítulo (I-1…I-30, II-1…II-42, B-1…B-8, Index-1…Index-3). A classe própria tem uma categoria adicional de armadilhas em comparação com a rota de contador compartilhado GTM. Versão completa em references/chapcode-retypeset.md. Cinco mais frequentes:

SintomaCorreção
Páginas subsequentes sem cabeçalho nem número de páginaVazamento de \pagestyle{empty} em front/titlepages.tex; restaurar explicitamente \pagestyle{...} dentro de cada macro de cabeçalho (\chapterhead/\fmhead/bib/index), não apenas com \thispagestyle (afeta só a primeira página)
Formato de página é resetado por \pagenumberingKernel \pagenumbering{roman} redefine \thepage; separar 'formato de impressão' de 'contagem'; após cada \pagenumbering, reconstruir \thepage/\theHpage (este último = número de página impresso, para que âncora corresponda ao número de página)
Folio de pré-textual salta ou é impresso duas vezes\fmhead[folio#] só avança se o folio alvo > valor atual (só avança, nunca retrocede), evitando salto de página para frente
Numeração de declarações não corresponde ao originalLivro original tem numeração manual (com/sem número misturado, frequentemente reinicia): usar 'parâmetro de numeração manual + contador de âncora oculto', \begin{stmt}{LEMMA}{3}, sem número segundo parâmetro vazio
Numeração biblatex bagunça ordem originalTemplate de ordenação personalizado + campo sortkey para cada entrada, travando refnumber como original [1]–[88]
Imprimir por categoria perde exatamente o último item de cada categoriaChave } final de \addtocategory em nova linha → TeX lê nova linha como espaço, última chave vira xxx␠, biblatex não encontra entrada ao gravar no .aux. Correção: adicionar % no final da linha da última chave para suprimir quebra de linha. Primeiro verificar .aux por espaços no final de \abx@aux@category{...} (defernumbers=true não corrige)
Número de página no sumário é link quebradohyperref não gera destino page.<folio> para algumas páginas; usar \hyperref[<label da própria entrada>] (capítulo chap:I/seção sec:I.2/referência bib:main), com \@ifundefined{r@…} como fallback para \hyperlink{page.<folio>}

Quatro convenções de cabeçalho para livros com paginação por capítulo (verificar tipo por tipo conforme original, tabela completa em references/chapcode-retypeset.md): Corpo dos capítulos (páginas pares: título do livro; ímpares: título curto do capítulo), parte pré-textual (nome da seção substitui título do livro), referências principal/suplementar, índice (apenas número de página desnudo no lado externo).

Seção Específica para Monografia com Numeração Simples por Seção (Tipo Samuel)

Único volume, numeração arábica contínua, declarações numeradas por palavra-chave com contador, reiniciadas por seção, impressas desnudas, equações reiniciadas por seção impressas (1), referências [n], exercícios numerados por capítulo. Versão completa em references/samuel-style-retypeset.md. Nove mais frequentes:

SintomaCorreção
Numeração de declaração com nome deslocada (Proposition 3 impressa como 2)Wrapper de declaração deve incondicionalmente \refstepcounter, parâmetro opcional só imprime nome
Não corresponde à página digitalizada página por páginaNão forçar página por página; apenas ajustar \folio{n} no início de Capítulo/Supplement/Exercises/Bib/Index (só avança, nunca retrocede)
Cabeçalho deve mostrar intervalo de números de seção dentro da página\pagefirstsec + \afterpage para registrar primeira seção da página anterior; verso folio|título do capítulo|§§ c.a–c.b, reto reverso
Número de capítulo de referência externa é linkado erroneamente ([1], Algèbre, Chapter VI, Chapter V of [9])Excluir por três regras: vizinhança de [n] com Chapter, of [n], \emph{Algèbre}; primeiro proteger \divhead{Chapter X}
[n] nas referências não clicável\item[\textbf{[n]}] \phantomsection\label{bib:n}; corpo do texto \hyperref[bib:n]{[n]} (texto exibido travado)
Cadeia de referência de exercício quebradaDentro de \exitem \refstepcounter{exno} + \label{exer:cap.n}; \exchap{X} no início de cada capítulo para resetar; Review Problems usar R1/R2/R3 para evitar conflito com último capítulo
Itens de lista (1)(2) sem âncora\item\label{prop:c.s.i}; corpo do texto ainda escrever \hyperref[...]{(1)}, porque \ref do enumerate não inclui parênteses
Auditoria de referências desnudas com muitos falsos positivosBloquear parágrafos inteiros de \hyperref[...]{...} (balanceamento de chaves); bloqueio de \[...\] usar re.S
.aux reporta label não existe / cor do código-fonte não corresponde ao PDF\newlabel analisar com balanceamento (valor de entrada tem forma {{(1)}}); cor amostrar retângulo do link em 300 dpi, afirmar (0,0,178)

Build: se cls usar fontspec, pdflatex falha (fontspec requires XeTeX or LuaTeX); usar lualatex/xelatex; latexmk com fdb residual pode ainda chamar pdflatex, se necessário chamar diretamente.

Seção Específica para Livro Chinês (xeCJK)

A re-edição de livros de matemática chineses tem uma categoria inteira de armadilhas que livros ocidentais não encontram. Versão completa em references/cjk-retypeset.md. Cinco mais frequentes:

SintomaCorreção
Falha de parse de TikZ \draw/\fill/\path[domain=…] plot (…)Mudar para plot[smooth] coordinates{…}, coordenadas calculadas em Python por scripts/gen_tikz_curve.py e injetadas
Missing character: … (U+6685) in font FandolSongFandol total de caracteres raros ausentes; na cls adicionar \newCJKfontfamily\zmbhan{SimSun} como família de fallback, no corpo do texto 祖{\zmbhan 暅}
Linhas puramente CJK com 2–3pt Overfull, \hspace{0pt plus 3pt} ineficaz, plus 1fil causa espaço enorme\tracingparagraphs para diagnóstico primeiro; correção é local \begingroup\xeCJKsetup{CJKglue={\hskip 0pt plus 1pt}}…\endgroup para espaçamento uniforme flexível
Tags de escala densa sobrepostas (2n / 2n+1 / 2n+2)Seguir o original com layout 'descendente deslocado' ou 'linha oblíqua', não forçar em uma linha
Livro inteiro tem referências de texto puro \extref{6.3.2}Após a seção alvo ser gerada, preencher como 定理~\ref{thm:6.3.2}, e apenas alterar a fonte do gerador e re-gerar

Três 'fenômenos normais' facilmente confundidos com defeitos em livros chineses: xelatex fatal: memory exhausted (estresse de memória de curto prazo, re-executar resolve), página em branco no final do corpo do texto (\cleardoublepage dentro de \makebibliography, paridade com original é layout esperado), questão perdida por OCR cortar entre páginas (conferir página por página com a digitalização).

Conclusão de Referências Cruzadas (Sete Rodadas Progressivas)

Referências de texto codificadas diretamente (Theorem X.Y / (2.3) / Exercise N / Section N) → Estratégia completa de hiperlink \ref/\eqref, veja references/crossref.md: primeiro normalizar nomes de label (kind:c.s.i), adicionar labels sec:/exercise:, depois converter rodada por rodada: inter-capítulo → parêntese dentro do capítulo → número desnudo dentro do capítulo, compilar e verificar cada rodada.

Livros de volume único com numeração simples têm três objetos adicionais não cobertos por crossref.md: Referências [n] (âncora na linha do item, corpo do texto usa \hyperref[bib:n]{[n]}), Número de exercício por capítulo (exer:c.n, Review Problems usam prefixo R), Itens de lista (1)(2) dentro de declaração (\item\label{...}). Dois tipos devem permanecer como texto puro: o próprio número de capítulo de obras externas, e erros de digitação do livro original (ex: "§4, Proposition 2" mas a seção só tem Proposition 1 — manter texto impresso, link apontar para destino real e registrar em STATE.md). Detalhes em references/samuel-style-retypeset.md.

Habilidades de Auditoria Associadas (Instaladas, Chamar Sob Demanda)

  • latex-eq-numbering-audit — Verificar numeração de equações com o original item por item
  • latex-display-layout-audit — Layout de equações interlineares (over-wrap / falso alinhamento)
  • latex-footnote-fidelity-audit — Se todas as notas de rodapé foram implementadas
  • latex-ocr-math-defect-audit — Matemática silenciosamente corrompida pelo OCR
  • Habilidade de auditoria de diagramas de comutação — Inventário de candidatos de diagramas antigos, verificação de direção/gancho/ponta dupla aresta por aresta, verificação de sobreposição de estilo e fluxo de evidência sem visão
  • latex-bookmark-anchor-audit — Âncoras de marcadores PDF
  • mathtranslation — Compilação xelatex/biber e verificação visual (references/build-verify.md)

Critérios de Aceitação

Veja references/verification.md: 4 execuções com exit=0 após limpar aux; 0 erros / 0 duplicados / 0 indefinidos / 0 links quebrados; numeração de exercícios contínua por seção; conformidade CRLF/BOM; inconsistências de numeração no original manter como texto puro e auditar quantidade.

Livro chinês adicionais três itens (executar de uma vez com scripts/verify_cjk_book.py main.pdf --log main.log --bib-page N): Camada de texto PDF ?? em 0 lugares, Missing character em 0 lugares, referências preenchidas realmente resolvidas para números no PDF (não texto original).

Livro com paginação por capítulo item adicional: usar scripts/dump_page_heads.py main.pdf para despejar faixa de texto superior/inferior página por página, assegurar que cada página subsequente tem cabeçalho e número de página, cada primeira página não tem cabeçalho e número de página centralizado na base, e formato de página correto (I-2 / B-5 / Index-3 / algarismos romanos). Hiperlinks de número de página no sumário adicionais usar --check-toc-links para assegurar que todos os destinos nomeados page.* são resolvidos.

Livro de volume único com numeração simples adicionais dois itens: scripts/audit_internal_links.py assegurar que todos os destinos de \ref/\eqref/\pageref/\hyperref têm 0 ausentes (não verificar apenas \ref); scripts/check_link_color.py main.pdf --expect 0,0,178 usar amostragem de pixel para assegurar cor do link (colorlinks no código-fonte não conta como evidência). Escaneamento de referências desnudas usar scripts/audit_bare_xrefs.py, itens residuais devem ser julgados um por um como 'rótulo de lista / referência externa', não referência.

Scripts Principais

  • scripts/audit_text_refs.py: Escanear .tex listando referências codificadas ainda não \refificadas (lista de tarefas, não modifica arquivos).
  • scripts/rebuild_exercise_labels.py: Reconstruir com segurança exercise:c.s.i (dry-run por padrão, tratar corretamente \gtmtarget na mesma linha e blocos de exercícios manuais).
  • scripts/gen_tikz_curve.py: Sob cls xeCJK, plot[domain=…] não disponível; usar para calcular curvas paramétricas/cartesianas/polares como literais plot[smooth] coordinates{…} (--wrap para saída direta de \draw completa).
  • scripts/verify_cjk_book.py: Verificador final de livro inteiro (resíduos ?? / número de marcadores / destino de referências preenchidas / entradas de referência / caracteres ausentes), sai com exit=1 se qualquer barreira não for cumprida; rodar antes da entrega.
  • scripts/dump_page_heads.py: Verificador final de cabeçalho/número de página para livros com paginação por capítulo. Despejar faixa de texto superior/inferior página por página, reportar running head e folio de cada página; --check-toc-links adicionalmente assegura que todos os destinos nomeados page.* no sumário são resolvidos.
  • scripts/audit_internal_links.py: Verificar todos os \ref/\eqref/\pageref/\hyperref[...] contra main.aux (balanceamento de chaves \newlabel; automaticamente pular diretórios de backup work/bak/render/build), sair com exit=1 se houver faltas.
  • scripts/audit_bare_xrefs.py: Primeiro bloquear parágrafos inteiros de texto já linkado, matemática, \item[...]/\pdfbookmark[...] etc., depois enumerar Theorem 3 / (4) / [3] / exercise 8 desnudos, gerar contagens STMT/PAREN/FORM/BIB/EXERC.
  • scripts/check_link_color.py: Renderizar PDF, para cada retângulo de Link fazer histograma de pixels não-brancos, assegurar cor do texto do link; --expect 0,0,178 corresponde a blue!70!black, prevenindo sobrescrita por \hypersetup posterior.

Recursos

  • references/discipline.md — Consulta rápida de classes de documento / contadores, mapeamento de páginas, parâmetros de tipo de área de referência
  • references/pitfalls.md — Todas as armadilhas de livros ocidentais (OCR / equações numeradas / Claim / tags de ambiente / overfull / referências cruzadas A–E)
  • references/cjk-retypeset.md — Seção específica para livros chineses (curvas TikZ / fallback de caracteres ausentes / espaçamento flexível CJKglue / tags sobrepostas / preenchimento de extref / memory exhausted / bibliografia biber / ponto único de saída de geração)
  • references/chapcode-retypeset.md — Seção específica para monografia com paginação por capítulo (mecanismo de página \chapcode / vazamento de \pagestyle{empty} / quatro convenções de cabeçalho / declarações com numeração manual / bloqueio de sortkey biblatex / hiperlinks de número de página no sumário)
  • references/samuel-style-retypeset.md — Seção específica para monografia de volume único com numeração simples (numeração por palavra-chave / reiniciada por seção, \folio apenas no início de parte, intervalo de números de seção no cabeçalho, exclusão de número de capítulo de referência externa, âncoras bib:n e exer:, referência de itens de lista, parse balanceado de .aux, aceitação por pixel de cor de link)
  • references/crossref.md — Estratégia de conclusão de referências cruzadas em sete rodadas + algoritmo de reconstrução de exercícios + lista de texto puro a manter
  • references/verification.md — Comando de build, lista de aceitação, verificação CRLF/BOM
  • scripts/audit_text_refs.py — Escaneador de referências codificadas
  • scripts/rebuild_exercise_labels.py — Reconstrutor seguro de label de exercícios
  • scripts/gen_tikz_curve.py — Curvas paramétricas/cartesianas/polares → fragmento plot[smooth] coordinates{…}
  • scripts/verify_cjk_book.py — Verificador final de livro (camada PDF ?? / marcadores / destino de referências preenchidas / entradas de referência / caracteres ausentes)
  • scripts/dump_page_heads.py — Verificador final de cabeçalho / número de página + hiperlinks de número de página no sumário para livros com paginação por capítulo
  • scripts/audit_internal_links.py — Todos os destinos de links internos (\ref/\eqref/\pageref/\hyperref) verificados contra aux
  • scripts/audit_bare_xrefs.py — Enumeração de referências desnudas após bloqueio de texto já linkado (STMT/PAREN/FORM/BIB/EXERC)
  • scripts/check_link_color.py — Amostragem de pixel em retângulo de Link PDF, asseguir cor do link (padrão 0,0,178)

Coleção de Provas Relembradas em Chinês

Para provas de múltiplas instituições ao longo dos anos, cada prova com numeração de questão e pontuação independentes, re-edição enquanto revisa o enunciado, ler Seção específica para provas relembradas. Deve-se separar erros do revisor de erros da questão original; verificar se cabeçalhos e rodapés descartados pelo OCR escondem números de questão; ao não completar prova questão por questão, não escrever a triagem inicial como prova totalmente verificada.

Paralelização Limitada e Fonte OCR por Página

Para tarefas de livro inteiro que precisam reduzir o contexto de cada agente, consultar Subagentes limitados, fonte OCR por página e mapeamento de índice. Inclui propriedade de arquivos, transferência de agente interrompido, desduplicação de tabela de revisão, fonte matemática e escopo de declaração, aceitação de vinculação de hash de PDF, e métodos validados para movimentação de parágrafo entre páginas em rascunho de Ahlfors, reinício local de numeração de página em volume, múltiplos gráficos em um bloco, revisão final de agrupamento semântico de índice, conclusão de pontos duvidosos, revisão de nota de rodapé entre páginas e registro editorial de correções.

Habilidades Relacionadas