docrev 0.11.1 → 0.11.3

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 (144) hide show
  1. package/.gitattributes +1 -1
  2. package/CHANGELOG.md +207 -197
  3. package/PLAN-tables-and-postprocess.md +850 -850
  4. package/README.md +433 -433
  5. package/bin/rev.js +11 -11
  6. package/bin/rev.ts +145 -145
  7. package/completions/rev.bash +127 -127
  8. package/completions/rev.ps1 +210 -210
  9. package/completions/rev.zsh +207 -207
  10. package/dist/lib/annotations.d.ts.map +1 -1
  11. package/dist/lib/annotations.js +28 -0
  12. package/dist/lib/annotations.js.map +1 -1
  13. package/dist/lib/build.d.ts +28 -0
  14. package/dist/lib/build.d.ts.map +1 -1
  15. package/dist/lib/build.js +81 -4
  16. package/dist/lib/build.js.map +1 -1
  17. package/dist/lib/commands/comments.d.ts.map +1 -1
  18. package/dist/lib/commands/comments.js +58 -28
  19. package/dist/lib/commands/comments.js.map +1 -1
  20. package/dist/lib/commands/context.d.ts +1 -0
  21. package/dist/lib/commands/context.d.ts.map +1 -1
  22. package/dist/lib/commands/context.js +1 -0
  23. package/dist/lib/commands/context.js.map +1 -1
  24. package/dist/lib/commands/core.d.ts.map +1 -1
  25. package/dist/lib/commands/core.js +25 -8
  26. package/dist/lib/commands/core.js.map +1 -1
  27. package/dist/lib/commands/response.js +1 -1
  28. package/dist/lib/commands/response.js.map +1 -1
  29. package/dist/lib/commands/utilities.js +164 -164
  30. package/dist/lib/commands/word-tools.js +8 -8
  31. package/dist/lib/grammar.js +3 -3
  32. package/dist/lib/import.d.ts +14 -0
  33. package/dist/lib/import.d.ts.map +1 -1
  34. package/dist/lib/import.js +23 -0
  35. package/dist/lib/import.js.map +1 -1
  36. package/dist/lib/input.d.ts +67 -0
  37. package/dist/lib/input.d.ts.map +1 -0
  38. package/dist/lib/input.js +164 -0
  39. package/dist/lib/input.js.map +1 -0
  40. package/dist/lib/macro-filter.lua +201 -201
  41. package/dist/lib/pdf-comments.js +44 -44
  42. package/dist/lib/plugins.js +57 -57
  43. package/dist/lib/pptx-color-filter.lua +37 -37
  44. package/dist/lib/pptx-themes.js +115 -115
  45. package/dist/lib/response.d.ts +1 -1
  46. package/dist/lib/response.d.ts.map +1 -1
  47. package/dist/lib/response.js +5 -2
  48. package/dist/lib/response.js.map +1 -1
  49. package/dist/lib/schema.d.ts.map +1 -1
  50. package/dist/lib/schema.js +8 -2
  51. package/dist/lib/schema.js.map +1 -1
  52. package/dist/lib/spelling.js +2 -2
  53. package/dist/lib/templates.js +387 -387
  54. package/dist/lib/themes.js +51 -51
  55. package/eslint.config.js +27 -27
  56. package/lib/anchor-match.ts +307 -307
  57. package/lib/annotations.ts +695 -664
  58. package/lib/build.ts +2047 -1956
  59. package/lib/citations.ts +160 -160
  60. package/lib/commands/build.ts +885 -885
  61. package/lib/commands/citations.ts +515 -515
  62. package/lib/commands/comments.ts +1077 -1050
  63. package/lib/commands/context.ts +185 -176
  64. package/lib/commands/core.ts +328 -309
  65. package/lib/commands/doi.ts +451 -451
  66. package/lib/commands/file-ops.ts +372 -372
  67. package/lib/commands/history.ts +320 -320
  68. package/lib/commands/index.ts +87 -87
  69. package/lib/commands/init.ts +259 -259
  70. package/lib/commands/merge-resolve.ts +378 -378
  71. package/lib/commands/preview.ts +178 -178
  72. package/lib/commands/project-info.ts +244 -244
  73. package/lib/commands/quality.ts +517 -517
  74. package/lib/commands/response.ts +454 -454
  75. package/lib/commands/section-boundaries.ts +82 -82
  76. package/lib/commands/sections.ts +451 -451
  77. package/lib/commands/sync.ts +689 -689
  78. package/lib/commands/text-ops.ts +449 -449
  79. package/lib/commands/utilities.ts +448 -448
  80. package/lib/commands/verify-anchors.ts +272 -272
  81. package/lib/commands/word-tools.ts +340 -340
  82. package/lib/comment-realign.ts +99 -99
  83. package/lib/config.ts +84 -84
  84. package/lib/crossref.ts +781 -781
  85. package/lib/csl.ts +191 -191
  86. package/lib/dependencies.ts +132 -132
  87. package/lib/diff-engine.ts +465 -465
  88. package/lib/doi-cache.ts +115 -115
  89. package/lib/doi.ts +879 -879
  90. package/lib/equations.ts +506 -506
  91. package/lib/errors.ts +350 -350
  92. package/lib/format.ts +541 -541
  93. package/lib/git.ts +326 -326
  94. package/lib/grammar.ts +303 -303
  95. package/lib/image-registry.ts +180 -180
  96. package/lib/import.ts +932 -906
  97. package/lib/input.ts +174 -0
  98. package/lib/journals.ts +543 -543
  99. package/lib/macro-filter.lua +201 -201
  100. package/lib/macros.ts +273 -273
  101. package/lib/merge.ts +633 -633
  102. package/lib/ooxml.ts +768 -768
  103. package/lib/orcid.ts +144 -144
  104. package/lib/pdf-comments.ts +263 -263
  105. package/lib/pdf-import.ts +524 -524
  106. package/lib/plugins.ts +362 -362
  107. package/lib/postprocess.ts +188 -188
  108. package/lib/pptx-color-filter.lua +37 -37
  109. package/lib/pptx-template.ts +469 -469
  110. package/lib/pptx-themes.ts +483 -483
  111. package/lib/protect-restore.ts +520 -520
  112. package/lib/rate-limiter.ts +127 -127
  113. package/lib/response.ts +200 -197
  114. package/lib/restore-references.ts +240 -240
  115. package/lib/review.ts +327 -327
  116. package/lib/schema.ts +494 -488
  117. package/lib/scientific-words.ts +73 -73
  118. package/lib/sections.ts +428 -428
  119. package/lib/slides.ts +756 -756
  120. package/lib/spelling.ts +334 -334
  121. package/lib/templates.ts +526 -526
  122. package/lib/themes.ts +742 -742
  123. package/lib/trackchanges.ts +166 -166
  124. package/lib/tui.ts +450 -450
  125. package/lib/types.ts +546 -546
  126. package/lib/undo.ts +250 -250
  127. package/lib/utils.ts +69 -69
  128. package/lib/variables.ts +179 -179
  129. package/lib/word-extraction.ts +525 -525
  130. package/lib/word.ts +526 -526
  131. package/lib/wordcomments.ts +789 -789
  132. package/package.json +1 -1
  133. package/scripts/postbuild.js +47 -47
  134. package/skill/REFERENCE.md +550 -550
  135. package/skill/SKILL.md +302 -302
  136. package/tsconfig.json +26 -26
  137. package/types/index.d.ts +531 -531
  138. package/issues.md +0 -180
  139. package/site/assets/extra.css +0 -208
  140. package/site/commands.html +0 -926
  141. package/site/configuration.html +0 -469
  142. package/site/index.html +0 -288
  143. package/site/troubleshooting.html +0 -461
  144. package/site/workflow.html +0 -518
