;;; em-smart.el --- smart display of output
-;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
-;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+;; 2008, 2009, 2010 Free Software Foundation, Inc.
;; Author: John Wiegley <johnw@gnu.org>
;; This file is part of GNU Emacs.
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
-
-(provide 'em-smart)
-
-(eval-when-compile (require 'esh-maint))
-
-(defgroup eshell-smart nil
- "This module combines the facility of normal, modern shells with
-some of the edit/review concepts inherent in the design of Plan 9's
-9term. See the docs for more details.
-
-Most likely you will have to turn this option on and play around with
-it to get a real sense of how it works."
- :tag "Smart display of output"
- ;; :link '(info-link "(eshell)Smart display of output")
- :group 'eshell-module)
+;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; (such as pwd), where the screen is mostly full, consumption can
;; increase by orders of magnitude.
+;;; Code:
+
+(eval-when-compile (require 'eshell))
+
+;;;###autoload
+(eshell-defgroup eshell-smart nil
+ "This module combines the facility of normal, modern shells with
+some of the edit/review concepts inherent in the design of Plan 9's
+9term. See the docs for more details.
+
+Most likely you will have to turn this option on and play around with
+it to get a real sense of how it works."
+ :tag "Smart display of output"
+ ;; :link '(info-link "(eshell)Smart display of output")
+ :group 'eshell-module)
+
;;; User Variables:
(defcustom eshell-smart-load-hook '(eshell-smart-initialize)
- "*A list of functions to call when loading `eshell-smart'."
+ "A list of functions to call when loading `eshell-smart'."
:type 'hook
:group 'eshell-smart)
(lambda ()
(remove-hook 'window-configuration-change-hook
'eshell-refresh-windows))))
- "*A hook that gets run when `eshell-smart' is unloaded."
+ "A hook that gets run when `eshell-smart' is unloaded."
:type 'hook
:group 'eshell-smart)
(defcustom eshell-review-quick-commands nil
- "*If t, always review commands.
+ "If t, always review commands.
Reviewing means keeping point on the text of the command that was just
invoked, to allow corrections to be made easily.
yank-pop
yank-rectangle
yank)
- "*A list of commands which cause Eshell to jump to the end of buffer."
+ "A list of commands which cause Eshell to jump to the end of buffer."
:type '(repeat function)
:group 'eshell-smart)
(defcustom eshell-smart-space-goes-to-end t
- "*If non-nil, space will go to end of buffer when point-max is visible.
+ "If non-nil, space will go to end of buffer when point-max is visible.
That is, if a command is running and the user presses SPACE at a time
when the end of the buffer is visible, point will go to the end of the
buffer and smart-display will be turned off (that is, subsequently
:group 'eshell-smart)
(defcustom eshell-where-to-jump 'begin
- "*This variable indicates where point should jump to after a command.
+ "This variable indicates where point should jump to after a command.
The options are `begin', `after' or `end'."
:type '(radio (const :tag "Beginning of command" begin)
(const :tag "After command word" after)
(setq clear t)
(cond
((eq this-command 'self-insert-command)
- (if (eq last-command-char ? )
+ (if (eq last-command-event ? )
(if (and eshell-smart-space-goes-to-end
eshell-current-command)
(if (not (pos-visible-in-window-p (point-max)))
(if clear
(remove-hook 'pre-command-hook 'eshell-smart-display-move t))))
-;;; Code:
+(provide 'em-smart)
+
+;; Local Variables:
+;; generated-autoload-file: "esh-groups.el"
+;; End:
-;;; arch-tag: 8c0112c7-379c-4d54-9a1c-204d68786a4b
+;; arch-tag: 8c0112c7-379c-4d54-9a1c-204d68786a4b
;;; em-smart.el ends here