summaryrefslogtreecommitdiff
path: root/net:foret/Prompts.zsh
blob: d93120d01816fd94d5ef830be958bb0bb449d74a (plain)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
##
## Part of configuration files for Zsh4
## AUTHOR: Hugues Hiegel <hugues@hiegel.fr>
## 
## You are encouraged to use, modify, and redistribute
## these files with or without this notice.
## 
## NO WARRANTY PROVIDED, USE AT YOUR OWN RISKS
##

_prompt_colors[target]="1;31"

__static_dynamic ()
{
    [ $(( ${STATIC:-$(( 1 ^ ${DYNAMIC:-0} ))} + ${DYNAMIC:-$(( 1 ^ ${STATIC:-0} ))} )) -lt 2 ] && \
    case "${STATIC:-$(( 1 ^ ${DYNAMIC:-0} ))}${DYNAMIC:-$((1 ^ ${STATIC:-0}))}" in
        "10")
            echo -n $C_
            export | grep -q '^DYNAMIC=' && echo -n "1;"
            echo -n $_make_colors[static]$_C"static" ;;
        "01")
            echo -n $C_
            export | grep -q '^STATIC=' && echo -n "1;"
            echo -n $_make_colors[dynamic]$_C"dynamic" ;;
    esac
}

__compilation_arch ()
{
    [ -n "$ARCH" ] || return
    echo -n $C_
    export | grep -q '^ARCH=' && echo -n "1;"
    echo -n $_make_colors[target]$_C$ARCH
}

__compilation_os ()
{
    [ -n "$OS" ] || return
    echo -n $C_
    export | grep -q '^OS=' && echo -n "1;"
    echo -n $_make_colors[target]$_C$OS
}

__compilation_target ()
{
    [ -n "$TARGET" ] || return
    echo -n $C_
    export | grep -q '^TARGET=' && echo -n "1;"
    echo -n $_make_colors[target]$_C$TARGET
}

__verbose_compilation ()
{
    [ -n "$V" -a "$V" -gt 0 ] || return
    echo -n $C_
    export | grep -q '^V=' && echo -n "1;"
    echo -n $_make_colors[verbose]$_C$(for i in {1..$V} ; echo -n -n "V")
}

__nproc_compilation ()
{
    NPROC=${NPROC:-0}
    [ $(($NPROC)) -gt 0 ] || { unset NPROC ; return }

    echo -n $C_$_prompt_colors[bar]$_C$T_"u"$_T$C_
    export | grep -q '^NPROC=' && echo -n "1;"
    echo -n $_make_colors[nproc]$_C$(for i in {1..$NPROC} ; echo -n -n "|")
    echo -n $C_$_prompt_colors[bar]$_C$T_"t"$_T
}
__makeflags ()
{
    [ -z "$MAKEFLAGS" ] && return
    echo -n $C_
    export | grep -q '^MAKEFLAGS=' && echo -n "1;"
    echo -n $_prompt_colors[soft_generic]";3"$_C${MAKEFLAGS// -/}
}

PS1_TASKBAR+=(__makeflags __verbose_compilation __nproc_compilation __static_dynamic __compilation_os __compilation_arch __compilation_target)
PS1_EXTRA_INFO+=()