Subject: Re: bug#35614: AUCTeX stopped working after upgrade: TeX-shdex-eval: Invalid dialect expression : :classopt.

From: Ikumi Keita <[email-masked]>
Date: Mon, 13 May 2019 14:49:59 +0900

>>>>> Jakub Narębski <[email-masked]> writes:
>> The option 1 consists of removing all the AUCTeX-related files and the
>> activation codes quoted above from your PC.

> Thus I have commented out the following lines in
> c:/Program Files/GNU Emacs 25.2/share/emacs/site-list/site-start.el

>   ; (load "auctex.el" nil t t)
>   ; (load "preview-latex.el" nil t t)

OK.  (I think "site-list" is actually "site-lisp", but that doesn't
matter.)

> I have also renamed site-list/auctex directory to site-list/auctex-old.

OK.

> This I think should make Emacs use ELPA-provided AUCTeX, isn't it?

There still must be other files which are part of the preinstalled
AUCTeX, namely "tex-site.el" and "auctex.el", in
c:/Program Files/GNU Emacs 25.2/share/emacs/site-lisp/
.  So you should remove them as well.

> Unfortunately, it didn't work. Here is full backtrace
> (from debug-on-error):

It seems that the conflict between the two versions of AUCTeX still
remains.  It's rather strange.  Even if the above two files are left
behind, the old version of tex.el(c) should not be loaded since they are
evacuated into site-lisp/auctex-old, outside of the load-path...

Did you terminate and restart the emacs session after uninstalling the
preinstalled AUCTeX?  The state of confilict persists until the emacs is
terminated.

> (error "Invalid dialect expression : :classopt.")
>   signal(error ("Invalid dialect expression : :classopt."))
>   error("Invalid dialect expression : %S." :classopt)
>   TeX-shdex-eval(:classopt)
>   TeX-add-style-hook("pdftex" TeX-PDF-mode-on :classopt)
>   LaTeX-common-initialization()
>   TeX-latex-mode()
>   apply(TeX-latex-mode nil)
>   LaTeX-mode()
>   funcall-interactively(LaTeX-mode)
>   call-interactively(LaTeX-mode record nil)
>   command-execute(LaTeX-mode record)
>   execute-extended-command(nil "LaTeX-mode" nil)
>   funcall-interactively(execute-extended-command nil "LaTeX-mode" nil)
>   call-interactively(execute-extended-command nil nil)
>   command-execute(execute-extended-command)

This is not a major topic, but there are still other files which belong
to the preinstalled AUCTeX, I suppose.  They are info files auctex-info,
auctex-info-1, auctex-info-2 and preview-latex.info.  If they remain in
your PC, you might be presented with a bit old info file on some other
day, so I recommend to remove them, as well as to edit the "dir" file to
remove the entries of AUCTeX and preview-latex in it.  The "dir" is
located in, probably,
c:/Program Files/GNU Emacs 25.2/share/info/
.

Best,
Ikumi Keita