docrev 0.10.1 → 0.10.2
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.
- package/.gitattributes +1 -1
- package/CHANGELOG.md +184 -173
- package/PLAN-tables-and-postprocess.md +850 -850
- package/README.md +431 -431
- package/bin/rev.js +11 -11
- package/bin/rev.ts +145 -145
- package/completions/rev.bash +127 -127
- package/completions/rev.ps1 +210 -210
- package/completions/rev.zsh +207 -207
- package/dist/lib/anchor-match.d.ts +1 -1
- package/dist/lib/anchor-match.d.ts.map +1 -1
- package/dist/lib/anchor-match.js +47 -17
- package/dist/lib/anchor-match.js.map +1 -1
- package/dist/lib/build.js +4 -4
- package/dist/lib/commands/sync.d.ts.map +1 -1
- package/dist/lib/commands/sync.js +78 -100
- package/dist/lib/commands/sync.js.map +1 -1
- package/dist/lib/commands/utilities.js +164 -164
- package/dist/lib/commands/word-tools.js +8 -8
- package/dist/lib/grammar.js +3 -3
- package/dist/lib/macro-filter.lua +201 -201
- package/dist/lib/pdf-comments.js +44 -44
- package/dist/lib/plugins.js +57 -57
- package/dist/lib/pptx-color-filter.lua +37 -37
- package/dist/lib/pptx-themes.js +115 -115
- package/dist/lib/sections.d.ts.map +1 -1
- package/dist/lib/sections.js +5 -2
- package/dist/lib/sections.js.map +1 -1
- package/dist/lib/spelling.js +2 -2
- package/dist/lib/templates.js +387 -387
- package/dist/lib/themes.js +51 -51
- package/eslint.config.js +27 -27
- package/issues.md +180 -0
- package/lib/anchor-match.ts +308 -276
- package/lib/annotations.ts +644 -644
- package/lib/build.ts +1766 -1766
- package/lib/citations.ts +160 -160
- package/lib/commands/build.ts +855 -855
- package/lib/commands/citations.ts +515 -515
- package/lib/commands/comments.ts +1050 -1050
- package/lib/commands/context.ts +176 -176
- package/lib/commands/core.ts +309 -309
- package/lib/commands/doi.ts +435 -435
- package/lib/commands/file-ops.ts +372 -372
- package/lib/commands/history.ts +320 -320
- package/lib/commands/index.ts +87 -87
- package/lib/commands/init.ts +259 -259
- package/lib/commands/merge-resolve.ts +378 -378
- package/lib/commands/preview.ts +178 -178
- package/lib/commands/project-info.ts +244 -244
- package/lib/commands/quality.ts +517 -517
- package/lib/commands/response.ts +454 -454
- package/lib/commands/section-boundaries.ts +82 -82
- package/lib/commands/sections.ts +451 -451
- package/lib/commands/sync.ts +676 -709
- package/lib/commands/text-ops.ts +449 -449
- package/lib/commands/utilities.ts +448 -448
- package/lib/commands/verify-anchors.ts +272 -272
- package/lib/commands/word-tools.ts +340 -340
- package/lib/comment-realign.ts +517 -517
- package/lib/config.ts +84 -84
- package/lib/crossref.ts +781 -781
- package/lib/csl.ts +191 -191
- package/lib/dependencies.ts +98 -98
- package/lib/diff-engine.ts +465 -465
- package/lib/doi-cache.ts +115 -115
- package/lib/doi.ts +897 -897
- package/lib/equations.ts +506 -506
- package/lib/errors.ts +346 -346
- package/lib/format.ts +541 -541
- package/lib/git.ts +326 -326
- package/lib/grammar.ts +303 -303
- package/lib/image-registry.ts +180 -180
- package/lib/import.ts +911 -911
- package/lib/journals.ts +543 -543
- package/lib/macro-filter.lua +201 -201
- package/lib/macros.ts +273 -273
- package/lib/merge.ts +633 -633
- package/lib/orcid.ts +144 -144
- package/lib/pdf-comments.ts +263 -263
- package/lib/pdf-import.ts +524 -524
- package/lib/plugins.ts +362 -362
- package/lib/postprocess.ts +188 -188
- package/lib/pptx-color-filter.lua +37 -37
- package/lib/pptx-template.ts +469 -469
- package/lib/pptx-themes.ts +483 -483
- package/lib/protect-restore.ts +520 -520
- package/lib/rate-limiter.ts +94 -94
- package/lib/response.ts +197 -197
- package/lib/restore-references.ts +240 -240
- package/lib/review.ts +327 -327
- package/lib/schema.ts +488 -488
- package/lib/scientific-words.ts +73 -73
- package/lib/sections.ts +428 -425
- package/lib/slides.ts +756 -756
- package/lib/spelling.ts +334 -334
- package/lib/templates.ts +526 -526
- package/lib/themes.ts +742 -742
- package/lib/trackchanges.ts +247 -247
- package/lib/tui.ts +450 -450
- package/lib/types.ts +550 -550
- package/lib/undo.ts +250 -250
- package/lib/utils.ts +69 -69
- package/lib/variables.ts +179 -179
- package/lib/word-extraction.ts +806 -806
- package/lib/word.ts +643 -643
- package/lib/wordcomments.ts +840 -840
- package/package.json +137 -137
- package/scripts/postbuild.js +47 -47
- package/site/assets/extra.css +208 -0
- package/site/commands.html +926 -0
- package/site/configuration.html +469 -0
- package/site/index.html +288 -0
- package/site/troubleshooting.html +461 -0
- package/site/workflow.html +518 -0
- package/skill/REFERENCE.md +539 -539
- package/skill/SKILL.md +295 -295
- package/tsconfig.json +26 -26
- package/types/index.d.ts +525 -525
|
@@ -114,7 +114,8 @@ export function register(program) {
|
|
|
114
114
|
const spin = fmt.spinner(`Importing ${path.basename(docx)}...`).start();
|
|
115
115
|
try {
|
|
116
116
|
const config = sectionsConfig;
|
|
117
|
-
const { importFromWord, extractWordComments, extractCommentAnchors, insertCommentsIntoMarkdown, extractFromWord } = await import('../import.js');
|
|
117
|
+
const { importFromWord, extractWordComments, extractCommentAnchors, insertCommentsIntoMarkdown, extractFromWord, extractHeadings } = await import('../import.js');
|
|
118
|
+
const { computeSectionBoundaries } = await import('./section-boundaries.js');
|
|
118
119
|
let registry = null;
|
|
119
120
|
let totalRefConversions = 0;
|
|
120
121
|
if (options.crossref !== false) {
|
|
@@ -210,73 +211,24 @@ export function register(program) {
|
|
|
210
211
|
}
|
|
211
212
|
const sectionResults = [];
|
|
212
213
|
let totalChanges = 0;
|
|
213
|
-
//
|
|
214
|
-
//
|
|
215
|
-
//
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
//
|
|
219
|
-
//
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
const lower = text.toLowerCase();
|
|
232
|
-
let idx = startFrom;
|
|
233
|
-
while ((idx = lower.indexOf(keyword, idx)) !== -1) {
|
|
234
|
-
// Check what follows the keyword
|
|
235
|
-
const afterKeyword = text.slice(idx + keyword.length, idx + keyword.length + 5);
|
|
236
|
-
// Skip if followed by ":" (this is a label, not a section header)
|
|
237
|
-
// Real headers are followed by text content, a newline, or a subheading
|
|
238
|
-
if (!afterKeyword.startsWith(':') && !afterKeyword.startsWith(' :')) {
|
|
239
|
-
return idx;
|
|
240
|
-
}
|
|
241
|
-
idx++;
|
|
242
|
-
}
|
|
243
|
-
return -1;
|
|
244
|
-
}
|
|
245
|
-
for (const section of wordSections) {
|
|
246
|
-
const fileBase = section.file.replace(/\.md$/i, '').toLowerCase();
|
|
247
|
-
// Get keywords for this section
|
|
248
|
-
const keywords = sectionKeywords[fileBase] || [fileBase];
|
|
249
|
-
// Find the first valid keyword that exists in XML (not a label)
|
|
250
|
-
let headerIdx = -1;
|
|
251
|
-
for (const kw of keywords) {
|
|
252
|
-
const idx = findSectionHeader(xmlDocText, kw, 0);
|
|
253
|
-
if (idx >= 0 && (headerIdx < 0 || idx < headerIdx)) {
|
|
254
|
-
headerIdx = idx;
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
if (headerIdx >= 0) {
|
|
258
|
-
// Find the next section's start to determine end boundary
|
|
259
|
-
let nextHeaderIdx = xmlDocText.length;
|
|
260
|
-
const sectionIdx = wordSections.indexOf(section);
|
|
261
|
-
if (sectionIdx < wordSections.length - 1) {
|
|
262
|
-
const nextFileBase = wordSections[sectionIdx + 1].file.replace(/\.md$/i, '').toLowerCase();
|
|
263
|
-
const nextKeywords = sectionKeywords[nextFileBase] || [nextFileBase];
|
|
264
|
-
for (const nkw of nextKeywords) {
|
|
265
|
-
const foundNext = findSectionHeader(xmlDocText, nkw, headerIdx + 10);
|
|
266
|
-
if (foundNext >= 0 && foundNext < nextHeaderIdx) {
|
|
267
|
-
nextHeaderIdx = foundNext;
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
sectionBoundaries.push({
|
|
272
|
-
file: section.file,
|
|
273
|
-
start: headerIdx,
|
|
274
|
-
end: nextHeaderIdx
|
|
275
|
-
});
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
// Document length is the XML text length (same coordinate system as docPosition)
|
|
279
|
-
const docLength = xmlDocText.length;
|
|
214
|
+
// Route comments to sections using boundaries from the document's real
|
|
215
|
+
// heading paragraphs. docPosition (from extractCommentAnchors) and each
|
|
216
|
+
// heading's docPosition share one coordinate system over xmlDocText, so
|
|
217
|
+
// every configured section gets a boundary — not only the handful that
|
|
218
|
+
// matched a hardcoded keyword list. Sections named "Objectives" or
|
|
219
|
+
// "Annex 2" used to get no boundary, so their comments were silently
|
|
220
|
+
// dropped while the summary still claimed every comment was placed.
|
|
221
|
+
// This is the same routing path as `sync --comments-only`.
|
|
222
|
+
const headings = await extractHeadings(docx);
|
|
223
|
+
const sectionBoundaries = computeSectionBoundaries(config.sections, headings, xmlDocText.length);
|
|
224
|
+
const firstBoundaryStart = sectionBoundaries.length > 0 ? sectionBoundaries[0].start : 0;
|
|
225
|
+
// Truthful comment accounting: track which comments were routed to a
|
|
226
|
+
// synced section and how many were actually written, so the summary
|
|
227
|
+
// reports placements rather than the raw extracted count.
|
|
228
|
+
const routedCommentIds = new Set();
|
|
229
|
+
let totalCommentsPlaced = 0;
|
|
230
|
+
let totalCommentsDeduped = 0;
|
|
231
|
+
let totalCommentsUnmatched = 0;
|
|
280
232
|
for (const section of wordSections) {
|
|
281
233
|
const sectionPath = path.join(options.dir, section.file);
|
|
282
234
|
if (!fs.existsSync(sectionPath)) {
|
|
@@ -288,6 +240,21 @@ export function register(program) {
|
|
|
288
240
|
});
|
|
289
241
|
continue;
|
|
290
242
|
}
|
|
243
|
+
// A section that appears in the reviewed document as a bare heading
|
|
244
|
+
// with no body was not really part of this build (e.g. a "no-annex"
|
|
245
|
+
// export synced against the full project). Importing it would diff
|
|
246
|
+
// real prose against an empty body and rewrite the file to near-empty.
|
|
247
|
+
// Leave it untouched.
|
|
248
|
+
const bodyEmpty = section.content.trim() === section.header.trim();
|
|
249
|
+
if (bodyEmpty) {
|
|
250
|
+
sectionResults.push({
|
|
251
|
+
file: section.file,
|
|
252
|
+
header: section.header,
|
|
253
|
+
status: 'untouched',
|
|
254
|
+
stats: undefined,
|
|
255
|
+
});
|
|
256
|
+
continue;
|
|
257
|
+
}
|
|
291
258
|
const result = await importFromWord(docx, sectionPath, {
|
|
292
259
|
sectionContent: section.content,
|
|
293
260
|
author: 'Reviewer',
|
|
@@ -301,49 +268,41 @@ export function register(program) {
|
|
|
301
268
|
refConversions = crossrefResult.conversions;
|
|
302
269
|
totalRefConversions += refConversions.length;
|
|
303
270
|
}
|
|
304
|
-
let commentsInserted = 0;
|
|
305
271
|
if (comments.length > 0 && anchors.size > 0) {
|
|
306
|
-
// Filter comments to
|
|
307
|
-
//
|
|
308
|
-
//
|
|
272
|
+
// Filter comments to those whose docPosition falls in this section's
|
|
273
|
+
// boundary (docPosition and boundaries share xmlDocText coordinates).
|
|
274
|
+
// The section owning the first boundary also catches comments placed
|
|
275
|
+
// before any heading.
|
|
309
276
|
const boundary = sectionBoundaries.find(b => b.file === section.file);
|
|
310
|
-
const
|
|
311
|
-
const firstBoundaryStart = sectionBoundaries.length > 0 ? Math.min(...sectionBoundaries.map(b => b.start)) : 0;
|
|
277
|
+
const ownsFirstBoundary = !!boundary && boundary.start === firstBoundaryStart;
|
|
312
278
|
const sectionComments = comments.filter((c) => {
|
|
313
279
|
const anchorData = anchors.get(c.id);
|
|
314
|
-
if (!anchorData)
|
|
280
|
+
if (!anchorData || anchorData.docPosition === undefined || !boundary)
|
|
315
281
|
return false;
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
return true;
|
|
321
|
-
}
|
|
322
|
-
// Also include "outside" comments (before first section) in the first section file
|
|
323
|
-
if (isFirstSection && anchorData.docPosition < firstBoundaryStart) {
|
|
324
|
-
return true;
|
|
325
|
-
}
|
|
326
|
-
}
|
|
282
|
+
if (anchorData.docPosition >= boundary.start && anchorData.docPosition < boundary.end)
|
|
283
|
+
return true;
|
|
284
|
+
if (ownsFirstBoundary && anchorData.docPosition < firstBoundaryStart)
|
|
285
|
+
return true;
|
|
327
286
|
return false;
|
|
328
287
|
});
|
|
329
288
|
if (process.env.DEBUG) {
|
|
330
289
|
console.log(`[DEBUG] ${section.file}: ${sectionComments.length} comments to place (boundary: ${boundary?.start}-${boundary?.end})`);
|
|
331
290
|
}
|
|
332
291
|
if (sectionComments.length > 0) {
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
const
|
|
292
|
+
for (const c of sectionComments)
|
|
293
|
+
routedCommentIds.add(c.id);
|
|
294
|
+
const cstats = { placed: 0, deduped: 0, unmatched: 0 };
|
|
336
295
|
annotated = insertCommentsIntoMarkdown(annotated, sectionComments, anchors, {
|
|
337
296
|
quiet: !process.env.DEBUG,
|
|
338
|
-
sectionBoundary: boundary
|
|
297
|
+
sectionBoundary: boundary,
|
|
298
|
+
outStats: cstats,
|
|
339
299
|
});
|
|
340
|
-
|
|
341
|
-
|
|
300
|
+
stats.comments = (stats.comments || 0) + cstats.placed;
|
|
301
|
+
totalCommentsPlaced += cstats.placed;
|
|
302
|
+
totalCommentsDeduped += cstats.deduped;
|
|
303
|
+
totalCommentsUnmatched += cstats.unmatched;
|
|
342
304
|
if (process.env.DEBUG) {
|
|
343
|
-
console.log(`[DEBUG] ${section.file}:
|
|
344
|
-
}
|
|
345
|
-
if (commentsInserted > 0) {
|
|
346
|
-
stats.comments = (stats.comments || 0) + commentsInserted;
|
|
305
|
+
console.log(`[DEBUG] ${section.file}: placed ${cstats.placed}, deduped ${cstats.deduped}, unmatched ${cstats.unmatched} of ${sectionComments.length}`);
|
|
347
306
|
}
|
|
348
307
|
}
|
|
349
308
|
}
|
|
@@ -373,11 +332,11 @@ export function register(program) {
|
|
|
373
332
|
}
|
|
374
333
|
}
|
|
375
334
|
const tableRows = sectionResults.map((r) => {
|
|
376
|
-
if (r.status === 'skipped') {
|
|
335
|
+
if (r.status === 'skipped' || r.status === 'untouched') {
|
|
377
336
|
return [
|
|
378
337
|
chalk.dim(r.file),
|
|
379
338
|
chalk.dim(r.header.slice(0, 25)),
|
|
380
|
-
chalk.yellow(
|
|
339
|
+
chalk.yellow(r.status),
|
|
381
340
|
'',
|
|
382
341
|
'',
|
|
383
342
|
'',
|
|
@@ -415,6 +374,11 @@ export function register(program) {
|
|
|
415
374
|
}
|
|
416
375
|
}
|
|
417
376
|
}
|
|
377
|
+
// Comments carried by the document but never routed to a synced section
|
|
378
|
+
// (they fell in a skipped/untouched/absent section). Surfacing these
|
|
379
|
+
// keeps the summary honest instead of reporting every extracted comment
|
|
380
|
+
// as placed.
|
|
381
|
+
const unroutedComments = comments.length - routedCommentIds.size;
|
|
418
382
|
if (options.dryRun) {
|
|
419
383
|
console.log(fmt.box(chalk.yellow('Dry run - no files written'), { padding: 0 }));
|
|
420
384
|
}
|
|
@@ -423,12 +387,26 @@ export function register(program) {
|
|
|
423
387
|
summaryLines.push(`${chalk.bold(wordSections.length)} sections processed`);
|
|
424
388
|
if (totalChanges > 0)
|
|
425
389
|
summaryLines.push(`${chalk.bold(totalChanges)} annotations imported`);
|
|
426
|
-
if (
|
|
427
|
-
summaryLines.push(`${chalk.bold(comments.length
|
|
390
|
+
if (totalCommentsPlaced > 0) {
|
|
391
|
+
summaryLines.push(`${chalk.bold(totalCommentsPlaced)} of ${comments.length} comments placed`);
|
|
392
|
+
}
|
|
393
|
+
if (totalCommentsDeduped > 0) {
|
|
394
|
+
summaryLines.push(`${chalk.cyan(totalCommentsDeduped)} already present (skipped)`);
|
|
395
|
+
}
|
|
396
|
+
if (totalCommentsUnmatched > 0) {
|
|
397
|
+
summaryLines.push(`${chalk.yellow(totalCommentsUnmatched)} unmatched (anchor not in current prose)`);
|
|
398
|
+
}
|
|
399
|
+
if (unroutedComments > 0) {
|
|
400
|
+
summaryLines.push(`${chalk.yellow(unroutedComments)} not routed to any synced section`);
|
|
401
|
+
}
|
|
428
402
|
if (totalRefConversions > 0)
|
|
429
403
|
summaryLines.push(`${chalk.bold(totalRefConversions)} refs converted to @-syntax`);
|
|
430
404
|
console.log(fmt.box(summaryLines.join('\n'), { title: 'Summary', padding: 0 }));
|
|
431
405
|
console.log();
|
|
406
|
+
if (totalCommentsUnmatched > 0 || unroutedComments > 0) {
|
|
407
|
+
console.log(chalk.yellow(` ${totalCommentsUnmatched + unroutedComments} comment(s) were not written. Run "rev verify-anchors" or re-sync with the full document.`));
|
|
408
|
+
console.log();
|
|
409
|
+
}
|
|
432
410
|
console.log(chalk.dim('Next steps:'));
|
|
433
411
|
console.log(chalk.dim(' 1. rev review <section.md> - Accept/reject changes'));
|
|
434
412
|
console.log(chalk.dim(' 2. rev comments <section.md> - View/address comments'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../lib/commands/sync.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../lib/commands/sync.ts"],"names":[],"mappings":"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"}
|