@@ -1,926 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en" data-bs-theme="light">
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1">
6
- <title>Commands — docrev</title>
7
- <meta name="description" content="CLI for writing documents in Markdown while collaborating with Word users.">
8
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootswatch@5.3.3/dist/sandstone/bootstrap.min.css">
9
- <style>
10
- html { -webkit-text-size-adjust: 100%; }
11
- pre > code.sourceCode { white-space: pre; position: relative; }
12
- pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
13
- pre > code.sourceCode > span:empty { height: 1.2em; }
14
- .sourceCode { overflow: visible; }
15
- code.sourceCode > span { color: inherit; text-decoration: inherit; }
16
- div.sourceCode { margin: 1em 0; }
17
- pre.sourceCode { margin: 0; }
18
- @media screen {
19
- div.sourceCode { overflow: auto; }
20
- }
21
- @media print {
22
- pre > code.sourceCode { white-space: pre-wrap; }
23
- pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
24
- }
25
- pre.numberSource code
26
- { counter-reset: source-line 0; }
27
- pre.numberSource code > span
28
- { position: relative; left: -4em; counter-increment: source-line; }
29
- pre.numberSource code > span > a:first-child::before
30
- { content: counter(source-line);
31
- position: relative; left: -1em; text-align: right; vertical-align: baseline;
32
- border: none; display: inline-block;
33
- -webkit-touch-callout: none; -webkit-user-select: none;
34
- -khtml-user-select: none; -moz-user-select: none;
35
- -ms-user-select: none; user-select: none;
36
- padding: 0 4px; width: 4em;
37
- color: #aaaaaa;
38
- }
39
- pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
40
- div.sourceCode
41
- { }
42
- @media screen {
43
- pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
44
- }
45
- code span.al { color: #ff0000; font-weight: bold; } /* Alert */
46
- code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
47
- code span.at { color: #7d9029; } /* Attribute */
48
- code span.bn { color: #40a070; } /* BaseN */
49
- code span.bu { color: #008000; } /* BuiltIn */
50
- code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
51
- code span.ch { color: #4070a0; } /* Char */
52
- code span.cn { color: #880000; } /* Constant */
53
- code span.co { color: #60a0b0; font-style: italic; } /* Comment */
54
- code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
55
- code span.do { color: #ba2121; font-style: italic; } /* Documentation */
56
- code span.dt { color: #902000; } /* DataType */
57
- code span.dv { color: #40a070; } /* DecVal */
58
- code span.er { color: #ff0000; font-weight: bold; } /* Error */
59
- code span.ex { } /* Extension */
60
- code span.fl { color: #40a070; } /* Float */
61
- code span.fu { color: #06287e; } /* Function */
62
- code span.im { color: #008000; font-weight: bold; } /* Import */
63
- code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
64
- code span.kw { color: #007020; font-weight: bold; } /* Keyword */
65
- code span.op { color: #666666; } /* Operator */
66
- code span.ot { color: #007020; } /* Other */
67
- code span.pp { color: #bc7a00; } /* Preprocessor */
68
- code span.sc { color: #4070a0; } /* SpecialChar */
69
- code span.ss { color: #bb6688; } /* SpecialString */
70
- code span.st { color: #4070a0; } /* String */
71
- code span.va { color: #19177c; } /* Variable */
72
- code span.vs { color: #4070a0; } /* VerbatimString */
73
- code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
74
- </style>
75
- <link rel="stylesheet" href="assets/extra.css">
76
- </head>
77
- <body>
78
-
79
- <nav class="navbar navbar-expand-lg fixed-top" aria-label="Site navigation">
80
- <div class="container">
81
- <a class="navbar-brand me-2" href="index.html">docrev</a>
82
- <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar-main" aria-controls="navbar-main" aria-expanded="false" aria-label="Toggle navigation">
83
- <span class="navbar-toggler-icon"></span>
84
- </button>
85
- <div class="collapse navbar-collapse" id="navbar-main">
86
- <ul class="navbar-nav me-auto">
87
- <li class="nav-item">
88
- <a class="nav-link" href="index.html">Home</a>
89
- </li>
90
- <li class="nav-item">
91
- <a class="nav-link" href="workflow.html">Get Started</a>
92
- </li>
93
- <li class="nav-item">
94
- <a class="nav-link active" aria-current="page" href="commands.html">Commands</a>
95
- </li>
96
- <li class="nav-item">
97
- <a class="nav-link" href="configuration.html">Configuration</a>
98
- </li>
99
- <li class="nav-item">
100
- <a class="nav-link" href="troubleshooting.html">Troubleshooting</a>
101
- </li>
102
- </ul>
103
- <ul class="navbar-nav">
104
- <li class="nav-item">
105
- <button id="theme-toggle" class="btn btn-link nav-link border-0" aria-label="Toggle dark mode">
106
- <svg id="icon-sun" xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
107
- <path d="M8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6m0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8M8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0m0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13m8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5M3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8m10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0m-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707M4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707"/>
108
- </svg>
109
- <svg id="icon-moon" xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16" style="display:none">
110
- <path d="M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278"/>
111
- </svg>
112
- </button>
113
- </li>
114
- <li class="nav-item">
115
- <a class="nav-link" href="https://github.com/gcol33/docrev" aria-label="GitHub">
116
- <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" viewBox="0 0 16 16">
117
- <path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
118
- </svg>
119
- </a>
120
- </li>
121
- <li class="nav-item">
122
- <a class="nav-link" href="https://www.npmjs.com/package/docrev" aria-label="npm">
123
- <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
124
- <path d="M0 0v16h16V0zm5.333 13.333H2.667V5.333h2.666v5.334H8V5.333h2.667v8H5.333z"/>
125
- </svg>
126
- </a>
127
- </li>
128
- </ul>
129
- </div>
130
- </div>
131
- </nav>
132
-
133
- <div class="container template-article">
134
- <div class="row">
135
- <main id="main" class="col-md-9">
136
- <h1 id="command-reference">Command Reference</h1>
137
- <p>Complete list of <code>rev</code> commands.</p>
138
- <h2 id="build-create">Build &amp; Create</h2>
139
- <table>
140
- <colgroup>
141
- <col style="width: 40%" />
142
- <col style="width: 59%" />
143
- </colgroup>
144
- <thead>
145
- <tr>
146
- <th>Command</th>
147
- <th>Description</th>
148
- </tr>
149
- </thead>
150
- <tbody>
151
- <tr>
152
- <td><code>rev build [formats...]</code></td>
153
- <td>Build PDF/DOCX/TEX from sections</td>
154
- </tr>
155
- <tr>
156
- <td><code>rev build pdf</code></td>
157
- <td>Build PDF only</td>
158
- </tr>
159
- <tr>
160
- <td><code>rev build docx</code></td>
161
- <td>Build DOCX only</td>
162
- </tr>
163
- <tr>
164
- <td><code>rev build tex</code></td>
165
- <td>Build LaTeX only</td>
166
- </tr>
167
- <tr>
168
- <td><code>rev build all</code></td>
169
- <td>Build PDF + DOCX + TEX</td>
170
- </tr>
171
- <tr>
172
- <td><code>rev build --toc</code></td>
173
- <td>Include table of contents</td>
174
- </tr>
175
- <tr>
176
- <td><code>rev build --dual</code></td>
177
- <td>Output clean + comments DOCX (with threaded comments)</td>
178
- </tr>
179
- <tr>
180
- <td><code>rev build --show-changes</code></td>
181
- <td>Export DOCX with visible track changes</td>
182
- </tr>
183
- <tr>
184
- <td><code>rev new &lt;name&gt;</code></td>
185
- <td>Create new project (prompts for sections)</td>
186
- </tr>
187
- <tr>
188
- <td><code>rev new &lt;name&gt; -s intro,methods,results</code></td>
189
- <td>Create with specified sections</td>
190
- </tr>
191
- <tr>
192
- <td><code>rev new --list</code></td>
193
- <td>List available templates</td>
194
- </tr>
195
- <tr>
196
- <td><code>rev install</code></td>
197
- <td>Check/install dependencies (pandoc-crossref)</td>
198
- </tr>
199
- </tbody>
200
- </table>
201
- <h2 id="import-export">Import &amp; Export</h2>
202
- <table>
203
- <colgroup>
204
- <col style="width: 40%" />
205
- <col style="width: 59%" />
206
- </colgroup>
207
- <thead>
208
- <tr>
209
- <th>Command</th>
210
- <th>Description</th>
211
- </tr>
212
- </thead>
213
- <tbody>
214
- <tr>
215
- <td><code>rev import &lt;docx&gt;</code></td>
216
- <td>Bootstrap project from Word (creates sections + rev.yaml)</td>
217
- </tr>
218
- <tr>
219
- <td><code>rev import &lt;docx&gt; &lt;md&gt;</code></td>
220
- <td>Import changes by diffing Word against your MD</td>
221
- </tr>
222
- <tr>
223
- <td><code>rev sync [docx] [sections...]</code></td>
224
- <td>Sync feedback from Word to section files</td>
225
- </tr>
226
- <tr>
227
- <td><code>rev sync</code></td>
228
- <td>Auto-detect most recent .docx</td>
229
- </tr>
230
- <tr>
231
- <td><code>rev sync reviewed.docx methods</code></td>
232
- <td>Sync only methods section</td>
233
- </tr>
234
- <tr>
235
- <td><code>rev sync annotated.pdf</code></td>
236
- <td>Extract comments from PDF into markdown</td>
237
- </tr>
238
- <tr>
239
- <td><code>rev extract &lt;docx&gt;</code></td>
240
- <td>Extract plain text from Word</td>
241
- </tr>
242
- <tr>
243
- <td><code>rev archive</code></td>
244
- <td>Move reviewer .docx files to archive folder</td>
245
- </tr>
246
- <tr>
247
- <td><code>rev archive --by Smith</code></td>
248
- <td>Specify reviewer name</td>
249
- </tr>
250
- <tr>
251
- <td><code>rev archive --dry-run</code></td>
252
- <td>Preview without moving</td>
253
- </tr>
254
- </tbody>
255
- </table>
256
- <p><strong>Word Import Features:</strong> - Extracts text
257
- preserving structure - Extracts comments with author and anchor
258
- text - Converts OMML equations to LaTeX - Extracts embedded images
259
- to <code>media/</code> directory</p>
260
- <h2 id="pdf-comments">PDF Comments</h2>
261
- <table>
262
- <colgroup>
263
- <col style="width: 40%" />
264
- <col style="width: 59%" />
265
- </colgroup>
266
- <thead>
267
- <tr>
268
- <th>Command</th>
269
- <th>Description</th>
270
- </tr>
271
- </thead>
272
- <tbody>
273
- <tr>
274
- <td><code>rev pdf-comments &lt;pdf&gt;</code></td>
275
- <td>Extract and display comments from annotated PDF</td>
276
- </tr>
277
- <tr>
278
- <td><code>rev pdf-comments &lt;pdf&gt; --with-text</code></td>
279
- <td>Also extract the highlighted text content</td>
280
- </tr>
281
- <tr>
282
- <td><code>rev pdf-comments &lt;pdf&gt; --append &lt;file.md&gt;</code></td>
283
- <td>Append extracted comments to markdown file</td>
284
- </tr>
285
- <tr>
286
- <td><code>rev pdf-comments &lt;pdf&gt; --json</code></td>
287
- <td>Output comments as JSON</td>
288
- </tr>
289
- <tr>
290
- <td><code>rev pdf-comments &lt;pdf&gt; --by-page</code></td>
291
- <td>Group comments by page (default)</td>
292
- </tr>
293
- <tr>
294
- <td><code>rev pdf-comments &lt;pdf&gt; --by-author</code></td>
295
- <td>Group comments by author</td>
296
- </tr>
297
- <tr>
298
- <td><code>rev build pdf --dual</code></td>
299
- <td>Build clean PDF + annotated PDF with margin notes</td>
300
- </tr>
301
- </tbody>
302
- </table>
303
- <p><strong>Supported PDF Annotations:</strong> - Sticky notes
304
- (Text annotations) - Text boxes (FreeText) - Highlights with
305
- comments (text extraction supported) - Underlines with comments
306
- (text extraction supported) - Strikethrough/deletion suggestions
307
- (text extraction supported) - Squiggly underlines (text extraction
308
- supported)</p>
309
- <p><strong>Text Extraction:</strong> Use <code>--with-text</code>
310
- to extract the actual text that was highlighted, underlined, or
311
- struck through. This is slower but shows exactly what the reviewer
312
- marked.</p>
313
- <p><strong>PDF Dual Export:</strong> When building with
314
- <code>--dual</code>, produces: - <code>paper.pdf</code> — clean
315
- version for submission - <code>paper_comments.pdf</code> —
316
- CriticMarkup comments rendered as LaTeX margin notes</p>
317
- <h2 id="review-edit">Review &amp; Edit</h2>
318
- <table>
319
- <colgroup>
320
- <col style="width: 40%" />
321
- <col style="width: 59%" />
322
- </colgroup>
323
- <thead>
324
- <tr>
325
- <th>Command</th>
326
- <th>Description</th>
327
- </tr>
328
- </thead>
329
- <tbody>
330
- <tr>
331
- <td><code>rev review &lt;file&gt;</code></td>
332
- <td>Interactive accept/reject TUI for track changes</td>
333
- </tr>
334
- <tr>
335
- <td><code>rev status</code></td>
336
- <td>Show project overview (words, comments, changes)</td>
337
- </tr>
338
- <tr>
339
- <td><code>rev status &lt;file&gt;</code></td>
340
- <td>Show annotation counts for specific file</td>
341
- </tr>
342
- <tr>
343
- <td><code>rev comments &lt;file&gt;</code></td>
344
- <td>List all comments with context</td>
345
- </tr>
346
- <tr>
347
- <td><code>rev comments &lt;file&gt; --export comments.csv</code></td>
348
- <td>Export comments to CSV</td>
349
- </tr>
350
- <tr>
351
- <td><code>rev resolve &lt;file&gt; -n 1</code></td>
352
- <td>Mark comment #1 as resolved</td>
353
- </tr>
354
- <tr>
355
- <td><code>rev strip &lt;file&gt;</code></td>
356
- <td>Output clean Markdown (annotations applied)</td>
357
- </tr>
358
- </tbody>
359
- </table>
360
- <h2 id="comment-navigation">Comment Navigation</h2>
361
- <table>
362
- <thead>
363
- <tr>
364
- <th>Command</th>
365
- <th>Description</th>
366
- </tr>
367
- </thead>
368
- <tbody>
369
- <tr>
370
- <td><code>rev next</code></td>
371
- <td>Show next pending comment</td>
372
- </tr>
373
- <tr>
374
- <td><code>rev next -n 3</code></td>
375
- <td>Show 3rd pending comment</td>
376
- </tr>
377
- <tr>
378
- <td><code>rev prev</code></td>
379
- <td>Show last pending comment</td>
380
- </tr>
381
- <tr>
382
- <td><code>rev prev -n 2</code></td>
383
- <td>Show 2nd from last pending</td>
384
- </tr>
385
- <tr>
386
- <td><code>rev first</code></td>
387
- <td>Show first comment (all, not just pending)</td>
388
- </tr>
389
- <tr>
390
- <td><code>rev first methods</code></td>
391
- <td>First comment in methods section</td>
392
- </tr>
393
- <tr>
394
- <td><code>rev last</code></td>
395
- <td>Show last comment</td>
396
- </tr>
397
- <tr>
398
- <td><code>rev todo</code></td>
399
- <td>List all pending comments as checklist</td>
400
- </tr>
401
- <tr>
402
- <td><code>rev todo --by-author</code></td>
403
- <td>Group pending comments by author</td>
404
- </tr>
405
- </tbody>
406
- </table>
407
- <h2 id="track-changes">Track Changes</h2>
408
- <table>
409
- <thead>
410
- <tr>
411
- <th>Command</th>
412
- <th>Description</th>
413
- </tr>
414
- </thead>
415
- <tbody>
416
- <tr>
417
- <td><code>rev accept &lt;file&gt;</code></td>
418
- <td>List track changes</td>
419
- </tr>
420
- <tr>
421
- <td><code>rev accept &lt;file&gt; -n 1</code></td>
422
- <td>Accept change #1</td>
423
- </tr>
424
- <tr>
425
- <td><code>rev accept &lt;file&gt; -a</code></td>
426
- <td>Accept all changes</td>
427
- </tr>
428
- <tr>
429
- <td><code>rev reject &lt;file&gt; -n 1</code></td>
430
- <td>Reject change #1</td>
431
- </tr>
432
- <tr>
433
- <td><code>rev reject &lt;file&gt; -a</code></td>
434
- <td>Reject all changes</td>
435
- </tr>
436
- </tbody>
437
- </table>
438
- <h2 id="cross-references">Cross-References</h2>
439
- <table>
440
- <colgroup>
441
- <col style="width: 40%" />
442
- <col style="width: 59%" />
443
- </colgroup>
444
- <thead>
445
- <tr>
446
- <th>Command</th>
447
- <th>Description</th>
448
- </tr>
449
- </thead>
450
- <tbody>
451
- <tr>
452
- <td><code>rev refs [file]</code></td>
453
- <td>Show figure/table registry and reference status</td>
454
- </tr>
455
- <tr>
456
- <td><code>rev migrate &lt;file&gt;</code></td>
457
- <td>Convert hardcoded refs (Fig. 1) to dynamic (<span
458
- class="citation" data-cites="fig:label">@fig:label</span>)</td>
459
- </tr>
460
- </tbody>
461
- </table>
462
- <p><strong>Supported patterns:</strong> - <code>Figure 1</code> →
463
- <code>@fig:label</code> - <code>Fig. 2a</code> →
464
- <code>@fig:label</code> - <code>Figs. 1-3</code> →
465
- <code>@fig:one; @fig:two; @fig:three</code> -
466
- <code>Figures 1, 2, and 3</code> → multiple refs -
467
- <code>Fig. 1a-c</code> → expands letter suffixes</p>
468
- <h2 id="comments-replies">Comments &amp; Replies</h2>
469
- <table>
470
- <colgroup>
471
- <col style="width: 40%" />
472
- <col style="width: 59%" />
473
- </colgroup>
474
- <thead>
475
- <tr>
476
- <th>Command</th>
477
- <th>Description</th>
478
- </tr>
479
- </thead>
480
- <tbody>
481
- <tr>
482
- <td><code>rev config user "Name"</code></td>
483
- <td>Set your name for replies</td>
484
- </tr>
485
- <tr>
486
- <td><code>rev config sections "a,b,c"</code></td>
487
- <td>Set default sections for new projects</td>
488
- </tr>
489
- <tr>
490
- <td><code>rev reply &lt;file&gt;</code></td>
491
- <td>Interactive reply to reviewer comments</td>
492
- </tr>
493
- <tr>
494
- <td><code>rev reply &lt;file&gt; -n 1 -m "text"</code></td>
495
- <td>Reply to specific comment (non-interactive)</td>
496
- </tr>
497
- </tbody>
498
- </table>
499
- <p><strong>Comment Threading:</strong> Adjacent comments from
500
- different authors become threaded replies in Word:</p>
501
- <div class="sourceCode" id="cb1"><pre
502
- class="sourceCode markdown"><code class="sourceCode markdown"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a>{&gt;&gt;Guy Colling: Question?&lt;&lt;} {&gt;&gt;Gilles Colling: Answer.&lt;&lt;}</span></code></pre></div>
503
- <h2 id="bibliography-dois">Bibliography &amp; DOIs</h2>
504
- <table>
505
- <colgroup>
506
- <col style="width: 40%" />
507
- <col style="width: 59%" />
508
- </colgroup>
509
- <thead>
510
- <tr>
511
- <th>Command</th>
512
- <th>Description</th>
513
- </tr>
514
- </thead>
515
- <tbody>
516
- <tr>
517
- <td><code>rev doi check [file.bib]</code></td>
518
- <td>Validate DOIs in bibliography (Crossref + DataCite)</td>
519
- </tr>
520
- <tr>
521
- <td><code>rev doi lookup [file.bib]</code></td>
522
- <td>Search for missing DOIs by title/author/year</td>
523
- </tr>
524
- <tr>
525
- <td><code>rev doi fetch &lt;doi&gt;</code></td>
526
- <td>Fetch BibTeX entry from DOI</td>
527
- </tr>
528
- <tr>
529
- <td><code>rev doi add &lt;doi&gt;</code></td>
530
- <td>Fetch and add DOI entry to bibliography</td>
531
- </tr>
532
- </tbody>
533
- </table>
534
- <p><strong>Options:</strong> -
535
- <code>--confidence low|medium|high</code> - Filter lookup results
536
- - <code>--strict</code> - Fail if articles are missing DOIs - Skip
537
- entries: add <code>nodoi = {true}</code> or <code>% no-doi</code>
538
- comment</p>
539
- <h2 id="validation-analysis">Validation &amp; Analysis</h2>
540
- <table>
541
- <colgroup>
542
- <col style="width: 40%" />
543
- <col style="width: 59%" />
544
- </colgroup>
545
- <thead>
546
- <tr>
547
- <th>Command</th>
548
- <th>Description</th>
549
- </tr>
550
- </thead>
551
- <tbody>
552
- <tr>
553
- <td><code>rev citations [file.bib]</code></td>
554
- <td>Validate citations against bibliography</td>
555
- </tr>
556
- <tr>
557
- <td><code>rev figures [file]</code></td>
558
- <td>List figures/tables with reference counts</td>
559
- </tr>
560
- <tr>
561
- <td><code>rev equations list</code></td>
562
- <td>List all equations in section files</td>
563
- </tr>
564
- <tr>
565
- <td><code>rev equations from-word &lt;docx&gt;</code></td>
566
- <td>Extract equations from Word to LaTeX</td>
567
- </tr>
568
- <tr>
569
- <td><code>rev response [files]</code></td>
570
- <td>Generate response letter from comments</td>
571
- </tr>
572
- <tr>
573
- <td><code>rev anonymize &lt;file&gt;</code></td>
574
- <td>Prepare document for blind review</td>
575
- </tr>
576
- <tr>
577
- <td><code>rev validate --journal &lt;name&gt;</code></td>
578
- <td>Check manuscript against journal requirements</td>
579
- </tr>
580
- <tr>
581
- <td><code>rev validate --list</code></td>
582
- <td>List 21 available journal profiles</td>
583
- </tr>
584
- </tbody>
585
- </table>
586
- <h2 id="multi-reviewer-git">Multi-Reviewer &amp; Git</h2>
587
- <table>
588
- <colgroup>
589
- <col style="width: 40%" />
590
- <col style="width: 59%" />
591
- </colgroup>
592
- <thead>
593
- <tr>
594
- <th>Command</th>
595
- <th>Description</th>
596
- </tr>
597
- </thead>
598
- <tbody>
599
- <tr>
600
- <td><code>rev merge &lt;md&gt; &lt;docx...&gt;</code></td>
601
- <td>Merge feedback from multiple Word documents</td>
602
- </tr>
603
- <tr>
604
- <td><code>rev diff [ref]</code></td>
605
- <td>Compare sections against git history</td>
606
- </tr>
607
- <tr>
608
- <td><code>rev history [file]</code></td>
609
- <td>Show revision history for sections</td>
610
- </tr>
611
- </tbody>
612
- </table>
613
- <h2 id="convenience-commands">Convenience Commands</h2>
614
- <table>
615
- <thead>
616
- <tr>
617
- <th>Command</th>
618
- <th>Description</th>
619
- </tr>
620
- </thead>
621
- <tbody>
622
- <tr>
623
- <td><code>rev word-count</code></td>
624
- <td>Show word counts per section</td>
625
- </tr>
626
- <tr>
627
- <td><code>rev word-count --limit 5000</code></td>
628
- <td>Warn if over limit</td>
629
- </tr>
630
- <tr>
631
- <td><code>rev word-count -j &lt;journal&gt;</code></td>
632
- <td>Use journal word limit</td>
633
- </tr>
634
- <tr>
635
- <td><code>rev stats</code></td>
636
- <td>Project dashboard (words, figures, citations)</td>
637
- </tr>
638
- <tr>
639
- <td><code>rev search &lt;query&gt;</code></td>
640
- <td>Search across all section files</td>
641
- </tr>
642
- <tr>
643
- <td><code>rev search -i &lt;query&gt;</code></td>
644
- <td>Case-insensitive search</td>
645
- </tr>
646
- <tr>
647
- <td><code>rev backup</code></td>
648
- <td>Create timestamped backup zip</td>
649
- </tr>
650
- <tr>
651
- <td><code>rev backup --name v1</code></td>
652
- <td>Custom backup name</td>
653
- </tr>
654
- <tr>
655
- <td><code>rev export</code></td>
656
- <td>Export project as distributable zip</td>
657
- </tr>
658
- <tr>
659
- <td><code>rev preview &lt;format&gt;</code></td>
660
- <td>Build and open document</td>
661
- </tr>
662
- <tr>
663
- <td><code>rev watch [format]</code></td>
664
- <td>Auto-rebuild on file changes</td>
665
- </tr>
666
- <tr>
667
- <td><code>rev lint</code></td>
668
- <td>Check for broken refs, missing citations</td>
669
- </tr>
670
- <tr>
671
- <td><code>rev clean</code></td>
672
- <td>Remove generated files</td>
673
- </tr>
674
- <tr>
675
- <td><code>rev clean --all</code></td>
676
- <td>Also remove backups and exports</td>
677
- </tr>
678
- <tr>
679
- <td><code>rev check</code></td>
680
- <td>Pre-submission check (lint + grammar + citations)</td>
681
- </tr>
682
- <tr>
683
- <td><code>rev open</code></td>
684
- <td>Open project folder</td>
685
- </tr>
686
- <tr>
687
- <td><code>rev open paper.pdf</code></td>
688
- <td>Open specific file</td>
689
- </tr>
690
- </tbody>
691
- </table>
692
- <h2 id="grammar-spelling">Grammar &amp; Spelling</h2>
693
- <table>
694
- <colgroup>
695
- <col style="width: 40%" />
696
- <col style="width: 59%" />
697
- </colgroup>
698
- <thead>
699
- <tr>
700
- <th>Command</th>
701
- <th>Description</th>
702
- </tr>
703
- </thead>
704
- <tbody>
705
- <tr>
706
- <td><code>rev grammar</code></td>
707
- <td>Check grammar/style issues</td>
708
- </tr>
709
- <tr>
710
- <td><code>rev grammar --rules</code></td>
711
- <td>List available grammar rules</td>
712
- </tr>
713
- <tr>
714
- <td><code>rev grammar --learn &lt;word&gt;</code></td>
715
- <td>Add word to custom dictionary</td>
716
- </tr>
717
- <tr>
718
- <td><code>rev grammar --list</code></td>
719
- <td>Show custom dictionary</td>
720
- </tr>
721
- <tr>
722
- <td><code>rev spelling</code></td>
723
- <td>Check spelling in all sections</td>
724
- </tr>
725
- <tr>
726
- <td><code>rev spelling --british</code></td>
727
- <td>Use British English dictionary</td>
728
- </tr>
729
- <tr>
730
- <td><code>rev spelling --learn &lt;word&gt;</code></td>
731
- <td>Add word to global dictionary</td>
732
- </tr>
733
- <tr>
734
- <td><code>rev spelling --learn-project &lt;word&gt;</code></td>
735
- <td>Add word to project dictionary</td>
736
- </tr>
737
- </tbody>
738
- </table>
739
- <h2 id="direct-docx-editing">Direct DOCX Editing</h2>
740
- <table>
741
- <colgroup>
742
- <col style="width: 40%" />
743
- <col style="width: 59%" />
744
- </colgroup>
745
- <thead>
746
- <tr>
747
- <th>Command</th>
748
- <th>Description</th>
749
- </tr>
750
- </thead>
751
- <tbody>
752
- <tr>
753
- <td><code>rev annotate &lt;docx&gt; -m "Comment" -s "text"</code></td>
754
- <td>Add comment to Word doc</td>
755
- </tr>
756
- <tr>
757
- <td><code>rev apply &lt;md&gt; &lt;docx&gt;</code></td>
758
- <td>Apply annotations as track changes</td>
759
- </tr>
760
- <tr>
761
- <td><code>rev comment &lt;docx&gt;</code></td>
762
- <td>Interactive comment mode</td>
763
- </tr>
764
- </tbody>
765
- </table>
766
- <h2 id="shell-completions">Shell Completions</h2>
767
- <div class="sourceCode" id="cb2"><pre
768
- class="sourceCode bash"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Bash - add to ~/.bashrc</span></span>
769
- <span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a><span class="bu">eval</span> <span class="st">&quot;</span><span class="va">$(</span><span class="fu">rev</span> completions bash<span class="va">)</span><span class="st">&quot;</span></span>
770
- <span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a></span>
771
- <span id="cb2-4"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a><span class="co"># Zsh - add to ~/.zshrc</span></span>
772
- <span id="cb2-5"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a><span class="bu">eval</span> <span class="st">&quot;</span><span class="va">$(</span><span class="fu">rev</span> completions zsh<span class="va">)</span><span class="st">&quot;</span></span>
773
- <span id="cb2-6"><a href="#cb2-6" aria-hidden="true" tabindex="-1"></a></span>
774
- <span id="cb2-7"><a href="#cb2-7" aria-hidden="true" tabindex="-1"></a><span class="co"># PowerShell - add to $PROFILE</span></span>
775
- <span id="cb2-8"><a href="#cb2-8" aria-hidden="true" tabindex="-1"></a><span class="ex">Invoke-Expression</span> <span class="er">(</span><span class="fu">rev</span> completions powershell <span class="kw">|</span> <span class="ex">Out-String</span><span class="kw">)</span></span></code></pre></div>
776
- <h2 id="collaboration-git">Collaboration &amp; Git</h2>
777
- <table>
778
- <thead>
779
- <tr>
780
- <th>Command</th>
781
- <th>Description</th>
782
- </tr>
783
- </thead>
784
- <tbody>
785
- <tr>
786
- <td><code>rev contributors</code></td>
787
- <td>Show author contributions across all sections</td>
788
- </tr>
789
- <tr>
790
- <td><code>rev contributors &lt;file&gt;</code></td>
791
- <td>Show who wrote what in a specific file</td>
792
- </tr>
793
- <tr>
794
- <td><code>rev contributors &lt;file&gt; --blame</code></td>
795
- <td>Line-by-line blame output</td>
796
- </tr>
797
- <tr>
798
- <td><code>rev history</code></td>
799
- <td>Show revision history</td>
800
- </tr>
801
- <tr>
802
- <td><code>rev diff</code></td>
803
- <td>Compare sections against git history</td>
804
- </tr>
805
- </tbody>
806
- </table>
807
- <h2 id="orcid-integration">ORCID Integration</h2>
808
- <table>
809
- <thead>
810
- <tr>
811
- <th>Command</th>
812
- <th>Description</th>
813
- </tr>
814
- </thead>
815
- <tbody>
816
- <tr>
817
- <td><code>rev orcid &lt;id&gt;</code></td>
818
- <td>Fetch author info from ORCID</td>
819
- </tr>
820
- <tr>
821
- <td><code>rev orcid &lt;id&gt; --yaml</code></td>
822
- <td>Output as YAML for rev.yaml authors</td>
823
- </tr>
824
- <tr>
825
- <td><code>rev orcid &lt;id&gt; --badge</code></td>
826
- <td>Generate markdown badge</td>
827
- </tr>
828
- </tbody>
829
- </table>
830
- <h2 id="self-update">Self-Update</h2>
831
- <table>
832
- <thead>
833
- <tr>
834
- <th>Command</th>
835
- <th>Description</th>
836
- </tr>
837
- </thead>
838
- <tbody>
839
- <tr>
840
- <td><code>rev upgrade</code></td>
841
- <td>Update docrev to latest version</td>
842
- </tr>
843
- <tr>
844
- <td><code>rev upgrade --check</code></td>
845
- <td>Check for updates without installing</td>
846
- </tr>
847
- </tbody>
848
- </table>
849
- </main>
850
- <aside class="col-md-3 d-none d-md-block">
851
- <nav id="toc" data-toggle="toc" aria-label="On this page">
852
- <h2 class="h6">On this page</h2>
853
- <div class="toc"><ul>
854
- <li><a href="#command-reference" id="toc-command-reference">Command
855
- Reference</a>
856
- <ul>
857
- <li><a href="#build-create" id="toc-build-create">Build &amp;
858
- Create</a></li>
859
- <li><a href="#import-export" id="toc-import-export">Import &amp;
860
- Export</a></li>
861
- <li><a href="#pdf-comments" id="toc-pdf-comments">PDF Comments</a></li>
862
- <li><a href="#review-edit" id="toc-review-edit">Review &amp;
863
- Edit</a></li>
864
- <li><a href="#comment-navigation" id="toc-comment-navigation">Comment
865
- Navigation</a></li>
866
- <li><a href="#track-changes" id="toc-track-changes">Track
867
- Changes</a></li>
868
- <li><a href="#cross-references"
869
- id="toc-cross-references">Cross-References</a></li>
870
- <li><a href="#comments-replies" id="toc-comments-replies">Comments &amp;
871
- Replies</a></li>
872
- <li><a href="#bibliography-dois" id="toc-bibliography-dois">Bibliography
873
- &amp; DOIs</a></li>
874
- <li><a href="#validation-analysis"
875
- id="toc-validation-analysis">Validation &amp; Analysis</a></li>
876
- <li><a href="#multi-reviewer-git"
877
- id="toc-multi-reviewer-git">Multi-Reviewer &amp; Git</a></li>
878
- <li><a href="#convenience-commands"
879
- id="toc-convenience-commands">Convenience Commands</a></li>
880
- <li><a href="#grammar-spelling" id="toc-grammar-spelling">Grammar &amp;
881
- Spelling</a></li>
882
- <li><a href="#direct-docx-editing" id="toc-direct-docx-editing">Direct
883
- DOCX Editing</a></li>
884
- <li><a href="#shell-completions" id="toc-shell-completions">Shell
885
- Completions</a></li>
886
- <li><a href="#collaboration-git"
887
- id="toc-collaboration-git">Collaboration &amp; Git</a></li>
888
- <li><a href="#orcid-integration" id="toc-orcid-integration">ORCID
889
- Integration</a></li>
890
- <li><a href="#self-update" id="toc-self-update">Self-Update</a></li>
891
- </ul></li>
892
- </ul></div>
893
- </nav>
894
- </aside>
895
- </div>
896
- </div>
897
-
898
- <footer class="border-top py-3 mt-auto">
899
- <div class="container d-flex justify-content-between align-items-center text-muted" style="font-size:.85rem">
900
- <span>docrev 0.9.15</span>
901
- <span>Built with <a href="https://pandoc.org" class="text-muted">pandoc</a></span>
902
- </div>
903
- </footer>
904
-
905
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
906
- <script>
907
- (function () {
908
- var html = document.documentElement;
909
- var sun = document.getElementById('icon-sun');
910
- var moon = document.getElementById('icon-moon');
911
- function apply(t) {
912
- html.setAttribute('data-bs-theme', t);
913
- sun.style.display = t === 'dark' ? 'none' : '';
914
- moon.style.display = t === 'dark' ? '' : 'none';
915
- }
916
- apply(localStorage.getItem('docrev-theme') || 'light');
917
- document.getElementById('theme-toggle').addEventListener('click', function () {
918
- var next = html.getAttribute('data-bs-theme') === 'dark' ? 'light' : 'dark';
919
- localStorage.setItem('docrev-theme', next);
920
- apply(next);
921
- });
922
- })();
923
- </script>
924
-
925
- </body>
926
- </html>