1. 14 Nov, 2012 1 commit
  2. 12 Nov, 2012 1 commit
  3. 08 Nov, 2012 4 commits
  4. 07 Nov, 2012 2 commits
  5. 06 Nov, 2012 1 commit
  6. 18 Oct, 2012 1 commit
  7. 14 Oct, 2012 1 commit
  8. 26 Sep, 2012 1 commit
  9. 24 Sep, 2012 1 commit
  10. 29 Aug, 2012 1 commit
    • Stefan Monnier's avatar
      * lisp/files.el (read-only-mode): New minor mode. · 35e62fc9
      Stefan Monnier authored
      (toggle-read-only): Use it and mark obsolete.
      (find-file--read-only):
      * lisp/vc/vc.el (vc-next-action, vc-checkout):
      * lisp/vc/vc-cvs.el (vc-cvs-checkout):
      * lisp/obsolete/vc-mcvs.el (vc-mcvs-update):
      * lisp/ffap.el (ffap--toggle-read-only): Update callers.
      35e62fc9
  11. 26 Jul, 2012 1 commit
    • Stefan Monnier's avatar
      Autoload more carefully from Lisp. Follow aliases for function properties. · 7abaf5cc
      Stefan Monnier authored
      * lisp/subr.el (autoloadp): New function.
      (symbol-file): Use it.
      (function-get): New function.
      * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Use function-get and
      autoload-do-load.
      * lisp/emacs-lisp/lisp-mode.el (lisp-font-lock-syntactic-face-function)
      (lisp-indent-function):
      * lisp/emacs-lisp/gv.el (gv-get):
      * lisp/emacs-lisp/edebug.el (get-edebug-spec, edebug-basic-spec):
      * lisp/emacs-lisp/byte-opt.el (byte-optimize-form):
      * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
      * lisp/emacs-lisp/autoload.el (make-autoload, autoload-print-form):
      Use function-get.
      * lisp/emacs-lisp/cl.el: Don't propagate function properties any more.
      
      * src/eval.c (Fautoload_do_load): Rename from do_autoload, export to Lisp,
      add argument, tune behavior, and adjust all callers.
      
      * lisp/speedbar.el (speedbar-add-localized-speedbar-support):
      * lisp/emacs-lisp/disass.el (disassemble-internal):
      * lisp/desktop.el (desktop-load-file):
      * lisp/help-fns.el (help-function-arglist, find-lisp-object-file-name)
      (describe-function-1):
      * lisp/emacs-lisp/find-func.el (find-function-noselect):
      * lisp/emacs-lisp/elp.el (elp-instrument-function):
      * lisp/emacs-lisp/advice.el (ad-has-proper-definition):
      * lisp/apropos.el (apropos-safe-documentation, apropos-macrop):
      * lisp/emacs-lisp/debug.el (debug-on-entry):
      * lisp/emacs-lisp/cl-macs.el (cl-compiler-macroexpand):
      * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
      * lisp/calc/calc.el (name): Use autoloadp & autoload-do-load.
      7abaf5cc
  12. 10 Jul, 2012 1 commit
  13. 22 Jun, 2012 2 commits
    • Stefan Monnier's avatar
      Further GV/CL cleanups. · 36cec983
      Stefan Monnier authored
      * lisp/emacs-lisp/gv.el (gv-get): Autoload functions to find their
      gv-expander.
      (gv--defun-declaration): New function.
      (defun-declarations-alist): Use it.
      (gv-define-modify-macro, gv-pushnew!, gv-inc!, gv-dec!): Remove.
      (gv-place): Autoload.
      * lisp/emacs-lisp/cl.el (cl--dotimes, cl--dolist): Remember subr.el's
      original definition of dotimes and dolist.
      * lisp/emacs-lisp/cl-macs.el (cl-expr-access-order): Remove unused.
      (cl-dolist, cl-dotimes): Use `dolist' and `dotimes'.
      * lisp/emacs-lisp/cl-lib.el: Move gv handlers from cl-macs to here.
      (cl-fifth, cl-sixth, cl-seventh, cl-eighth)
      (cl-ninth, cl-tenth): Move gv handler to the function's definition.
      * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-get, cl-getf): Move gv handler
      to the function's definition.
      * lisp/Makefile.in (COMPILE_FIRST): Re-order to speed it up by about 50%.
      * lisp/window.el:
      * lisp/files.el:
      * lisp/faces.el:
      * lisp/env.el: Don't use CL.
      36cec983
    • Stefan Monnier's avatar
      Provide generalized variables in core Elisp. · 2ee3d7f0
      Stefan Monnier authored
      * lisp/emacs-lisp/gv.el: New file.
      * lisp/subr.el (push, pop): Extend to generalized variables.
      * lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
      * lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
      * lisp/emacs-lisp/cl-macs.el: Require gv.  Use gv-define-setter,
      gv-define-simple-setter, and gv-define-expander.
      Remove setf-methods defined in gv.  Rename cl-setf -> setf.
      (cl-setf, cl-do-pop, cl-get-setf-method): Remove.
      (cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
      (cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
      (cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
      gv-letplace.
      (cl-defstruct): Don't define setf-method any more.
      * lisp/emacs-lisp/cl.el (flet): Don't autoload.
      (cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
      (define-setf-expander, defsetf, define-modify-macro)
      (cl-struct-setf-expander): Move from cl-lib.el.
      * lisp/emacs-lisp/syntax.el:
      * lisp/emacs-lisp/ewoc.el:
      * lisp/emacs-lisp/smie.el:
      * lisp/emacs-lisp/cconv.el:
      * lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
      (timer--time): Use gv-define-simple-setter.
      * lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
      to avoid coding-system problems in subr.el.  Adjust all users.
      (macroexp--maxsize, macroexp-small-p): New functions.
      * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
      * lisp/scroll-bar.el (scroll-bar-mode):
      * lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
      (normal-erase-is-backspace-mode): Don't use the `eq' place.
      * lisp/winner.el (winner-configuration, winner-make-point-alist)
      (winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
      * lisp/files.el (locate-file-completion-table): Avoid list*.
      
      Fixes: debbugs:11657
      2ee3d7f0