@kecan0406/ttheme 1.2.21 → 1.2.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schema": 1,
3
- "version": "1.2.21",
3
+ "version": "1.2.22",
4
4
  "gate": [
5
5
  {
6
6
  "rule": "foreground",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kecan0406/ttheme",
3
- "version": "1.2.21",
3
+ "version": "1.2.22",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "ttheme": "bin/ttheme.js"
@@ -184,22 +184,9 @@ __tt_bg_dim() {
184
184
  }
185
185
 
186
186
  __tt_bg_bake() {
187
- local src=$1 out=$2 tmp
188
- local -i W=$3 H=$4 dw=$5 dh=$6 ox=$7 oy=$8 vx vy vw vh px py rc
189
- vx=$(( ox < 0 ? -ox : 0 )) vy=$(( oy < 0 ? -oy : 0 ))
190
- vw=$(( (dw < W - ox ? dw : W - ox) - vx )) vh=$(( (dh < H - oy ? dh : H - oy) - vy ))
191
- px=$(( ox > 0 ? ox : 0 )) py=$(( oy > 0 ? oy : 0 ))
192
- (( vw > 0 && vh > 0 )) || return 1
193
- tmp=$(mktemp -d) || return 1
194
- sips -z $dh $dw $src --out $tmp/a.png >/dev/null 2>&1 &&
195
- sips -p $(( dh + 2 )) $(( dw + 2 )) $tmp/a.png --out $tmp/b.png >/dev/null 2>&1 &&
196
- sips -c $vh $vw --cropOffset $(( vy + 1 )) $(( vx + 1 )) $tmp/b.png --out $tmp/c.png >/dev/null 2>&1 &&
197
- sips -p $(( 2 * H - vh + 2 )) $(( 2 * W - vw + 2 )) $tmp/c.png --out $tmp/d.png >/dev/null 2>&1 &&
198
- sips -c $H $W --cropOffset $(( H - vh + 1 - py )) $(( W - vw + 1 - px )) $tmp/d.png --out $tmp/e.png >/dev/null 2>&1 &&
199
- mv -f $tmp/e.png $out
200
- rc=$?
201
- rm -rf $tmp
202
- return $rc
187
+ local place
188
+ printf -v place '%dx%d%+d%+d' $5 $6 $7 $8
189
+ __tt_cli bake "$1" "$2" "${3}x$4" "$place" >/dev/null 2>&1
203
190
  }
204
191
 
205
192
  __tt_bg_include() {
@@ -379,7 +366,7 @@ __tt_pv_bg_adjust() {
379
366
  __tt_bg_image $name
380
367
  __tt_bg_dim "$REPLY" || return 0
381
368
  local size=${bgsize[$name]} op=${bgop[$name]}
382
- local -i n=${2:-0} at=${bgpos[$name]} off=${bgoff[$name]} o=$(( ${bgop[$name]} * 100 + 0.5 )) m fs=0 bake=$+commands[sips]
369
+ local -i n=${2:-0} at=${bgpos[$name]} off=${bgoff[$name]} o=$(( ${bgop[$name]} * 100 + 0.5 )) m fs=0
383
370
  local -a def=(${=bgdef[$name]})
384
371
  __tt_pv_bg_fs $name && fs=$REPLY
385
372
  case $1 in
@@ -399,15 +386,15 @@ __tt_pv_bg_adjust() {
399
386
  if (( n < 0 )); then
400
387
  if [[ $size == fill ]]; then
401
388
  (( fs )) || return 0
402
- size=$(( bake && fs > 100 ? fs : 100 ))
389
+ size=$(( fs > 100 ? fs : 100 ))
403
390
  n=$(( n + 1 ))
404
391
  fi
405
- if (( bake && n )); then
392
+ if (( n )); then
406
393
  size=$(( size + n ))
407
394
  (( size < 20 )) && size=20
408
395
  fi
409
396
  elif [[ $size != fill ]]; then
410
- if (( ! bake || size + n > fs )); then
397
+ if (( size + n > fs )); then
411
398
  size=fill
412
399
  else
413
400
  size=$(( size + n ))
@@ -417,14 +404,12 @@ __tt_pv_bg_adjust() {
417
404
  pos) at=$(( ((at - 1 + n) % 9 + 9) % 9 + 1 )) ;;
418
405
  at) at=$n ;;
419
406
  sizeat)
420
- local -i lo=$(( bake ? 20 : 100 )) hi=$(( fs > 100 ? fs : 100 ))
407
+ local -i lo=20 hi=$(( fs > 100 ? fs : 100 ))
421
408
  m=$(( lo + n * (hi - lo + 1) / 1000 ))
422
409
  if (( n >= 1000 || (fs && m > fs) )); then
423
410
  size=fill
424
- elif (( bake )); then
425
- size=$m
426
411
  else
427
- size=100
412
+ size=$m
428
413
  fi
429
414
  ;;
430
415
  opto)
@@ -626,10 +611,9 @@ __tt_pv_bg_recolor() {
626
611
  __tt_pv_bg_panel() {
627
612
  local name=$1 z=$TTHEME_SGR[reset] b=$TTHEME_SGR[bold] d=$TTHEME_SGR[dim] c=$ac val sty mark choice REPLY
628
613
  local -a labs=(Size Position Opacity Colors) at=(1 4 7 0) def=(${=bgdef[$1]})
629
- local -i r0=$2 col=$3 end=$4 off=${bgoff[$1]} T=$(( $4 - $3 - 21 )) lo=100 hi=100 k i r knob pos=${bgpos[$1]} o tuned
614
+ local -i r0=$2 col=$3 end=$4 off=${bgoff[$1]} T=$(( $4 - $3 - 21 )) lo=20 hi=100 k i r knob pos=${bgpos[$1]} o tuned
630
615
  (( color )) || z= b= d= c=
631
616
  (( T < 8 )) && T=8
632
- (( $+commands[sips] )) && lo=20
633
617
  __tt_pv_bg_fs $name && (( REPLY > hi )) && hi=$REPLY
634
618
  for k in 1 2 3 4; do
635
619
  r=$(( r0 + at[k] ))
@@ -162,21 +162,14 @@ __tt_bg_cells() {
162
162
  __tt_bg_crop() {
163
163
  local img=$1 band
164
164
  local -i iw=$2 ih=$3 y=$4 h=$5 d=$(( 2 * $4 + $5 - $3 ))
165
- if (( d * d <= 1 || ! $+commands[sips] )); then
165
+ if (( d * d <= 1 )); then
166
166
  __tt_bg_send $img
167
167
  REPLY="$REPLY $y"
168
168
  return 0
169
169
  fi
170
170
  [[ -n $bgcut ]] || bgcut=$(mktemp -d) || return 1
171
171
  band=$bgcut/${${img:t}%.png}-$y-$h.png
172
- if [[ ! -r $band ]]; then
173
- if (( y )); then
174
- sips -c $h $iw --cropOffset $y 0 $img --out $band >/dev/null 2>&1 || return 1
175
- else
176
- sips -p $(( ih + 2 )) $(( iw + 2 )) $img --out $bgcut/pad.png >/dev/null 2>&1 &&
177
- sips -c $h $iw --cropOffset 1 1 $bgcut/pad.png --out $band >/dev/null 2>&1 || return 1
178
- fi
179
- fi
172
+ [[ -r $band ]] || __tt_bg_bake $img $band $iw $h $iw $ih 0 $(( -y )) || return 1
180
173
  __tt_bg_send $band
181
174
  REPLY="$REPLY 0"
182
175
  }
@@ -445,12 +445,6 @@ __tt_bg_shown() { __tt_warp_wearing }
445
445
 
446
446
  __tt_bg_refresh() { __tt_warp_unview }
447
447
 
448
- __tt_bg_bake() {
449
- local place
450
- printf -v place '%dx%d%+d%+d' $5 $6 $7 $8
451
- __tt_cli bake "$1" "$2" "${3}x$4" "$place" >/dev/null 2>&1
452
- }
453
-
454
448
  __tt_bg_hide() {
455
449
  __tt_warp_set "{ custom = { name = \"$1\", path = \"ttheme-${${1/@/--}/\//--}.yaml\" } }"
456
450
  TTHEME_WARP_VIEW=""