Function: image-dired-add-to-tag-file-lists

image-dired-add-to-tag-file-lists is a byte-compiled function defined in image-dired.el.gz.

Signature

(image-dired-add-to-tag-file-lists TAG FILE)

Documentation

Helper function used from image-dired-create-gallery-lists.

Add TAG to FILE in one list and FILE to TAG in the other.

Lisp structures look like the following:

image-dired-file-tag-list:

  (("filename1" "tag1" "tag2" "tag3" ...)
   ("filename2" "tag1" "tag2" "tag3" ...)
   ...)

image-dired-tag-file-list:

 (("tag1" "filename1" "filename2" "filename3" ...)
  ("tag2" "filename1" "filename2" "filename3" ...)
  ...)

Source Code

;; Defined in /usr/src/emacs/lisp/image-dired.el.gz
(defun image-dired-add-to-tag-file-lists (tag file)
  "Helper function used from `image-dired-create-gallery-lists'.

Add TAG to FILE in one list and FILE to TAG in the other.

Lisp structures look like the following:

image-dired-file-tag-list:

  ((\"filename1\" \"tag1\" \"tag2\" \"tag3\" ...)
   (\"filename2\" \"tag1\" \"tag2\" \"tag3\" ...)
   ...)

image-dired-tag-file-list:

 ((\"tag1\" \"filename1\" \"filename2\" \"filename3\" ...)
  (\"tag2\" \"filename1\" \"filename2\" \"filename3\" ...)
  ...)"
  ;; Add tag to file list
  (let (curr)
    (if image-dired-file-tag-list
        (if (setq curr (assoc file image-dired-file-tag-list))
            (setcdr curr (cons tag (cdr curr)))
          (setcdr image-dired-file-tag-list
                  (cons (list file tag) (cdr image-dired-file-tag-list))))
      (setq image-dired-file-tag-list (list (list file tag))))
    ;; Add file to tag list
    (if image-dired-tag-file-list
        (if (setq curr (assoc tag image-dired-tag-file-list))
            (if (not (member file curr))
                (setcdr curr (cons file (cdr curr))))
          (setcdr image-dired-tag-file-list
                  (cons (list tag file) (cdr image-dired-tag-file-list))))
      (setq image-dired-tag-file-list (list (list tag file))))))