]> code.delx.au - gnu-emacs/blobdiff - lisp/expand.el
Merge changes from emacs-23
[gnu-emacs] / lisp / expand.el
index 5d213128ad45b74550dd830f3f6cc6909db05b56..14bc210232cc04bda2cdae59dd46763bbd7b1d12 100644 (file)
@@ -1,7 +1,7 @@
 ;;; expand.el --- make abbreviations more usable
 
-;; Copyright (C) 1995, 1996, 2002, 2003, 2004,
-;;   2005, 2006 Free Software Foundation, Inc.
+;; Copyright (C) 1995, 1996, 2001, 2002, 2003, 2004,
+;;   2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
 
 ;; Author: Frederic Lepied <Frederic.Lepied@sugix.frmug.org>
 ;; Maintainer: Frederic Lepied <Frederic.Lepied@sugix.frmug.org>
@@ -9,10 +9,10 @@
 
 ;; 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 2, 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
@@ -20,9 +20,7 @@
 ;; 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.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 ;;
 ;;
 ;;   and enter Abbrev mode with the following hook :
 ;;
-;; (add-hook 'c-mode-hook (function (lambda ()
-;;                                (expand-add-abbrevs c-mode-abbrev-table c-expand-list)
-;;                                (abbrev-mode))))
+;; (add-hook 'c-mode-hook
+;;       (lambda ()
+;;         (expand-add-abbrevs c-mode-abbrev-table c-expand-list)
+;;         (abbrev-mode 1)))
 ;;
 ;;   you can also init some post-process hooks :
 ;;
 ;; (add-hook 'expand-load-hook
-;;       (function
-;;        (lambda ()
-;;          (add-hook 'expand-expand-hook 'indent-according-to-mode)
-;;          (add-hook 'expand-jump-hook 'indent-according-to-mode))))
+;;       (lambda ()
+;;         (add-hook 'expand-expand-hook 'indent-according-to-mode)
+;;         (add-hook 'expand-jump-hook 'indent-according-to-mode)))
 ;;
 ;; Remarks:
 ;;
@@ -296,7 +294,7 @@ If ARG is omitted, point is placed at the end of the expanded text."
 (defvar expand-list nil "Temporary variable used by the Expand package.")
 
 (defvar expand-pos nil
-  "If non nil, stores a vector containing markers to positions defined by the last expansion.
+  "If non-nil, stores a vector containing markers to positions defined by the last expansion.
 This variable is local to a buffer.")
 (make-variable-buffer-local 'expand-pos)
 
@@ -336,6 +334,7 @@ This variable is local to a buffer.")
       'expand-abbrev-hook)))
 
 (put 'expand-abbrev-hook 'no-self-insert t)
+;;;###autoload
 (defun expand-abbrev-hook ()
   "Abbrev hook used to do the expansion job of expand abbrevs.
 See `expand-add-abbrevs'.  Value is non-nil if expansion was done."
@@ -369,7 +368,7 @@ See `expand-add-abbrevs'.  Value is non-nil if expansion was done."
     nil))
 
 (defun expand-do-expansion ()
-  (delete-backward-char (length last-abbrev-text))
+  (delete-char (- (length last-abbrev-text)))
   (let* ((vect (symbol-value last-abbrev))
         (text (aref vect 0))
         (position (aref vect 1))
@@ -428,8 +427,8 @@ This is used only in conjunction with `expand-add-abbrevs'."
        (goto-char (aref expand-pos expand-index))
        (run-hooks 'expand-jump-hook))))
 
-;;;###autoload (define-key ctl-x-map "ap" 'expand-jump-to-previous-slot)
-;;;###autoload (define-key ctl-x-map "an" 'expand-jump-to-next-slot)
+;;;###autoload (define-key abbrev-map "p" 'expand-jump-to-previous-slot)
+;;;###autoload (define-key abbrev-map "n" 'expand-jump-to-next-slot)
 
 (defun expand-build-list (len l)
   "Build a vector of offset positions from the list of positions."
@@ -505,5 +504,5 @@ This is used only in conjunction with `expand-add-abbrevs'."
 ;; run load hooks
 (run-hooks 'expand-load-hook)
 
-;;; arch-tag: fee53e9e-30e3-4ef3-b191-9785e1f8e885
+;; arch-tag: fee53e9e-30e3-4ef3-b191-9785e1f8e885
 ;;; expand.el ends here