Function: filesets-add-buffer
filesets-add-buffer is an interactive and byte-compiled function
defined in filesets.el.gz.
Signature
(filesets-add-buffer &optional NAME BUFFER)
Documentation
Add BUFFER (or current buffer) to the fileset called NAME.
If no fileset name is provided, prompt for NAME.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/filesets.el.gz
(defun filesets-add-buffer (&optional name buffer)
"Add BUFFER (or current buffer) to the fileset called NAME.
If no fileset name is provided, prompt for NAME."
(interactive)
(let* ((buffer (or buffer
(current-buffer)))
(name (or name
(completing-read
(format-message "Add `%s' to fileset: " buffer)
filesets-data nil)))
(entry (or (assoc name filesets-data)
(when (y-or-n-p
(format "Fileset %s does not exist. Create it?"
name))
(progn
(add-to-list 'filesets-data (list name '(:files)))
(message
(substitute-command-keys
"Fileset %s created. Call `\\[filesets-save-config]' to save.")
name)
(car filesets-data))))))
(if entry
(let* ((files (filesets-entry-get-files entry))
(this (buffer-file-name buffer))
(inlist (cl-member this files
:test #'filesets-files-equalp)))
(cond
(inlist
(message "Filesets: `%s' is already in `%s'" this name))
((and (equal (filesets-entry-mode entry) ':files)
this)
(filesets-entry-set-files entry (cons this files) t)
(filesets-set-config name 'filesets-data filesets-data))
(t
(message "Filesets: Can't add `%s' to fileset `%s'" this name)))))))