#!/bin/bash #indentation x=" " #3 c="$x$x " #7 v="$x$c " #11 b="$x$v " #15 n="$x$b " #19 E=echo S=self 0in() { local library="$1" $E "import $library" } 0as() { local library="$1" local myname="$2" $E "import $library as $myname" } 0bang() { $E "#!/usr/bin/env python3" $E "#shy.lang.gen;" } 0fm() { local lib="$1" local class="$2" $E "from $lib import $class" } 0dc() { local name="$1" local arg="$2" $E "class $name($arg):" } 0df() { local self="$1" local name="$2" local arg="$3" if [[ $self == s ]]; then $E "def $name($S,$arg):" else $E "def $name($arg):" fi } 0rt() { local value="$1" $E "return $value" } 1df() { local self="$1" local name="$2" local arg="$3" if [[ $self == s ]]; then $E "$x def $name($S,$arg):" else $E "$x def $name($arg):" fi } 1rt() { local value="$1" $E "$x return $value" } 2df() { local self="$1" local name="$2" local arg="$3" if [[ $self == s ]]; then $E "$c def $name($S,$arg):" else $E "$c def $name($arg):" fi } 2rt() { local value="$1" $E "$c return $value" } 0de() { local self="$1" local name="$2" local arg="$3" if [[ $self == s ]]; then $E "def $name($S,event=None,$arg):" else $E "def $name(event=None,$arg):" fi } 1de() { local self="$1" local name="$2" local arg="$3" if [[ $self == s ]]; then $E "$x def $name($S,event=None,$arg):" else $E "$x def $name(event=None,$arg):" fi } 2de() { local self="$1" local name="$2" local arg="$3" if [[ $self == s ]]; then $E "$c def $name($S,event=None,$arg):" else $E "$c def $name(event=None,$arg):" fi } 0fc() { local self="$1" local func="$2" local arg="$3" if [[ $self == s ]]; then $E "$S.$func($arg)" elif [[ $self == ss ]]; then $E "$S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$func($S.$arg)" else $E "$func($arg)" fi } 1fc() { local self="$1" local func="$2" local arg="$3" if [[ $self == s ]]; then $E "$x $S.$func($arg)" elif [[ $self == ss ]]; then $E "$x $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$x $func($S.$arg)" else $E "$x $func($arg)" fi } 2fc() { local self="$1" local func="$2" local arg="$3" if [[ $self == s ]]; then $E "$c $S.$func($arg)" elif [[ $self == ss ]]; then $E "$c $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$c $func($S.$arg)" else $E "$c $func($arg)" fi } 3fc() { local self="$1" local func="$2" local arg="$3" if [[ $self == s ]]; then $E "$v $S.$func($arg)" elif [[ $self == ss ]]; then $E "$v $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$v $func($S.$arg)" else $E "$v $func($arg)" fi } 4fc() { local self="$1" local func="$2" local arg="$3" if [[ $self == s ]]; then $E "$b $S.$func($arg)" elif [[ $self == ss ]]; then $E "$b $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$b $func($S.$arg)" else $E "$b $func($arg)" fi } 5fc() { local self="$1" local func="$2" local arg="$3" if [[ $self == s ]]; then $E "$n $S.$func($arg)" elif [[ $self == ss ]]; then $E "$n $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$n $func($S.$arg)" else $E "$n $func($arg)" fi } 0mn() { local class="$1" local windowTitle="$2" $E "if __name__ == '__main__':" 1vf l runIt $class 1fc l runIt.title "\"$windowTitle\"" 1fc l runIt.mainloop } 0vf() { local self="$1" local name="$2" local func="$3" local arg="$4" if [[ $self == s ]]; then $E "$S.$name = $func($arg)" elif [[ $self == ss ]]; then $E "$S.$name = $S.$func($arg)" elif [[ $self == sss ]]; then $E "$S.$name = $S.$func($S.$arg)" elif [[ $self == lss ]]; then $E "$name = $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$name = $S.$func($arg)" else $E "$name = $func($arg)" fi } 1vf() { local self="$1" local name="$2" local func="$3" local arg="$4" if [[ $self == s ]]; then $E "$x $S.$name = $func($arg)" elif [[ $self == ss ]]; then $E "$x $S.$name = $S.$func($arg)" elif [[ $self == sss ]]; then $E "$x $S.$name = $S.$func($S.$arg)" elif [[ $self == lss ]]; then $E "$x $name = $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$x $name = $S.$func($arg)" else $E "$x $name = $func($arg)" fi } 2vf() { local self="$1" local name="$2" local func="$3" local arg="$4" if [[ $self == s ]]; then $E "$c $S.$name = $func($arg)" elif [[ $self == ss ]]; then $E "$c $S.$name = $S.$func($arg)" elif [[ $self == sss ]]; then $E "$c $S.$name = $S.$func($S.$arg)" elif [[ $self == lss ]]; then $E "$c $name = $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$c $name = $S.$func($arg)" else $E "$c $name = $func($arg)" fi } 3vf() { local self="$1" local name="$2" local func="$3" local arg="$4" if [[ $self == s ]]; then $E "$v $S.$name = $func($arg)" elif [[ $self == ss ]]; then $E "$v $S.$name = $S.$func($arg)" elif [[ $self == sss ]]; then $E "$v $S.$name = $S.$func($S.$arg)" elif [[ $self == lss ]]; then $E "$v $name = $S.$func($S.$arg)" elif [[ $self == ls ]]; then $E "$v $name = $S.$func($arg)" else $E "$v $name = $func($arg)" fi } 0va() { local self="$1" local name="$2" local val="$3" if [[ $self == s ]]; then $E "$S.$name = $val" elif [[ $self == ss ]]; then $E "$S.$name = $S.$val" else $E "$name = $val" fi } 1va() { local self="$1" local name="$2" local val="$3" if [[ $self == s ]]; then $E "$x $S.$name = $val" elif [[ $self == ss ]]; then $E "$x $S.$name = $S.$val" else $E "$x $name = $val" fi } 2va() { local self="$1" local name="$2" local val="$3" if [[ $self == s ]]; then $E "$c $S.$name = $val" elif [[ $self == ss ]]; then $E "$c $S.$name = $S.$val" else $E "$c $name = $val" fi } 2wi() { local self="$1" local func="$2" local arg="$3" local name="$4" if [[ $self == s ]]; then $E "$c with $func($S.$arg) as $name:" else $E "$c with $func($arg) as $name:" fi } 2try() { $E "$c try:" } 2exc() { $E "$c except Exception as e:" } 2if() { local f="$1" local val="$2" local p="$3" if [[ $f == f ]]; then $E "$c if ${val}($p):" elif [[ $f == s ]]; then $E "$c if $S.${val} $p:" else $E "$c if ${val} $p:" fi } 3if() { local f="$1" local val="$2" local p="$3" if [[ $f == f ]]; then $E "$v if ${val}($p):" elif [[ $f == s ]]; then $E "$v if $S.${val} $p:" else $E "$v if ${val} $p:" fi } 3el() { $E "$v else:" } 3ef() { local f="$1" local val="$2" local p="$3" if [[ $f == f ]]; then $E "$v elif ${val}($p):" else $E "$v elif ${val}:" fi } 4if() { local f="$1" local val="$2" local p="$3" if [[ $f == f ]]; then $E "$b if ${val}($p):" else $E "$b if ${val}:" fi } 4el() { $E "$b else:" } 4ef() { local f="$1" local val="$2" local p="$3" if [[ $f == f ]]; then $E "$b elif ${val}($p):" else $E "$b elif ${val}:" fi } 2fr() { local f="$1" local i="$2" local l="$3" local p="$4" if [[ $f == f ]]; then $E "$c for $i in $l($p):" elif [[ $f == s ]]; then $E "$c for $i in $S.$l:" else $E "$c for $i in $l:" fi } 3fr() { local f="$1" local i="$2" local l="$3" local p="$4" if [[ $f == f ]]; then $E "$v for $i in $l($p):" else $E "$v for $i in $l:" fi } 2ac() { typeset self="$1" typeset name="$2" typeset cc="$3" if [[ $self == s ]]; then $E "$c ${S}.$name += $cc" elif [[ $self == ss ]]; then $E "$c ${S}.$name += ${S}.$cc" elif [[ $self == ls ]]; then $E "$c $name += ${S}.$cc" else $E "$c $name += $cc" fi } 3ac() { typeset self="$1" typeset name="$2" typeset cc="$3" if [[ $self == s ]]; then $E "$v ${S}.$name += $cc" elif [[ $self == ss ]]; then $E "$v ${S}.$name += ${S}.$cc" elif [[ $self == ls ]]; then $E "$v $name += ${S}.$cc" else $E "$v $name += $cc" fi } 4ac() { typeset self="$1" typeset name="$2" typeset cc="$3" if [[ $self == s ]]; then $E "$b ${S}.$name += $cc" elif [[ $self == ss ]]; then $E "$b ${S}.$name += ${S}.$cc" elif [[ $self == ls ]]; then $E "$b $name += ${S}.$cc" else $E "$b $name += $cc" fi } DF() { local w="$1" curl -s "dict://dict.org/d:$w" } dic() { local w="$1" DF $w | awk "{\$1=\"\"; print \$0 }" | grep -v "dict.org\|\|ok\|bye \[" }