;;; dabbrev.el --- dynamic abbreviation package
;; Copyright (C) 1985, 1986, 1992, 1994, 1996, 1997, 2000, 2001, 2002,
-;; 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+;; 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
;; Author: Don Morrison
;; Maintainer: Lars Lindberg <Lars.Lindberg@sypro.cap.se>
(const :tag "off" nil))
:group 'dabbrev)
-(defcustom dabbrev--eliminate-newlines t
+(defcustom dabbrev-eliminate-newlines t
"*Non-nil means dabbrev should not insert newlines.
Instead it converts them to spaces."
:type 'boolean
(defcustom dabbrev-upcase-means-case-search nil
"*The significance of an uppercase character in an abbreviation.
-nil means case fold search when searching for possible expansions;
+A nil value means case fold search when searching for possible expansions;
non-nil means case sensitive search.
This variable has an effect only when the value of
((equal abbrev (downcase abbrev)) 'downcase)))))
;; Convert whitespace to single spaces.
- (if dabbrev--eliminate-newlines
- ;; Start searching at end of ABBREV so that any whitespace
- ;; carried over from the existing text is not changed.
- (let ((pos (length abbrev)))
+ (if dabbrev-eliminate-newlines
+ (let ((pos
+ (if (equal abbrev " ") 0 (length abbrev))))
+ ;; If ABBREV is real, search after the end of it.
+ ;; If ABBREV is space and we are copying successive words,
+ ;; search starting at the front.
(while (string-match "[\n \t]+" expansion pos)
(setq pos (1+ (match-beginning 0)))
(setq expansion (replace-match " " nil nil expansion)))))