* eshell/em-term.el (eshell-visual-command-p): New function.
(eshell-term-initialize): Move long lambda to separate function eshell-visual-command-p.
* eshell/em-dirs.el (eshell-dirs-initialise): Add missing #' to lambda.
* eshell/em-script.el (eshell-script-initialize): Add missing #' to lambda.
+2013-06-09 Aidan Gauland <aidalgol@amuri.net>
+
+ * eshell/em-term.el (eshell-visual-command-p): New function.
+ (eshell-term-initialize): Move long lambda to separate function eshell-visual-command-p.
+ * eshell/em-dirs.el (eshell-dirs-initialise): Add missing #' to lambda.
+ * eshell/em-script.el (eshell-script-initialize): Add missing #' to lambda.
+
2013-06-08 Leo Liu <sdl.web@gmail.com>
* progmodes/octave.el (octave-add-log-current-defun): New function.
(when eshell-cd-on-directory
(make-local-variable 'eshell-interpreter-alist)
(setq eshell-interpreter-alist
- (cons (cons (lambda (file args)
- (eshell-lone-directory-p file))
+ (cons (cons #'(lambda (file args)
+ (eshell-lone-directory-p file))
'eshell-dirs-substitute-cd)
eshell-interpreter-alist)))
"Initialize the script parsing code."
(make-local-variable 'eshell-interpreter-alist)
(setq eshell-interpreter-alist
- (cons '((lambda (file args)
- (string= (file-name-nondirectory file)
- "eshell")) . eshell/source)
+ (cons (cons #'(lambda (file args)
+ (string= (file-name-nondirectory file)
+ "eshell"))
+ 'eshell/source)
eshell-interpreter-alist))
(make-local-variable 'eshell-complex-commands)
(setq eshell-complex-commands
"Initialize the `term' interface code."
(make-local-variable 'eshell-interpreter-alist)
(setq eshell-interpreter-alist
- (cons (cons (function
- (lambda (command args)
- (let ((command (file-name-nondirectory command)))
- (or (member command eshell-visual-commands)
- (member (car args)
- (cdr (assoc command eshell-visual-subcommands)))
- (cl-intersection args
- (cdr (assoc command eshell-visual-options))
- :test 'string=)))))
+ (cons (cons #'eshell-visual-command-p
'eshell-exec-visual)
eshell-interpreter-alist)))
+(defun eshell-visual-command-p (command args)
+ "Returns non-nil when given a visual command.
+If either COMMAND or a subcommand in ARGS (e.g. git log) is a
+visual command, returns non-nil."
+ (let ((command (file-name-nondirectory command)))
+ (or (member command eshell-visual-commands)
+ (member (car args)
+ (cdr (assoc command eshell-visual-subcommands)))
+ (cl-intersection args
+ (cdr (assoc command eshell-visual-options))
+ :test 'string=))))
+
(defun eshell-exec-visual (&rest args)
"Run the specified PROGRAM in a terminal emulation buffer.
ARGS are passed to the program. At the moment, no piping of input is