1. 12 Sep, 2013 2 commits
    • Stefan Monnier's avatar
      * lisp/eshell/*.el: Use lexical-binding. · ae5e4c48
      Stefan Monnier authored
      * test/automated/eshell.el: Move from test/eshell.el.
      (eshell-test/for-loop, eshell-test/for-name-loop): New tests.
      
      Fixes: debbugs:15231
      ae5e4c48
    • Stefan Monnier's avatar
      Cleanup Eshell to rely less on dynamic scoping. · 170266d0
      Stefan Monnier authored
      * lisp/eshell/esh-opt.el (eshell-eval-using-options): Don't bind usage-msg,
      last-value, and ext-command here.  Bind `args' closer to `body'.
      (temp-args, last-value, usage-msg, ext-command, args): Don't defvar.
      (eshell--args): Declare new dynamic var.
      (eshell-do-opt): Add argument `args'.  Bind our own usage-msg,
      last-value, and ext-command.  Pass `args' to `body'.
      (eshell-process-args): Bind eshell--args.
      (eshell-set-option): Use eshell--args.
      * lisp/eshell/eshell.el (eshell): Use derived-mode-p.
      * lisp/eshell/esh-var.el (eshell-parse-variable): Use backquote.
      (eshell-parse-variable-ref): Remove unused vars `end' and `err'.
      (eshell-glob-function): Declare.
      * lisp/eshell/esh-util.el: Require cl-lib.
      (eshell-read-hosts-file): Avoid add-to-list.
      * lisp/eshell/esh-cmd.el (eshell-parse-lisp-argument): Remove unused var
      `err'.
      * lisp/eshell/em-unix.el (compilation-scroll-output, locate-history-list):
      Declare.
      (eshell/diff): Remove unused var `err'.
      * lisp/eshell/em-rebind.el (eshell-delete-backward-char): Remove unused arg
      `killflag'.
      * lisp/eshell/em-pred.el (eshell-parse-modifiers): Remove unused var `err'.
      * lisp/eshell/em-ls.el (eshell-ls-highlight-alist): Move defvars before
      first use.
      * lisp/eshell/em-glob.el (eshell-glob-matches, message-shown):
      Move declaration before first use.
      * lisp/eshell/em-alias.el (eshell-maybe-replace-by-alias): Use backquotes.
      * autorevert.el (auto-revert-notify-handler): Use `cl-dolist' since we
      rely on cl-return.
      170266d0
  2. 04 Aug, 2013 1 commit
    • Stefan Monnier's avatar
      * lisp/subr.el (macrop): New function. · 671d5c16
      Stefan Monnier authored
      (text-clone--maintaining): New var.
      (text-clone--maintain): Rename from text-clone-maintain.  Use it
      instead of inhibit-modification-hooks.
      
      * lisp/emacs-lisp/nadvice.el (advice--normalize): For aliases to macros, use
      a proxy, so as handle autoloads and redefinitions of the target.
      (advice--defalias-fset, advice-remove): Use advice--symbol-function.
      
      * lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates):
      Remove bogus (arrayp . stringp) pair.  Add entries for `vectorp'.
      (pcase--mutually-exclusive-p): New function.
      (pcase--split-consp): Use it.
      (pcase--split-pred): Use it.  Optimize the case where `pat' is a qpat
      mutually exclusive with the current predicate.
      
      * test/automated/advice-tests.el (advice-tests-nadvice): Test removal
      before definition.
      (advice-tests-macroaliases): New test.
      
      * lisp/emacs-lisp/edebug.el (edebug-lookup-function): Remove function.
      (edebug-macrop): Remove.  Use `macrop' instead.
      * lisp/emacs-lisp/advice.el (ad-subr-p): Remove.  Use `subrp' instead.
      (ad-macro-p):
      * lisp/eshell/esh-cmd.el (eshell-macrop):
      * lisp/apropos.el (apropos-macrop): Remove.  Use `macrop' instead.
      671d5c16
  3. 01 Jan, 2013 1 commit
  4. 20 Oct, 2012 1 commit
  5. 24 Sep, 2012 2 commits
  6. 11 Jul, 2012 1 commit
    • Stefan Monnier's avatar
      More CL cleanups and reduction of use of cl.el. · a464a6c7
      Stefan Monnier authored
      * woman.el, winner.el, vc/vc-rcs.el, vc/vc-hooks.el, vc/vc-hg.el:
      * vc/vc-git.el, vc/vc-dir.el, vc/vc-bzr.el, vc/vc-annotate.el:
      * textmodes/tex-mode.el, textmodes/sgml-mode.el, tar-mode.el:
      * strokes.el, ses.el, server.el, progmodes/js.el, progmodes/gdb-mi.el:
      * progmodes/flymake.el, progmodes/ebrowse.el, progmodes/compile.el:
      * play/tetris.el, play/snake.el, play/pong.el, play/landmark.el:
      * play/hanoi.el, play/decipher.el, play/5x5.el, nxml/nxml-mode.el:
      * net/secrets.el, net/quickurl.el, midnight.el, mail/footnote.el:
      * image-dired.el, ibuffer.el, ibuf-macs.el, ibuf-ext.el, hexl.el:
      * eshell/eshell.el, eshell/esh-io.el, eshell/esh-ext.el:
      * eshell/esh-cmd.el, eshell/em-ls.el, eshell/em-hist.el:
      * eshell/em-cmpl.el, eshell/em-banner.el:
      * url/url.el, url/url-queue.el, url/url-parse.el, url/url-http.el:
      * url/url-future.el, url/url-dav.el, url/url-cookie.el:
      * calendar/parse-time.el, test/eshell.el: Use cl-lib.
      * wid-browse.el, wdired.el, vc/vc.el, vc/vc-mtn.el, vc/vc-cvs.el:
      * vc/vc-arch.el, tree-widget.el, textmodes/texinfo.el:
      * textmodes/refill.el, textmodes/css-mode.el, term/tvi970.el:
      * term/ns-win.el, term.el, shell.el, ps-samp.el:
      * progmodes/perl-mode.el, progmodes/pascal.el, progmodes/gud.el:
      * progmodes/glasses.el, progmodes/etags.el, progmodes/cwarn.el:
      * play/gamegrid.el, play/bubbles.el, novice.el, notifications.el:
      * net/zeroconf.el, net/xesam.el, net/snmp-mode.el, net/mairix.el:
      * net/ldap.el, net/eudc.el, net/browse-url.el, man.el:
      * mail/mailheader.el, mail/feedmail.el:
      * url/url-util.el, url/url-privacy.el, url/url-nfs.el, url/url-misc.el:
      * url/url-methods.el, url/url-gw.el, url/url-file.el, url/url-expand.el:
      Dont use CL.
      * ibuf-ext.el (ibuffer-mark-old-buffers): Use float-time.
      * eshell/esh-opt.el (eshell-eval-using-options): Quote code with
      `lambda' rather than with `quote'.
      (eshell-do-opt): Adjust accordingly.
      (eshell-process-option): Simplify.
      * eshell/esh-var.el:
      * eshell/em-script.el: Require `esh-opt' for eshell-eval-using-options.
      * emacs-pcase.el (pcase--dontcare-upats, pcase--let*)
      (pcase--expand, pcase--u1): Rename pcase's internal `dontcare' pattern
      to `pcase--dontcare'.
      * emacs-cl.el (labels): Mark obsolete.
      (cl--letf, letf): Move to cl-lib.
      (cl--letf*, letf*): Remove.
      * emacs-cl-lib.el (cl-nth-value): Use defalias.
      * emacs-cl-macs.el (cl-dolist, cl-dotimes): Add indent rule.
      (cl-progv): Rewrite.
      (cl--letf, cl-letf): Move from cl.el.
      (cl-letf*): New macro.
      * emacs-cl-extra.el (cl--progv-before, cl--progv-after): Remove.
      a464a6c7
  7. 26 Jun, 2012 1 commit
    • Sam Steingold's avatar
      * lisp/files.el (file-name-base): New convenience function. · d2c32364
      Sam Steingold authored
      * lisp/autoinsert.el, lisp/cus-dep.el, lisp/doc-view.el, lisp/image-dired.el,
      * lisp/woman.el, lisp/eshell/esh-cmd.el, lisp/progmodes/ada-xref.el,
      * lisp/progmodes/cc-defs.el, lisp/progmodes/cperl-mode.el,
      * lisp/progmodes/flymake.el, lisp/progmodes/gud.el, lisp/progmodes/idlwave.el,
      * lisp/textmodes/ispell.el, lisp/textmodes/reftex-ref.el,
      * lisp/textmodes/tex-mode.el: Use it.
      Did not touch cedet and org because they are maintained elsewhere.
      d2c32364
  8. 09 May, 2012 1 commit
  9. 01 May, 2012 2 commits
  10. 11 Jan, 2012 1 commit
  11. 05 Jan, 2012 1 commit
  12. 18 Nov, 2011 1 commit
    • Stefan Monnier's avatar
      * lisp/eshell/esh-cmd.el (eshell-do-eval): Handle `setq'. · 6dbe3e96
      Stefan Monnier authored
      (eshell-rewrite-for-command): Remove workaround.
      (eshell-do-pipelines, eshell-do-pipelines-synchronously)
      (eshell-do-eval, eshell-exec-lisp): Avoid gratuitous setq.
      * lisp/eshell/esh-util.el (eshell-condition-case, eshell-for): Use declare.
      
      Fixes: debbugs:9907
      6dbe3e96
  13. 14 Nov, 2011 1 commit
  14. 30 Oct, 2011 2 commits
    • Stefan Monnier's avatar
      * lisp/eshell/esh-cmd.el (eshell-rewrite-for-command): Fix last change. · c1e2f5fa
      Stefan Monnier authored
      (eshell-do-eval): Handle multiple expressions in `while' body.
      
      Fixes: debbugs:9907
      c1e2f5fa
    • Stefan Monnier's avatar
      * lisp/eshell/esh-cmd.el (eshell-rewrite-for-command): Don't modify the list · 1bc4c3ae
      Stefan Monnier authored
      in place.
      (eshell-subcommand-arg-values, eshell-rewrite-named-command)
      (eshell-rewrite-if-command, eshell-rewrite-for-command)
      (eshell-structure-basic-command, eshell-rewrite-while-command)
      (eshell-invokify-arg, eshell-parse-pipeline, eshell-parse-command)
      (eshell-parse-subcommand-argument, eshell-parse-lisp-argument)
      (eshell-trap-errors, eshell-do-pipelines, eshell-do-eval)
      (eshell-do-pipelines-synchronously, eshell-eval-command):
      Use backquotes and prefer setq to set.
      (eshell-lookup-function, function-p-func, eshell-functionp): Remove.
      (eshell-macrop): Use functionp.
      
      Fixes: debbugs:9907
      1bc4c3ae
  15. 05 Mar, 2011 3 commits
    • Glenn Morris's avatar
      Move eshell's self-tests to the test/ directory. · 81fb60b2
      Glenn Morris authored
      * lisp/eshell/esh-var.el: Don't require esh-test when compiling.
      * lisp/eshell/em-banner.el, lisp/eshell/esh-cmd.el, lisp/eshell/esh-mode.el:
      * lisp/eshell/esh-var.el, lisp/eshell/eshell.el: Move tests to esh-test.
      * lisp/eshell/esh-test.el: Move to ../../test/eshell.el
      
      * test/eshell.el: Move here from lisp/eshell/esh-test.el.
      81fb60b2
    • Glenn Morris's avatar
      Default all eshell hooks to nil (bug#5375) · d783d303
      Glenn Morris authored
      * eshell/esh-mode.el (eshell-kill-buffer-function): New function.
      (eshell-mode): Use eshell-kill-buffer-function.
      Run the -initialize functions independently of the -load-hooks.
      * eshell/esh-proc.el (eshell-kill-process-function): New function.
      (eshell-gather-process-output, eshell-sentinel)
      (eshell-interrupt-process, eshell-kill-process, eshell-quit-process):
      Use eshell-kill-process-function.
      * eshell/em-alias.el (eshell-alias-load-hook):
      * eshell/em-banner.el (eshell-banner-load-hook):
      * eshell/em-cmpl.el (eshell-cmpl-load-hook):
      * eshell/em-dirs.el (eshell-dirs-load-hook):
      * eshell/em-glob.el (eshell-glob-load-hook):
      * eshell/em-hist.el (eshell-hist-load-hook):
      * eshell/em-pred.el (eshell-pred-load-hook):
      * eshell/em-prompt.el (eshell-prompt-load-hook):
      * eshell/em-rebind.el (eshell-rebind-load-hook):
      * eshell/em-script.el (eshell-script-load-hook):
      * eshell/em-smart.el (eshell-smart-load-hook):
      * eshell/em-term.el (eshell-term-load-hook):
      * eshell/em-unix.el (eshell-unix-load-hook):
      * eshell/esh-arg.el (eshell-arg-load-hook):
      * eshell/esh-cmd.el (eshell-cmd-load-hook):
      * eshell/esh-ext.el (eshell-ext-load-hook):
      * eshell/esh-io.el (eshell-io-load-hook):
      * eshell/esh-mode.el (eshell-exit-hook):
      * eshell/esh-proc.el (eshell-proc-load-hook, eshell-kill-hook):
      * eshell/esh-var.el (eshell-var-load-hook):
      Set default hook values to nil.  (Bug#5375)
      d783d303
    • Glenn Morris's avatar
      Make eshell-for obsolete (replaced by dolist) · a9eeff78
      Glenn Morris authored
      * eshell/esh-util.el (eshell-for): Make it obsolete.
      * eshell/em-alias.el (eshell/alias, eshell-alias-completions):
      * eshell/em-dirs.el (eshell-save-some-last-dir):
      * eshell/em-hist.el (eshell-save-some-history, eshell-hist-parse-modifier):
      * eshell/em-ls.el (eshell-ls-dir, eshell-ls-files, eshell-ls-entries):
      * eshell/em-unix.el (eshell/cat, eshell/du, eshell/su):
      * eshell/esh-cmd.el (eshell-invoke-directly, eshell-do-eval, eshell/which):
      * eshell/esh-ext.el (eshell-find-interpreter):
      * eshell/esh-mode.el (eshell-mode):
      * eshell/esh-module.el (eshell-unload-extension-modules):
      * eshell/esh-proc.el (eshell-process-interact):
      * eshell/esh-test.el (eshell-test):
      * eshell/esh-util.el (eshell-flatten-list, eshell-winnow-list):
      * eshell/esh-var.el (eshell/env, eshell-environment-variables)
      (eshell-variables-list):
      * eshell/eshell.el (eshell-unload-all-modules):
      Replace eshell-for with dolist.
      a9eeff78
  16. 25 Jan, 2011 1 commit
  17. 15 Jan, 2011 1 commit
  18. 02 Jan, 2011 1 commit
  19. 23 Nov, 2010 1 commit
  20. 25 Sep, 2010 1 commit
    • Glenn Morris's avatar
      Cosmetic doc fixes for eshell. · ec60da52
      Glenn Morris authored
      * eshell/em-alias.el, eshell/em-banner.el, eshell/em-basic.el:
      * eshell/em-cmpl.el, eshell/em-dirs.el, eshell/em-glob.el:
      * eshell/em-hist.el, eshell/em-ls.el, eshell/em-pred.el:
      * eshell/em-prompt.el, eshell/em-rebind.el, eshell/em-script.el:
      * eshell/em-smart.el, eshell/em-term.el, eshell/em-unix.el:
      * eshell/esh-cmd.el, eshell/esh-ext.el, eshell/esh-io.el:
      * eshell/esh-mode.el, eshell/esh-proc.el, eshell/esh-test.el:
      * eshell/esh-util.el, eshell/esh-var.el:
      Remove leading `*' from docs of faces and defcustoms.
      ec60da52
  21. 13 Jan, 2010 1 commit
  22. 05 Jan, 2009 1 commit
  23. 23 Nov, 2008 1 commit
  24. 08 Oct, 2008 1 commit
  25. 15 Aug, 2008 1 commit
  26. 13 Aug, 2008 1 commit
  27. 25 Jun, 2008 1 commit
  28. 07 Jun, 2008 1 commit
  29. 06 May, 2008 1 commit
  30. 10 Apr, 2008 1 commit
  31. 07 Jan, 2008 1 commit
  32. 05 Dec, 2007 1 commit
  33. 17 Nov, 2007 1 commit
    • Dan Nicolaescu's avatar
      * eshell/esh-util.el (eshell-under-xemacs-p): Remove. · a3269bc4
      Dan Nicolaescu authored
      * eshell/esh-mode.el (eshell-mode-syntax-table)
      (command-running-p):
      * eshell/esh-ext.el (eshell-external-command):
      * eshell/esh-cmd.el (require):
      * eshell/em-unix.el (eshell-plain-locate-behavior):
      * eshell/em-cmpl.el (eshell-cmpl-initialize): Replace
      eshell-under-xemacs-p with (featurep 'xemacs).
      * eshell/esh-mode.el (characterp,char-int): Remove unused
      conditional defaliases.
      
      * pcomplete.el (pcomplete-event-matches-key-specifier-p): Rename
      from event-matches-key-specifier-p, define unconditionally.
      (event-basic-type): Remove unused defalias.
      (pcomplete-show-completions):
      Use pcomplete-event-matches-key-specifier-p.
      
      * mh-e.el (mh-xemacs-flag): Remove.
      (mh-min-colors-defined-flag):
      * mh-xface.el (mh-show-xface-function):
      * mh-utils.el (mh-colors-available-p):
      * mh-show.el (mh-show-mode):
      * mh-gnus.el (mh-gnus-local-map-property):
      * mh-folder.el (mh-folder-mode-map)
      (mh-remove-xemacs-horizontal-scrollbar, mh-folder-mode):
      * mh-comp.el (mh-insert-x-mailer): Replace uses of mh-xemacs-flag
      with (featurep 'xemacs).
      a3269bc4
  34. 17 Oct, 2007 1 commit