Why doesn this [terminal or window-system setup] code work in my `.emacs file, but it works just fine after Emacs starts up?
During startup, Emacs initializes itself according to a given code/file order. If some of the code executed in your `.emacs’ file needs to be postponed until the initial terminal or window-system setup code has been executed but is not, then you will experience this problem (this code/file execution order is not enforced after startup). To postpone the execution of Emacs Lisp code until after terminal or window-system setup, treat the code as a lambda list and set the value of either the term-setup-hook or window-setup-hook variable to this lambda function. For example, (add-hook ‘term-setup-hook (lambda () (when (string-match “\\`vt220” (or (getenv “TERM”) “”)) ;; Make vt220’s “Do” key behave like M-x: (global-set-key [do] ‘execute-extended-command)))) For information on what Emacs does every time it is started, see the `lisp/startup.el’ file.
Related Questions
- Why doesn this [terminal or window-system setup] code work in my .emacs file, but it works just fine after Emacs starts up?
- Why doesn this [terminal or window-system setup] code work in my `.emacs file, but it works just fine after Emacs starts up?
- XMLSpy® 2010 automatically formats my code if I switch to another view or save the file. How can I disable this?