   (setq mural-tagfile-to-process
         (cons
          (cons tagfile process)
-         (mural-filter (lambda (entry)
+         (delete-if-not (lambda (entry)
                    (not (equal tagfile (car entry))))
                  mural-tagfile-to-process))))
 

;;   (global-set-key (kbd "C-o") 'mural-open-dwim)
;;
;; To debug launch:
;; (call-process mural-server-path nil t nil tags-file-name)

(require 'ido)

(defvar mural-server-path "mural_server"
  "Path to the mural_server executable")

           (setq mural-server-output (concat mural-server-output output))))))
     proc))

(defun mural-tagfile-for-filename (filename)
  "Given a source file, return the name of the associated
tagfile.  This matches based on sharing the same parent
directory, so /home/bob/project/foo.c will match the tag file in
/home/bobo/project/TAGS.  If no match is found, return nil"
  (let ((resolved-fname (file-truename filename)))
    (car (delete-if-not
          (lambda (tagfile)
            ;; file-truename resolves symlinks so we make sure to
            ;; compare the same thing
