File: pdd.bash

package info (click to toggle)
pdd 1.7-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 228 kB
  • sloc: python: 548; sh: 30; makefile: 14
file content (39 lines) | stat: -rw-r--r-- 785 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# Bash completion definition for pdd.
#
# Author:
#   Arun Prakash Jana <engineerarun@gmail.com>

_pdd () {
    COMPREPLY=()
    local IFS=$' \n'
    local cur=$2 prev=$3
    local -a opts opts_with_args
    opts=(
        --add
        -h --help
        -q --quiet
        --sub
    )
    opts_with_arg=(
        -c --timer
        -d --date
        --day
        -r --run
        -s --stopwatch
        -t --time
    )

    # Do not complete non option names
    [[ $cur == -* ]] || return 1

    # Do not complete when the previous arg is an option expecting an argument
    for opt in "${opts_with_arg[@]}"; do
        [[ $opt == $prev ]] && return 1
    done

    # Complete option names
    COMPREPLY=( $(compgen -W "${opts[*]}" -- "$cur") )
    return 0
}

complete -F _pdd pdd