App-xlate

 view release on metacpan or  search on metacpan

script/xlate  view on Meta::CPAN

        *.LANG    translation languates
        *.FORMAT  translation foramt (xtxt, cm, ifdef, colon, space)
        *.ENGINE  translation engine (deepl, gpt3, gpt4, gpt4o)

=head1 VERSION

    Version 0.9909

=cut

[[ $pod =~ Version\ +([0-9.]+) ]] && my_version=${BASH_REMATCH[1]}

git_topdir() {
    : git_topdir
    [[ $(git rev-parse --is-inside-work-tree 2>/dev/null) == true ]] || return
    local         dir="$(git rev-parse --show-superproject-working-tree)"
    [[ $dir ]] || dir="$(git rev-parse --show-toplevel)"
    echo $dir
}

get_ip() {
    : get_ip
    local ip=$(ifconfig 2>/dev/null | awk '/inet /{print $2}' | tail -1)
    echo $ip
}

dist_dir() {
    perl -MFile::Share=:all -E "say dist_dir '$1'"
}

warn() {
    [[ $quiet ]] && return
    echo ${1+"$@"} >&2
}

topdir=$(git_topdir)
pwd=$(pwd)
owner=tecolicom
image=
repository=$owner/$myname
hostname=
mount=yes
remove=yes
interactive=yes
container=
version=
workdir=/work
mount_mode=rw
read_only=
display=
localtime=/etc/localtime
givenname=
detach=
volume=
volumes=()
ports=()
others=()

ENV=(
    LANG TZ
    HTTP_PROXY HTTPS_PROXY
    http_proxy https_proxy
    TERM_PROGRAM TERM_BGCOLOR COLORTERM
    DEEPL_AUTH_KEY
    OPENAI_API_KEY
    ANTHROPIC_API_KEY
    LLM_PERPLEXITY_KEY
)

container_name() {
    : container_name
    local name
    if [[ $givenname ]]
    then
	name="$givenname"
    else
	if [[ $image =~ (.*/)?([-_.a-zA-Z]+) ]]
	then name=${BASH_REMATCH[2]}
	else name=$myname
	fi
	[[ $volume ]] && name+=.${volume##*/}
    fi
    echo $name
}

docker_find() {
    : docker_find
    local OPT OPTARG OPTIND status id
    while getopts "s:" OPT
    do
	case $OPT in
	    s) status+=($OPTARG) ;;
	esac
    done
    shift $((OPTIND - 1))
    id=$(docker ps -a -q ${status[@]/#/-f status=} -f name="^/$1\$")
    [[ $id ]] && echo $id || return 1
}

docker_status() {
    docker inspect --format='{{.State.Status}}' $1
}


##
## read .xlaterc
##
declare -a rcpath=($HOME)
[[ $topdir && $topdir != $pwd ]] && rcpath+=($topdir)
for dir in ${rcpath[@]}
do
    rc="$dir/.xlaterc"
    [[ -r $rc ]] || continue
    mapfile -t OPTS < <(grep -v ^# "$rc")
    warn "$myname: ${OPTS[@]}"
    set -- ${OPTS[@]} ${1+"$@"}
done

##
## Docker
##



( run in 0.517 second using v1.01-cache-2.11-cpan-483215c6ad5 )