Update of /project/phemlock/cvsroot/phemlock/src/core
In directory common-lisp.net:/tmp/cvs-serv10336/src/core
Modified Files:
buffer.lisp htext1.lisp htext2.lisp interp.lisp key-event.lisp
ring.lisp struct.lisp syntax.lisp table.lisp window.lisp
Log Message:
Replaced most trivial defsetf with a corresponding (defun (setf ...) ...)
Date: Tue Aug 10 05:47:07 2004
Author: rstrandh
Index: phemlock/src/core/buffer.lisp
diff -u phemlock/src/core/buffer.lisp:1.1 phemlock/src/core/buffer.lisp:1.2
--- phemlock/src/core/buffer.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/buffer.lisp Tue Aug 10 05:47:06 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/buffer.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/buffer.lisp,v 1.2 2004/08/10 12:47:06 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -23,7 +23,8 @@
"Returns whether buffer may be modified."
(buffer-%writable buffer))
-(defun %set-buffer-writable (buffer value)
+(defun (setf buffer-writable) (value buffer)
+ "Sets whether the buffer is writable and invokes the Buffer Writable Hook."
(invoke-hook hemlock::buffer-writable-hook buffer value)
(setf (buffer-%writable buffer) value))
@@ -37,7 +38,7 @@
(unless (bufferp buffer) (error "~S is not a buffer." buffer))
(> (buffer-modified-tick buffer) (buffer-unmodified-tick buffer)))
-(defun %set-buffer-modified (buffer sense)
+(defun (setf buffer-modified) (sense buffer)
"If true make the buffer modified, if NIL unmodified."
(unless (bufferp buffer) (error "~S is not a buffer." buffer))
(invoke-hook hemlock::buffer-modified-hook buffer sense)
@@ -53,7 +54,8 @@
"Return the region which contains Buffer's text."
(buffer-%region buffer))
-(defun %set-buffer-region (buffer new-region)
+(defun (setf buffer-region) (new-region buffer)
+ "Set a buffer's region."
(let ((old (buffer-region buffer)))
(delete-region old)
(ninsert-region (region-start old) new-region)
@@ -65,7 +67,8 @@
(declaim (special *buffer-names*))
-(defun %set-buffer-name (buffer name)
+(defun (setf buffer-name) (name buffer)
+ "Sets the name of a specified buffer, invoking the Buffer Name Hook."
(multiple-value-bind (entry foundp) (getstring name *buffer-names*)
(cond ((or (not foundp) (eq entry buffer))
(invoke-hook hemlock::buffer-name-hook buffer name)
@@ -81,7 +84,8 @@
(buffer-%pathname buffer))
-(defun %set-buffer-pathname (buffer pathname)
+(defun (setf buffer-pathname) (pathname buffer)
+ "Sets the pathname of a buffer, invoking the Buffer Pathname Hook."
(invoke-hook hemlock::buffer-pathname-hook buffer pathname)
(setf (buffer-%pathname buffer) pathname))
@@ -91,7 +95,9 @@
(result () (cons (ml-field-info-field (car finfos)) result)))
((null finfos) (nreverse result))))
-(defun %set-buffer-modeline-fields (buffer fields)
+(defun (setf buffer-modeline-fields) (fields buffer)
+ "Sets the buffer's list of modeline fields causing all windows into buffer
+ to be updated for the next redisplay."
(check-type fields list)
(check-type buffer buffer "a Hemlock buffer")
(sub-set-buffer-modeline-fields buffer fields)
@@ -196,14 +202,14 @@
(check-type buffer buffer)
(car (buffer-modes buffer)))
-;;; %SET-BUFFER-MAJOR-MODE -- Public
+;;; (SETF BUFFER-MAJOR-MODE) -- Public
;;;
;;; Unwind all modes in effect and add the major mode specified.
;;;Note that BUFFER-MODE-OBJECTS is in order of invocation in buffers
;;;other than the current buffer, and in the reverse order in the
;;;current buffer.
;;;
-(defun %set-buffer-major-mode (buffer name)
+(defun (setf buffer-major-mode) (name buffer)
"Set the major mode of some buffer to the Name'd mode."
(with-mode-and-buffer (name t buffer)
(invoke-hook hemlock::buffer-major-mode-hook buffer name)
@@ -246,7 +252,8 @@
;;; Activate or deactivate a minor mode, with due respect for
;;; bindings.
;;;
-(defun %set-buffer-minor-mode (buffer name new-value)
+(defun (setf buffer-minor-mode) (new-value buffer name)
+ "Turn a buffer minor mode on or off."
(let ((objects (buffer-mode-objects buffer)))
(with-mode-and-buffer (name nil buffer)
(invoke-hook hemlock::buffer-minor-mode-hook buffer name new-value)
@@ -314,12 +321,13 @@
"Return the Buffer-Point of the current buffer."
(buffer-point *current-buffer*))
-;;; %SET-CURRENT-BUFFER -- Internal
+;;; (SETF CURRENT-BUFFER) -- Internal
;;;
;;; Undo previous buffer and mode specific variables and character
;;;attributes and set up the new ones. Set *current-buffer*.
;;;
-(defun %set-current-buffer (buffer)
+(defun (setf current-buffer) (buffer)
+ "Set the current buffer, doing necessary stuff."
(let ((old-buffer *current-buffer*))
(check-type buffer buffer)
(invoke-hook hemlock::set-buffer-hook buffer)
Index: phemlock/src/core/htext1.lisp
diff -u phemlock/src/core/htext1.lisp:1.1 phemlock/src/core/htext1.lisp:1.2
--- phemlock/src/core/htext1.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/htext1.lisp Tue Aug 10 05:47:07 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/htext1.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/htext1.lisp,v 1.2 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -311,7 +311,8 @@
(close-line))
(line-chars line))
-(defun %set-line-string (line string)
+(defun (setf line-string) (string line)
+ "Replace the contents of a line."
(let ((buffer (line-%buffer line)))
(modifying-buffer buffer
(unless (simple-string-p string)
@@ -356,7 +357,8 @@
:Right-Inserting. This may be set with Setf."
(mark-%kind mark))
-(defun %set-mark-kind (mark kind)
+(defun (setf mark-kind) (kind mark)
+ "Used to set the kind of a mark."
(let ((line (mark-line mark)))
(cond ((eq kind :temporary)
(setf (line-marks line) (delq mark (line-marks line)))
Index: phemlock/src/core/htext2.lisp
diff -u phemlock/src/core/htext2.lisp:1.2 phemlock/src/core/htext2.lisp:1.3
--- phemlock/src/core/htext2.lisp:1.2 Fri Jul 9 08:41:24 2004
+++ phemlock/src/core/htext2.lisp Tue Aug 10 05:47:07 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/htext2.lisp,v 1.2 2004/07/09 15:41:24 dbarlow Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/htext2.lisp,v 1.3 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -132,7 +132,8 @@
;;; join lines. We cannot just delete a character and insert the new one
;;; because the marks would not be right.
;;;
-(defun %set-next-character (mark character)
+(defun (setf next-character) (character mark)
+ "Sets the characters to the right of the given Mark."
(let* ((line (mark-line mark))
(buffer (line-%buffer line))
(next (line-next line)))
@@ -178,15 +179,13 @@
character)))))
character)
-;;; %Set-Previous-Character -- Internal
+;;; (SETF PREVIOUS-CHARACTER) -- Internal
;;;
-;;; The setf form for Previous-Character. We just Temporarily move the
-;;; mark back one and call %Set-Next-Character.
-;;;
-(defun %set-previous-character (mark character)
+(defun (setf previous-character) (character mark)
+ "Sets the character to the left of the given Mark."
(unless (mark-before mark)
(error "~S has no previous character, so it cannot be set." mark))
- (%set-next-character mark character)
+ (setf (next-character mark) character)
(mark-after mark)
character)
Index: phemlock/src/core/interp.lisp
diff -u phemlock/src/core/interp.lisp:1.1 phemlock/src/core/interp.lisp:1.2
--- phemlock/src/core/interp.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/interp.lisp Tue Aug 10 05:47:07 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/interp.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/interp.lisp,v 1.2 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -136,20 +136,17 @@
(integer
(cons :bits (hemlock-ext:key-event-bits-modifiers entry))))))
-;;; %SET-KEY-TRANSLATION -- Internal
+;;; (SETF KEY-TRANSLATION) -- Internal
;;;
-(defun %set-key-translation (key new-value)
+(defun (setf key-translation) (new-value key)
+ "Set the key translation for a key. If set to null, deletes any
+ translation."
(let ((entry (cond ((and (consp new-value) (eq (car new-value) :bits))
(apply #'hemlock-ext:make-key-event-bits (cdr new-value)))
(new-value (crunch-key new-value))
(t new-value))))
(set-table-entry *key-translations* (crunch-key key) entry)
new-value))
-;;;
-(defsetf key-translation %set-key-translation
- "Set the key translation for a key. If set to null, deletes any
- translation.")
-
;;;; Interface Utility Functions:
@@ -314,13 +311,14 @@
(internal-make-command name documentation function))))))
-;;; COMMAND-NAME, %SET-COMMAND-NAME -- Public.
+;;; COMMAND-NAME, (SETF COMMAND-NAME) -- Public.
;;;
(defun command-name (command)
"Returns the string which is the name of Command."
(command-%name command))
;;;
-(defun %set-command-name (command new-name)
+(defun (setf command-name) (new-name command)
+ "Change a Hemlock command's name."
(check-type command command)
(check-type new-name string)
(setq new-name (coerce new-name 'simple-string))
@@ -376,7 +374,8 @@
;;;
;;; Set the flag so we know not to clear the command-type.
;;;
-(defun %set-last-command-type (type)
+(defun (setf last-command-type) (type)
+ "Set the Last-Command-Type for use by the next command."
(setq *last-command-type* type *command-type-set* t))
@@ -393,7 +392,7 @@
;;; %SET-PREFIX-ARGUMENT -- Internal
;;;
-(defun %set-prefix-argument (argument)
+(defun (setf prefix-argument) (argument)
"Set the prefix argument for the next command to Argument."
(unless (or (null argument) (integerp argument))
(error "Prefix argument ~S is neither an integer nor Nil." argument))
Index: phemlock/src/core/key-event.lisp
diff -u phemlock/src/core/key-event.lisp:1.1 phemlock/src/core/key-event.lisp:1.2
--- phemlock/src/core/key-event.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/key-event.lisp Tue Aug 10 05:47:07 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/key-event.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/key-event.lisp,v 1.2 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -207,13 +207,13 @@
(:keysym (button-keysym data))
(:shifted-modifier-name (button-shifted-modifier-name data))))))
-;;; %SET-MOUSE-TRANSLATION-INFO -- Internal.
+;;; (setf MOUSE-TRANSLATION-INFO) -- Internal.
;;;
;;; This walks into *mouse-translation-info* the same way MOUSE-TRANSLATION-INFO
;;; does, filling in the data structure on an as-needed basis, and stores
;;; the value for the indicated info.
;;;
-(defun %set-mouse-translation-info (button event-key info value)
+(defun (setf mouse-translation-info) (value button event-key info)
(let ((event-dispatch (svref *mouse-translation-info* button)))
(unless event-dispatch
(setf event-dispatch
@@ -233,8 +233,6 @@
(setf (button-keysym data) value))
(:shifted-modifier-name
(setf (button-shifted-modifier-name data) value))))))
-;;;
-(defsetf mouse-translation-info %set-mouse-translation-info)
;;; DEFINE-MOUSE-KEYSYM -- Public.
;;;
@@ -607,13 +605,10 @@
(check-type key-event key-event)
(gethash key-event *key-event-characters*))
-(defun %set-key-event-char (key-event character)
+(defun (setf key-event-char) (character key-event)
(check-type character character)
(check-type key-event key-event)
(setf (gethash key-event *key-event-characters*) character))
-;;;
-(defsetf key-event-char %set-key-event-char)
-
;;; This maps characters to key-events. Users modify this by SETF'ing
;;; CHAR-KEY-EVENT.
@@ -625,13 +620,10 @@
(check-type char character)
(svref *character-key-events* (char-code char)))
-(defun %set-char-key-event (char key-event)
+(defun (setf char-key-event) (key-event char)
(check-type char character)
(check-type key-event key-event)
(setf (svref *character-key-events* (char-code char)) key-event))
-;;;
-(defsetf char-key-event %set-char-key-event)
-
;;;; DO-ALPHA-KEY-EVENTS.
Index: phemlock/src/core/ring.lisp
diff -u phemlock/src/core/ring.lisp:1.1 phemlock/src/core/ring.lisp:1.2
--- phemlock/src/core/ring.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/ring.lisp Tue Aug 10 05:47:07 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/ring.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/ring.lisp,v 1.2 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -132,11 +132,12 @@
(aref vec (if (>= sum max) (- sum max) sum)))))))
-;;; %set-ring-ref -- Internal
+;;; (SETF RING-REF) -- Internal
;;;
;;; Setf form for ring-ref, set a ring element.
;;;
-(defun %set-ring-ref (ring index value)
+(defun (setf ring-ref) (value ring index)
+ "Set an element in a ring."
(declare (fixnum index))
(let* ((first (ring-first ring))
(diff (- (ring-bound ring) first))
Index: phemlock/src/core/struct.lisp
diff -u phemlock/src/core/struct.lisp:1.1 phemlock/src/core/struct.lisp:1.2
--- phemlock/src/core/struct.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/struct.lisp Tue Aug 10 05:47:07 2004
@@ -7,7 +7,7 @@
(in-package :hemlock-internals)
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/struct.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/struct.lisp,v 1.2 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -667,21 +667,6 @@
;;;; Some defsetfs:
-(defsetf buffer-writable %set-buffer-writable
- "Sets whether the buffer is writable and invokes the Buffer Writable Hook.")
-(defsetf buffer-name %set-buffer-name
- "Sets the name of a specified buffer, invoking the Buffer Name Hook.")
-(defsetf buffer-modified %set-buffer-modified
- "Make a buffer modified or unmodified.")
-(defsetf buffer-pathname %set-buffer-pathname
- "Sets the pathname of a buffer, invoking the Buffer Pathname Hook.")
-
-(defsetf getstring %set-string-table
- "Sets the value for a string-table entry, making a new one if necessary.")
-
-(defsetf window-buffer %set-window-buffer
- "Change the buffer a window is mapped to.")
-
(define-setf-expander value (var)
"Set the value of a Hemlock variable, calling any hooks."
(let ((svar (gensym)))
@@ -704,48 +689,3 @@
"Set a Hemlock variable's documentation."
`(%set-variable-documentation ,name ,kind ,where ,new-value))
-(defsetf buffer-minor-mode %set-buffer-minor-mode
- "Turn a buffer minor mode on or off.")
-(defsetf buffer-major-mode %set-buffer-major-mode
- "Set a buffer's major mode.")
-(defsetf previous-character %set-previous-character
- "Sets the character to the left of the given Mark.")
-(defsetf next-character %set-next-character
- "Sets the characters to the right of the given Mark.")
-(defsetf character-attribute %set-character-attribute
- "Set the value for a character attribute.")
-(defsetf character-attribute-hooks %set-character-attribute-hooks
- "Set the hook list for a Hemlock character attribute.")
-(defsetf ring-ref %set-ring-ref "Set an element in a ring.")
-(defsetf current-window %set-current-window "Set the current window.")
-(defsetf current-buffer %set-current-buffer
- "Set the current buffer, doing necessary stuff.")
-(defsetf mark-kind %set-mark-kind "Used to set the kind of a mark.")
-(defsetf buffer-region %set-buffer-region "Set a buffer's region.")
-(defsetf command-name %set-command-name
- "Change a Hemlock command's name.")
-(defsetf line-string %set-line-string
- "Replace the contents of a line.")
-(defsetf last-command-type %set-last-command-type
- "Set the Last-Command-Type for use by the next command.")
-(defsetf prefix-argument %set-prefix-argument
- "Set the prefix argument for the next command.")
-(defsetf logical-key-event-p %set-logical-key-event-p
- "Change what Logical-Char= returns for the specified arguments.")
-(defsetf window-font %set-window-font
- "Change the font-object associated with a font-number in a window.")
-(defsetf default-font %set-default-font
- "Change the font-object associated with a font-number in new windows.")
-
-(defsetf buffer-modeline-fields %set-buffer-modeline-fields
- "Sets the buffer's list of modeline fields causing all windows into buffer
- to be updated for the next redisplay.")
-(defsetf modeline-field-name %set-modeline-field-name
- "Sets a modeline-field's name. If one already exists with that name, an
- error is signaled.")
-(defsetf modeline-field-width %set-modeline-field-width
- "Sets a modeline-field's width and updates all the fields for all windows
- in any buffer whose fields list contains the field.")
-(defsetf modeline-field-function %set-modeline-field-function
- "Sets a modeline-field's function and updates this field for all windows in
- any buffer whose fields list contains the field.")
Index: phemlock/src/core/syntax.lisp
diff -u phemlock/src/core/syntax.lisp:1.1 phemlock/src/core/syntax.lisp:1.2
--- phemlock/src/core/syntax.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/syntax.lisp Tue Aug 10 05:47:07 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/syntax.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/syntax.lisp,v 1.2 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -248,7 +248,8 @@
(with-attribute attribute
(attribute-descriptor-hooks obj)))
-(defun %set-character-attribute-hooks (attribute new-value)
+(defun (setf character-attribute-hooks) (new-value attribute)
+ "Set the hook list for a Hemlock character attribute."
(with-attribute attribute
(setf (attribute-descriptor-hooks obj) new-value)))
@@ -288,11 +289,12 @@
(not (null (gethash symbol *character-attributes*))))
-;;; %SET-CHARACTER-ATTRIBUTE -- Internal
+;;; (SETF CHARACTER-ATTRIBUTE) -- Internal
;;;
;;; Set the value of a character attribute.
;;;
-(defun %set-character-attribute (attribute character new-value)
+(defun (setf character-attribute) (new-value attribute character)
+ "Set the value for a character attribute."
(with-attribute attribute
(invoke-hook hemlock::character-attribute-hook attribute character new-value)
(invoke-hook (attribute-descriptor-hooks obj) attribute character new-value)
Index: phemlock/src/core/table.lisp
diff -u phemlock/src/core/table.lisp:1.1 phemlock/src/core/table.lisp:1.2
--- phemlock/src/core/table.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/table.lisp Tue Aug 10 05:47:07 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/table.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/table.lisp,v 1.2 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -304,7 +304,7 @@
(values (value-node-value (svref nodes pos)) t)
(values nil nil))))))
-(defun %set-string-table (string table value)
+(defun (setf getstring) (value string table)
"Sets the value of String in Table to Value. If necessary, creates
a new entry in the string table."
(with-folded-string (folded len string (string-table-separator table))
Index: phemlock/src/core/window.lisp
diff -u phemlock/src/core/window.lisp:1.1 phemlock/src/core/window.lisp:1.2
--- phemlock/src/core/window.lisp:1.1 Fri Jul 9 08:00:36 2004
+++ phemlock/src/core/window.lisp Tue Aug 10 05:47:07 2004
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
#+CMU (ext:file-comment
- "$Header: /project/phemlock/cvsroot/phemlock/src/core/window.lisp,v 1.1 2004/07/09 15:00:36 gbaumann Exp $")
+ "$Header: /project/phemlock/cvsroot/phemlock/src/core/window.lisp,v 1.2 2004/08/10 12:47:07 rstrandh Exp $")
;;;
;;; **********************************************************************
;;;
@@ -33,7 +33,8 @@
Window-Buffer is always displayed. This may be set with Setf."
*current-window*)
-(defun %set-current-window (new-window)
+(defun (setf current-window) (new-window)
+ "Set the current window."
(invoke-hook hemlock::set-window-hook new-window)
(move-mark (window-point *current-window*)
(buffer-point (window-buffer *current-window*)))
@@ -56,7 +57,8 @@
"Return the buffer which is displayed in Window."
(window-%buffer window))
-(defun %set-window-buffer (window new-buffer)
+(defun (setf window-buffer) (new-buffer window)
+ "Change the buffer a window is mapped to."
(unless (bufferp new-buffer) (error "~S is not a buffer." new-buffer))
(unless (windowp window) (error "~S is not a window." window))
(unless (eq new-buffer (window-buffer window))
@@ -152,7 +154,9 @@
"Returns the name of a modeline field object."
(modeline-field-%name ml-field))
-(defun %set-modeline-field-name (ml-field name)
+(defun (setf modeline-field-name) (name ml-field)
+ "Sets a modeline-field's name. If one already exists with that name, an
+ error is signaled."
(check-type ml-field modeline-field)
(when (gethash name *modeline-field-names*)
(error "Modeline field ~S already exists."
@@ -167,7 +171,9 @@
(declaim (special *buffer-list*))
-(defun %set-modeline-field-width (ml-field width)
+(defun (setf modeline-field-width) (width ml-field)
+ "Sets a modeline-field's width and updates all the fields for all windows
+ in any buffer whose fields list contains the field."
(check-type ml-field modeline-field)
(unless (or (eq width nil) (and (integerp width) (plusp width)))
(error "Width must be nil or a positive integer."))
@@ -183,7 +189,9 @@
"Returns the function of a modeline field object. It returns a string."
(modeline-field-%function ml-field))
-(defun %set-modeline-field-function (ml-field function)
+(defun (setf modeline-field-function) (function ml-field)
+ "Sets a modeline-field's function and updates this field for all windows in
+ any buffer whose fields list contains the field."
(check-type ml-field modeline-field)
(check-type function (or symbol function))
(setf (modeline-field-%function ml-field) function)