¿Cómo funcionan los argumentos de la lista de coincidencias en la finalización de zsh zstyle?

Estoy tratando de configurar mi ~ / .zshrc para que la finalización del código en archivos / directorios funcione según lo necesite. Encontré varios recursos en línea sobre la sintaxis de finalización de zstyle y el ejemplo de código, pero algunas partes siguen siendo magia negra para mí.

Hasta ahora, aquí es donde estoy, después de algunos retoques y pruebas:

zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'm:{a-zA-Z}={A-Za-z} l:|=* r:|=*'

Aquí es lo que entiendo de ella:

zstyle ':completion:*' significa que vamos a definir un valor de configuración para completarmatcher-list es la configuración que actualizamos, aquí define cómo zsh coincide con los archivos / dir para sugerir'm:{a-zA-Z}={A-Za-z}' 'm:{a-zA-Z}={A-Za-z} l:|=* r:|=*' son los argumentos (valores) para pasar a lamatcher-list config. Aquí tengo dos argumentos, separados por un espacio. Significa que zsh primero intentará encontrar archivos que coincidan con el primer argumento, y si no encuentra nada, intentará archivos que coincidan con el segundo argumento

Y aquí se vuelve borroso:

Lo entiendo'm:{a-zA-Z}={A-Za-z}' hace que la coincidencia no distinga entre mayúsculas y minúsculas, pero no entiendo muy bien la sintaxis. También entiendo que'm:{a-zA-Z}={A-Za-z} l:|=* r:|=*' todavía no distingue entre mayúsculas y minúsculas, pero también busca la coincidencia en toda la cadena, no solo el inicio. Pero tampoco entiendo la sintaxis.

¿Puede alguien confirmar mis afirmaciones anteriores y corregirlas si es necesario, así como detallar la sintaxis vudú de los argumentos?

Gracia

Edit: Ah, y lo siento si la pregunta se ajusta más a superuser.com, me costó mucho decidir qué sitio era el más adecuado para ello.

Respuestas a la pregunta(1)

Su respuesta a la pregunta