Subject: [PATCH] Please install these elixir-ts-mode fixes

From: Wilhelm Kirschbaum <[email-masked]>
Date: Sat, 28 Dec 2024 08:49:00 +0200

Attached are two updates to elixir-ts-mode for minor improvements. Can
someone please install them if there are no concerns.

The patches are from the emacs-30 branch. I can rebase them on master if
required?

Kind regards,
Wilhelm
From b6fc69cef33e5ad22f17febbc7fb34ec7dceccb9 Mon Sep 17 00:00:00 2001
From: Wilhelm Kirschbaum <[email-masked]>
Date: Sun, 15 Sep 2024 09:46:35 +0200
Subject: [PATCH 2/2] Add missing fortification matches for elixir-ts-mode

* lisp/progmodes/elixir-ts-mode.el (elixir-ts--font-lock-settings):
Add matches for missing tokens and fix atom type face.
---
 lisp/progmodes/elixir-ts-mode.el | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/lisp/progmodes/elixir-ts-mode.el b/lisp/progmodes/elixir-ts-mode.el
index 4e0caae93e3..41662822713 100644
--- a/lisp/progmodes/elixir-ts-mode.el
+++ b/lisp/progmodes/elixir-ts-mode.el
@@ -488,7 +488,8 @@ elixir-ts--font-lock-settings
 
    :language 'elixir
    :feature 'elixir-data-type
-   '([(atom) (alias)] @font-lock-type-face
+   '((alias) @font-lock-type-face
+     (atom) @elixir-ts-atom
      (keywords (pair key: (keyword) @elixir-ts-keyword-key))
      [(keyword) (quoted_keyword)] @elixir-ts-atom
      [(boolean) (nil)] @elixir-ts-atom
@@ -553,6 +554,10 @@ elixir-ts--font-lock-settings
      (unary_operator operand: (identifier) @font-lock-variable-use-face)
      (interpolation (identifier) @font-lock-variable-use-face)
      (do_block (identifier) @font-lock-variable-use-face)
+     (rescue_block (identifier) @font-lock-variable-use-face)
+     (catch_block (identifier) @font-lock-variable-use-face)
+     (else_block (identifier) @font-lock-variable-use-face)
+     (after_block (identifier) @font-lock-variable-use-face)
      (access_call target: (identifier) @font-lock-variable-use-face)
      (access_call "[" key: (identifier) @font-lock-variable-use-face "]"))
 
-- 
2.45.2

From 14f8fbbfa9322fa15a556f67715b11b6db4b56eb Mon Sep 17 00:00:00 2001
From: Wilhelm Kirschbaum <[email-masked]>
Date: Sun, 15 Sep 2024 09:46:07 +0200
Subject: [PATCH 1/2] Always match underscore variables for elixir-ts-mode

The code comment is invalid, as it is common to treat any _variable as a
comment.

* lisp/progmodes/elixir-ts-mode.el (elixir-ts-font-lock-settings):
Add ":override t" to comment identifier match.
---
 lisp/progmodes/elixir-ts-mode.el | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/lisp/progmodes/elixir-ts-mode.el b/lisp/progmodes/elixir-ts-mode.el
index cacdb266298..4e0caae93e3 100644
--- a/lisp/progmodes/elixir-ts-mode.el
+++ b/lisp/progmodes/elixir-ts-mode.el
@@ -402,11 +402,9 @@ elixir-ts--font-lock-settings
              (binary_operator
               left: (call target: (identifier) @font-lock-function-name-face))))))
 
-   ;; A function definition like "def _foo" is valid, but we should
-   ;; not apply the comment-face unless its a non-function identifier, so
-   ;; the comment matches has to be after the function matches.
    :language 'elixir
    :feature 'elixir-comment
+   :override t
    '((comment) @font-lock-comment-face
      ((identifier) @font-lock-comment-face
       (:match "^_[a-z]\\|^_$" @font-lock-comment-face)))
-- 
2.45.2