1. 25 Dec, 2015 2 commits
  2. 24 Dec, 2015 1 commit
  3. 23 Dec, 2015 1 commit
    • Anders Lindgren's avatar
      File-name completion of non-ASCII characters on OS X (bug#22169) · 09053075
      Anders Lindgren authored
      The coding system `utf-8-nfd', locally defined in ns-win.el,
      didn't provide a :pre-write-conversion method, causing file name
      completion of non-ASCII characters to fail.  Solved by using the
      `utf-8-hfs' coding system provided by `ucs-normalize'.
      
      * lisp/loadup.el: Load international/ucs-normalize (when building
      for ns).
      
      * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
      `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
      as the file name coding system.
      
      * src/nsfns.c (ns-convert-utf8-nfd-to-nfc): Removed.
      09053075
  4. 13 Nov, 2015 2 commits
  5. 16 Jun, 2015 1 commit
  6. 17 May, 2015 1 commit
    • Glenn Morris's avatar
      * src/lisp.mk: Remove from repository and generate at build-time. · 46ea9379
      Glenn Morris authored
      * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
      (shortlisp_filter): New variable.
      (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
      (distclean): Remove lisp.mk.
      * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
      * lisp/loadup.el: Tweak layout to make it easier to parse.
      * make-dist: Do not distribute src/lisp.mk.
      46ea9379
  7. 16 May, 2015 1 commit
    • Glenn Morris's avatar
      Small src/Makefile simplification. · e3c90430
      Glenn Morris authored
      * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
      * src/Makefile.in (lisp): Derive from shortlisp.
      ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
      e3c90430
  8. 15 May, 2015 1 commit
    • Glenn Morris's avatar
      Tweak japanese.el's loading of dependencies. · c7e93c41
      Glenn Morris authored
      * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
      * lisp/language/japanese.el: Use require rather than load.
      * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
      Provide a feature.
      * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
      Provide a feature in the generated file.
      c7e93c41
  9. 13 May, 2015 1 commit
    • Stefan Monnier's avatar
      * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload · 37ab2245
      Stefan Monnier authored
      * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
      * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
      Avoid defalias for closures which are not immutable.
      (cl--generic-prefill-dispatchers): New macro.  Use it to prefill the
      dispatchers table with various entries.
      
      * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
      * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
      37ab2245
  10. 20 Apr, 2015 3 commits
  11. 15 Apr, 2015 1 commit
  12. 13 Apr, 2015 1 commit
  13. 28 Jan, 2015 1 commit
    • Stefan Monnier's avatar
      Tighten up the tagcode used for eieio and cl-struct objects · 2668ac1a
      Stefan Monnier authored
      * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Set the function
      slot of the tag symbol to :quick-object-witness-check.
      (eieio-object-p): Use :quick-object-witness-check.
      (eieio--generic-tagcode): Use cl--generic-struct-tag.
      * lisp/emacs-lisp/cl-preloaded.el: New file.
      * lisp/emacs-lisp/cl-macs.el (cl--bind-inits): Remove, unused.
      (cl--transform-lambda, cl-destructuring-bind): Remove cl--bind-inits.
      (cl--make-usage-args): Strip away &aux args.
      (cl-case, cl-typecase, cl--parse-loop-clause): Use macroexp-let2.
      (cl-the, cl-check-type): Use macroexp-let2 and cl-typep.
      (cl-defstruct): Use `declare' and cl-struct-define.
      * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): New function.
      (cl--generic-struct-tagcode): Use it to tighten the tagcode.
      * lisp/loadup.el: Load cl-preloaded.
      * src/lisp.mk (lisp): Add cl-preloaded.
      2668ac1a
  14. 01 Jan, 2015 2 commits
  15. 15 Oct, 2014 1 commit
  16. 06 Oct, 2014 3 commits
  17. 01 Oct, 2014 1 commit
    • Stefan Monnier's avatar
      Consolidate x-select-text. · a8b36b95
      Stefan Monnier authored
      * lisp/frame.el (gui-method, gui-method-define, gui-method-declare)
      (gui-call): New macros.
      (gui-method--name): New function.
      (frame-creation-function-alist): Use gui-method-declare.
      (make-frame): Use gui-method.
      * lisp/select.el (gui-select-enable-clipboard): Rename from
      x-select-enable-clipboard and move here.
      (x-select-enable-clipboard): Define as obsolete alias.
      (gui-last-selected-text): New var, to replace x-last-selected-text.
      (gui-select-text): New GUI method.
      (gui-select-text): New function.
      (x-select-text): Define as obsolete alias.
      * lisp/term/common-win.el (x-select-enable-clipboard, x-select-text):
      Move to select.el.
      * lisp/simple.el (interprogram-cut-function): Change default to
      x-select-text.
      (interprogram-paste-function): Change default to `ignore'.
      * lisp/w32-common-fns.el (interprogram-cut-function): Don't modify.
      * lisp/term/x-win.el (interprogram-cut-function): Don't modify.
      (gui-select-text): Add method for x.
      * lisp/term/w32-win.el (gui-select-text): Add method for w32.
      * lisp/term/pc-win.el (x-last-selected-text): Remove, use
      gui-last-selected-text instead.
      (msdos-initialize-window-system): Don't set interprogram-cut-function.
      (gui-select-text): Add method for pc.
      * lisp/term/ns-win.el (ns-last-selected-text): Remove, use
      gui-last-selected-text instead.
      (gui-select-text): Add method for ns.
      (x-setup-function-keys): Don't change interprogram-cut-function.
      * lisp/loadup.el ("startup"): Load after "frame".
      * lisp/subr.el (package--builtin-versions, package--description-file):
      Move from startup.el.
      * lisp/startup.el (package--builtin-versions, package--description-file):
      Move to subr.el.
      (handle-args-function-alist, window-system-initialization-alist):
      Use gui-method-declare.
      (command-line): Use gui-method.
      * src/xselect.c (selection-converter-alist): Fix docstring.
      a8b36b95
  18. 27 Sep, 2014 1 commit
    • Stefan Monnier's avatar
      Introduce global-eldoc-mode. Move Elisp-specific code to elisp-mode.el. · e6cfa098
      Stefan Monnier authored
      * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): New minor mode.
      (eldoc-schedule-timer): Obey it.
      (eldoc-documentation-function): Default to nil.
      (eldoc-mode): Don't enable if eldoc-documentation-function is not set.
      (eldoc-documentation-function-default, eldoc-get-fnsym-args-string)
      (eldoc-highlight-function-argument, eldoc-get-var-docstring)
      (eldoc-last-data-store, eldoc-docstring-first-line)
      (eldoc-docstring-format-sym-doc, eldoc-fnsym-in-current-sexp)
      (eldoc-beginning-of-sexp, eldoc-current-symbol)
      (eldoc-function-argstring): Move to elisp-mode.el.
      (eldoc-symbol-function): Remove, unused.
      * lisp/progmodes/elisp-mode.el: New file.  Rename all "eldoc-*" to "elisp--*".
      (elisp-completion-at-point): Rename from lisp-completion-at-point.
      (elisp--preceding-sexp): Rename from preceding-sexp.
      * lisp/loadup.el: Load new file progmodes/elisp-mode.
      * lisp/ielm.el (inferior-emacs-lisp-mode): Set eldoc-documentation-function.
      * lisp/emacs-lisp/lisp.el (lisp--local-variables-1, lisp--local-variables)
      (lisp--local-variables-completion-table, lisp--expect-function-p)
      (lisp--form-quoted-p, lisp--company-doc-buffer)
      (lisp--company-doc-string, lisp--company-location)
      (lisp-completion-at-point): Move to elisp-mode.el.
      * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): New syntax-table,
      extracted from emacs-lisp-mode-syntax-table.
      (emacs-lisp-mode-abbrev-table, emacs-lisp-mode-syntax-table): Move to
      elisp-mode.el.
      (lisp-imenu-generic-expression): Add comments to document what comes
      from which Lisp dialect.
      (emacs-lisp-mode-map, emacs-lisp-byte-compile)
      (emacs-lisp-byte-compile-and-load, emacs-lisp-mode-hook)
      (emacs-lisp-mode, emacs-list-byte-code-comment-re)
      (emacs-lisp-byte-code-comment)
      (emacs-lisp-byte-code-syntax-propertize, emacs-lisp-byte-code-mode)
      (lisp-interaction-mode-map, lisp-interaction-mode)
      (eval-print-last-sexp, last-sexp-setup-props)
      (last-sexp-toggle-display, prin1-char, preceding-sexp)
      (eval-last-sexp-1, eval-last-sexp-print-value)
      (eval-last-sexp-fake-value, eval-sexp-add-defvars, eval-last-sexp)
      (eval-defun-1, eval-defun-2, eval-defun): Move to elisp-mode.el.
      * src/lisp.mk (lisp): Add elisp-mode.elc.
      e6cfa098
  19. 22 Sep, 2014 1 commit
  20. 01 Jun, 2014 1 commit
  21. 30 May, 2014 1 commit
  22. 18 May, 2014 1 commit
  23. 10 Feb, 2014 1 commit
  24. 08 Jan, 2014 1 commit
  25. 01 Jan, 2014 1 commit
  26. 16 Dec, 2013 1 commit
    • Paul Eggert's avatar
      Fix problems with CANNOT_DUMP and EMACSLOADPATH. · 8fb8c4f3
      Paul Eggert authored
      * leim/Makefile.in (RUN_EMACS):
      * lisp/Makefile.in (emacs): Add lisp src to EMACSLOADPATH.
      * lisp/loadup.el: Check for src/bootstrap-emacs only when Emacs can dump.
      Expand dir too, in case it's relative.
      * src/lread.c (init_lread): If CANNOT_DUMP, we can't be dumping.
      8fb8c4f3
  27. 13 Dec, 2013 1 commit
    • Glenn Morris's avatar
      Unconditionally reset load-path after dumping · 06a4f110
      Glenn Morris authored
      * src/lread.c: (dump_path): Remove.
      (load-path-default): Remove `changed' argument.
      Do not set dump_path permanently.  Simplify.
      (init_lread): Simplify.
      (syms_of_lread): Remove dump_path.
      
      * lisp/loadup.el (load-path): Warn if site-load or site-init changes it.
      No more need to reset it when bootstrapping.
      
      * doc/lispref/internals.texi (Building Emacs):
      * doc/lispref/loading.texi (Library Search): Mention that site-load,
      site-init cannot change load-path.
      
      * INSTALL: No longer mention load-path and site-init/site-load.
      
      * etc/NEWS: Mention this.
      
      Fixes: debbugs:16107
      06a4f110
  28. 29 Nov, 2013 2 commits
  29. 27 Nov, 2013 2 commits
    • Glenn Morris's avatar
      Make bootstrap without generated uni-*.el files possible again · 20372d0c
      Glenn Morris authored
      * lisp/loadup.el: Update command-line-args checking for unidata-gen.
      Add vc to load-path to allow loading vc-bzr when writing uni-*.el.
      
      * lisp/composite.el, lisp/international/characters.el:
      Handle unicode tables being undefined.
      
      * lisp/composite.el: Add (rough) FSF copyright years.
      20372d0c
    • Glenn Morris's avatar
      Move runtime leim lisp files to lisp/leim directory · cb6c95a3
      Glenn Morris authored
      This allows us to reuse much of the lisp build and installation machinery,
      rather than duplicating it.
      
      * Makefile.in (abs_builddir, leimdir): Remove.
      (buildlisppath, SUBDIR, COPYDIR, COPYDESTS): No more leim directory.
      (epaths-force-w32): No longer set BLD.
      (leim): Remove.
      (install-arch-indep): No longer run or install leim.
      (mostlyclean, clean): No longer run leim rule.
      (bootstrap-clean): Change leim target.
      (maintainer-clean): Add leim.
      (check-declare): Remove leim.
      
      * README: Update for leim changes.
      
      * configure.ac (leimdir): Remove.
      (standardlisppath): No more leimdir.
      
      * make-dist: Update for files from leim/ now being in lisp/leim/.
      
      * doc/lispref/loading.texi (Library Search):
      * doc/lispref/os.texi (Startup Summary): No more leim directory.
      
      * leim/Makefile.in (leimdir): New variable.
      (TIT_GB, TIT_BIG5, MISC, changed.tit, changed.misc)
      (${leimdir}/leim-list.el, ${leimdir}/ja-dic/ja-dic.el):
      Generate in $leimdir.
      (all): Remove compilation, add ja-dic.
      (leim-list.el): Now PHONY.
      (setwins, compile-targets, compile-main, clean, mostlyclean)
      (extraclean): Remove.
      (bootstrap-clean): Delete all generated files.
      
      * leim/README: Update for moved leim/ directory.
      
      * leim/leim-ext.el (ucs-input-activate, hangul-input-method-activate):
      Remove manual autoloads; now in loaddefs.el.
      Disable byte-compile, version-control, autoloads in the output.
      
      * lisp/Makefile.in (setwins_for_subdirs): Skip leim/ directory.
      (compile-main): Depend on lisp/leim rule.
      (leim): New rule.
      
      * lisp/loadup.el: Move leim-list.el to leim/ subdirectory.
      
      * lisp/startup.el (normal-top-level): No more leim directory.
      
      * lisp/international/ja-dic-cnv.el (skkdic-convert):
      Disable version-control and autoloads in output files.
      * lisp/international/titdic-cnv.el (titdic-convert, miscdic-convert):
      Disable version-control and autoloads in output files.
      
      * lisp/leim/quail: Move here from ../leim.
      
      * lisp/leim/quail/hangul.el (hangul-input-method-activate):
      Add autoload cookie.
      (generated-autoload-load-name): Set file-local value.
      
      * lisp/leim/quail/uni-input.el (ucs-input-activate): Add autoload cookie.
      (generated-autoload-load-name): Set file-local value.
      
      * nt/README.W32:
      * nt/addpm.c (env_vars):
      * nt/epaths.nt (PATH_LOADSEARCH, PATH_DUMPLOADSEARCH):
      * nt/paths.h (PATH_LOADSEARCH): No more leim directory.
      
      * src/Makefile.in (leimdir): Now in lisp source directory.
      ($(leimdir)/leim-list.el): Just use ../leim .
      
      * src/epaths.in (PATH_DUMPLOADSEARCH):
      
      * src/lread.c (load_path_default):
      
      * src/nsterm.m (ns_load_path): No more leim directory.
      
      * .bzrignore: Update for relocated leim files.
      cb6c95a3
  30. 26 Nov, 2013 1 commit
    • Glenn Morris's avatar
      Preload leim-list.el · 624780f0
      Glenn Morris authored
      * Makefile.in (abs_builddir): New, set by configure.
      (buildlisppath): Add leim/.
      (epaths-force-w32): Set BLD.
      
      * lisp/loadup.el: Load leim-list.el when found.
      
      * lisp/startup.el (normal-top-level): Skip re-loading leim/leim-list.el.
      
      * nt/epaths.nt (PATH_DUMPLOADSEARCH): Add leim/.
      
      * src/callproc.c (init_callproc): Don't assume PATH_DUMPLOADSEARCH
      is a single directory.
      
      * src/epaths.in (PATH_DUMPLOADSEARCH): Add leim/.
      
      Fixes: debbugs:4789
      624780f0
  31. 04 Nov, 2013 1 commit
    • Eli Zaretskii's avatar
      Fix bug #15260 with building and installing Emacs in non-ASCII directories. · d0065ff1
      Eli Zaretskii authored
       src/xdisp.c (message3_nolog, message_with_string): Encode the string
       before writing it to the terminal in a non-interactive session.
       src/lread.c (openp): If both FILENAME and SUFFIX are unibyte, make
       sure we concatenate them into a unibyte string.
       src/fileio.c (make_temp_name): Encode PREFIX, and decode the
       resulting temporary name before returning it to the caller.
       (Fexpand_file_name): If NAME is pure-ASCII and DEFAULT_DIRECTORY
       is a unibyte string, convert NAME to a unibyte string to ensure
       that the result is also a unibyte string.
       src/emacs.c (init_cmdargs): Use build_unibyte_string to make sure we
       create unibyte strings from default paths and directory/file
       names.
       src/coding.h (ENCODE_FILE): Do not attempt to encode a unibyte
       string.
       src/callproc.c (init_callproc): Use build_unibyte_string to make
       sure we create unibyte strings from default paths and
       directory/file names.
       src/buffer.c (init_buffer): Don't store default-directory of
       *scratch* in multibyte form.  The original problem which led to
       that is described in
       http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-11/msg00532.html,
       but it was solved long ago.
      
       lisp/startup.el (normal-top-level): Move setting eol-mnemonic-unix,
       eol-mnemonic-mac, eol-mnemonic-dos, and also setup of the locale
       environment and decoding all of the default-directory's to here
       from command-line.
       (command-line): Decode also argv[0].
       lisp/loadup.el: Error out if default-directory is a multibyte string
       when we are dumping.
       lisp/Makefile.in (emacs): Don't set LC_ALL=C.
      
       leim/Makefile.in (RUN_EMACS): Don't set LC_ALL=C.
      
       configure.ac: Don't disallow builds in non-ASCII directories.
      d0065ff1