Reputation: 43411
After installing cheat
(command cheat sheets from the command line), I tried to enable the autocompletion using the provided zsh script. However, I don't seem to find the correct location for the script.
cheat.zsh
;~/.oh-my-zsh/custom/plugins/cheat/_cheat.zsh
;plugins
array in my ~/.zshrc
;Auto-completion doesn't happen when typing cheat d<TAB>
.
So where to place zsh auto-completion script on Linux?
Upvotes: 26
Views: 32145
Reputation: 85
On latest version of oh-my-zsh
there is already a set of folders where you can put completion files: ~/.oh-my-zsh/custom/completions
Upvotes: 2
Reputation: 610
I got this to work by adding cheat.zsh
to the ~/.oh-my-zsh/plugins
directory. Zsh checks to autoload functions on FPATH
, so try:
echo $FPATH
and then either add to FPATH
or move the file into a folder on the path.
This actually does a much better job of explaining it: https://unix.stackexchange.com/questions/33255/how-to-define-and-load-your-own-shell-function-in-zsh
Upvotes: 30
Reputation: 676
Let me try to help here.
I was trying something similar and this is how I was able to get it worked.
Below solution has verified with oh-my-zsh
on debian distro [ubuntu]
> Your zsh isnt giving proper completion suggestions say [conda] > This is what you get when you type in # conda tab
Find the completion script
one great location is https://github.com/clarketm/zsh-completions/tree/master/src
Download the file to completions folder [~/.oh-my-zsh/completions]
wget https://raw.githubusercontent.com/clarketm/zsh-completions/master/src/_conda ~/.oh-my-zsh/completions
Make sure the completions folder is listed under $fpath
print -l $fpath
What if its not listed It should have normaly added with .oh-my-zsh.sh If not append below to ~/.oh-my-zsh/oh-my-zsh.sh
# add a function path
fpath=($ZSH/functions $ZSH/completions $fpath)
source .zshrc
source ~/.zshrc
Execute compinit
this will build ~/.zcompdump
file for the functions
compinit
Due to conflicts the suggestions might not be shown try the following
rm -f ~/.zcompdump; compinit
# we are clearing the function dump stored by zsh, its safe zsh will rebuilt it.
Try source .zshrc
source ~/.zshrc
Try loggin out and login
Check the mapping in ~/.zcompdump
vi ~/.zcompdump
search for conda
[/conda]
you should see as below
'conda' '_conda'
Hope someone will find it useful, if so Happy to Help
Upvotes: 17