GNU bug report logs - #71550
[PATCH] Add jsdoc support to js-ts-mode

Previous Next

Package: emacs;

Reported by: Damien Cassou <damien <at> cassou.me>

Date: Fri, 14 Jun 2024 12:34:02 UTC

Severity: normal

Tags: patch

Done: Dmitry Gutov <dmitry <at> gutov.dev>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Damien Cassou <damien <at> cassou.me>
To: bug-gnu-emacs <at> gnu.org
Subject: [PATCH] Add jsdoc support to js-ts-mode
Date: Fri, 14 Jun 2024 14:33:25 +0200
[Message part 1 (text/plain, inline)]
Tags: patch

Hi,

jsdoc [1] is a special syntax to document JavaScript code. The attached
patch adds a jsdoc parser and font-lock settings to files using the
`js-ts-mode' major mode if the jsdoc grammar is available. Before/after
screenshots are attached to this email.

[1] jsdoc: https://jsdoc.app/

The new code does *not* make `js-ts-mode' dependent on the availability
of the jsdoc grammar: instead, `js-ts-mode' will keep working as it
works today if the jsdoc grammar is absent.

The support for paragraph filling currently in master is broken because
the prefix '*' isn't added at the beginning of lines when filling
documentation blocks. I tried changing the value of
`c-ts-common--comment-regexp' to include "description" (as this is what
the jsdoc parser uses for text) but the result is worse. I also tried
reusing `js-fill-paragraph' but that fails as well. The result of this
patch is that `M-q' doesn't change anything anymore in these blocks. I
will report a bug and seek assistance to fix it if this patch is merged.

Best,

-- 
Damien Cassou

"Success is the ability to go from one failure to another without
losing enthusiasm." --Winston Churchill
[0001-Add-jsdoc-support-to-js-ts-mode.patch (text/patch, attachment)]
[after.png (image/png, attachment)]
[before.png (image/png, attachment)]

This bug report was last modified 1 year and 59 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.