This commit is contained in:
asagi4
2023-11-22 02:22:18 +02:00
parent 00a146dbd5
commit 69cd524afc
3 changed files with 25 additions and 16 deletions
+23 -14
View File
@@ -1,4 +1,17 @@
def $descseq($expr; $var; $sw; $ew; $start; $step) {
$if($p, $t, $f) = {
$('$t' if $p else '$f')
}
$comment($x) = {}
$float($v) = { $(round($v, 2)) }
$rec($exp, $v) = {
$x = $float($v)
$if($x <= 0,done,$exp $quote($rec($exp, $($x - 1))))
}
$descseq($expr, $var, $sw, $ew, $start, $step) = {
[SEQ<%- for step in steps(0, $sw - $ew, $step) -%>
<%- set $var = round($sw - step, 2) -%>
<%- if $var >= $ew -%>
@@ -8,7 +21,7 @@ def $descseq($expr; $var; $sw; $ew; $start; $step) {
<%- set $var = $ew -%>:$expr:1]
}
def $ascseq($expr; $var; $sw; $ew; $start; $step) {
$ascseq($expr, $var, $sw, $ew, $start, $step) = {
[SEQ<%- for step in steps(0, round($ew - $sw, 2), $step) -%>
<%- set $var = round($sw+step, 2) -%>
<%- if $var < $ew -%>
@@ -18,21 +31,17 @@ def $ascseq($expr; $var; $sw; $ew; $start; $step) {
<%- set $var = $ew -%>:$expr:1]
}
def $warmlora($lora; $e; $start; $step) {
var $x = <lora:$lora:<= x + $start =>>; $y = $eval($e - $start)
$ascseq($x; x; 0; $y; $step; $step)
$warmlora($lora, $e, $start, $step) = {
$x = <lora:$lora:<= x + $start =>>; $y = $($e - $start)
$ascseq($x, x, 0, $y, $step, $step)
}
def $coollora($lora; $start; $step) {
var $x = <lora:$lora:<= x =>>
$descseq($x; x; $start; 0; 0; $step)
$coollora($lora, $start, $step) = {
$x = <lora:$lora:<= x =>>
$descseq($x, x, $start, 0, 0, $step)
}
def $rectmask($x; $y; $size) {
MASK($x <= $x + $size =>, $y <= $y + $size =>)
}
$rectmask($x, $y, $size) = {
MASK($x "<=" $x + $size "=>", $y "<=" $y + $size "=>")
# Evaluates expression as Jinja2 immediately
defj $eval($x) {
<= $x =>
}
+1 -1
View File
@@ -35,7 +35,7 @@ var.5: "$" "{" NAME "}" | "$" NAME
NAME: /[a-z]+/
argument_spec.10: "(" _WS? var? (_WS? _SEP _WS? var)* ")"
argument_list.10: "(" _WS? expr? (_WS? _SEP expr _WS?)*")"
function_body.20: "{" expr* "}"
function_body.20: "{" (definition | expr)* "}"
_SEP.1: ","
_TERM.10: ";" | NEWLINE
STRING.0: /[^"$(){},;\n]+/
+1 -1
View File
@@ -124,7 +124,7 @@ class MUSimpleWildcard:
text = extra_pnginfo[CLASS_NAME][unique_id]
log.info("MUSimpleWildcard using prompt: %s", text)
ctx = read_preamble()
newtext = parse(text, ctx)
newtext, _ = parse(text, ctx)
if newtext != text:
log.info("MUSimpleWildcard result:\n%s", newtext)
return (newtext,)