[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#60525: 29.0.60; tree-sitter support in semantic-symref
From: |
Juri Linkov |
Subject: |
bug#60525: 29.0.60; tree-sitter support in semantic-symref |
Date: |
Wed, 04 Jan 2023 09:43:12 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) |
>> (ruby-mode "*.r[bu]" "*.rake" "*.gemspec" "*.erb" "*.haml"
>> "Rakefile" "Thorfile" "Capfile" "Guardfile" "Vagrantfile")
>> + (ruby-ts-mode "*.r[bu]" "*.rake" "*.gemspec" "*.erb" "*.haml"
>> + "Rakefile" "Thorfile" "Capfile" "Guardfile" "Vagrantfile")
>
> Instead of duplicating entries, we could try to look up the remappings in
> major-mode-remap-alist.
>
> Or (more effort) change the structure of the "alist" to also contain lists
> of modes in the keys. Like in eglot-server-programs.
>
> diff --git a/lisp/cedet/semantic/symref/grep.el
> ...
> - (pat (cdr (assoc mode semantic-symref-filepattern-alist))))
> + (pat
> + (or (assoc-default mode semantic-symref-filepattern-alist)
> + (assoc-default (car (rassoc mode major-mode-remap-alist))
> + semantic-symref-filepattern-alist))))
I'm fine with this change if Eli agrees to install it
on the emacs-29 branch.
But also note that such duplication is unavoidable in many other places.
For example, to support abbreviations there is the need to manually
rename
(define-abbrev-table 'ruby-mode-abbrev-table
to
(define-abbrev-table 'ruby-base-mode-abbrev-table
in ~/.emacs.d/abbrev_defs. But on exiting Emacs it insists
on saving duplicate abbrevs to
(define-abbrev-table 'ruby-ts-mode-abbrev-table