
Eu uso zsh with zim
, o que geralmente é excelente. Idealmente, eu gostaria de desmontar a conclusão da guia para sugerir apenas itens no formato /run/media/$USER
. No exemplo a seguir, este é um único volume denominado L_drive
.
$ cd /run/media/sparhawk
$ ls
L_drive
$ umount <Tab>
-- device label --
binfmt_misc debugfs fusectl mqueue run systemd-1
cgroup dev gvfsd-fuse proc securityfs tmpfs
configfs devpts hugetlbfs pstore sys
-- device path --
/dev/sda2 /dev/sdb5 /dev/sdb6 /dev/sdc1
-- mount point --
/ /run/media/sparhawk/L_drive /sys/fs/cgroup/pids
/dev /run/user/1000 /sys/fs/cgroup/systemd
/dev/hugepages /run/user/1000/gvfs /sys/fs/fuse/connections
/dev/mqueue /sys /sys/fs/pstore
/dev/pts /sys/fs/cgroup /sys/kernel/config
/dev/shm /sys/fs/cgroup/blkio /sys/kernel/debug
/HDD /sys/fs/cgroup/cpu,cpuacct /sys/kernel/security
/home /sys/fs/cgroup/cpuset /tmp
L_drive /sys/fs/cgroup/devices /var/cache
/proc /sys/fs/cgroup/freezer /var/log
/proc/sys/fs/binfmt_misc /sys/fs/cgroup/memory /var/tmp
/run /sys/fs/cgroup/net_cls
Há muitas coisas lá que eu nunca gostaria de concluir. Gostaria de remover todas essas sugestões e deixar apenas o preenchimento da guia para o caminho absoluto /run/media/sparhawk/L_drive
.
FWIW zim tem o seguinteerroonde o caminho relativo não é encontrado após digitar uma carta.
$ umount L<Tab>
-- no matches found --
mas supondo que eu possa remover todas as outras sugestões, deixando apenas o caminho absoluto /run/media/$USER/*
, esse bug é discutível.
Responder1
Você pode usar oignored-patterns
estilopara excluir algumas conclusões.
zstyle ':completion:*:umount:*' ignored-patterns "^/run/media/$USER/*"
Nas configurações padrão, você ainda poderá concluir padrões ignorados se não houver nenhum candidato não ignorado.
(Esta resposta é para zsh simples usando o compinit
sistema de conclusão. É possível, mas improvável, que o zim de alguma forma faça com que ele não funcione.)