Den*_*uzé 9 zsh make autocomplete oh-my-zsh
zsh
贝壳,oh-my-zsh
框架,zsh
的配置(有或没有相同的问题zsh-completions
):见.zshrc
最后。如果目录包含:
makefile
目标:hello
,hello.o
和main.o
,foo
,bar
和baz
,调用make
+ TAB 显示为完成:
bar baz foo hello hello.o main.o makefile
而不仅仅是makefile
的目标。
在这方面,我如何自定义zsh
以使其行为bash
(仅显示makefile
's 目标)?
这是我的.zshrc
:
export ZSH=/home/bitouze/.oh-my-zsh
ZSH_THEME="gnzh"
plugins=(git zsh-completions)
autoload -U compinit && compinit
source $ZSH/oh-my-zsh.sh
export LANG=fr_FR.UTF-8
source $HOME/.aliases
# texdoc completion
compctl -k "(($(grep ^name $(kpsewhich -var-value TEXMFROOT)/tlpkg/texlive.tlpdb | grep -v '\.' | awk '{print $2}' | tr '\n' ' ')))" texdoc
export ANDROID_HOME="/home/bitouze/Android/Sdk"
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
export JAVA_HOME=/usr/lib/jvm/jre
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
export SDKMAN_DIR="/home/bitouze/.sdkman"
[[ -s "/home/bitouze/.sdkman/bin/sdkman-init.sh" ]] && source "/home/bitouze/.sdkman/bin/sdkman-init.sh"
Run Code Online (Sandbox Code Playgroud)
jim*_*mij 13
你可以问zsh
,只显示targets
标签的make
命令完成与
zstyle ':completion:*:*:make:*' tag-order 'targets'
Run Code Online (Sandbox Code Playgroud)
在该行之后的某处添加上面的代码
autoload -U compinit && compinit
Run Code Online (Sandbox Code Playgroud)