On Jan 7, 2015 11:51 AM, "Bart Schaefer" wrote: > > The hardest part of the zstyle mechanism is grasping the "reverse pattern match" lookup mechanism. Your hypothetical assassination example is inaccurate because you're applying the patterns in the wrong "direction". Here's possibly a way to think about this. Let's consider two applications of patterns, globbing and zstyle. Globbing starts with a search space full of very specific objects: Individual file names. You provide a general description (the pattern) and globbing looks up all the specific objects. Zstyle starts with an *empty* search space and a whole lot of very specific *searches* (at least one for every possible word-on-the-command-line you might want to complete). These searches are called style contexts. You populate the search space with general descriptions of the style contexts you care about, and zstyle looks up the single general description that best fits a specific search. This is why there are wildcards in the commands that set styles. There are no wildcards in the commands that test or look up styles. Globbing: "Show me the dogs in this park that are on a leash." You search the park for dogs, there may be lots but it is an instantaneous finite number. Zstyle: "All dogs in this park must be on a leash." You check every animal you see entering the park to see if it is a dog and has a leash. You have no idea how many animals or leashes you may eventually find, but if the current animal is a dog, you know it has to have a leash to be allowed in the park.