If you use Bookmark+ then you can tag files with arbitrary strings, including strings containing whitespace.
There are commands for accessing files with tags all of which, or some of which, match a given regexp. The matching is against each tag separately, so there's no problem such as you report for image-dired tags.
For example, command bmkp-autofile-all-tags-regexp-jump
, bound by default to C-x j t a % *
:
bmkp-autofile-all-tags-regexp-jump
is an interactive compiled Lisp
function in bookmark+-1.el
.
(bmkp-autofile-all-tags-regexp-jump REGEXP BOOKMARK)
Jump to an autofile BOOKMARK
in this dir that has each tag matching REGEXP
.
You are prompted for the REGEXP
.
Then you are prompted for the BOOKMARK
(with completion).
Bookmark+ commands pertaining to tags are by default on prefix key C-x x t
— use C-x x t C-h
to see them.
And the keys on that prefix by default follow a mnemonic pattern. For example the key sequence C-x j t a % *
uses these mnemonics:
j
means it's a bookmark jump command (visit the bookmarked file)
t
means it's a tags command
a
means it's an autofile command, that is, the bookmark is an autofile: a file wrapper, and its name is the file name
%
means that the command prompts for a regexp (to match tags)
In the bookmark list (buffer *Bookmark List*
), commands pertaining to tags are on prefix key T
— use T C-h
to see them. For example, you can mark and unmark the bookmarks that have tags matching various patterns.