Function: filesets-remove-buffer
filesets-remove-buffer is an interactive and byte-compiled function
defined in filesets.el.gz.
Signature
(filesets-remove-buffer &optional NAME BUFFER)
Documentation
Remove BUFFER (or current buffer) from 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-remove-buffer (&optional name buffer)
"Remove BUFFER (or current buffer) from 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 "Remove `%s' from fileset: " buffer)
filesets-data nil t)))
(entry (assoc name 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)))
;;(message "%s %s %s" files this inlist)
(if (and files this inlist)
(let ((new (list (cons ':files (delete (car inlist) files)))))
(setcdr entry new)
(filesets-set-config name 'filesets-data filesets-data))
(message "Filesets: Can't remove `%s' from fileset `%s'"
this
name))))))