slick-0.1.7 is not a library.
Visit the last successful build: slick-0.11.2

slick

async ZSH prompt in Rust inspired by:

sreenshot

How to use

Install:

cargo install slick

check your PATH $HOME/.cargo/bin/slick

Then add this to your .zshrc:

zle -N zle-keymap-select
zle -N zle-line-init
zmodload zsh/datetime
autoload -Uz add-zsh-hook
add-zsh-hook precmd slick_prompt_precmd
add-zsh-hook preexec slick_prompt_preexec

typeset -g slick_prompt_data
typeset -g slick_prompt_timestamp

function slick_prompt_refresh {
    local exit_status=$?
    if ! read -r slick_prompt_data <&$1; then
        slick_prompt_data=" "
    fi
    PROMPT=$(slick prompt -k "$KEYMAP" -r $exit_status -d ${slick_prompt_data:-" "} -t ${slick_prompt_timestamp:-$EPOCHSECONDS})

    zle reset-prompt

    # Remove the handler and close the fd
    zle -F $1
    exec {1}<&-
}

function zle-line-init zle-keymap-select {
    PROMPT=$(slick prompt -k "$KEYMAP" -d ${slick_prompt_data:-" "})
    zle && zle reset-prompt
}

function slick_prompt_precmd() {
    exec {FD}< <(slick precmd)
    zle -F $FD slick_prompt_refresh
}

function slick_prompt_preexec() {
    slick_prompt_timestamp=$EPOCHSECONDS
}