Thanks, Tassilo. It turns out that the problem is caused by another line of my .emacs file, which I want to append the load-path, (setq load-path (append (list nil "~/lisp") load-path)) if the "nil" is deleted, it works fine. But I don't understand why adding the current directory to load-path messes up the loading of AUCTeX. I don't have any lisp package s in my current directory. > >>Hi Shiyuan, > > >> I want to swap the C-j and C-m key. According to the documentation, > >> AUCTeX will evaluate the LaTeX-mode-hook so I add the following to my > >> .emacs, > >> > >> (add-hook 'LaTeX-mode-hook (lambda() > >> (local-set-key (kbd "C-m") > >> 'reindent-then-newline-and- > >>indent))) > >> (add-hook 'LaTeX-mode-hook (lambda() > >> (local-set-key (kbd "C-j") 'newline))) > > >Looks good, I'd say. > > >> However, it has no effect. It seems it's not evaluated at all. > > >Are you sure that AUCTeX is really loaded? If it is, then the output of > >C-h f latex-mode RET is: > > >,----[ C-h f latex-mode RET ] > >| latex-mode is an alias for `TeX-latex-mode' in `tex-site.el'. > >| > >| (latex-mode) > >| > >| Major mode in AUCTeX for editing LaTeX files. > >| See info under AUCTeX for full documentation. > >| > >| [...] > >`---- > > >If AUCTeX is not loaded, then the standard emacs latex-mode (that > >doesn't define/use LaTeX-mode-hook) is used producing this output: > > > >,----[ C-h f latex-mode RET (in emacs -Q)] > >| latex-mode is an interactive compiled Lisp function in `tex-mode.el'. > >| > >| (latex-mode) > >| > >| Parent mode: `tex-mode'. > >`---- > > > >Bye, > >Tassilo >