@@ -18,7 +18,7 @@ JSDoc linting rules for ESLint.
18
18
* [ ` check-types ` ] ( #eslint-plugin-jsdoc-rules-check-types )
19
19
* [ ` newline-after-description ` ] ( #eslint-plugin-jsdoc-rules-newline-after-description )
20
20
* [ ` require-description-complete-sentence ` ] ( #eslint-plugin-jsdoc-rules-require-description-complete-sentence )
21
- * [ ` require-param- description ` ] ( #eslint-plugin-jsdoc-rules-require-param- description )
21
+ * [ ` require-description-complete-sentence ` ] ( #eslint-plugin-jsdoc-rules-require-description-complete-sentence )
22
22
* [ ` require-param ` ] ( #eslint-plugin-jsdoc-rules-require-param )
23
23
* [ ` require-param-description ` ] ( #eslint-plugin-jsdoc-rules-require-param-description )
24
24
* [ ` require-param-type ` ] ( #eslint-plugin-jsdoc-rules-require-param-type )
@@ -37,7 +37,7 @@ This table maps the rules between `eslint-plugin-jsdoc` and `jscs-jsdoc`.
37
37
| [ ` check-types ` ] ( https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-check-types ) | [ ` checkTypes ` ] ( https://github.com/jscs-dev/jscs-jsdoc#checktypes ) |
38
38
| [ ` newline-after-description ` ] ( https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-newline-after-description ) | [ ` requireNewlineAfterDescription ` ] ( https://github.com/jscs-dev/jscs-jsdoc#requirenewlineafterdescription ) and [ ` disallowNewlineAfterDescription ` ] ( https://github.com/jscs-dev/jscs-jsdoc#disallownewlineafterdescription ) |
39
39
| [ ` require-description-complete-sentence ` ] ( https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-description-complete-sentence ) | [ ` requireDescriptionCompleteSentence ` ] ( https://github.com/jscs-dev/jscs-jsdoc#requiredescriptioncompletesentence ) |
40
- | [ ` require-hyphen-before-description ` ] ( https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-hyphen-before-description ) | [ ` requireHyphenBeforeDescription ` ] ( https://github.com/jscs-dev/jscs-jsdoc#requirehyphenbeforedescription ) |
40
+ | [ ` require-hyphen-before-param- description ` ] ( https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-hyphen-before-param -description ) | [ ` requireHyphenBeforeDescription ` ] ( https://github.com/jscs-dev/jscs-jsdoc#requirehyphenbeforedescription ) |
41
41
| [ ` require-param ` ] ( https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-param ) | [ ` checkParamExistence ` ] ( https://github.com/jscs-dev/jscs-jsdoc#checkparamexistence ) |
42
42
| [ ` require-param-description ` ] ( https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-param-description ) | [ ` requireParamDescription ` ] ( https://github.com/jscs-dev/jscs-jsdoc#requireparamdescription ) |
43
43
| [ ` require-param-type ` ] ( https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-param-type ) | [ ` requireParamTypes ` ] ( https://github.com/jscs-dev/jscs-jsdoc#requireparamtypes ) |
@@ -86,7 +86,7 @@ Finally, enable all of the rules that you would like to use.
86
86
"jsdoc/check-types" : 1 ,
87
87
"jsdoc/newline-after-description" : 1 ,
88
88
"jsdoc/require-description-complete-sentence" : 1 ,
89
- "jsdoc/require-hyphen-before-description" : 1 ,
89
+ "jsdoc/require-hyphen-before-param- description" : 1 ,
90
90
"jsdoc/require-param" : 1 ,
91
91
"jsdoc/require-param-description" : 1 ,
92
92
"jsdoc/require-param-type" : 1 ,
@@ -226,6 +226,13 @@ function quux (foo, bar) {
226
226
227
227
}
228
228
229
+ /**
230
+ * @param args
231
+ */
232
+ function quux (... args ) {
233
+
234
+ }
235
+
229
236
/**
230
237
* @param foo
231
238
*/
@@ -632,27 +639,67 @@ function quux () {
632
639
```
633
640
634
641
635
- <h3 id =" eslint-plugin-jsdoc-rules-require-param- description " ><code >require-param- description</code ></h3 >
642
+ <h3 id =" eslint-plugin-jsdoc-rules-require-description-complete-sentence " ><code >require-description-complete-sentence </code ></h3 >
636
643
637
- Requires that ` @param ` tag has ` description ` value.
644
+ Requires that block description and tag description are written in complete sentences, i.e.,
645
+
646
+ * Description must start with an uppercase alphabetical character.
647
+ * Paragraph must start with an uppercase alphabetical character.
648
+ * Sentences must end with a period.
649
+ * Every line that starts with a lowercase character must be preceded by a line ending the sentence.
638
650
639
651
|||
640
652
| ---| ---|
641
653
| Context| ` ArrowFunctionExpression ` , ` FunctionDeclaration ` , ` FunctionExpression ` |
642
- | Tags| ` param ` |
654
+ | Tags| ` param ` , ` returns ` |
643
655
644
656
The following patterns are considered problems:
645
657
646
658
``` js
647
659
/**
648
- * @param foo
660
+ * foo.
661
+ */
662
+ function quux () {
663
+
664
+ }
665
+
666
+ /**
667
+ * Foo.
668
+ *
669
+ * foo.
670
+ */
671
+ function quux () {
672
+
673
+ }
674
+
675
+ /**
676
+ * Foo
677
+ */
678
+ function quux () {
679
+
680
+ }
681
+
682
+ /**
683
+ * Foo
684
+ * Bar.
685
+ */
686
+ function quux () {
687
+
688
+ }
689
+
690
+ /**
691
+ * Foo.
692
+ *
693
+ * @param foo foo.
649
694
*/
650
695
function quux (foo ) {
651
696
652
697
}
653
698
654
699
/**
655
- * @arg foo
700
+ * Foo.
701
+ *
702
+ * @returns foo.
656
703
*/
657
704
function quux (foo ) {
658
705
@@ -663,16 +710,48 @@ The following patterns are not considered problems:
663
710
664
711
``` js
665
712
/**
713
+ * @param foo - Foo.
714
+ */
715
+ function quux () {
716
+
717
+ }
718
+
719
+ /**
720
+ * Foo.
721
+ */
722
+ function quux () {
723
+
724
+ }
725
+
726
+ /**
727
+ * Foo.
728
+ * Bar.
729
+ */
730
+ function quux () {
731
+
732
+ }
733
+
734
+ /**
735
+ * Foo.
666
736
*
737
+ * Bar.
667
738
*/
668
- function quux (foo ) {
739
+ function quux () {
669
740
670
741
}
671
742
672
743
/**
673
- * @param foo Foo.
744
+ * Foo
745
+ * bar.
674
746
*/
675
- function quux (foo ) {
747
+ function quux () {
748
+
749
+ }
750
+
751
+ /**
752
+ * @returns Foo bar.
753
+ */
754
+ function quux () {
676
755
677
756
}
678
757
```
0 commit comments