Merge changes made in Gnus trunk.
[bpt/emacs.git] / lisp / eshell / eshell.el
index 43363aa..3c534f0 100644 (file)
@@ -1,7 +1,7 @@
 ;;; eshell.el --- the Emacs command shell
 
 ;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
-;;   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;;   2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
 
 ;; Author: John Wiegley <johnw@gnu.org>
 ;; Version: 2.4.2
 (require 'esh-mode)
 
 (defgroup eshell nil
-  "Eshell is a command shell implemented entirely in Emacs Lisp.  It
-invokes no external processes beyond those requested by the user.  It
-is intended to be a functional replacement for command shells such as
-bash, zsh, rc, 4dos; since Emacs itself is capable of handling most of
-the tasks accomplished by such tools."
+  "A command shell implemented entirely in Emacs Lisp.
+It invokes no external processes beyond those requested by the
+user, and is intended to be a functional replacement for command
+shells such as bash, zsh, rc, 4dos."
   :tag "The Emacs shell"
   :link '(info-link "(eshell)Top")
   :version "21.1"
@@ -286,7 +285,8 @@ the tasks accomplished by such tools."
   "`eshell-buffer-name' is a member of `same-window-buffer-names'"
   (member eshell-buffer-name same-window-buffer-names))
 
-(defcustom eshell-directory-name (convert-standard-filename "~/.eshell/")
+(defcustom eshell-directory-name
+  (locate-user-emacs-file "eshell/" ".eshell/")
   "The directory where Eshell control files should be kept."
   :type 'directory
   :group 'eshell)
@@ -405,7 +405,7 @@ With prefix ARG, insert output into the current buffer at point."
          (assert (not (eshell-interactive-process)))
          (goto-char (point-max))
          (while (and (bolp) (not (bobp)))
-           (delete-backward-char 1)))
+           (delete-char -1)))
        (assert (and buf (buffer-live-p buf)))
        (unless arg
          (let ((len (if (not intr) 2