feat(config): preserve doc-style comments by default

Strip pass was eating JSDoc/Javadoc blocks. Add default preserve
patterns for /** blocks, /*! banners, /// and //! line docs.
Opt out by overriding preserve in .shush.toml.
This commit is contained in:
2026-07-08 13:24:29 -05:00
parent 272ce89ec5
commit 59c48a36cb
7 changed files with 80 additions and 0 deletions
+2
View File
@@ -87,6 +87,8 @@ func TestMultiline(t *testing.T) {
multilineCase{name: "marker in line comment", file: "marker_in_line.c"},
multilineCase{name: "unterminated", file: "unterminated.c"},
multilineCase{name: "conf fallback", file: "fallback.conf"},
multilineCase{name: "doc comments js", file: "doc_js.js"},
multilineCase{name: "doc comments rust", file: "doc_rs.rs"},
multilineCase{name: "git straddle kept", file: "straddle.js",
gitMode: true, ranges: []git.LineRange{{Start: 4, End: 4}}},
multilineCase{name: "git range removes inside block", file: "range_inside.js",
+16
View File
@@ -0,0 +1,16 @@
/**
* Adds two numbers.
* @param {number} a
* @param {number} b
* @returns {number}
*/
function add(a, b) {
/*
* plain block comment
*/
return a + b; // plain line comment
}
/*! license banner */
/** single-line doc */
function noop() {}
+13
View File
@@ -0,0 +1,13 @@
/**
* Adds two numbers.
* @param {number} a
* @param {number} b
* @returns {number}
*/
function add(a, b) {
return a + b;
}
/*! license banner */
/** single-line doc */
function noop() {}
+9
View File
@@ -0,0 +1,9 @@
//! Crate-level docs.
/// Adds two numbers.
/// Returns the sum.
pub fn add(a: i32, b: i32) -> i32 {
// plain line comment
/* plain block comment */
a + b
}
@@ -0,0 +1,7 @@
//! Crate-level docs.
/// Adds two numbers.
/// Returns the sum.
pub fn add(a: i32, b: i32) -> i32 {
a + b
}