home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
World_Of_Computer_Software-02-385-Vol-1of3.iso
/
m
/
me_cd25.zip
/
BOBSMUTT.ZIP
/
SAVEBUFS.MUT
< prev
next >
Wrap
Text File
|
1992-05-11
|
2KB
|
105 lines
;; After I had most of this written, I discovered some
;; similar routines in Craig Durland's saveall.mut.
;; $Source: c:/lib/mutt/RCS/savebufs.mut $
;; $Revision: 1.2 $
;; $Date: 1992/05/12 00:20:31 $
;; Bob Stocker Public Domain
(bool save-backup-version)
(defun
MAIN
{
(save-backup-version FALSE)
}
;;
;; ================================================================
;;
set-save-backup-version
{
(save-backup-version TRUE)
(msg "save-backup-version = TRUE")
(novalue)
}
;;
;; ================================================================
;;
reset-save-backup-version
{
(save-backup-version FALSE)
(msg "save-backup-version = FALSE")
(novalue)
}
;;
;; ================================================================
;;
save-some-buffers
;; Ask about saving any modified non-scratch buffers.
{ ;; BEGIN save-buffers
(int bufid bufno nbufs)
(string bname fname)
(nbufs (buffers))
(for
(bufno 0)
(< bufno nbufs)
(+= bufno 1)
{ ;; BEGIN buffer loop
(bufid (nth-buffer bufno))
(if
(==
(bit-and
(+ BFModified BFNoCare)
(buffer-flags bufid)
)
BFModified
)
{ ;; BEGIN modified & we care
(fname (file-name bufid))
(bname (buffer-name bufid))
(if (== fname "")
{ ;; BEGIN fname == ""
(if
(yesno "Buffer " bname " has been modified. Save it")
{ ;; BEGIN save
(ask-user)
(current-buffer bufid)
(fname (ask "File name: "))
(while
(not (write-file fname))
{ ;; BEGIN can't write to file
(msg "Can not write to file \"" fname "\".")
(halt)
} ;; END can't write to file
)
} ;; END save
)
} ;; END fname == ""
{ ;; BEGIN fname != ""
(if
(yesno "Save buffer " bname " to " fname)
{ ;; BEGIN save
(current-buffer bufid)
(if save-backup-version
(save-buffer-with-backup)
(save-buffer)
)
} ;; END save
)
} ;; END fname != ""
)
(ask-user)
} ;; END modified & we care
)
} ;; END buffer loop
)
} ;; END save-buffers
;;
;; ================================================================
;;
save-buffers-and-exit
{ ;; BEGIN save-buffers-and-exit
(save-some-buffers)
(exit)
} ;; END save-buffers-and-exit
)