Subject: Re: bug#23329: 11.89; Unloading tex-site doesn't restore original functionality

From: Mosè Giordano <[email-masked]>
Date: Thu, 21 Apr 2016 18:22:35 +0200

Dear Emacs developers,

it has been reported that unloading AUCTeX (M-x unload-feature RET
tex-site RET) doesn't work in Emacs 24:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23329  I tested on
fencepost and noted that it works with Emacs 22 and 23, instead.

tex-site.el defines `tex-site-unload-hook' which looks into
`after-load-alist' to remove AUCTeX settings (it looks for
`TeX-modes-set' function), but in Emacs 24 `after-load-alist' seems to
have changed and there is no reference to `TeX-modes-set' anymore.  Do
you have any idea how to unload AUCTeX in Emacs 24?

Thanks,
Mosè

2016-04-21 16:25 GMT+02:00 Ikumi Keita <[email-masked]>:
>
> Remember to cover the basics, that is, what you expected to happen and
> what in fact did happen.
>
> Be sure to consult the FAQ section in the manual before submitting
> a bug report.  In addition check if the bug is reproducable with an
> up-to-date version of AUCTeX.  So please upgrade to the version
> available from http://www.gnu.org/software/auctex/ if your
> installation is older than the one available from the web site.
>
> If the bug is triggered by a specific (La)TeX file, you should try
> to produce a minimal sample file showing the problem and include it
> in your report.
>
> Your report will be posted for the auctex package at the GNU bug
> tracker.  Visit http://debbugs.gnu.org/cgi/pkgreport.cgi?pkg=auctex
> to browse existing AUCTeX bugs.
> ------------------------------------------------------------------------
>
> Unloading tex-site doesn't restore the functionality of the original
> tex-mode.
>
> [How to reproduce]
> 1. Start a new emacs session.
> 2. M-x unload-feature RET tex-site RET
> 3. C-x C-f /tmp/abc.tex RET
> 4. I expect abc.tex is opened with the original, emacs built-in
>    tex-mode. However, emacs reports that "File mode specification error:
>    (void-function TeX-tex-mode)"
>
> Even if I replace ~/.emacs/init.el with a file of only a line
> (load "auctex.el" nil t t)
> , nothing changes.
>
> If I set `debug-on-error' to t before the item 3 of the above list, the
> following backtrace is displayed.  Apparently overriding advice still
> remains.
> vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
> Debugger entered--Lisp error: (void-function TeX-tex-mode)
>   TeX-tex-mode()
>   apply(TeX-tex-mode nil)
>   tex-mode()
>   set-auto-mode-0(tex-mode nil)
>   set-auto-mode()
>   normal-mode(t)
>   after-find-file(t t)
>   find-file-noselect-1(#<buffer abc.tex> "/tmp/abc.tex" nil nil "/tmp/abc.tex" nil)
>   find-file-noselect("/tmp/abc.tex" nil nil t)
>   find-file("/tmp/abc.tex" t)
>   call-interactively(find-file nil nil)
>   command-execute(find-file)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> Emacs  : GNU Emacs 24.5.1 (x86_64-unknown-freebsd10.3, GTK+ Version 3.18.8)
>  of 2016-04-08 on freebsd.vmware
> Package: 11.89
>
> current state:
> ==============
> (setq
>  AUCTeX-date "2015-11-13"
>  window-system 'x
>  LaTeX-version "2e"
>  TeX-style-path '("/usr/local/var/auctex"
>                   "/usr/local/share/emacs/site-lisp/auctex/style"
>                   "/home/keita/.emacs.d/auctex/auto"
>                   "/home/keita/.emacs.d/auctex/style" "auto" "style")
>  TeX-auto-save nil
>  TeX-parse-self t
>  TeX-master t
>  TeX-command-list '(("jTeX" "%(PDF)jtex %`%S%(PDFout)%(mode)%' %t" TeX-run-TeX
>                      nil (plain-tex-mode) :help "Run NTT jTeX")
>                     ("jLaTeX" "%(PDF)jlatex %`%S%(PDFout)%(mode)%' %t"
>                      TeX-run-TeX nil (latex-mode) :help "Run NTT jLaTeX")
>                     ("pTeX" "%(PDF)ptex %(kanjiopt)%`%S%(PDFout)%(mode)%' %t"
>                      TeX-run-TeX nil (plain-tex-mode) :help "Run ASCII pTeX")
>                     ("pLaTeX"
>                      "%(PDF)platex %(kanjiopt)%`%S%(PDFout)%(mode)%' %t"
>                      TeX-run-TeX nil (latex-mode) :help "Run ASCII pLaTeX")
>                     ("Mendex" "mendex %(mendexkopt)%s" TeX-run-command nil t
>                      :help "Create index file with mendex")
>                     ("jBibTeX" "jbibtex %s" TeX-run-BibTeX nil t :help
>                      "Run jBibTeX")
>                     ("pBibTeX" "pbibtex %(kanjiopt)%s" TeX-run-BibTeX nil t
>                      :help "Run pBibTeX")
>                     ("-" "" ignore nil t)
>                     ("TeX"
>                      "%(PDF)%(tex) %(file-line-error) %(extraopts) %`%S%(PDFout)%(mode)%' %t"
>                      TeX-run-TeX nil
>                      (plain-tex-mode ams-tex-mode texinfo-mode) :help
>                      "Run plain TeX")
>                     ("LaTeX" "%`%l%(mode)%' %t" TeX-run-TeX nil
>                      (latex-mode doctex-mode) :help "Run LaTeX")
>                     ("Makeinfo" "makeinfo %(extraopts) %t" TeX-run-compile nil
>                      (texinfo-mode) :help "Run Makeinfo with Info output")
>                     ("Makeinfo HTML" "makeinfo %(extraopts) --html %t"
>                      TeX-run-compile nil (texinfo-mode) :help
>                      "Run Makeinfo with HTML output")
>                     ("AmSTeX" "amstex %(PDFout) %(extraopts) %`%S%(mode)%' %t"
>                      TeX-run-TeX nil (ams-tex-mode) :help "Run AMSTeX")
>                     ("ConTeXt"
>                      "%(cntxcom) --once --texutil %(extraopts) %(execopts)%t"
>                      TeX-run-TeX nil (context-mode) :help "Run ConTeXt once")
>                     ("ConTeXt Full" "%(cntxcom) %(extraopts) %(execopts)%t"
>                      TeX-run-TeX nil (context-mode) :help
>                      "Run ConTeXt until completion")
>                     ("BibTeX" "%(bibtex) %s" TeX-run-BibTeX nil t :help
>                      "Run BibTeX")
>                     ("Biber" "biber %s" TeX-run-Biber nil t :help "Run Biber")
>                     ("View" "%V" TeX-run-discard-or-function t t :help
>                      "Run Viewer")
>                     ("Print" "%p" TeX-run-command t t :help "Print the file")
>                     ("Queue" "%q" TeX-run-background nil t :help
>                      "View the printer queue" :visible TeX-queue-command)
>                     ("File" "%(o?)dvips %d -o %f " TeX-run-dvips t t :help
>                      "Generate PostScript file")
>                     ("Dvips" "%(o?)dvips %d -o %f " TeX-run-dvips nil t :help
>                      "Convert DVI file to PostScript")
>                     ("Dvipdfmx" "dvipdfmx %d" TeX-run-dvipdfmx nil t :help
>                      "Convert DVI file to PDF with dvipdfmx")
>                     ("Ps2pdf" "ps2pdf %f" TeX-run-ps2pdf nil t :help
>                      "Convert PostScript file to PDF")
>                     ("Index" "%(makeindex) %s" TeX-run-index nil t :help
>                      "Run makeindex to create index file")
>                     ("Xindy" "texindy %s" TeX-run-command nil t :help
>                      "Run xindy to create index file")
>                     ("Check" "lacheck %s" TeX-run-compile nil (latex-mode)
>                      :help "Check LaTeX file for correctness")
>                     ("ChkTeX" "chktex -v6 %s" TeX-run-compile nil (latex-mode)
>                      :help "Check LaTeX file for common mistakes")
>                     ("Spell" "(TeX-ispell-document \"\")" TeX-run-function nil
>                      t :help "Spell-check the document")
>                     ("Clean" "TeX-clean" TeX-run-function nil t :help
>                      "Delete generated intermediate files")
>                     ("Clean All" "(TeX-clean t)" TeX-run-function nil t :help
>                      "Delete generated intermediate and output files")
>                     ("Other" "" TeX-run-command t t :help
>                      "Run an arbitrary command")
>                     )
>  )
>
>
>
> _______________________________________________
> bug-auctex mailing list
> [email-masked]
> https://lists.gnu.org/mailman/listinfo/bug-auctex
>