novelws 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/CHANGELOG.md +161 -0
  2. package/LICENSE +22 -0
  3. package/README.md +372 -0
  4. package/dist/cli.d.ts +3 -0
  5. package/dist/cli.d.ts.map +1 -0
  6. package/dist/cli.js +50 -0
  7. package/dist/cli.js.map +1 -0
  8. package/dist/commands/check.d.ts +6 -0
  9. package/dist/commands/check.d.ts.map +1 -0
  10. package/dist/commands/check.js +32 -0
  11. package/dist/commands/check.js.map +1 -0
  12. package/dist/commands/init.d.ts +6 -0
  13. package/dist/commands/init.d.ts.map +1 -0
  14. package/dist/commands/init.js +160 -0
  15. package/dist/commands/init.js.map +1 -0
  16. package/dist/commands/plugin.d.ts +6 -0
  17. package/dist/commands/plugin.d.ts.map +1 -0
  18. package/dist/commands/plugin.js +135 -0
  19. package/dist/commands/plugin.js.map +1 -0
  20. package/dist/commands/upgrade.d.ts +6 -0
  21. package/dist/commands/upgrade.d.ts.map +1 -0
  22. package/dist/commands/upgrade.js +92 -0
  23. package/dist/commands/upgrade.js.map +1 -0
  24. package/dist/core/config.d.ts +72 -0
  25. package/dist/core/config.d.ts.map +1 -0
  26. package/dist/core/config.js +136 -0
  27. package/dist/core/config.js.map +1 -0
  28. package/dist/core/errors.d.ts +59 -0
  29. package/dist/core/errors.d.ts.map +1 -0
  30. package/dist/core/errors.js +125 -0
  31. package/dist/core/errors.js.map +1 -0
  32. package/dist/core/platform.d.ts +27 -0
  33. package/dist/core/platform.d.ts.map +1 -0
  34. package/dist/core/platform.js +75 -0
  35. package/dist/core/platform.js.map +1 -0
  36. package/dist/core/template.d.ts +35 -0
  37. package/dist/core/template.d.ts.map +1 -0
  38. package/dist/core/template.js +94 -0
  39. package/dist/core/template.js.map +1 -0
  40. package/dist/plugins/identifier.d.ts +13 -0
  41. package/dist/plugins/identifier.d.ts.map +1 -0
  42. package/dist/plugins/identifier.js +72 -0
  43. package/dist/plugins/identifier.js.map +1 -0
  44. package/dist/plugins/installers/base.d.ts +27 -0
  45. package/dist/plugins/installers/base.d.ts.map +1 -0
  46. package/dist/plugins/installers/base.js +30 -0
  47. package/dist/plugins/installers/base.js.map +1 -0
  48. package/dist/plugins/installers/github.d.ts +22 -0
  49. package/dist/plugins/installers/github.d.ts.map +1 -0
  50. package/dist/plugins/installers/github.js +133 -0
  51. package/dist/plugins/installers/github.js.map +1 -0
  52. package/dist/plugins/installers/local.d.ts +16 -0
  53. package/dist/plugins/installers/local.d.ts.map +1 -0
  54. package/dist/plugins/installers/local.js +69 -0
  55. package/dist/plugins/installers/local.js.map +1 -0
  56. package/dist/plugins/installers/npm.d.ts +20 -0
  57. package/dist/plugins/installers/npm.d.ts.map +1 -0
  58. package/dist/plugins/installers/npm.js +99 -0
  59. package/dist/plugins/installers/npm.js.map +1 -0
  60. package/dist/plugins/manager.d.ts +77 -0
  61. package/dist/plugins/manager.d.ts.map +1 -0
  62. package/dist/plugins/manager.js +349 -0
  63. package/dist/plugins/manager.js.map +1 -0
  64. package/dist/plugins/registry.d.ts +48 -0
  65. package/dist/plugins/registry.d.ts.map +1 -0
  66. package/dist/plugins/registry.js +111 -0
  67. package/dist/plugins/registry.js.map +1 -0
  68. package/dist/plugins/types.d.ts +66 -0
  69. package/dist/plugins/types.d.ts.map +1 -0
  70. package/dist/plugins/types.js +2 -0
  71. package/dist/plugins/types.js.map +1 -0
  72. package/dist/plugins/validator.d.ts +19 -0
  73. package/dist/plugins/validator.d.ts.map +1 -0
  74. package/dist/plugins/validator.js +164 -0
  75. package/dist/plugins/validator.js.map +1 -0
  76. package/dist/utils/logger.d.ts +13 -0
  77. package/dist/utils/logger.d.ts.map +1 -0
  78. package/dist/utils/logger.js +48 -0
  79. package/dist/utils/logger.js.map +1 -0
  80. package/dist/utils/project.d.ts +24 -0
  81. package/dist/utils/project.d.ts.map +1 -0
  82. package/dist/utils/project.js +61 -0
  83. package/dist/utils/project.js.map +1 -0
  84. package/dist/version.d.ts +3 -0
  85. package/dist/version.d.ts.map +1 -0
  86. package/dist/version.js +21 -0
  87. package/dist/version.js.map +1 -0
  88. package/package.json +76 -0
  89. package/plugins/authentic-voice/README.md +31 -0
  90. package/plugins/authentic-voice/commands/authentic-voice.md +73 -0
  91. package/plugins/authentic-voice/commands/authenticity-audit.md +37 -0
  92. package/plugins/authentic-voice/config.yaml +30 -0
  93. package/plugins/authentic-voice/experts/authentic-editor.md +27 -0
  94. package/plugins/export/README.md +319 -0
  95. package/plugins/export/commands/export.md +460 -0
  96. package/plugins/export/commands/generate-cover.md +256 -0
  97. package/plugins/export/commands/metadata.md +309 -0
  98. package/plugins/export/config.yaml +47 -0
  99. package/plugins/export/experts/publishing-expert.md +171 -0
  100. package/plugins/export/templates/epub/chapter-template.html +13 -0
  101. package/plugins/export/templates/epub/cover-template.html +14 -0
  102. package/plugins/export/templates/epub/stylesheet.css +200 -0
  103. package/plugins/export/templates/pdf/ebook-style.css +137 -0
  104. package/plugins/export/templates/pdf/print-style.css +179 -0
  105. package/plugins/export/templates/platforms/jinjiang-format.md +101 -0
  106. package/plugins/export/templates/platforms/qidian-format.md +108 -0
  107. package/plugins/export/templates/platforms/tomato-format.md +95 -0
  108. package/plugins/translate/README.md +265 -0
  109. package/plugins/translate/commands/glossary.md +731 -0
  110. package/plugins/translate/commands/translate-preview.md +543 -0
  111. package/plugins/translate/commands/translate.md +649 -0
  112. package/plugins/translate/config.yaml +43 -0
  113. package/plugins/translate/experts/literary-translator.md +605 -0
  114. package/templates/commands/analyze.md +1485 -0
  115. package/templates/commands/checklist.md +434 -0
  116. package/templates/commands/clarify.md +257 -0
  117. package/templates/commands/constitution.md +257 -0
  118. package/templates/commands/expert.md +136 -0
  119. package/templates/commands/plan.md +749 -0
  120. package/templates/commands/recap.md +613 -0
  121. package/templates/commands/relations.md +96 -0
  122. package/templates/commands/revise.md +341 -0
  123. package/templates/commands/specify.md +682 -0
  124. package/templates/commands/tasks.md +142 -0
  125. package/templates/commands/timeline.md +73 -0
  126. package/templates/commands/track-init.md +137 -0
  127. package/templates/commands/track.md +463 -0
  128. package/templates/commands/write.md +1264 -0
  129. package/templates/config/keyword-mappings.json +106 -0
  130. package/templates/knowledge/audit-config.json +26 -0
  131. package/templates/knowledge/character-profiles.md +152 -0
  132. package/templates/knowledge/character-voices.md +137 -0
  133. package/templates/knowledge/locations.md +184 -0
  134. package/templates/knowledge/world-setting.md +121 -0
  135. package/templates/knowledge-base/README.md +285 -0
  136. package/templates/knowledge-base/character-archetypes/01-hero.md +233 -0
  137. package/templates/knowledge-base/character-archetypes/02-mentor.md +177 -0
  138. package/templates/knowledge-base/character-archetypes/03-shadow.md +221 -0
  139. package/templates/knowledge-base/character-archetypes/04-ally.md +178 -0
  140. package/templates/knowledge-base/character-archetypes/05-shapeshifter.md +177 -0
  141. package/templates/knowledge-base/character-archetypes/06-trickster.md +181 -0
  142. package/templates/knowledge-base/character-archetypes/07-threshold-guardian.md +177 -0
  143. package/templates/knowledge-base/character-archetypes/08-herald.md +180 -0
  144. package/templates/knowledge-base/character-archetypes/09-father.md +249 -0
  145. package/templates/knowledge-base/character-archetypes/10-mother.md +202 -0
  146. package/templates/knowledge-base/character-archetypes/11-child.md +183 -0
  147. package/templates/knowledge-base/character-archetypes/12-sage.md +202 -0
  148. package/templates/knowledge-base/character-archetypes/README.md +60 -0
  149. package/templates/knowledge-base/character-archetypes/application-guide.md +222 -0
  150. package/templates/knowledge-base/character-archetypes/archetype-combinations.md +242 -0
  151. package/templates/knowledge-base/character-archetypes/config.yaml +28 -0
  152. package/templates/knowledge-base/character-archetypes/examples-analysis.md +223 -0
  153. package/templates/knowledge-base/craft/character-arc.md +1153 -0
  154. package/templates/knowledge-base/craft/dialogue.md +1170 -0
  155. package/templates/knowledge-base/craft/pacing.md +1200 -0
  156. package/templates/knowledge-base/craft/scene-structure.md +1136 -0
  157. package/templates/knowledge-base/craft/show-not-tell.md +1012 -0
  158. package/templates/knowledge-base/emotional-beats/01-first-meeting.md +145 -0
  159. package/templates/knowledge-base/emotional-beats/02-bonding-moment.md +226 -0
  160. package/templates/knowledge-base/emotional-beats/03-declaration.md +284 -0
  161. package/templates/knowledge-base/emotional-beats/04-triumph.md +240 -0
  162. package/templates/knowledge-base/emotional-beats/05-reunion.md +396 -0
  163. package/templates/knowledge-base/emotional-beats/06-forgiveness.md +204 -0
  164. package/templates/knowledge-base/emotional-beats/07-betrayal.md +204 -0
  165. package/templates/knowledge-base/emotional-beats/08-loss.md +214 -0
  166. package/templates/knowledge-base/emotional-beats/09-rejection.md +254 -0
  167. package/templates/knowledge-base/emotional-beats/10-failure.md +244 -0
  168. package/templates/knowledge-base/emotional-beats/11-misunderstanding.md +205 -0
  169. package/templates/knowledge-base/emotional-beats/12-farewell.md +283 -0
  170. package/templates/knowledge-base/emotional-beats/13-revelation.md +242 -0
  171. package/templates/knowledge-base/emotional-beats/14-point-of-no-return.md +215 -0
  172. package/templates/knowledge-base/emotional-beats/15-dark-night.md +244 -0
  173. package/templates/knowledge-base/emotional-beats/16-sacrifice.md +246 -0
  174. package/templates/knowledge-base/emotional-beats/17-awakening.md +246 -0
  175. package/templates/knowledge-base/emotional-beats/18-confrontation.md +217 -0
  176. package/templates/knowledge-base/emotional-beats/19-bittersweet-goodbye.md +368 -0
  177. package/templates/knowledge-base/emotional-beats/20-moral-dilemma.md +248 -0
  178. package/templates/knowledge-base/emotional-beats/21-temptation.md +240 -0
  179. package/templates/knowledge-base/emotional-beats/22-redemption.md +210 -0
  180. package/templates/knowledge-base/emotional-beats/README.md +104 -0
  181. package/templates/knowledge-base/emotional-beats/beat-sequences.md +276 -0
  182. package/templates/knowledge-base/emotional-beats/config.yaml +30 -0
  183. package/templates/knowledge-base/emotional-beats/pacing-guide.md +390 -0
  184. package/templates/knowledge-base/genres/historical.md +1127 -0
  185. package/templates/knowledge-base/genres/mystery.md +1123 -0
  186. package/templates/knowledge-base/genres/revenge.md +846 -0
  187. package/templates/knowledge-base/genres/romance.md +948 -0
  188. package/templates/knowledge-base/genres/sci-fi.md +156 -0
  189. package/templates/knowledge-base/genres/thriller.md +166 -0
  190. package/templates/knowledge-base/genres/wuxia.md +143 -0
  191. package/templates/knowledge-base/references/README.md +96 -0
  192. package/templates/knowledge-base/references/china-1920s/culture.md +423 -0
  193. package/templates/knowledge-base/references/china-1920s/daily-life.md +616 -0
  194. package/templates/knowledge-base/references/china-1920s/overview.md +298 -0
  195. package/templates/knowledge-base/references/china-1920s/society.md +703 -0
  196. package/templates/knowledge-base/references/china-1920s/warlords.md +427 -0
  197. package/templates/knowledge-base/references/cultivation-world/daily-life.md +108 -0
  198. package/templates/knowledge-base/references/cultivation-world/overview.md +64 -0
  199. package/templates/knowledge-base/references/cultivation-world/power-system.md +108 -0
  200. package/templates/knowledge-base/references/cultivation-world/sects.md +104 -0
  201. package/templates/knowledge-base/references/cultivation-world/world-setting.md +108 -0
  202. package/templates/knowledge-base/references/modern-workplace/corporate.md +115 -0
  203. package/templates/knowledge-base/references/modern-workplace/daily-life.md +129 -0
  204. package/templates/knowledge-base/references/modern-workplace/overview.md +73 -0
  205. package/templates/knowledge-base/references/modern-workplace/relationships.md +107 -0
  206. package/templates/knowledge-base/references/modern-workplace/tech-industry.md +131 -0
  207. package/templates/knowledge-base/references/tang-dynasty/culture.md +135 -0
  208. package/templates/knowledge-base/references/tang-dynasty/daily-life.md +139 -0
  209. package/templates/knowledge-base/references/tang-dynasty/overview.md +76 -0
  210. package/templates/knowledge-base/references/tang-dynasty/politics.md +121 -0
  211. package/templates/knowledge-base/references/tang-dynasty/society.md +126 -0
  212. package/templates/knowledge-base/requirements/README.md +240 -0
  213. package/templates/knowledge-base/requirements/anti-ai-v3.md +46 -0
  214. package/templates/knowledge-base/requirements/anti-ai-v4.md +430 -0
  215. package/templates/knowledge-base/requirements/fast-paced.md +552 -0
  216. package/templates/knowledge-base/requirements/no-poison.md +60 -0
  217. package/templates/knowledge-base/requirements/romance-angst.md +102 -0
  218. package/templates/knowledge-base/requirements/romance-sweet.md +63 -0
  219. package/templates/knowledge-base/requirements/serious-literature.md +45 -0
  220. package/templates/knowledge-base/requirements/strong-emotion.md +60 -0
  221. package/templates/knowledge-base/styles/README.md +302 -0
  222. package/templates/knowledge-base/styles/ancient-style.md +579 -0
  223. package/templates/knowledge-base/styles/literary.md +439 -0
  224. package/templates/knowledge-base/styles/minimal.md +472 -0
  225. package/templates/knowledge-base/styles/natural-voice.md +930 -0
  226. package/templates/knowledge-base/styles/web-novel.md +525 -0
  227. package/templates/memory/constitution.md +140 -0
  228. package/templates/memory/personal-voice.md +113 -0
  229. package/templates/scripts/README.md +187 -0
  230. package/templates/scripts/bash/analyze-story.sh +170 -0
  231. package/templates/scripts/bash/check-consistency.sh +463 -0
  232. package/templates/scripts/bash/check-plot.sh +374 -0
  233. package/templates/scripts/bash/check-timeline.sh +346 -0
  234. package/templates/scripts/bash/check-world.sh +395 -0
  235. package/templates/scripts/bash/check-writing-state.sh +854 -0
  236. package/templates/scripts/bash/clarify-story.sh +117 -0
  237. package/templates/scripts/bash/common.sh +151 -0
  238. package/templates/scripts/bash/constitution.sh +114 -0
  239. package/templates/scripts/bash/generate-tasks.sh +65 -0
  240. package/templates/scripts/bash/init-tracking.sh +183 -0
  241. package/templates/scripts/bash/manage-relations.sh +174 -0
  242. package/templates/scripts/bash/plan-story.sh +100 -0
  243. package/templates/scripts/bash/specify-story.sh +93 -0
  244. package/templates/scripts/bash/tasks-story.sh +96 -0
  245. package/templates/scripts/bash/test-word-count.sh +182 -0
  246. package/templates/scripts/bash/tests/bench-preload-cache.sh +100 -0
  247. package/templates/scripts/bash/tests/run-all-benchmarks.sh +16 -0
  248. package/templates/scripts/bash/tests/test-cache-semantics.sh +199 -0
  249. package/templates/scripts/bash/tests/test-cross-platform.sh +35 -0
  250. package/templates/scripts/bash/tests/test-edge-cases-bash.sh +60 -0
  251. package/templates/scripts/bash/tests/test-phase1-bash.sh +28 -0
  252. package/templates/scripts/bash/tests/test-preload-cache.sh +123 -0
  253. package/templates/scripts/bash/tests/test-regex-precompile.sh +89 -0
  254. package/templates/scripts/bash/tests/test-regression-bash.sh +42 -0
  255. package/templates/scripts/bash/tests/test-task6-verification.sh +200 -0
  256. package/templates/scripts/bash/text-audit.sh +144 -0
  257. package/templates/scripts/bash/track-progress.sh +194 -0
  258. package/templates/scripts/powershell/analyze-story.ps1 +171 -0
  259. package/templates/scripts/powershell/check-analyze-stage.ps1 +110 -0
  260. package/templates/scripts/powershell/check-consistency.ps1 +138 -0
  261. package/templates/scripts/powershell/check-plot.ps1 +139 -0
  262. package/templates/scripts/powershell/check-timeline.ps1 +112 -0
  263. package/templates/scripts/powershell/check-writing-state.ps1 +490 -0
  264. package/templates/scripts/powershell/check-writing-state.ps1.backup +135 -0
  265. package/templates/scripts/powershell/clarify-story.ps1 +107 -0
  266. package/templates/scripts/powershell/common.ps1 +36 -0
  267. package/templates/scripts/powershell/constitution.ps1 +142 -0
  268. package/templates/scripts/powershell/generate-tasks.ps1 +75 -0
  269. package/templates/scripts/powershell/init-tracking.ps1 +98 -0
  270. package/templates/scripts/powershell/manage-relations.ps1 +134 -0
  271. package/templates/scripts/powershell/plan-story.ps1 +96 -0
  272. package/templates/scripts/powershell/specify-story.ps1 +82 -0
  273. package/templates/scripts/powershell/tests/bench-ps-cache.ps1 +80 -0
  274. package/templates/scripts/powershell/tests/test-cross-platform.ps1 +27 -0
  275. package/templates/scripts/powershell/tests/test-edge-cases-ps.ps1 +29 -0
  276. package/templates/scripts/powershell/tests/test-phase1-ps.ps1 +28 -0
  277. package/templates/scripts/powershell/tests/test-ps-cache.ps1 +73 -0
  278. package/templates/scripts/powershell/tests/test-regression-ps.ps1 +40 -0
  279. package/templates/scripts/powershell/text-audit.ps1 +100 -0
  280. package/templates/scripts/powershell/track-progress.ps1 +105 -0
  281. package/templates/skills/genre-knowledge/fantasy/SKILL.md +355 -0
  282. package/templates/skills/genre-knowledge/mystery/SKILL.md +337 -0
  283. package/templates/skills/genre-knowledge/romance/SKILL.md +228 -0
  284. package/templates/skills/genre-knowledge/sci-fi/SKILL.md +65 -0
  285. package/templates/skills/genre-knowledge/thriller/SKILL.md +95 -0
  286. package/templates/skills/quality-assurance/consistency-checker/SKILL.md +341 -0
  287. package/templates/skills/quality-assurance/continuity-tracker/SKILL.md +157 -0
  288. package/templates/skills/quality-assurance/forgotten-elements/SKILL.md +147 -0
  289. package/templates/skills/quality-assurance/getting-started/SKILL.md +224 -0
  290. package/templates/skills/quality-assurance/pacing-monitor/SKILL.md +143 -0
  291. package/templates/skills/quality-assurance/pov-validator/SKILL.md +135 -0
  292. package/templates/skills/quality-assurance/pre-write-checklist/SKILL.md +583 -0
  293. package/templates/skills/quality-assurance/requirement-detector/CONFLICT_RESOLUTION.md +119 -0
  294. package/templates/skills/quality-assurance/requirement-detector/EXAMPLES.md +146 -0
  295. package/templates/skills/quality-assurance/requirement-detector/KEYWORDS.md +160 -0
  296. package/templates/skills/quality-assurance/requirement-detector/SKILL.md +149 -0
  297. package/templates/skills/quality-assurance/setting-detector/SKILL.md +611 -0
  298. package/templates/skills/quality-assurance/style-detector/CONFLICT_RESOLUTION.md +126 -0
  299. package/templates/skills/quality-assurance/style-detector/EXAMPLES.md +206 -0
  300. package/templates/skills/quality-assurance/style-detector/KEYWORDS.md +207 -0
  301. package/templates/skills/quality-assurance/style-detector/SKILL.md +126 -0
  302. package/templates/skills/quality-assurance/workflow-guide/SKILL.md +381 -0
  303. package/templates/skills/writing-techniques/character-arc/SKILL.md +267 -0
  304. package/templates/skills/writing-techniques/dialogue-techniques/SKILL.md +366 -0
  305. package/templates/skills/writing-techniques/multi-thread-narrative/SKILL.md +553 -0
  306. package/templates/skills/writing-techniques/multi-thread-narrative/experts/thread-analyst.md +226 -0
  307. package/templates/skills/writing-techniques/pacing-control/SKILL.md +377 -0
  308. package/templates/skills/writing-techniques/reader-expectation/SKILL.md +578 -0
  309. package/templates/skills/writing-techniques/reader-expectation/experts/expectation-analyst.md +209 -0
  310. package/templates/skills/writing-techniques/revision-polish/SKILL.md +496 -0
  311. package/templates/skills/writing-techniques/revision-polish/experts/revision-editor.md +221 -0
  312. package/templates/skills/writing-techniques/scene-structure/SKILL.md +361 -0
  313. package/templates/skills/writing-techniques/style-learning/SKILL.md +436 -0
  314. package/templates/specification-example.md +146 -0
  315. package/templates/tracking/character-state.json +78 -0
  316. package/templates/tracking/plot-tracker.json +62 -0
  317. package/templates/tracking/relationships.json +70 -0
  318. package/templates/tracking/timeline.json +49 -0
  319. package/templates/tracking/tracking-log.md +110 -0
  320. package/templates/tracking/validation-rules.json +128 -0
@@ -0,0 +1,1012 @@
1
+ # Show, Don't Tell 写作知识库
2
+
3
+ ## 快速参考(Quick Reference)
4
+
5
+ "Show, Don't Tell"(展示,别讲述)是小说写作的黄金法则——不要直接告诉读者角色的感受或情境,而是通过具体细节让读者自己推导。
6
+
7
+ **核心理念**:
8
+ ```
9
+ Tell(讲述)= 直接说出结论
10
+ Show(展示)= 展现细节,让读者得出结论
11
+ ```
12
+
13
+ **基本公式**:
14
+ ```
15
+ Tell: "她很生气"
16
+ Show: "她一拳砸在桌上,杯子跳了起来"
17
+ ```
18
+
19
+ **Show 的三个层次**:
20
+
21
+ | 层次 | 方法 | 示例 |
22
+ |------|------|------|
23
+ | 1级 | 行动展示 | 她摔门离开 |
24
+ | 2级 | 感官细节 | 她的手在颤抖 |
25
+ | 3级 | 环境反应 | 房间里的人都僵住了 |
26
+
27
+ **何时 Tell**:
28
+ - 过渡性信息("三天后……")
29
+ - 次要情节("他度过了平淡的一周")
30
+ - 节奏需要(避免所有细节都展示)
31
+
32
+ **不要过度 Show**:
33
+ - ❌ 每个细节都展示(拖沓)
34
+ - ❌ 简单信息也展示(浪费篇幅)
35
+
36
+ ---
37
+
38
+ ## 核心原则(Core Principles)
39
+
40
+ ### 1. Show vs Tell 的本质区别
41
+
42
+ #### Tell:直接说出结论
43
+
44
+ **特征**:
45
+ - 使用抽象词汇
46
+ - 概括性描述
47
+ - 作者直接告诉读者
48
+
49
+ **常见 Tell 词汇**:
50
+ - 情感词:生气、悲伤、快乐、害怕、紧张
51
+ - 状态词:疲惫、兴奋、困惑、尴尬
52
+ - 性格词:勇敢、懦弱、聪明、愚蠢
53
+
54
+ ❌ **Tell 示例**:
55
+ ```
56
+ 她很伤心。
57
+ 他很生气。
58
+ 房间很乱。
59
+ 她是一个善良的人。
60
+ ```
61
+
62
+ #### Show:展现细节,让读者推导
63
+
64
+ **特征**:
65
+ - 使用具体细节
66
+ - 描写可见/可感的内容
67
+ - 读者自己得出结论
68
+
69
+ ✅ **Show 示例**:
70
+ ```
71
+ 【Tell】她很伤心。
72
+ 【Show】她坐在角落,膝盖抱在胸前,脸埋在臂弯里。
73
+
74
+ 【Tell】他很生气。
75
+ 【Show】他的拳头握得指节发白,太阳穴上青筋暴起。
76
+
77
+ 【Tell】房间很乱。
78
+ 【Show】衣服堆在椅子上,桌上的咖啡杯里长了霉,地板上散落着用过的纸巾。
79
+
80
+ 【Tell】她是一个善良的人。
81
+ 【Show】她脱下自己的外套,披在流浪汉身上。
82
+ ```
83
+
84
+ **为什么 Show 更好**:
85
+ - **读者参与**:让读者推理,产生互动
86
+ - **更生动**:具体细节比抽象词汇更有画面感
87
+ - **更可信**:读者自己得出的结论更有说服力
88
+ - **多层含义**:同一个细节可以传达多重信息
89
+
90
+ ---
91
+
92
+ ### 2. Show 的三个工具
93
+
94
+ #### 工具 1:行动展示(Action Shows)
95
+
96
+ **原则**:通过角色做什么来展示他们是谁、感受什么。
97
+
98
+ ❌ **Tell**:
99
+ ```
100
+ 他很紧张。
101
+ ```
102
+
103
+ ✅ **Show(行动)**:
104
+ ```
105
+ 他来回踱步,不停地看手表。
106
+ ```
107
+
108
+ **更多示例**:
109
+
110
+ | Tell | Show(行动) |
111
+ |------|-------------|
112
+ | 她不相信他 | 她后退一步,双手环抱胸前 |
113
+ | 他很自信 | 他大步走进房间,占据了中心位置 |
114
+ | 她很疲惫 | 她坐下时重重地叹了口气,鞋子踢掉了也懒得管 |
115
+ | 他很紧张 | 他的笔在纸上画着无意义的圈 |
116
+
117
+ **行动的多层含义**:
118
+
119
+ 一个行动可以同时展示多种信息。
120
+
121
+ ```
122
+ 【行动】她握紧了手里的照片,指甲嵌进掌心。
123
+
124
+ 【展示的信息】
125
+ - 情感:愤怒/痛苦
126
+ - 对照片的执念
127
+ - 身体张力(指甲嵌进)
128
+ - 克制(没有撕掉,而是握紧)
129
+ ```
130
+
131
+ #### 工具 2:身体语言(Body Language Shows)
132
+
133
+ **原则**:通过身体的微小变化展示内在情感。
134
+
135
+ **情感与身体语言对照表**:
136
+
137
+ | 情感 | Tell | Show(身体语言) |
138
+ |------|------|----------------|
139
+ | 害怕 | 她很害怕 | 她的瞳孔放大,呼吸变浅 |
140
+ | 撒谎 | 他在撒谎 | 他的目光飘向左上方,手摸了摸鼻子 |
141
+ | 吸引 | 她被他吸引 | 她不自觉地拨了拨头发,身体微微前倾 |
142
+ | 厌恶 | 他很厌恶 | 他的嘴角下压,鼻子皱了一下 |
143
+ | 悲伤 | 她很悲伤 | 她的肩膀垮下来,眼眶发红 |
144
+
145
+ **微表情的力量**:
146
+
147
+ ```
148
+ 【Tell】他假装不在乎,但其实很受伤。
149
+
150
+ 【Show】
151
+ "无所谓。"他耸耸肩。
152
+ 但他的手攥紧了,指节发白。
153
+ ```
154
+
155
+ **身体语言组合**:
156
+
157
+ 真实的情感通常不是单一信号。
158
+
159
+ ```
160
+ 【紧张的完整展示】
161
+ 他的腿在桌下不停抖动。
162
+ 手心出汗,他在裤子上蹭了蹭。
163
+ 目光不敢直视对方,看向窗外。
164
+ 喉结滚动了一下。
165
+ ```
166
+
167
+ #### 工具 3:感官细节(Sensory Details Show)
168
+
169
+ **原则**:通过五感(视觉、听觉、嗅觉、味觉、触觉)让读者"进入"场景。
170
+
171
+ **五感运用**:
172
+
173
+ **视觉(最常用)**:
174
+ ```
175
+ 【Tell】房间很旧。
176
+ 【Show】墙纸在角落剥落,露出发黄的墙面。
177
+ ```
178
+
179
+ **听觉**:
180
+ ```
181
+ 【Tell】夜晚很安静。
182
+ 【Show】只有钟表的滴答声和她自己的呼吸。
183
+ ```
184
+
185
+ **嗅觉**:
186
+ ```
187
+ 【Tell】这里是医院。
188
+ 【Show】空气中弥漫着消毒水的味道。
189
+ ```
190
+
191
+ **味觉**:
192
+ ```
193
+ 【Tell】她很紧张。
194
+ 【Show】她咬了咬嘴唇,尝到了血的铁锈味。
195
+ ```
196
+
197
+ **触觉**:
198
+ ```
199
+ 【Tell】天气很冷。
200
+ 【Show】冷风钻进衣领,她打了个哆嗦。
201
+ ```
202
+
203
+ **感官组合**:
204
+
205
+ 最有力的 Show 组合多种感官。
206
+
207
+ ```
208
+ 【场景:废弃工厂】
209
+
210
+ 【Tell】这里很可怕。
211
+
212
+ 【Show - 多感官】
213
+ 锈迹斑斑的铁门发出刺耳的嘎吱声(听觉)。
214
+ 空气中是潮湿和霉菌的气味(嗅觉)。
215
+ 她的手碰到墙壁,冰冷粗糙(触觉)。
216
+ 微弱的光从破窗照进来,照亮地上的碎玻璃(视觉)。
217
+ ```
218
+
219
+ ---
220
+
221
+ ### 3. Show 的层次理论
222
+
223
+ #### 层次 1:基础 Show - 替换抽象词
224
+
225
+ 最简单的 Show:用具体细节替换抽象词汇。
226
+
227
+ | 抽象(Tell) | 具体(Show) |
228
+ |-------------|-------------|
229
+ | 很热 | 汗水顺着后背流下 |
230
+ | 很穷 | 鞋底破了个洞 |
231
+ | 很老 | 满脸皱纹,手上老年斑 |
232
+ | 很乱 | 地上踩满了烟蒂 |
233
+
234
+ #### 层次 2:进阶 Show - 间接展示
235
+
236
+ 不直接描述事物,而是通过其他事物反映。
237
+
238
+ ```
239
+ 【目标】展示房间很冷
240
+
241
+ 【基础 Show】房间里结了冰。
242
+ 【进阶 Show】她呼出的气在空中凝成白雾。
243
+ → 通过呼吸间接展示寒冷
244
+ ```
245
+
246
+ **更多示例**:
247
+
248
+ | 要展示的 | 间接方式 |
249
+ |---------|---------|
250
+ | 时间流逝 | 烟灰缸里堆满了烟蒂 |
251
+ | 他很有钱 | 服务员对他毕恭毕敬 |
252
+ | 她很美 | 房间里所有男人的目光都转向她 |
253
+ | 危险临近 | 鸟儿突然停止了鸣叫 |
254
+
255
+ #### 层次 3:高级 Show - 多重含义
256
+
257
+ 一个细节展示多层信息。
258
+
259
+ ```
260
+ 【细节】她打开冰箱,里面只有一瓶过期的牛奶和半个发霉的苹果。
261
+
262
+ 【展示的信息】
263
+ 1. 经济困难(买不起食物)
264
+ 2. 生活混乱(食物过期)
265
+ 3. 孤独(没有人关心她)
266
+ 4. 可能的抑郁(失去生活动力)
267
+ ```
268
+
269
+ ---
270
+
271
+ ### 4. 何时该 Tell
272
+
273
+ **重要**:Show 不是绝对的,有时 Tell 更好。
274
+
275
+ #### 情况 1:过渡性信息
276
+
277
+ 不重要的时间/地点转换。
278
+
279
+ ✅ **适合 Tell**:
280
+ ```
281
+ 三天后,她到达了北京。
282
+ ```
283
+
284
+ ❌ **过度 Show**(浪费篇幅):
285
+ ```
286
+ 第一天,她坐上火车……(500 字)
287
+ 第二天,火车穿过平原……(500 字)
288
+ 第三天,终于看到北京的城市轮廓……(500 字)
289
+ → 1500 字,没有实质内容
290
+ ```
291
+
292
+ #### 情况 2:次要信息
293
+
294
+ 对主情节不重要的背景。
295
+
296
+ ✅ **适合 Tell**:
297
+ ```
298
+ 他度过了平淡的一周。
299
+ ```
300
+
301
+ ❌ **过度 Show**:
302
+ ```
303
+ 周一,他起床,吃早餐……(每天都详细描写)
304
+ → 浪费篇幅在次要内容上
305
+ ```
306
+
307
+ #### 情况 3:节奏需要
308
+
309
+ 有时需要快速推进,Tell 更快。
310
+
311
+ ```
312
+ 【场景】需要快速建立背景
313
+
314
+ ✅ Tell: 她在这个城市已经生活了十年。
315
+
316
+ ❌ Show: 她回忆起十年前第一次来到这个城市……(展开 2000 字)
317
+ → 如果背景不重要,用 Tell 更有效率
318
+ ```
319
+
320
+ #### 情况 4:对比效果
321
+
322
+ 在一片 Show 中,偶尔 Tell 可以制造对比。
323
+
324
+ ```
325
+ 【大部分 Show 后】
326
+ 她的手在颤抖,额头冒汗,眼神闪烁不定。
327
+ 她撒谎了。← Tell,但在大量 Show 后,这个 Tell 有力
328
+ ```
329
+
330
+ ---
331
+
332
+ ## 实践应用(Practical Application)
333
+
334
+ ### 在 /specify 阶段
335
+
336
+ **定义 Show/Tell 比例**
337
+
338
+ ```markdown
339
+ ## Show/Tell 原则
340
+
341
+ ### 整体比例
342
+ - Show: 70-80%(重要场景、情感时刻)
343
+ - Tell: 20-30%(过渡、次要信息)
344
+
345
+ ### 必须 Show 的内容
346
+ - 角色情感(生气、悲伤等)
347
+ - 重要场景(初遇、告别、冲突)
348
+ - 角色性格展示
349
+ - 环境氛围营造
350
+
351
+ ### 可以 Tell 的内容
352
+ - 时间过渡("三天后")
353
+ - 次要角色的背景
354
+ - 不重要的日常活动
355
+ ```
356
+
357
+ ### 在 /plan 阶段
358
+
359
+ **标记需要重点 Show 的场景**
360
+
361
+ ```markdown
362
+ 第 5 章:初遇
363
+
364
+ 【重点 Show】
365
+ - 林晓第一次见到张伟
366
+ - 通过细节展示:
367
+ - 林晓的紧张(身体语言)
368
+ - 张伟的气场(环境反应)
369
+ - 双方的第一印象(行动和对话)
370
+
371
+ 【可以 Tell】
372
+ - 林晓如何到达会议室("她提前十分钟到了")
373
+ - 会议室的常规设施
374
+ ```
375
+
376
+ ### 在 /write 阶段
377
+
378
+ **写作时自查**
379
+
380
+ **步骤 1:找出所有 Tell**
381
+
382
+ 搜索以下词汇:
383
+ - 很(很生气、很高兴)
384
+ - 感到(感到悲伤、感到害怕)
385
+ - 是一个……的人(是一个善良的人)
386
+ - 看起来(看起来很紧张)
387
+
388
+ **步骤 2:评估是否需要改为 Show**
389
+
390
+ ```
391
+ 【发现 Tell】她很生气。
392
+
393
+ 【评估】
394
+ - 这是重要情感吗?是
395
+ - 有篇幅展示吗?有
396
+ - 读者需要感受吗?是
397
+ → 结论:应该改为 Show
398
+
399
+ 【改写】
400
+ 她一言不发地走到窗边,双臂环抱胸前。
401
+ 下巴绷紧,目光死死盯着窗外。
402
+ ```
403
+
404
+ **步骤 3:检查是否过度 Show**
405
+
406
+ ```
407
+ 【发现过度 Show】
408
+ 他起床,洗脸,刷牙(每一步都详细描写 300 字)……
409
+
410
+ 【评估】
411
+ - 这对情节重要吗?否
412
+ - 读者需要知道这些细节吗?否
413
+ → 结论:可以 Tell 或完全省略
414
+
415
+ 【改写】
416
+ 他匆匆洗漱后出门。
417
+ ```
418
+
419
+ ### 在 /analyze 阶段
420
+
421
+ **分析 Show/Tell 比例**
422
+
423
+ ```markdown
424
+ ## Show/Tell 分析
425
+
426
+ ### 统计
427
+ - 纯 Tell 句子:50 句
428
+ - Show 段落:120 段
429
+ - 比例:Show 70% vs Tell 30% ✓
430
+
431
+ ### 问题段落
432
+
433
+ 【第 3 章第 2 段】
434
+ "她很伤心,很失望。"(Tell)
435
+ - 建议:这是重要情感场景,应该 Show
436
+ - 改写:用身体语言和行动展示
437
+
438
+ 【第 10 章第 5 段】
439
+ "她慢慢走到门前,手放在门把上,深呼吸,转动门把……"(过度 Show)
440
+ - 建议:这是次要过渡,可以简化
441
+ - 改写:"她推开门。"
442
+
443
+ ### 优秀段落
444
+
445
+ 【第 7 章第 3 段】
446
+ "他的手机在桌上震动,但他没有看。又震动一次,还是没看。第三次时,他拿起来,看了一眼,然后关机。"
447
+ - 分析:通过行动展示内心挣扎,优秀 Show ✓
448
+ ```
449
+
450
+ ---
451
+
452
+ ## 常见陷阱(Common Pitfalls)
453
+
454
+ ### 1. 过度依赖情感词汇
455
+
456
+ **问题**:直接使用"生气"、"悲伤"、"害怕"等词。
457
+
458
+ ❌ **糟糕示例**:
459
+ ```
460
+ 她很生气,非常生气,气得不行。
461
+ ```
462
+
463
+ ✅ **改进示例**:
464
+ ```
465
+ 她的拳头攥得指节发白。
466
+ 一言不发地盯着他。
467
+ 太阳穴上青筋暴起。
468
+ ```
469
+
470
+ **常见情感词及 Show 替代**:
471
+
472
+ | Tell | Show 示例 |
473
+ |------|----------|
474
+ | 生气 | 拳头紧握/砰地关门/瞪视 |
475
+ | 悲伤 | 眼眶发红/声音哽咽/肩膀颤抖 |
476
+ | 害怕 | 后退一步/瞳孔放大/手心出汗 |
477
+ | 高兴 | 嘴角上扬/眼睛发亮/步伐轻快 |
478
+ | 紧张 | 来回踱步/咬嘴唇/手指敲桌 |
479
+
480
+ ### 2. 告诉读者角色的性格
481
+
482
+ **问题**:直接说"他是一个……的人"。
483
+
484
+ ❌ **糟糕示例**:
485
+ ```
486
+ 林晓是一个善良、勇敢、聪明的人。
487
+ ```
488
+
489
+ ✅ **改进示例**:
490
+ ```
491
+ 【善良】她把午餐分了一半给流浪汉。
492
+ 【勇敢】"我去。"她第一个站出来。
493
+ 【聪明】"等等,这里有蹊跷。"她指着看似无关的两个细节。
494
+ → 通过行动展示性格
495
+ ```
496
+
497
+ **性格展示原则**:
498
+ ```
499
+ 不要说角色是什么样的人
500
+ 展示角色做了什么样的事
501
+ 让读者自己判断
502
+ ```
503
+
504
+ ### 3. 过度 Show 次要内容
505
+
506
+ **问题**:对不重要的细节也详细展示。
507
+
508
+ ❌ **糟糕示例**:
509
+ ```
510
+ 她打开衣柜,里面挂着十几件衣服。她的手指从第一件滑到第二件,
511
+ 然后是第三件。她在心里权衡,这件太正式了,那件又太随意……
512
+ (500 字详细描写选衣服过程)
513
+ 最终,她选了一件蓝色连衣裙。
514
+ ```
515
+
516
+ ✅ **改进示例**:
517
+ ```
518
+ 她换上蓝色连衣裙,出门了。
519
+ → 除非选衣服本身很重要(如第一次约会),否则 Tell 即可
520
+ ```
521
+
522
+ **判断标准**:
523
+ ```
524
+ 重要 → Show
525
+ 不重要 → Tell 或省略
526
+ ```
527
+
528
+ ### 4. "看起来" / "似乎" 的滥用
529
+
530
+ **问题**:用"看起来"、"似乎"等词,实际还是在 Tell。
531
+
532
+ ❌ **假 Show**:
533
+ ```
534
+ 他看起来很生气。
535
+ 她似乎很悲伤。
536
+ ```
537
+
538
+ **分析**:
539
+ - 虽然用了"看起来",但还是在告诉读者结论
540
+ - "很生气"、"很悲伤"仍是抽象词汇
541
+
542
+ ✅ **真 Show**:
543
+ ```
544
+ 他的脸涨红了,拳头攥紧。
545
+ 她的眼眶红了,声音颤抖。
546
+ ```
547
+
548
+ ### 5. 解释角色行为的动机
549
+
550
+ **问题**:做完行为后,再解释为什么这样做。
551
+
552
+ ❌ **糟糕示例**:
553
+ ```
554
+ 她转身离开,因为她很生气。
555
+ 他拒绝了,因为他不信任对方。
556
+ ```
557
+
558
+ **分析**:
559
+ - "因为"后面的内容是 Tell
560
+ - 应该让行为本身展示动机
561
+
562
+ ✅ **改进示例**:
563
+ ```
564
+ 她转身离开,砰地一声摔上门。
565
+ → 行为本身展示了愤怒,不需要说"因为生气"
566
+
567
+ 他后退一步,双手环抱胸前:"我拒绝。"
568
+ → 身体语言展示了不信任
569
+ ```
570
+
571
+ ### 6. 过度描写每个细节
572
+
573
+ **问题**:事无巨细,读者疲劳。
574
+
575
+ ❌ **过度 Show**:
576
+ ```
577
+ 她伸出右手,五指张开,然后慢慢握住门把。
578
+ 门把是金属的,有些冰冷。她能感觉到门把的纹路。
579
+ 她开始转动门把,先是顺时针转了 30 度,
580
+ 然后感觉到里面的锁芯在移动……
581
+ (200 字描写开门)
582
+ ```
583
+
584
+ ✅ **适度 Show**:
585
+ ```
586
+ 她推开门。
587
+ → 除非开门本身很重要(如紧张时刻),否则无需详细描写
588
+ ```
589
+
590
+ **平衡原则**:
591
+ ```
592
+ 重要动作/情感 → 详细 Show
593
+ 日常动作 → 简洁 Show 或 Tell
594
+ ```
595
+
596
+ ---
597
+
598
+ ## 示例分析(Examples)
599
+
600
+ ### 案例 1:情感的 Show vs Tell
601
+
602
+ **场景**:角色得知亲人去世
603
+
604
+ ❌ **全 Tell 版本**:
605
+ ```
606
+ 林晓接到电话,得知父亲去世了。
607
+ 她非常悲伤,感到难以置信。
608
+ 她哭了很久,觉得天都塌了。
609
+ ```
610
+
611
+ **分析**:
612
+ - 全是抽象词汇(悲伤、难以置信、哭)
613
+ - 读者无法感同身受
614
+ - 缺乏画面感
615
+
616
+ ✅ **Show 版本**:
617
+ ```
618
+ 手机从林晓手中滑落,砰地一声摔在地上。
619
+
620
+ 她盯着破碎的屏幕,嘴唇张开,但没有声音。
621
+
622
+ 膝盖发软。
623
+
624
+ 她慢慢坐到地上,背靠着墙。
625
+
626
+ 许久,她的肩膀开始颤抖。
627
+
628
+ 无声地颤抖。
629
+ ```
630
+
631
+ **分析**:
632
+ - 通过身体反应展示(手机滑落、膝盖发软)
633
+ - 通过行动展示(坐到地上)
634
+ - 通过细节展示(无声地颤抖)
635
+ - 读者自己感受到悲伤的重量
636
+
637
+ ### 案例 2:性格的 Show vs Tell
638
+
639
+ **目标**:展示角色"善良"
640
+
641
+ ❌ **Tell 版本**:
642
+ ```
643
+ 林晓是一个善良的人,总是帮助别人。
644
+ 大家都说她心地好。
645
+ ```
646
+
647
+ ✅ **Show 版本**:
648
+ ```
649
+ 【场景 1】
650
+ 流浪汉坐在地铁口,破碗里只有几枚硬币。
651
+ 林晓停下来,从包里拿出午餐盒:"我吃过了,给你吧。"
652
+
653
+ 【场景 2】
654
+ 新来的实习生打翻了咖啡,溅到客户的文件上。
655
+ 所有人都屏住呼吸。
656
+ 林晓站起来:"是我碰的,我来重新打印。"
657
+
658
+ 【场景 3】
659
+ 她看到老人在公交车上站着,周围的人都低头玩手机。
660
+ 她站起来:"您坐。"
661
+ ```
662
+
663
+ **分析**:
664
+ - 通过三个具体行动展示善良
665
+ - 比直接说"善良"更有说服力
666
+ - 读者自己得出结论:"她是个好人"
667
+
668
+ ### 案例 3:环境的 Show vs Tell
669
+
670
+ **场景**:废弃工厂
671
+
672
+ ❌ **Tell 版本**:
673
+ ```
674
+ 这是一个废弃的工厂,很破旧,很可怕。
675
+ 到处都是垃圾,空气很差。
676
+ ```
677
+
678
+ ✅ **Show 版本(多感官)**:
679
+ ```
680
+ 【视觉】
681
+ 铁门锈迹斑斑,一推就掉下来一片锈皮。
682
+ 地上的玻璃碎片在微弱的光下闪烁。
683
+
684
+ 【听觉】
685
+ 她的脚步声在空荡的车间里回荡。
686
+ 远处传来不知名的滴水声。
687
+
688
+ 【嗅觉】
689
+ 空气中是霉菌和机油的混合气味。
690
+
691
+ 【触觉】
692
+ 墙面湿冷粘腻,她赶紧收回手。
693
+ ```
694
+
695
+ **分析**:
696
+ - 不说"破旧"、"可怕"
697
+ - 通过具体细节让读者感受
698
+ - 多感官组合,沉浸感强
699
+
700
+ ### 案例 4:适度 Tell 的例子
701
+
702
+ **场景**:时间过渡
703
+
704
+ ✅ **适度 Tell**:
705
+ ```
706
+ 三个月过去了。
707
+
708
+ 林晓已经完全适应了新工作。← Tell,但合理
709
+
710
+ 这天早上,她像往常一样走进办公室——
711
+ 却发现气氛不对。← Show,重要时刻
712
+ ```
713
+
714
+ **分析**:
715
+ - 过渡用 Tell(三个月、适应工作)
716
+ - 重要时刻用 Show(气氛不对)
717
+ - 平衡效率和生动性
718
+
719
+ ---
720
+
721
+ ## 进阶技巧(Advanced Techniques)
722
+
723
+ ### 1. 间接 Show(Indirect Showing)
724
+
725
+ **技巧**:不直接描述事物,通过周围事物反映。
726
+
727
+ **示例 1:展示角色很有钱**
728
+
729
+ ❌ **直接 Show**:
730
+ ```
731
+ 他穿着名牌西装,戴着劳力士手表。
732
+ ```
733
+
734
+ ✅ **间接 Show**:
735
+ ```
736
+ 服务员看到他,立刻毕恭毕敬地迎上来。
737
+ "先生,您的老位置已经准备好了。"
738
+ ```
739
+
740
+ **示例 2:展示角色很美**
741
+
742
+ ❌ **直接 Show**:
743
+ ```
744
+ 她有大眼睛,高鼻梁,完美的身材。
745
+ ```
746
+
747
+ ✅ **间接 Show**:
748
+ ```
749
+ 她走进房间,谈话声停顿了一秒。
750
+ 所有人的目光都转向她,然后又若无其事地移开。
751
+ ```
752
+
753
+ **为什么间接更好**:
754
+ - 更微妙
755
+ - 展示他人反应 = 更可信
756
+ - 避免直接描述的尴尬
757
+
758
+ ### 2. 对比 Show(Contrast Showing)
759
+
760
+ **技巧**:通过前后对比展示变化。
761
+
762
+ **示例:展示角色的改变**
763
+
764
+ ```
765
+ 【故事开始】
766
+ 她总是低着头走路,碰到人就道歉。
767
+
768
+ 【故事结束】
769
+ 她直视对方的眼睛:"不,我不同意。"
770
+ → 通过对比展示成长,无需说"她变勇敢了"
771
+ ```
772
+
773
+ ### 3. 细节堆叠(Detail Stacking)
774
+
775
+ **技巧**:用多个小细节组合,展示一个大概念。
776
+
777
+ **示例:展示贫穷**
778
+
779
+ ```
780
+ 不要只说:"他很穷。"
781
+
782
+ 细节堆叠:
783
+ - 鞋底破了个洞
784
+ - 外套的袖口磨得发白
785
+ - 他只点了最便宜的菜
786
+ - 钱包里只有几枚硬币
787
+ - 手机是五年前的旧款
788
+ → 多个细节组合 = 强烈印象
789
+ ```
790
+
791
+ ### 4. 环境作为情感镜子(Pathetic Fallacy)
792
+
793
+ **技巧**:用环境反映角色情感。
794
+
795
+ ```
796
+ 【角色悲伤】
797
+ 外面开始下雨。
798
+ 雨水顺着窗户流下,像眼泪。
799
+
800
+ 【角色孤独】
801
+ 房间里只有钟表的滴答声。
802
+ 窗外的街道空无一人。
803
+
804
+ 【角色希望】
805
+ 第一缕阳光照进房间。
806
+ 鸟儿开始鸣叫。
807
+ ```
808
+
809
+ **警告**:不要过度使用,否则会显得刻意。
810
+
811
+ ### 5. 留白的艺术(Showing by Not Showing)
812
+
813
+ **技巧**:有时不说出来,反而更有力。
814
+
815
+ **示例**:
816
+
817
+ ```
818
+ 【要展示】他们做了X事(但X很敏感)
819
+
820
+ 【不直接展示】
821
+ 切换到第二天早上。
822
+ 她坐在床边,默默整理衣服。
823
+ 他在厨房做早餐,谁也没说话。
824
+ → 读者自己推测发生了什么
825
+ ```
826
+
827
+ ---
828
+
829
+ ## 检查清单(Checklist)
830
+
831
+ ### Show/Tell 检查
832
+
833
+ #### 识别 Tell
834
+ - [ ] 搜索"很"(很生气、很累)
835
+ - [ ] 搜索"感到"(感到悲伤)
836
+ - [ ] 搜索"是一个……的人"
837
+ - [ ] 搜索情感词汇(生气、悲伤、害怕)
838
+
839
+ #### 评估是否改为 Show
840
+ - [ ] 这是重要情感/场景吗?
841
+ - [ ] 有篇幅展示吗?
842
+ - [ ] 读者需要感受吗?
843
+ - [ ] 如果3个都是"是"→ 改为 Show
844
+
845
+ #### Show 质量检查
846
+ - [ ] 是否用了具体细节(而非抽象词)?
847
+ - [ ] 是否使用了身体语言/行动?
848
+ - [ ] 是否调动了感官(视觉、听觉等)?
849
+ - [ ] 读者能自己推导出结论吗?
850
+
851
+ #### 避免过度 Show
852
+ - [ ] 是否 Show 了不重要的内容?
853
+ - [ ] 是否每个细节都展示(拖沓)?
854
+ - [ ] 次要内容可以 Tell 或删除吗?
855
+
856
+ ### 场景层面检查
857
+
858
+ #### 重要场景(必须 Show)
859
+ - [ ] 角色初遇
860
+ - [ ] 重要冲突
861
+ - [ ] 情感爆发
862
+ - [ ] 关键选择
863
+ - [ ] 高潮时刻
864
+
865
+ #### 可以 Tell 的内容
866
+ - [ ] 时间过渡
867
+ - [ ] 次要角色背景
868
+ - [ ] 不重要的日常活动
869
+ - [ ] 快速推进情节
870
+
871
+ ---
872
+
873
+ ## 与七步方法论的集成
874
+
875
+ ### /constitution - 宪法阶段
876
+
877
+ 设定 Show/Tell 原则:
878
+
879
+ ```markdown
880
+ ## Show/Tell 原则
881
+
882
+ - 整体比例:Show 70% / Tell 30%
883
+ - 所有重要情感必须 Show
884
+ - 允许次要内容 Tell
885
+ - 避免直接说出角色性格,用行动展示
886
+ ```
887
+
888
+ ### /specify - 详细设定
889
+
890
+ 标记需要重点 Show 的元素:
891
+
892
+ ```markdown
893
+ ## 必须 Show 的内容
894
+
895
+ ### 角色
896
+ - 林晓的谨慎性格 → 通过反复确认、犹豫的行动展示
897
+ - 张伟的冲动性格 → 通过快速决定、行动展示
898
+
899
+ ### 关键场景
900
+ - 第 1 章初遇 → 详细 Show
901
+ - 第 10 章冲突 → 详细 Show
902
+ - 第 18 章和解 → 详细 Show
903
+ ```
904
+
905
+ ### /plan - 规划阶段
906
+
907
+ 为每个场景规划 Show/Tell 策略:
908
+
909
+ ```markdown
910
+ 第 5 章:重要谈判
911
+
912
+ 【必须 Show】
913
+ - 林晓的紧张(身体语言)
914
+ - 对方的压迫感(环境/他人反应)
915
+ - 谈判的紧张氛围(多感官细节)
916
+
917
+ 【可以 Tell】
918
+ - 林晓如何到达会议室
919
+ - 会议室的基本布局(除非重要)
920
+ ```
921
+
922
+ ### /write - 写作阶段
923
+
924
+ 写作后自查:
925
+
926
+ **步骤 1:全文搜索 Tell 词汇**
927
+ ```
928
+ 搜索:很、感到、是一个、看起来、似乎
929
+ ```
930
+
931
+ **步骤 2:评估每个 Tell**
932
+ ```
933
+ 这个 Tell 应该改为 Show 吗?
934
+ - 是重要内容吗?
935
+ - 有篇幅吗?
936
+ - 读者需要感受吗?
937
+ ```
938
+
939
+ **步骤 3:改写**
940
+ ```
941
+ Tell → Show
942
+ 【Tell】她很生气。
943
+ 【Show】她一拳砸在桌上,杯子跳了起来。
944
+ ```
945
+
946
+ ### /analyze - 分析阶段
947
+
948
+ 分析 Show/Tell 质量:
949
+
950
+ ```markdown
951
+ ## Show/Tell 分析
952
+
953
+ ### 比例统计
954
+ - Show: 145 段(72%)
955
+ - Tell: 55 段(28%)
956
+ → 比例合理 ✓
957
+
958
+ ### 问题段落
959
+ 第 3 章第 5 段:"她是一个善良的人"
960
+ - 问题:Tell 性格
961
+ - 建议:改为行动展示
962
+
963
+ 第 10 章第 2 段:详细描写穿衣过程(300字)
964
+ - 问题:过度 Show 次要内容
965
+ - 建议:简化为"她换好衣服出门"
966
+
967
+ ### 优秀段落
968
+ 第 7 章第 3 段:通过手指颤抖、声音哽咽展示悲伤
969
+ - 分析:优秀 Show,无情感词汇 ✓
970
+ ```
971
+
972
+ ---
973
+
974
+ ## 总结(Summary)
975
+
976
+ **Show, Don't Tell 的黄金法则**:
977
+
978
+ 1. **Show 重要的,Tell 次要的**
979
+ 2. **用具体细节替代抽象词汇**
980
+ 3. **展示行动和身体语言,而非情感词汇**
981
+ 4. **调动五感,让读者"进入"场景**
982
+ 5. **让读者自己推导结论**
983
+
984
+ **Show 的三个工具**:
985
+
986
+ | 工具 | 方法 | 示例 |
987
+ |------|------|------|
988
+ | 行动 | 角色做什么 | 她摔门离开 |
989
+ | 身体语言 | 微表情、姿态 | 拳头紧握、瞳孔放大 |
990
+ | 感官细节 | 五感描写 | 消毒水的气味、冰冷的触感 |
991
+
992
+ **何时 Tell**:
993
+ - 过渡信息("三天后")
994
+ - 次要内容(不重要的背景)
995
+ - 节奏需要(快速推进)
996
+
997
+ **最重要的**:
998
+ ```
999
+ Show ≠ 事无巨细描写每个细节
1000
+ Show = 用具体细节展示重要内容
1001
+ 让读者参与推理
1002
+ ```
1003
+
1004
+ **最终测试**:
1005
+ 删除所有情感词汇(生气、悲伤、害怕)。
1006
+ 读者仍能感受到角色的情感吗?
1007
+ 如果能,你的 Show 成功了。
1008
+
1009
+ **记住**:
1010
+ Show 让读者**体验**故事
1011
+ Tell 让读者**了解**故事
1012
+ 体验比了解更有力量。