# vim: set filetype=fish sw=4 ts=4 et:

set -g prompt_counter 0
set -g prompt_counter_incr 0
function fish_prompt
    if test $prompt_counter_incr -eq 1
        set -g prompt_counter (expr $prompt_counter + 1)
        set -g prompt_counter_incr 0
    end
    echo "prompt $prompt_counter>"
end
function fish_prompt_event --on-event fish_prompt
    set -g prompt_counter_incr 1
end

set -g fish_greeting ''

function fish_title
end

function _quote
    echo \'(echo $argv[1] | sed -e 's/\'/\\\\\'/g')\'
end

function _echo_var --no-scope-shadowing -d '_echo_var varname [guardval]'
    if set -q argv[2]; echo "@GUARD:$argv[2]@"; end
    set -l var $argv[1]
    switch (count $$var)
    case 0
        echo "\$$var has no value"
    case 1
        _quote $$var | read -l x
        echo "\$$var: $x"
    case \*
        echo "\$$var:"
        for i in (seq (count $$var))
            _quote $$var[1][$i] | read -l x
            echo "$i: $x"
        end
    end
    if set -q argv[2]; echo "@/GUARD:$argv[2]@"; end
end

function _marker -d '_marker string - prints @MARKER:$string@'
    echo "@MARKER:$argv[1]@"
end