日本語の文章を「一読で意味が取れる」状態に明晰化するスキル。 「わかりやすく直して」「読みやすくして」「読みにくいので整えて」「AIっぽさを消して」 「ドキュメントを推敲して」「冗長な日本語を削って」「文章を明晰化して」などで発動する。 対象は技術記事・README・設計書・社内ドキュメント・ブログの説明文など説明的な日本語の本文。 対象外はコード本体・SNS の短文・小説や詩などの創作・法務/医療/論文の厳密文。 二重否定・長い連体修飾・「の」の連鎖・過剰な名詞化・冗長表現・埋もれた列挙、 さらに「重要なのは〜」「掘り下げる」などの LLM 定型句や、段落レベルの言い換え反復といった 「日本語ネイティブでも読解負荷の高い構文」を削ぎ落とすことが目的。 声・立場・個性は足さず、明晰さ(明晰=澄んで分かること)だけを目的とする。
jp-pdf
日本語Markdownを配色付きのオフラインPDFに変換するスキル。「PDF化して」「PDFにして」「PDFを生成」「markdownをPDF」「日本語PDF」等で発動。IPAゴシック+pandoc/xelatex(Chrome・Google不使用)、SVG図の埋め込み、色付き見出し・コールアウト引用・縞模様テーブルに対応。
含まれるファイル(4)
- SKILL.md6.3 KB
- assets/style.tex2.3 KB
- scripts/build_pdf.py8.6 KB
- scripts/svglib.py5.6 KB
SKILL.md(原文)
インストールする前に、エージェントに与えられる指示の中身を確認できます。
jp-pdf — 日本語Markdown → 配色付きオフラインPDF
Markdown を、日本語が綺麗に組まれた配色付き PDF に変換する。生成経路は pandoc → xelatex のみで、Chrome や外部サービスを使わない(外部通信ゼロ)。
<SKILL_DIR> はこの SKILL.md があるディレクトリの実パスに読み替える。
いつ使うか
- 「この Markdown を PDF にして」「研究計画書を PDF 化して」等の依頼。
- 日本語ドキュメント(設計書・提案書・レポート)を配布用の体裁で出したいとき。
前提ツール(すべてローカル/オフライン)
| ツール | 用途 | 導入例 |
|---|---|---|
| pandoc | Markdown→LaTeX→PDF | brew install pandoc |
| xelatex (TeX Live) | 日本語対応PDFエンジン | MacTeX / TeX Live |
| rsvg-convert (librsvg) | SVG図→ベクターPDF | brew install librsvg |
| IPAexGothic フォント | 日本語本文 | ~/Library/Fonts/ipaexg.ttf |
| ghostscript (gs) | プレビュー(PNG) | brew install ghostscript |
不足時は build スクリプトが名前を挙げて停止する。
基本の手順
-
入力 Markdown を用意(既存ファイルでよい)。図が無ければこの1手で完了。
-
ビルドを実行:
python3 "<SKILL_DIR>/scripts/build_pdf.py" \ --input path/to/doc.md \ --output path/to/doc.pdf \ --title "ドキュメント表題" \ --running-title "ヘッダに出す短い題" --doc-tag "研究計画書" \ --toc --preview -
--previewを付けると1ページ目をdoc_p1.pngに出す。gsで任意ページを PNG化して目視確認する:gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=png16m -r120 \ -dFirstPage=1 -dLastPage=3 -sOutputFile=out-%02d.png doc.pdf
図(ASCII図 → SVG)を入れる場合
本文中の ASCII 図を、見やすい SVG 図に差し替えられる。原稿 .md には ASCII を
残したまま、PDF ビルド時だけ画像に差し替える方式(原稿はエディタで読めるまま)。
-
<SKILL_DIR>/scripts/svglib.pyを import して作図スクリプトを書く。雛形は<SKILL_DIR>/../../examples/gen_diagrams.py(svglib を import して使う)。 角丸ボックスbox()・矢印arrow()・ラベルlabel()・チップchip()を組む。 -
生成した SVG を
assets/に置く。 -
「どの ASCII フェンスをどの SVG に差し替えるか」を
figures.jsonで対応づける (雛形はexamples/figures.example.json):[ {"sig": "フェンス内に必ず含まれる一意な文字列", "svg": "pipeline.svg", "caption": "図:…"} ] -
ビルドに
--assets assets --figures figures.jsonを渡す。該当フェンスはに置換され、SVG は自動でベクターPDF化される。
設計上の要点(この手順で踏んだ落とし穴)
- 完全オフライン:Chrome/HTML 経路は使わない。pandoc→xelatex がローカル完結する ため、テレメトリや外部リソースのフェッチが発生しない。
- フォント:IPAexGothic は単一ウェイトのため、太字は
AutoFakeBoldで擬似化する (build スクリプトが既定で付与)。 - 配色:
<SKILL_DIR>/assets/style.texが担う。ティール系で、色付き見出し+下線罫、tcolorboxによるコールアウト引用(>ブロック)、rowcolorsの縞テーブル、fancyhdrのヘッダ/フッタ、タイトル上下の罫線。 - SVGの枠はみ出し:
textLength(引き伸ばし指定)は rsvg-convert の PDF出力で 無視される(PNGでは効くので見落としやすい)。svglibは代わりにフォントサイズ を実寸で縮めて収める(fitfs)。作図時はこのbox()/label()を使えば安全。 - 字形置換:IPAexGothic に無い
✕・≈はビルド時のみ×・≒に置換する (既定。原稿は不変)。他に欠字警告が出たら--glyph-subs "字=代替,…"を足す。 - ラベルとボックスの重なり防止:自由配置の
label()を、ボックスの縦範囲(y〜y+h)と 横範囲が交差する座標に置かない。矢印に添える名前は矢印の上の短い語だけにし、 説明文はボックス行の下に専用の帯(縦方向のゾーン)を確保して置く。ゾーン同士は 16px 以上離す。長文ラベルはmaxwを必ず指定して縮小させる。 - 検証(必須):ビルド前に SVG 自体を
rsvg-convert -o check.pngで PNG 化して目視し、 文字と枠・矢印の重なりがあれば直してから組み込む。ビルド後もgsでページを PNG 化し、 図が枠に収まっているか・記号が出ているかを目視する。重なりが残ったまま完成としない。
build_pdf.py の主なオプション
--input --output(必須)/--assets DIR/--figures JSON/--title/
--running-title/--doc-tag/--style style.tex(既定は同梱)/--font(既定 IPAexGothic)/
--fontsize(既定 10pt)/--margin(既定 16mm)/--img-width(既定 88%)/
--toc/--preview/--glyph-subs "a=b,c=d"。
デモ(同梱サンプル)
examples/ に汎用サンプル一式が入っている。次で一巡を試せる。
python3 "<SKILL_DIR>/../../examples/gen_diagrams.py" "<SKILL_DIR>/../../examples/assets"
python3 "<SKILL_DIR>/scripts/build_pdf.py" \
--input "<SKILL_DIR>/../../examples/sample.md" \
--output sample.pdf \
--assets "<SKILL_DIR>/../../examples/assets" \
--figures "<SKILL_DIR>/../../examples/figures.example.json" \
--title "月次レポート自動化の検討メモ" --toc --preview
レビュー
まだレビューはありません。使ってみた感想をお寄せください。
同じリポジトリのスキル
概要と使いどころ
日本語を主対象とする資料から選択式の問題を 1 ページのフォームで出し、採点結果を学習履歴に残し、解説を絵解きノート(HTML)とテキストブック(PDF)に蓄積し、書き手向けの還流レポートを作るスキル。「理解度を確認して」「この資料でクイズして」「読めているかテストして」「内容を復習したい」などで発動する。
日本語の文書を、公的ガイドライン準拠の「やさしい日本語」に書き換えるスキル。 「やさしい日本語にして」「やさしい日本語に翻訳して」「外国人にもわかるように書いて」 「平易な日本語にして」「N4レベルの日本語にして」「easy Japanese にして」などで発動する。 「やさしい日本語かチェックして」「判定だけして」「スコアを出して」なら書き換えずに判定だけ行う。 対象はお知らせ・案内・手続き説明・マニュアルなど、在留外国人や日本語学習者にも 読んでほしい説明文。根拠は「在留支援のためのやさしい日本語ガイドライン」 (出入国在留管理庁・文化庁、2020)。二重否定・受身・推測表現・敬語・表記を textlint と prh 辞書で機械検出し、語彙レベル(既定 N4 相当・推定値)を同梱リストで機械判定する。 明晰化(meiseki)とは対象読者が違う。日本語ネイティブ向けの推敲は meiseki を使う。