diff options
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/loadup.el | 22 | ||||
| -rw-r--r-- | lisp/startup.el | 19 |
3 files changed, 32 insertions, 15 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 6f5519e8803..fd41ed84d64 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2013-11-26 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | Preload leim-list.el. (Bug#4789) | ||
| 4 | * loadup.el: Load leim-list.el when found. | ||
| 5 | * startup.el (normal-top-level): Skip re-loading leim/leim-list.el. | ||
| 6 | |||
| 1 | 2013-11-25 Bozhidar Batsov <bozhidar@batsov.com> | 7 | 2013-11-25 Bozhidar Batsov <bozhidar@batsov.com> |
| 2 | 8 | ||
| 3 | * emacs-lisp/bytecomp.el (byte-compile-form): Fix a typo. | 9 | * emacs-lisp/bytecomp.el (byte-compile-form): Fix a typo. |
diff --git a/lisp/loadup.el b/lisp/loadup.el index 98e3b877144..fe4fe1fe571 100644 --- a/lisp/loadup.el +++ b/lisp/loadup.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; loadup.el --- load up standardly loaded Lisp files for Emacs | 1 | ;;; loadup.el --- load up standardly loaded Lisp files for Emacs |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1985-1986, 1992, 1994, 2001-2013 Free Software | 3 | ;; Copyright (C) 1985-1986, 1992, 1994, 2001-2013 |
| 4 | ;; Foundation, Inc. | 4 | ;; Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Maintainer: FSF | 6 | ;; Maintainer: FSF |
| 7 | ;; Keywords: internal | 7 | ;; Keywords: internal |
| @@ -98,6 +98,8 @@ | |||
| 98 | (load "env") | 98 | (load "env") |
| 99 | (load "format") | 99 | (load "format") |
| 100 | (load "bindings") | 100 | (load "bindings") |
| 101 | ;; This sets temporary-file-directory, used by eg | ||
| 102 | ;; auto-save-file-name-transforms in files.el. | ||
| 101 | (load "cus-start") | 103 | (load "cus-start") |
| 102 | (load "window") ; Needed here for `replace-buffer-in-windows'. | 104 | (load "window") ; Needed here for `replace-buffer-in-windows'. |
| 103 | (setq load-source-file-function 'load-with-code-conversion) | 105 | (setq load-source-file-function 'load-with-code-conversion) |
| @@ -278,12 +280,16 @@ | |||
| 278 | (load "vc/ediff-hook") | 280 | (load "vc/ediff-hook") |
| 279 | (if (not (eq system-type 'ms-dos)) (load "tooltip")) | 281 | (if (not (eq system-type 'ms-dos)) (load "tooltip")) |
| 280 | 282 | ||
| 281 | ;If you want additional libraries to be preloaded and their | 283 | ;; This file doesn't exist when building a development version of Emacs |
| 282 | ;doc strings kept in the DOC file rather than in core, | 284 | ;; from the repository. It is generated just after temacs is built. |
| 283 | ;you may load them with a "site-load.el" file. | 285 | (load "leim-list.el" t) |
| 284 | ;But you must also cause them to be scanned when the DOC file | 286 | |
| 285 | ;is generated. | 287 | ;; If you want additional libraries to be preloaded and their |
| 286 | ;For other systems, you must edit ../src/Makefile.in. | 288 | ;; doc strings kept in the DOC file rather than in core, |
| 289 | ;; you may load them with a "site-load.el" file. | ||
| 290 | ;; But you must also cause them to be scanned when the DOC file | ||
| 291 | ;; is generated. | ||
| 292 | ;; For other systems, you must edit ../src/Makefile.in. | ||
| 287 | (load "site-load" t) | 293 | (load "site-load" t) |
| 288 | 294 | ||
| 289 | ;; Make sure default-directory is unibyte when dumping. This is | 295 | ;; Make sure default-directory is unibyte when dumping. This is |
diff --git a/lisp/startup.el b/lisp/startup.el index 88ec1f359eb..0b1c55b36a0 100644 --- a/lisp/startup.el +++ b/lisp/startup.el | |||
| @@ -499,18 +499,23 @@ It is the default value of the variable `top-level'." | |||
| 499 | ;; available input methods. | 499 | ;; available input methods. |
| 500 | (let ((tail load-path) | 500 | (let ((tail load-path) |
| 501 | (lispdir (expand-file-name "../lisp" data-directory)) | 501 | (lispdir (expand-file-name "../lisp" data-directory)) |
| 502 | ;; For out-of-tree builds, leim-list is generated in the build dir. | 502 | ;; For out-of-tree builds, leim-list is generated in the build dir. |
| 503 | ;;; (leimdir (expand-file-name "../leim" doc-directory)) | 503 | (leimdir (expand-file-name "../leim" doc-directory)) |
| 504 | dir) | 504 | dir) |
| 505 | (while tail | 505 | (while tail |
| 506 | (setq dir (car tail)) | 506 | (setq dir (car tail)) |
| 507 | (let ((default-directory dir)) | 507 | (let ((default-directory dir)) |
| 508 | (load (expand-file-name "subdirs.el") t t t)) | 508 | (load (expand-file-name "subdirs.el") t t t)) |
| 509 | ;; Do not scan standard directories that won't contain a leim-list.el. | 509 | ;; Do not scan standard directories that won't contain a leim-list.el. |
| 510 | ;; http://lists.gnu.org/archive/html/emacs-devel/2009-10/msg00502.html | 510 | ;; http://lists.gnu.org/archive/html/emacs-devel/2009-10/msg00502.html |
| 511 | (or (string-match (concat "\\`" lispdir) dir) | 511 | ;; Also skip leim/leim-list.el, since we preloaded that one. |
| 512 | (let ((default-directory dir)) | 512 | (or (string-prefix-p lispdir dir) |
| 513 | (load (expand-file-name "leim-list.el") t t t))) | 513 | ;; Not supposed to be subdirs.el in leim, but someone |
| 514 | ;; might have added one and be keeping their own leim-list | ||
| 515 | ;; files in subdirs of leim. | ||
| 516 | (string-equal leimdir dir) | ||
| 517 | (let ((default-directory dir)) | ||
| 518 | (load (expand-file-name "leim-list.el") t t t))) | ||
| 514 | ;; We don't use a dolist loop and we put this "setq-cdr" command at | 519 | ;; We don't use a dolist loop and we put this "setq-cdr" command at |
| 515 | ;; the end, because the subdirs.el files may add elements to the end | 520 | ;; the end, because the subdirs.el files may add elements to the end |
| 516 | ;; of load-path and we want to take it into account. | 521 | ;; of load-path and we want to take it into account. |