Emacs keeps a flag called the modified flag for each buffer, to
record whether you have changed the text of the buffer. This flag is
set to t
whenever you alter the contents of the buffer, and
cleared to nil
when you save it. Thus, the flag shows whether
there are unsaved changes. The flag value is normally shown in the mode
line (see section Variables Used in the Mode Line), and controls saving (see section Saving Buffers) and auto-saving (see section Auto-Saving).
Some Lisp programs set the flag explicitly. For example, the function
set-visited-file-name
sets the flag to t
, because the text
does not match the newly-visited file, even if it is unchanged from the
file formerly visited.
The functions that modify the contents of buffers are described in section Text.
t
if the buffer buffer has been modified
since it was last read in from a file or saved, or nil
otherwise. If buffer is not supplied, the current buffer
is tested.
nil
, or as unmodified if the flag is nil
.
Another effect of calling this function is to cause unconditional
redisplay of the mode line for the current buffer. In fact, the
function force-mode-line-update
works by doing this:
(set-buffer-modified-p (buffer-modified-p))
Don't use this function in programs, since it prints a message in the
echo area; use set-buffer-modified-p
(above) instead.
nil
(or omitted), the current buffer is used.
Go to the first, previous, next, last section, table of contents.