Hi Stefan, >>>>> Stefan Monnier <monn...@iro.umontreal.ca> writes: >>> You may have seen an on-going discussion about the annoyance of the >>> mixups between latex-mode and LaTeX-mode and such. >> Could you tell us where that discussion takes place?
> I think it's on gnu.emacs.help, aka help-gnu-emacs. Thank you, I'll take a look. > Oh, I wasn't aware of regression. We can workaround the problem > using the `depth` property on `advice-add`, to make sure AUCTeX's advice > takes precedence over that of `tex-mode.el` even if it's > installed before. > E.g. if you add the patch below to Emacs, can you confirm that it fixes > the problem on your end? Confirmed, it works as expected. > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > index f624b604aac..77c0d234206 100644 > --- a/lisp/textmodes/tex-mode.el > +++ b/lisp/textmodes/tex-mode.el > @@ -1014,7 +1014,10 @@ tex-mode > says which mode to use." > (tex-common-initialization)) > -(advice-add 'tex-mode :around #'tex--redirect-to-submode) > +(advice-add 'tex-mode :around #'tex--redirect-to-submode > + ;; Give it lower precedence than normal advice, so > + ;; AUCTeX's advice takes precedence over it. > + '((depth . 50))) > (defvar tex-mode--recursing nil) > (defun tex--redirect-to-submode (orig-fun) > "Redirect to one of the submodes when called directly." > I pushed this to `emacs-28` so it will be fixed in the next Emacs > release (but that may be Emacs-29.1). In the mean time, you can use > a `((depth . -10))` in AUCTeX to make it work with Emacs-28.1. I'll do. >> 3. Currently, there is defect in handling doc strings of AUCTeX LaTeX >> mode, plain TeX mode and docTeX mode; C-h m and C-h f show doc string >> of built-in modes, not AUCTeX modes. > Maybe the help facility should be more careful in how it builds the > docstring when a function has an `:override` advice, indeed. > Could you `M-x report-emacs-bug` for that? I'll do this, too, probably. >> `AUCTeX-mode' should put suitable `function-documentation' property >> for the respective major mode symbol. > I think that would be exactly the kind of messing around I'd like to > move away from. Hmm. Then C-h m and C-h f will continue to show the doc string of the built-in modes if `AUCTeX-mode' minor mode is implemented in the suggested manner, even if the help facility is modified to take care of :override advice. Is there any good alternative approach to display doc strings of AUCTeX? (But it may be too early to discuss the implementation detail of this level.) >> From the users' point of view, I don't think it matters much. They just >> specify >> %%% mode: latex >> as the file local variable and think that they are using `latex-mode'. >> I think that it would be only Elisp programmers that care about the >> "lies". > There's regularly discussion (among (AUC)TeX Emacs users) about which > major mode runs which hook. I think it's an important issue not just > for ELisp programmers. I see. The hook name inconsistency must be indeed cause of trouble for emacs users new to AUCTeX. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine