skills/ljg-present/SKILL.md
演讲铸造器(Outline-Faithful)。基于 orgmode/markdown outline 层级 1:1 视觉化呈现——色块大字、ultra-bold 错位,原文不动只做美化。三档主题色 black/red/yellow(默认 black 或按 filetags 推断),可用 -r/-b/-y 显式覆盖;可用 --cyber 走黑底绿字 cyber-hacker 风。使用时用户会说:'讲这个'、'present'、'做成演讲'、'呈现一下'、'铸成演示'、'做个 slides'、'标语流'、'宣言体'、'slogan'、'manifesto'、'按 outline 美化'。输出单文件 HTML 到 ~/Downloads/。
npx skillsauth add lijigang/ljg-skills ljg-presentInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
把 outline 铸成色块——视觉化渲染器,把舞台还给讲的人。
Outline → 视觉化渲染器:
* ** 层级 + 列表 + 表格 + 强调)视觉语言(参考审美:Felipe Franco / BIG STUDIOS 的 manifesto 美学):
*强调* ~code~ 自动 hl* → emphasis 封面页,其余 → theme 页Outline 是真理。Skill 是渲染器。
不动内容是一条铁律:
唯一允许的"动"是:物理分页(一段太长拆成多页),并保持视觉一致性。
| Org 元素 | 页面 |
|---|---|
| * 一级标题 | 独占 emphasis 封面页(accent 底色) |
| ** 二级标题 | 独占 theme 页(大字标题独占一页) |
| *** 三级标题+ | 独占 theme 页(字号降一档) |
| Org 元素 | 页面行为 |
|---|---|
| 段落 | theme 页,按句号/换行/字数分页 |
| - 列表项 | theme 页,每项一行,indent 按嵌套深度(0/1/2) |
| 1. 编号列表 | 同上,保留序号前缀 |
| 嵌套列表 | 子项 indent +1(最多 indent=2) |
| \| 表格 \| | 单页或多页,保留表格结构(首行加粗) |
| *强调* | 自动 hl: true |
| ~code~ 或 =verbatim= | 自动 hl: true |
| 「」 内的关键词 | 视觉单元(保留括号,不强制 hl) |
| 引用 > ... | theme 页,indent 1 显示 |
| 分隔符 ----- | 独立 emphasis 休止页(无内容,纯色块) |
| #+begin_example 块 | 独立 pre 页(monospace 渲染 ASCII art) |
| Org 元素 | 用途 |
|---|---|
| #+title: | → JSON title(浏览器 tab) |
| #+author: 或 #+date: | → JSON subtitle(页脚右下) |
| #+filetags: | 用于推断 theme(见下) |
| #+identifier: | 忽略 |
优先级:显式参数 > filetags 推断 > 默认 black
显式覆盖(参数):
-r / --theme=red → red-b / --theme=black → black-y / --theme=yellow → yellow--cyber → cyber-hacker(黑底绿字 + CRT 扫描线 + HUD + 终端光标)filetags 自动推断:
| filetags 含 | theme | 调性 |
|---|---|---|
| :share: :talk: :manifesto: :keynote: | red | 宣言、号召 |
| :essay: :think: :learn: :note: | black | 沉思、论证 |
| :critique: :warn: :rant: | yellow | 反讽、警觉 |
| 都没有 | black | 默认沉思调 |
铁律:拆分后保持视觉一致性。同一逻辑块的页用同样的字号档位/底色/缩进规则。
| 情形 | 拆法 |
|---|---|
| 段落 ≤ 30 字 | 单页 |
| 段落 30-80 字,含多句号 | 每句一页(每页 medium 档字号) |
| 段落 > 80 字 | 按 ~30 字一页拆,加 ⋯ 续标 |
| 列表 ≤ 4 项 | 单页全部展示(错位 indent) |
| 列表 5-8 项 | 拆 2 页,每页 3-4 项(保持每页项数接近) |
| 列表 > 8 项 | 拆多页,每页 4 项 |
| 嵌套列表(如 4 革命×4 属性)| 父项 1 页 + 每个子项独立成组(标题 1 页 + 子项 1 页) |
| 表格 ≤ 6 行 | 单页 |
| 表格 > 6 行 | 拆多页,每页保留表头 |
一致性检查:拆完后扫一遍——同源拆分的页要长得像同一种东西,字号/缩进/底色都对齐。
* 一级标题 → emphasis 封面页----- 分隔符 → emphasis 休止页不要为了凑节奏强行加 emphasis——一级标题就是天然的章节断点。
*强调* → hl: true~code~ =verbatim= → hl: truecolor: inherit)输入(org 节选):
#+title: 美团分享
#+filetags: :share:
* AI
** 为什么说 AI 是一次革命?
人类革命:能力让渡的层级跃迁
- 「人之为人」重新定义
- 社会组织重排
映射结果:
| # | 类型 | 内容 | 来源 |
|---|---|---|---|
| 1 | emphasis | 「AI」 | * AI(一级标题封面) |
| 2 | theme | 「为什么说 AI 是一次革命?」 | ** ... 二级标题独占页 |
| 3 | theme | 「人类革命:能力让渡的层级跃迁」 | 段落,单句 |
| 4 | theme | 两行错位:「『人之为人』重新定义」/「社会组织重排」 | 列表 ≤4 项一页 |
theme 自动选 red(filetags :share:),title=美团分享。
--c-black: #1A1A1A
--c-red: #E63956
--c-yellow: #FFD400
--c-white: #FFFFFF
--c-gold: #FFE082
| theme | 默认页 | emphasis 页 | hl 色(仅 theme 页) | |---|---|---|---| | black 沉思 | 黑底白字 | 红底白字 | 红色 #E63956 | | red 宣言 | 红底白字 | 黑底白字 | 柔金黄 #FFE082 | | yellow 反讽 | 黄底黑字 | 黑底白字 | 红色 #E63956 | | cyber 终端 | 黑底矩阵绿 | 绿底黑字 | 白色 #FFFFFF(带绿光 + CRT 扫描线 + 顶部 HUD) |
"Helvetica Neue", "Arial Black", "Inter", "PingFang SC", "Heiti SC", -apple-system, sans-serif
font-weight: 900
letter-spacing: -0.05em
cyber 主题额外字体(用于 HUD/footer/pre):
"JetBrains Mono", "Fira Code", "IBM Plex Mono", "Source Code Pro", "Menlo", monospace
按本页"最长那一行"的字符数(CJK 字符按 1.8 计权)自动分档:
| 档位 | 字符数 | 字号 | |---|---|---| | single | ≤ 2 | 70vmin | | short | 3-6 | 48vmin | | medium | 7-14 | 28vmin | | long | 15-26 | 16vmin | | xlong | 27+ | 10vmin |
多行页自动降一档。
align-items: center 让 lines 块整体在屏幕水平居中(消除 16:9 右侧空白),但每一行的文字仍是 left-aligned 起始,indent 0/1/2 在块内制造错位-0.05em——ultra-bold 应有的字字挤压感1.05、行间 gap 0.15em——多行折行也有呼吸空间{
"theme": "black|red|yellow|cyber", // 主题色(必选,决定整篇调性)
"title": "演讲标题(浏览器 tab)",
"subtitle": "副标题/品牌(页脚右下,可选)",
"slides": [
// 默认 theme 页
{
"lines": [ // 1-N 行
{
"indent": 0, // 0/1/2 缩进档(按 outline 嵌套深度)
"align": "left|center|right", // 可选,默认 left
"chunks": [ // 行内片段
{"t": "句子前段"},
{"t": "高亮词", "hl": true}, // 仅 theme 页生效
{"t": "句子后段"}
]
}
]
},
// emphasis 页(accent 底色,整页就是高亮,不允许 inline hl)
{ "emphasis": true, "lines": [...] },
// pre 页(ASCII art / 预格式化块)
{ "preTitle": "diagram_name", "pre": "...preformatted text..." }
]
}
字段省略约定:
emphasis = 默认 theme 页chunks[].hl: true 会被忽略pre 字段则该页为 ASCII art 页(monospace 渲染)* ** 标题层级、- 1. 列表、|...| 表格、*强调* / ~code~、#+begin_example 块# ## 标题、- * 列表、| 表格、**强调**、``` 代码块#+filetags: > 默认 black* 标题 → emphasis 封面**+ 标题 → theme 独占页assets/slogan_template.html(cyber 主题需在模板基础上注入扫描线/HUD/光标 CSS){{TITLE}} → 文件 #+title: 或显式参数{{SUBTITLE}} → #+author: #+date: 拼接,或留空{{THEME}} → 推断或显式参数(black|red|yellow|cyber){{SLIDES_JSON}} → JSON.stringify(slides)~/Downloads/{name}.html({name} 取自 #+title: 或文件名,去标点,≤ 20 字)→ ← Space F Home End*强调* 自动 hl——尊重作者的标记意图----- 是 emphasis,别的不要默认输出中文。除非原文是英文且用户要求保留英文。
→ Space Enter j PageDown:下一页(含蓝牙翻页笔)← k PageUp:上一页(含蓝牙翻页笔)Home/End:跳首末f/F:全屏切换tools
把 ~/.claude/skills/ljg-* 里所有更新过的 skills 同步到 github repo (ljg-skills),先推 master 分支(org-mode 输出风格),再切 md 分支(markdown 输出风格)做基础 markdown 化后推。Use when user says '/ljg-push', 'push skills', '推送 skills', '同步 skills', 'sync ljg', or whenever ljg-* skills get updated and need shipping. NOT FOR pushing non-ljg skills or arbitrary git repos.
testing
Paper reader for non-academics. Reads a paper and tells it back as one continuous story — the life of the paper's core proposition (命题), told on a seven-beat spine (主角 / 困境 / 旧路 / 转折 / 解法 / 结局 / 内核): born in a bind on a base-rate ruler, crystallized as a bold conjecture, argued through mechanism and evidence, distilled into a new way of seeing, then walked out of the paper — life-tested and cashed into falsifiable predictions (检验). The job is storytelling that makes the paper land, not academic critique. Use when user shares an arxiv link, paper URL, PDF, or asks to analyze a research paper. Trigger words: '读论文', '讲论文', '把这篇讲给我听', '分析论文', 'paper', or when user shares an academic paper.
testing
拆一本书,以「问题」为轴心走一条线。五件事:作者在答什么问题(问题),这个问题之前各流派/社会共识怎么答(零点),作者带来什么独特洞见——公式/理论框架/模型/概念四选一——相对共识挪动了什么(位移/delta),落成哪句结论(落点),最后萃一个 takeaway 作为精神内核(行囊)。收尾画一张 ASCII 参考系图(千脑智能式):各流派、旧共识、作者钉到同一张图的位置上,delta 是图上一段看得见的距离,再走两步做预测——看懂这本书在认知史里挪动了哪一步,还能拿它预测书外的新事。Use when user says '拆书', '拆这本', '分析这本书', '这本书在讲什么', '上帝之眼看这本书', '压缩一本书', 'book', or shares a book name wanting structural analysis. NOT FOR 章节摘要(用 Fabric extract_wisdom)、论文(用 ljg-paper)、单一观点深钻(用 ljg-think)、一个领域降秩(用 ljg-rank).
testing
给一个领域,找出背后真正撑着它的几根独立的力。十几个现象砍到不可再少的生成器——砍完能把现象一个个生回来,才算数。Use when user says '降秩', '找秩', '秩是什么', '这个领域靠什么撑着', '背后是什么', or wants to decompose any domain to its irreducible generators.