Skip to content

Instantly share code, notes, and snippets.

@mardukbp
Created September 11, 2013 19:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mardukbp/6528242 to your computer and use it in GitHub Desktop.
Save mardukbp/6528242 to your computer and use it in GitHub Desktop.
Save & Load filters for ebib's filters branch
(defun ebib-load-filter ()
(interactive)
(ebib-execute-when
((filtered-db)
(error "A saved filter can only be applied to a real database")
))
(ebib-execute-when
((real-db)
(let ((filter (completing-read (format "Choose a saved filter: ")
(mapcar #'(lambda(x)
(cons x 0))
(filter-all-names))
nil t)))
(setq filter-record (car (cdr (filter-get-filter filter))))
(setf (edb-filter ebib-cur-db) filter-record)
(ebib-run-filter ebib-cur-db)
(ebib-fill-entry-buffer)
(ebib-fill-index-buffer)))
))
(defun ebib-save-filter ()
(interactive)
(setq filter (edb-filter ebib-cur-db))
(let ((ebib-filter-name (read-from-minibuffer "Enter filter name: ")))
(filter-store ebib-filter-name filter nil)
(filter-write-file)
(setq filters-alist nil)
(setq filters-already-loaded nil)
))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment