首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ZSH中的文件完成优先级

ZSH中的文件完成优先级
EN

Stack Overflow用户
提问于 2014-07-19 04:15:48
回答 1查看 612关注 0票数 6

我有一个shell模式,它将一些文件标记为“无聊”,即备份文件、pyo文件、vim备份、自动生成的目录等等。我们叫它$BORING_STUFF吧。

代码语言:javascript
复制
zstyle ':completion:*' file-patterns \ 
    '%p:globbed-items' \
    '*(^-/):regular-files' \
    '*(^-/):boring-files' \
    '.*(^-/):hidden-files' \
    '*(-/):regular-directories' \
    '*(-/):boring-directories' \
    '.*(-/):hidden-directories'

在这种情况下,每个组的范围也受到适用的ignore-patterns的限制。(这样,boring-files只包含无聊的文件,而regular-files不包含无聊的文件)

我希望粗体的项目总是出现,而其他项目只有在没有其他匹配时才会出现。(又名。touch <tab>将显示常规目录和常规文件,而不是隐藏文件,而touch .<tab>将显示隐藏文件。)

  • 球形项目
  • 目录
    • 普通目录
    • 钻孔目录
    • 隐藏目录

  • 文件
    • 常规文件
    • 钻孔文件
    • 隐藏文件

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-10 13:21:02

我们开始吧。

代码语言:javascript
复制
setopt extended_glob
zstyle ':completion:*' file-patterns \
  "^($BORING_FILES|.*)(-/):directories:normal\ directories %p~($BORING_FILES|.*)(^-/):globbed-files:normal\ files" \
  "^($BORING_FILES|.*)(^-/):noglob-files:noglob\ files" \
  ".*~($BORING_FILES)(^-/):hidden-files:hidden\ files .*~($BORING_FILES)(-/):hidden-directories:hidden\ directories" \
  "($BORING_FILES)(^-/):boring-files:boring\ files ($BORING_FILES)(-/):boring-directories:boring\ directories" \

zstyle ':completion:*' group-order \
  builtins expansions aliases functions commands globbed-files \
  directories hidden-files hidden-directories \
  boring-files boring-directories keywords viewable
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24836684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档