latex-document について
学生、研究者、文書作成者向けの LaTeX 文書スキルです。テンプレートを使った文書作成やコンパイル、PDF 変換、フォーム処理に対応します。
主な機能
- 01LaTeX 文書の作成とコンパイル
- 02PDF ページプレビューの生成
- 03PDF と文書形式の変換
- 04個別文書の一括生成
- 05PDF フォームの入力と処理
活用シーン
- 01レポート、論文、ポスター、履歴書の作成
- 02既存 PDF の LaTeX 変換
- 03CSV または JSON から個別レターを生成
- 04既存 PDF フォームへの記入
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ndpvt-web/ latex-document-skill --skill latex-documentインストール後、Claude Code で/latex-documentを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.chktexrcREADME.mdassets/templates/academic-cv.texacademic-paper.texbook.texcheatsheet-code.texcheatsheet-exam.texcheatsheet.texconditional-document.texcover-letter.texexam.texfillable-form.texhomework.texinvoice.texlab-report.texlecture-notes.texletter.texmail-merge-letter.texposter-landscape.texposter.texpresentation.texreferences.bibreport.texresume-classic-ats.texresume-entry-level.texresume-executive.texresume-modern-professional.texresume-technical.texresume.texthesis.tex詳細
LaTeX 文書スキル
あらゆる LaTeX 文書を作成して PDF にコンパイルし、PNG プレビューを生成します。あらゆる種類の PDF を LaTeX に変換します。
ワークフロー:文書の作成
- 文書の種類(履歴書、レポート、手紙、請求書、記事、論文、アカデミック CV、プレゼンテーション、ポスター、試験、書籍、チートシート)を判断します
- 対象が IEEE ジャーナル/Transactions/IEEE の 2 段組論文の場合: テンプレートを選ぶ前に、references/ieee-journal-twocolumn-guide.md を読みます。動作する IEEEtran のベースラインとして
examples/ieee-twocolumn-sample.texを使用し、視覚的な参考資料としてexamples/ieee-twocolumn.png/examples/ieee-twocolumn-p1.png/examples/ieee-twocolumn-p2.pngを参照します。 - ポスターの場合: ポスターのサブワークフロー(以下のポスターのサブワークフローを参照)を実行してから、ステップ 5 に進みます。
- チートシート/リファレンスカードの場合: チートシートのサブワークフロー(以下のチートシート/リファレンスカードのサブワークフローを参照)を実行してから、ステップ 5 に進みます。
- 追加要素として何を希望するかユーザーに尋ねます(AskUserQuestion ツールを multiSelect で使用)。文書の種類に応じて、関連する選択肢を提示します:
- AI 生成画像 -- カスタムのイラスト、図、写真(generate-image スキルを使用)
- チャート/グラフ -- 棒グラフ、折れ線グラフ、円グラフ、散布図、ヒートマップ(pgfplots または matplotlib)
- フローチャート/図 -- プロセスフロー、アーキテクチャ、決定木(TikZ または Mermaid)
- 引用/参考文献 -- 学術的な参考文献、脚注、引用文献(BibTeX/biblatex)
- データを含む表 -- 比較表、財務データ、統計(booktabs)
- 透かし -- DRAFT、CONFIDENTIAL、または会社ロゴの背景
- シンプルな文書(カバーレター、請求書など)の場合、またはユーザーがすでに希望内容を具体的に指定している場合は、このステップを省略します。
assets/templates/から適切なテンプレートをコピーするか、ゼロから作成します- ユーザーの要件に基づいて内容をカスタマイズします
- ユーザーが選択した要素に基づいて外部アセットを生成します:
- AI 画像:
python3 <skill_path>/../generate-image/scripts/generate_image.py "prompt" --output ./outputs/figure.png - matplotlib のチャート:
python3 <skill_path>/scripts/generate_chart.py <type> --data '<json>' --output chart.png - Mermaid の図:
bash <skill_path>/scripts/mermaid_to_image.sh diagram.mmd output.png
- AI 画像:
- 5 ページ以上の文書の場合: コンパイル前に長文文書のアンチパターンのセクションを確認し、コンテンツ生成チェックリストを実行します。主なルール:箇条書きより文章を優先する、リスト全体を簡潔にまとめる、テキストモードでは
</>をエスケープする、セクションの形式に変化をつける、\newpageの使用を制限する、画像の幅を 0.75-0.85 textwidth にする。 scripts/compile_latex.shでコンパイルします(CJK/RTL、用語集、参考文献を自動検出します)- PNG プレビューをユーザーに表示し、PDF を納品します
ポスターのサブワークフロー
ユーザーがポスターを依頼した場合:会議のサイズプリセット(NeurIPS/ICML/CVPR/ICLR の寸法)、レイアウトの基本パターン(Traditional/BetterPoster/Visual-Heavy)、配色、タイポグラフィの基準を含む完全なワークフローについて、references/poster-design-guide.md を読みます。poster.tex(縦向き)または poster-landscape.tex(横向き)を使用します。AskUserQuestion で会議名/向き、レイアウトスタイル、配色をユーザーに尋ねてから、ステップ 5 に進みます。
チートシート/リファレンスカードのサブワークフロー
ユーザーがチートシート、リファレンスカード、または数式シートを依頼した場合:
- テンプレートの選択、コンテンツ量の目安、タイポグラフィのルール、PDF からチートシートを作成するパイプラインを含む完全なワークフローについて、references/cheatsheet-guide.md を読みます。
- テンプレートを選択します:
cheatsheet.tex(汎用、横向き 3 段組)、cheatsheet-exam.tex(試験用数式、縦向き 2 段組)、またはcheatsheet-code.tex(プログラミング用、横向き 4 段組)。 - ガイドのワークフローステップに従ってから、メインワークフローのステップ 5 に戻ります。
ワークフロー:メールマージ(パーソナライズされた文書を一括生成)
スクリプト/mail_merge.py を使用して、LaTeX テンプレートと CSV/JSON データソースから N 件のパーソナライズされた文書を生成します。テンプレート構文:単純な置換には {{variable}}、条件分岐やループには Jinja2(<< >>、<% %>)を使用します。例については assets/templates/mail-merge-letter.tex を参照してください。詳細なガイド:references/interactive-features.md。
ワークフロー:バージョン差分(latexdiff)
スクリプト/latex_diff.sh を使用して、変更履歴をハイライトした PDF を生成します。ファイル間の差分、Git リビジョン間の差分、複数ファイルの統合、カスタムマークアップスタイルに対応しています。詳細なガイド:references/interactive-features.md。
ワークフロー:文書形式の変換
スクリプト/convert_document.sh を使用して、Markdown、DOCX、HTML、LaTeX 形式間で変換します。詳細なガイド:references/format-conversion.md。
ワークフロー:PDF を LaTeX に変換
既存の PDF(手書きのノート、印刷されたレポート、法的文書)を LaTeX に変換します。パイプライン全体については、references/pdf-conversion.md を参照してください。
簡単な手順:PDF をページ画像に分割し(scripts/pdf_to_images.sh)、変換プロファイルを選択して、共有プリアンブルを作成し、スケーリング戦略を適用します。scripts/validate_latex.py で検証し、結合してコンパイルします。
スケーリング戦略:1~10 ページ=単一エージェント、11~20 ページ=半分に分割(エージェント 2 つ)、21 ページ以上=7 件単位のバッチパイプライン(run_in_background: true を指定するエージェント数は ceil(N/7))。
変換プロファイル(references/profiles/ 内):math-notes.md(数式、定理――美しいモードあり)、business-document.md(レポート、メモ)、legal-document.md(契約書、法令)、general-notes.md(手書き、複合コンテンツ)。
ワークフロー:PDF フォームへの入力
既存の PDF フォーム(入力可能なフォームフィールド付きのものと、画像ベースの入力不可のもの)に入力します。詳細なガイド:references/pdf-operations.md。
手順 1:フォームの種類を確認:
python3 <skill_path>/scripts/pdf_check_form.py form.pdf
入力可能なフォームの場合(フォームフィールドあり):
# Extract field metadata
python3 <skill_path>/scripts/pdf_extract_fields.py form.pdf field_info.json
# Create field_values.json with values for each field, then fill
python3 <skill_path>/scripts/pdf_fill_form.py form.pdf field_values.json output.pdf
入力不可のフォームの場合(フォームフィールドなし):
# Convert to images for visual analysis
bash <skill_path>/scripts/pdf_to_images.sh form.pdf ./tmp/pages
# Visually identify fields, create fields.json with bounding boxes
# Validate bounding boxes (+ optional validation image)
python3 <skill_path>/scripts/pdf_validate_boxes.py fields.json --image page_1.png --output validation.png --page 1
# Fill with text annotations
python3 <skill_path>/scripts/pdf_fill_annotations.py form.pdf fields.json output.pdf
ワークフロー:PDF の高度な操作
テキスト/表の抽出(pdfplumber)、OCR(pytesseract)、プログラムによる PDF 作成(reportlab)、透かしの追加、ページの回転/トリミング、メタデータの抽出、JavaScript ライブラリ(pdf-lib、pdfjs-dist)、バッチ処理については、references/pdf-operations.md を参照してください。
コンパイルスクリプト
# Basic compile (auto-detects engine)
bash <skill_path>/scripts/compile_latex.sh document.tex
# Compile + generate PNG previews
bash <skill_path>/scripts/compile_latex.sh document.tex --preview
# Compile + PNG in specific directory
bash <skill_path>/scripts/compile_latex.sh document.tex --preview --preview-dir ./outputs
# Force a specific engine
bash <skill_path>/scripts/compile_latex.sh document.tex --engine xelatex
bash <skill_path>/scripts/compile_latex.sh document.tex --engine lualatex
# Use latexmk for automatic multi-pass (recommended for complex documents)
bash <skill_path>/scripts/compile_latex.sh document.tex --use-latexmk --preview
# PDF/A output for thesis submissions and archival compliance
bash <skill_path>/scripts/compile_latex.sh document.tex --pdfa
# Verbose output for debugging compilation issues
bash <skill_path>/scripts/compile_latex.sh document.tex --verbose
# Quiet mode for batch/CI jobs (only errors shown)
bash <skill_path>/scripts/compile_latex.sh document.tex --quiet
# Clean auxiliary files only (no compilation)
bash <skill_path>/scripts/compile_latex.sh document.tex --clean
コンパイルフラグ
| フラグ | 説明 |
|---|---|
--preview | コンパイル後に各ページの PNG プレビューを生成します |
--preview-dir DIR | PNG の出力先ディレクトリ(デフォルト:.tex ファイルと同じ場所) |
--engine ENGINE | エンジンを指定します:pdflatex、xelatex、または lualatex |
--use-latexmk | コンパイルバックエンドとして latexmk を使用します(複数回の自動実行、参考文献、索引に対応) |
--verbose | コンパイル出力全体(すべてのエンジンログ)を表示します |
--quiet | エラー以外の出力をすべて抑制します |
--clean | 補助ファイル(.aux、.log、.bbl、.fdb_latexmk など)を削除して終了します |
--pdfa | PDF/A-2b 準拠の出力を生成します(pdfx パッケージを自動挿入) |
--auto-fix | よくあるコンパイルエラー(フロート配置、エンコーディング)を自動修正します |
コンパイルバックエンド
手動の複数回実行(デフォルト): 必要に応じて、エンジンを複数回実行し、参考文献/索引/用語集の処理も行います。従来の方法であり、latexmk がインストールされていなくても動作します。
latexmk(--use-latexmk): latexmk を使用して、依存関係に基づくコンパイルを自動で行います。参考文献、索引、用語集、相互参照を含む複雑な文書におすすめです。必要な実行回数は latexmk が自動的に判断します。latexmk が必要です(TeX Live に含まれています)。
ログのフィルタリング (texfot)
texfot がインストールされている場合 (TeX Live に同梱)、コンパイル出力は自動的にフィルタリングされ、関連する警告とエラーのみが表示され、ノイズの多いパッケージ読み込みメッセージは抑制されます。これはデフォルトの詳細度モードで適用されます。フィルタリングされていない出力を表示するには --verbose を使用し、エラー以外のすべての出力を抑制するには --quiet を使用します。
エンジンの自動検出: .tex ファイルが fontspec、xeCJK、または polyglossia を使用している場合、スクリプトは自動的に xelatex を使用します。luacode または luatextra を使用している場合は、lualatex を使用します。それ以外の場合はデフォルトで pdflatex になります。--engine で上書きできます。
スクリプトは、texlive (texlive-science、texlive-xetex、texlive-luatex、biber を含む) および poppler-utils が存在しない場合、自動的にインストールします。\bibliography{} (bibtex を実行)、\addbibresource{} (biber を実行)、\makeindex (makeindex を実行)、\makeglossaries (makeglossaries を実行) を自動検出し、正しい回数のパスを実行し、pdftoppm で PNG プレビューを生成し、補助ファイルをクリーンアップします。
スクリプト & ツールリファレンス
PDF ユーティリティ (暗号化、結合、最適化、ページ抽出、PDF から画像へ)、LaTeX 品質ツール (lint、文字数カウント、分析、パッケージチェック、引用)、コンパイルの自動修正、参考文献の取得、およびダイアグラムスクリプト (Mermaid、Graphviz、PlantUML) については、references/script-tools.md を参照してください。
テンプレート
assets/templates/ からコピーしてカスタマイズします。
履歴書テンプレート (ATS 対応の 5 つのオプション)
経験レベル、業界、ATS の要件に基づいて選択します。完全な ATS ガイダンスについては、references/resume-ats-guide.md を参照してください。
| テンプレート | 最適な用途 | 主な特徴 | ATS スコア |
|---|---|---|---|
resume-classic-ats.tex | 金融、法律、政府、あらゆる ATS ポータル | グラフィックなし、プレーンテキストのみ、最大限の解析安全性 | 10/10 |
resume-modern-professional.tex | テック、企業、一般的な専門職 | 控えめなカラーアクセント、クリーンなデザイン、優れた ATS + 人への訴求 | 9/10 |
resume-executive.tex | VP、ディレクター、C レベル (5~15 年以上) | 2 ページ、エグゼクティブサマリー、取締役職、P&L 重視 | 9/10 |
resume-technical.tex | ソフトウェア、データ、エンジニアリング職 | スキル優先のハイブリッド、プロジェクトセクション、技術スタックの強調 | 9/10 |
resume-entry-level.tex | 新卒、キャリア開始者 | 学歴優先、1 ページ、履修科目、活動 | 9/10 |
5 つのテンプレートはすべて ATS のルールに従っています: 単一列、グラフィック/画像なし、レイアウトに表を使用しない、標準のセクション見出し、連絡先情報は本文内 (ヘッダー/フッターではない)。
STEM 学生向けテンプレート
homework.tex-- 宿題/課題提出テンプレート (articleクラス、11pt)。解答の表示切り替え (\showsolutionstrue/\showsolutionsfalse)、カスタムの問題/解答環境、honor code セクション、fancyhdrヘッダー、amsmath+amssymb+amsthmの数式、listingsのコードハイライト (Python、Java、C++、Matlab スタイル)、(a)、(b)、(c) の小問用のenumitem、hyperrefに対応。\coursename、\assignmentnumber、\studentname、\studentid、\duedateでカスタマイズします。例題: 微積分、帰納法による証明、Python コーディング、行列代数、運動学、Java OOP。lab-report.tex-- STEM 実験レポートテンプレート (articleクラス、11pt)。不確かさと SI 単位用のsiunitx、データ可視化用のpgfplots、プロフェッショナルな表用のbooktabs、数式用のamsmath、fancyhdrヘッダー、図用のcaption+subcaptionに対応。構造化されたセクション: 要旨、理論、手順、データ/結果 (不確かさの表付き)、分析 (pgfplots グラフ)、考察 (誤差分析)、結論、参考文献、付録。例: 誤差伝播を伴う振り子の周期測定。
その他のテンプレート
lecture-notes.tex-- 美しい講義ノート(scrartclKOMA-Script クラス)。Palatino フォント、microtypeによる組版、色分けされたtcolorboxの定理環境(青は定理、緑は定義、オレンジは例、紫は補足)、TikZ のグラフ理論用図表スタイルとマクロ(\CompleteGraph、\CycleGraph、\PathGraph)、titlesecによるスタイル付きセクション見出し、fancyhdrのヘッダー、hyperref+cleverefによるナビゲーションを備えています。手書きの数学・科学のノートを美しい PDF に変換するのに最適です。グラフ理論用のカスタムコマンド(\V、\E、\deg、\chr)も含まれています。美しいモードで数学ノート変換プロファイルに使用されます。thesis.tex-- 論文・博士論文用テンプレート(bookクラス)。タイトルページ、宣誓書、要旨、謝辞、目次、図目次・表目次、章、付録、参考文献を備えています。前付けにはローマ数字、本文にはアラビア数字を使用します。定理環境も含まれています。academic-cv.tex-- 複数ページの学術 CV。論文(学術誌・学会・プレプリントの各セクション)、研究助成金・資金、教育、指導(在籍中・卒業済みの学生)、受賞歴、専門活動、招待講演を掲載できます。ORCID と Google Scholar のリンクも含まれています。book.tex-- 書籍全体のテンプレート(bookクラス)。半タイトルページ、タイトルページ、著作権ページ、献辞、序文、謝辞、目次、図目次・表目次、部、章、付録、参考文献、索引を備えています。章見出しのカスタマイズ、エピグラフ、fancyhdr、microtype に対応しています。poster.tex-- 学会ポスター(tikzposterクラス、A0 縦向き)。2 列レイアウト、QR コード、5 種類の配色、tikzfigure のグラフ、表、色付きボックスのハイライトを備えています。コメントアウトされた #BetterPoster レイアウトのバリエーション(中央の大型パネル + サイドバー)も含まれています。ほとんどの学会では縦向きが標準です。学会のサイズプリセットについてはポスターデザインガイドを参照してください。poster-landscape.tex-- 横向きの学会ポスター(tikzposterクラス、A0 横向き)。3 列(30/40/30)のレイアウト、QR コード、テック系パープルの配色を備えています。CS/ML 系の学会(NeurIPS、ICML、CVPR、ICLR)向けです。CVPR/NeurIPS のカスタムサイズ用にコメントアウトされた\geometry{}プリセットも含まれています。cheatsheet.tex-- 汎用リファレンスカード(extarticleクラス、A4 横向き、基本フォントサイズ 7pt)。3 列のmulticolsレイアウト、色付きセクションボックスのtcolorbox、詰めた行間を備えています。コマンドリファレンス、概念の要約、クイックリファレンスガイド向けです。両面印刷に対応しています。cheatsheet-exam.tex-- 試験用公式集(extarticleクラス、A4 縦向き、基本フォントサイズ 6pt)。2 列レイアウト、最大限の情報密度、白黒プリンター対応のデザインです。公式、定理、定義をまとめた大学試験の「持ち込み可能なチートシート」向けです。片面印刷用に最適化されています。cheatsheet-code.tex-- プログラミング用リファレンスカード(extarticleクラス、A4 横向き、基本フォントサイズ 7pt)。4 列レイアウト、mintedによる構文強調表示、等幅フォントを強調したデザインです。言語構文、API リファレンス、CLI コマンド、キーボードショートカット向けです。letter.tex-- 色付きのレターヘッドバー、TikZ のロゴプレースホルダー、会社情報、宛先ブロック、日付、件名、署名を備えた正式なビジネスレターです。プロフェッショナルな企業向けの外観です。exam.tex-- 試験・小テスト(examクラス)。採点表、複数の問題形式(選択式、正誤式、穴埋め式、組み合わせ式、短答式、論述式)、配点、\printanswersによる解答表示の切り替えを備えています。report.tex-- 目次、ヘッダー・フッター、データ表、棒グラフ(pgfplots)、プロセスフローチャート(TikZ)、提言を備えたビジネスレポートです。cover-letter.tex-- 差出人・宛先ブロックを備えたプロフェッショナルなカバーレターです。invoice.tex-- 会社ヘッダー、明細表、小計・税額・合計を備えた請求書です。academic-paper.tex-- 要旨、セクション、参考文献、図を備えた研究論文です。BibTeX 引用用のサンプル.bibファイル(references.bib)も含まれています。examples/ieee-twocolumn-sample.tex--\documentclass[journal,10pt]{IEEEtran}を使用した IEEE Transactions/学術誌のサンプルです。要旨、キーワード、1 段組みの図、1 段組みの表、ページ幅いっぱいの表、数値形式の参考文献を含みます。references/ieee-journal-twocolumn-guide.md と併用してください。プレビュー PNG:examples/ieee-twocolumn.png、examples/ieee-twocolumn-p1.png、examples/ieee-twocolumn-p2.png。presentation.tex-- タイトルスライド、コンテンツフレーム、段組みを備えた Beamer プレゼンテーションです。fillable-form.tex-- ハイパーリンク形式のフォームフィールド(テキスト入力、チェックボックス、ラジオボタン、ドロップダウン、プッシュボタン)を備えた入力可能な PDF フォーム(articleクラス)です。tabularxによる 2 列レイアウトを採用しています。カスタムの\FormField、\FormCheck、\FormDropdownヘルパーコマンドを使用します。フォームを完全にサポートするには Adobe Reader が必要です(ブラウザーの PDF ビューアーではフォーム機能が制限されます)。conditional-document.tex-- etoolbox の切り替えシステムを備えた設定可能なドキュメント(articleクラス)です。目次、付録、透かし、ドラフトモード、機密表示、要旨の表示・非表示を切り替えられます。\providecommandによるテンプレート変数(タイトル、著者、組織、バージョン)を使用します。3 種類のビジュアルプロファイル(企業向け、学術向け、ミニマル)を備えています。CI/CD でのコマンドライン変数の受け渡しに対応しています。mail-merge-letter.tex--scripts/mail_merge.pyで使用する、{{variable}}プレースホルダー付きの差し込み印刷用レターテンプレートです。企業ブランドのレターヘッド、宛先住所ブロック、データに基づいてパーソナライズされる本文を備えています。CSV/JSON のデータソースと組み合わせて使用してください。resume.tex-- 従来型の履歴書テンプレート(写真欄と表を使用しているため、ATS 向けに最適化されていません) 使用方法:
cp <skill_path>/assets/templates/resume-classic-ats.tex ./outputs/my_resume.tex
# Edit content, then compile
bash <skill_path>/scripts/compile_latex.sh ./outputs/my_resume.tex --preview --preview-dir ./outputs
ドキュメントの種類の選択
| ユーザーのリクエスト | テンプレート | ドキュメントクラス |
|---|---|---|
| 履歴書、CV(ATS対応) | resume-classic-ats.tex | article |
| 履歴書(モダンなデザイン) | resume-modern-professional.tex | article |
| 履歴書(シニア/エグゼクティブ向け) | resume-executive.tex | article |
| 履歴書(技術/エンジニアリング向け) | resume-technical.tex | article |
| 履歴書(新卒向け) | resume-entry-level.tex | article |
| 宿題、課題、問題集 | homework.tex | article |
| 実験レポート、実験記録 | lab-report.tex | article |
| 講義ノート、数学ノート(美しいデザイン) | lecture-notes.tex | scrartcl |
| 学位論文、博士論文 | thesis.tex | book |
| アカデミックCV(出版物、助成金) | academic-cv.tex | article |
| レポート、分析 | report.tex | article |
| カバーレター | cover-letter.tex | article |
| 請求書 | invoice.tex | article |
| 学術論文 | academic-paper.tex + references.bib | article |
| IEEEジャーナル、IEEE Transactions、IEEEの2段組論文 | examples/ieee-twocolumn-sample.tex + ieee-journal-twocolumn-guide.md | IEEEtran |
| 書籍 | book.tex | book |
| 学術ポスター(縦向き) | poster.tex | tikzposter |
| 学術ポスター(横向き) | poster-landscape.tex | tikzposter |
| カンペ、リファレンスカード | cheatsheet.tex | extarticle |
| 試験用公式シート、カンペ | cheatsheet-exam.tex | extarticle |
| プログラミング用リファレンスカード | cheatsheet-code.tex | extarticle |
| 正式なビジネスレター | letter.tex | article |
| 試験、小テスト、テスト | exam.tex | exam |
| スライド、プレゼンテーション | presentation.tex | beamer |
| 入力可能なPDFフォーム | fillable-form.tex | article |
| 条件付き/設定可能なドキュメント | conditional-document.tex | article |
| メールマージ、一括レター | mail-merge-letter.tex + scripts/mail_merge.py | article |
| バージョン差分(latexdiff) | scripts/latex_diff.sh を使用し、interactive-features.md を参照 | さまざま |
| PDFからLaTeXへの変換 | プロファイルを選択し、pdf-conversion.md を参照 | さまざま |
| 形式の変換 | scripts/convert_document.sh を使用し、format-conversion.md を参照 | さまざま |
| CSV/JSONからのメールマージ | scripts/mail_merge.py を使用し、interactive-features.md を参照 | さまざま |
主なLaTeXパターン
特殊文字のエスケープ
常にエスケープします:% → \%、$ → \$、& → \&、# → \#、_ → \_
テキストモードでの山括弧: T1エンコーディングでは、LaTeXのテキストモードで<と>は使用できません。逆疑問符(¡または¿)として表示されます。必ず数式モードまたはテキストコマンドを使用してください:
<5%→$<$5\%または\textless 5\%>50→$>$50または\textgreater 50<$300→$<$\$300>=→$\geq$、<=→$\leq$
これは、生成されたLaTeXで最もよくあるサイレントエラーの1つです。ドキュメントはエラーなしでコンパイルされますが、PDFには文字化けが表示されます。
日付の範囲にはエンダッシュを使用します:2019--2025(ハイフン2つ)。
標準プリアンブル
\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage{hyperref}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{tabularx}
\usepackage{colortbl}
\usepackage{enumitem}
\usepackage{titlesec}
コードパターン(必要に応じて読み込む)
すぐに使えるLaTeXコードスニペット(表、グラフ、フローチャート、参考文献、透かし、横向きページ、多言語、画像、Mermaid図、matplotlibグラフ、CSV表、AI画像、入力可能なフォーム、条件付きコンテンツ、メールマージ、バージョン差分)については、references/code-patterns.md をお読みください。
レポートの視覚要素
レポートを作成する際は、手順4でユーザーが選択した補足要素を使用してください。視覚要素ツール(グラフ、フローチャート、AI画像、表、タイムライン)のクイックリファレンス表とサイズ設定のガイドラインについては、references/advanced-features.md を参照してください。図がフロートしないように、floatパッケージの\begin{figure}[H]を使用してください。TikZ図の幅はwidth=0.8\textwidth以下にしてください。
リファレンスガイド(必要に応じて読み込む)
LaTeX のパターン、コンパイルの問題、またはドキュメントの品質について不明な点がある場合は、この表を参照し、関連するファイルを読み込んでください。
| トピック | ファイル | 読むタイミング |
|---|---|---|
| 長文作成のベストプラクティス | long-form-best-practices.md | 5ページ以上の文書では必読:9つのアンチパターン、レポートの前置き、コンテンツ生成チェックリスト |
| コードパターン(LaTeX スニペット) | code-patterns.md | すぐに使える LaTeX コード:表、チャート、フローチャート、参考文献、透かし、横向きレイアウト、多言語、画像、フォーム、差し込み印刷、差分 |
| スクリプトとツールのリファレンス | script-tools.md | PDF ユーティリティ(暗号化、結合、最適化、抽出)、LaTeX 品質ツール(lint、単語数、分析)、コンパイルの自動修正、参考文献、図 |
| 参考文献/引用 | bibliography-guide.md | BibTeX/biblatex、引用スタイル、.bib 形式 |
| 高度な機能と視覚要素 | advanced-features.md | 透かし、横向きレイアウト、多言語、コード、アルゴリズム、tcolorbox、siunitx、高度なチャート、AI 画像、視覚要素のリファレンス表 |
| Mermaid 図 | mermaid-diagrams.md | フローチャート、シーケンス図、クラス図、ER 図、ガントチャート、円グラフ、マインドマップ |
| Python チャート(matplotlib) | python-charts.md | 棒グラフ、折れ線グラフ、散布図、円グラフ、ヒートマップ、箱ひげ図、ヒストグラム、面グラフ、レーダーチャート |
| 形式変換(Pandoc) | format-conversion.md | Markdown/DOCX/HTML と LaTeX 間の変換 |
| 表と画像 | tables-and-images.md | 色付きの行、複数行/複数列、booktabs、長い表、画像、TikZ |
| チャートとグラフ(pgfplots) | charts-and-graphs.md | pgfplots の折れ線グラフ、棒グラフ、散布図、円グラフ |
| IEEE ジャーナルの2段組み組版 | ieee-journal-twocolumn-guide.md | IEEEtran のジャーナルレイアウト、フロートのルール、XeLaTeX と pdfLaTeX の比較、参考文献、Markdown から IEEE 形式へのワークフロー、examples/ieee-twocolumn*.png のサンプル PNG |
| LaTeX パッケージ | packages.md | 一般的なパッケージのリファレンス |
| ポスターデザインガイド | poster-design-guide.md | 学会用サイズのプリセット、タイポグラフィ、配色、レイアウトの類型、コンテンツのガイドライン |
| 履歴書の ATS ガイド | resume-ats-guide.md | ATS のルール、LaTeX の落とし穴、キーワード |
| PDF から LaTeX へのパイプライン | pdf-conversion.md | 変換パイプライン全体、拡大縮小の戦略、ワーカーエージェント、検証 |
| インタラクティブ機能 | interactive-features.md | 入力可能な PDF フォーム、条件付きコンテンツ、CSV/JSON からの差し込み印刷、latexdiff によるバージョン追跡 |
| チートシートのデザイン | cheatsheet-guide.md | テンプレートの選択、タイポグラフィ、密度の最適化、PDF からチートシートへのパイプライン |
| PDF からチートシートを作成するプロンプト | pdf-extraction-prompts.md | 抽出段階で使う LLM プロンプト:構造分析、分野別の抽出、圧縮、書式設定 |
| 視覚パッケージ(TikZ) | visual-packages.md | インストール済みの TikZ/可視化パッケージ24種と実用例 |
| Graphviz と PlantUML | graphviz-plantuml.md | .dot から PDF/PNG への変換、.puml から PDF/PNG への変換、LaTeX との統合 |
| デバッグとエラー | debugging-guide.md | LaTeX エラーの読み方、よくある20個のエラー、.log の分析、エラーが表示されない失敗 |
| アクセシビリティと PDF/A | accessibility-guide.md | 学位論文向け PDF/A、スクリーンリーダー向け PDF/UA、タグ付き PDF、代替テキスト |
| Beamer プレゼンテーション | beamer-guide.md | テーマ、オーバーレイ/アニメーション、コードのスライド、配布資料、発表者ノート |
| フォントの選択 | font-guide.md | フォントファミリー、fontspec、数式フォント、fontawesome5、microtype、CJK |
| コラボレーションと CI/CD | collaboration-guide.md | LaTeX での Git、GitHub Actions、Docker、複数著者のワークフロー |
| PDF 操作 | pdf-operations.md | フォーム入力(入力可能/入力不可)、テキスト/表の抽出(pdfplumber)、OCR(pytesseract)、プログラムによる PDF 作成(reportlab)、透かし、回転/トリミング、メタデータ、JavaScript(pdf-lib、pdfjs-dist)、バッチ処理、パフォーマンスのヒント |
重要な注意事項とよくある間違い
コンパイルと出力
- コンパイルスクリプトは、.tex ファイルがあるディレクトリから実行するか、絶対パスを使用してください
- ユーザーが確認できるよう、出力される .tex ファイルは
./outputs/に配置してください - コンパイル後、PNG プレビュー画像を読み込んで、文書の見た目をユーザーに示してください
- PNG プレビューには
poppler-utilsが必要です(スクリプトによって自動インストールされます)
パッケージ依存関係のエラー(必読)
これらを使うと Undefined control sequence が発生するため、必ず必要なパッケージを読み込んでください:
| 使用する場合… | 必ず読み込むもの | 読み込まない場合のエラー |
|---|---|---|
\rowcolor{} | \usepackage{colortbl} | Undefined control sequence \rowcolor |
natbib を使った .bib 内の \url{} | \usepackage{url} | Undefined control sequence \url |
\checkmark | \usepackage{amssymb} | Undefined control sequence \checkmark |
\begin{figure}[H] | \usepackage{float} | Unknown float option H |
\rowcolors{}{}{} | \usepackage[table]{xcolor} または \usepackage{colortbl} | Undefined control sequence |
hyperref パッケージ
- 通常の文書では
hyperrefを使用しても問題ありません(ほとんどのテンプレートで使われています)。 - 定理環境を含む PDF から LaTeX に変換した文書 では、
\set@colorエラーが発生するため、使用を避けてください。
コンパイル環境
- texlive がインストールされていない場合、コンパイルスクリプトが自動でインストールします。texlive のインストールが完了する前に、複数のコンパイルコマンドを並行して実行しないでください。同時にインストールが試みられ、dpkg のロック競合が発生します。先に一度インストールするか、コンパイルを順番に実行してください。
- コンパイルスクリプトは
-interaction=nonstopmode(-halt-on-errorではありません)を使用し、警告があっても PDF が生成されるようにしています。これは意図的な設定です。多くの文書では初回に警告が出ても、後続の実行で解消されます。 - latexmk と texfot は TeX Live に含まれています。セットアップスクリプト(
setup.sh)で利用可能かどうかを確認します。--use-latexmkが渡された場合は latexmk が使用され、texfot は利用可能な場合に自動で使用されます(デフォルトの詳細度モード)。 - 生成された LaTeX 文書の lint 時に、よくある誤検出を抑制する
.chktexrc設定ファイルがスキルのルートに含まれています。latex_lint.shスクリプトはこれを自動で使用します。
長文文書のアンチパターン
5 ページ以上の文書(レポート、論文、書籍)を作成する場合は、references/long-form-best-practices.md を読み、9 つの重要なアンチパターン、レポートのプリアンブルに関するベストプラクティス、コンテンツ生成チェックリストを確認してください。長文文書を生成する前に必ず読んでください。