@kecan0406/ttheme 1.2.28 → 1.2.30

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.28",
3
+ "version": "1.2.30",
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.28",
3
+ "version": "1.2.30",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "ttheme": "bin/ttheme.js"
@@ -145,12 +145,21 @@ __tt_ghostty_take() {
145
145
  rec=(${=${"$(<$TTHEME_GHOSTTY_TABS/$key)"}})
146
146
  [[ $rec[1] == "$ans[3]" ]] || TTHEME_GHOSTTY_IDLE=0
147
147
  pal=${rec[3]#-}
148
- [[ $rec[2] != - && -z $TTHEME_STARTUP ]] && pal=""
148
+ if [[ $rec[2] != - && -z $TTHEME_STARTUP ]]; then
149
+ pal=""
150
+ (( TTHEME_GHOSTTY_IDLE )) || __tt_ghostty_unpaint $key $rec[1] $rec[4]
151
+ fi
149
152
  [[ -n $pal && -n ${TTHEME_PALETTE[$pal]} ]] || return 0
150
153
  __tt_shown "$pal" force && __tt_reload_ghostty
151
154
  return 0
152
155
  }
153
156
 
157
+ __tt_ghostty_unpaint() {
158
+ [[ $3 == /dev/* && -w $3 ]] || return 0
159
+ { print -rn -- $'\e]104\e\\\e]110\e\\\e]111\e\\\e]112\e\\\e]117\e\\' >| $3 } 2>/dev/null || return 0
160
+ __tt_put $TTHEME_GHOSTTY_TABS/$1 "$2 - - $3" 2>/dev/null
161
+ }
162
+
154
163
  __tt_ghostty_tick() {
155
164
  local f key
156
165
  local -a at rec
package/shell/ttheme.zsh CHANGED
@@ -80,6 +80,10 @@ __tt_follow() {
80
80
  [[ -n $TTHEME_STARTUP && "$TTHEME_STARTUP ${TTHEME_PALETTE[$TTHEME_STARTUP]}" != "$1" && -z $TTHEME_PAINTED ]] || return 1
81
81
  __tt_active && __tt_takes_default || return 1
82
82
  TTHEME_SPEC=${TTHEME_PALETTE[$TTHEME_STARTUP]}
83
+ TTHEME_PIN= TTHEME_PIN_SPEC= TTHEME_BASE_SPEC=
84
+ __tt_pins_load
85
+ __tt_dir_sync
86
+ return 0
83
87
  }
84
88
 
85
89
  __tt_gone() {
@@ -379,6 +383,17 @@ __tt_dir_sync() {
379
383
  return 0
380
384
  }
381
385
 
386
+ __tt_resume() {
387
+ local REPLY="" name=$TTHEME_STARTUP
388
+ TTHEME_PIN= TTHEME_PIN_SPEC= TTHEME_BASE_SPEC=
389
+ __tt_pins_load
390
+ if __tt_dir_rule "$PWD" && [[ -n ${TTHEME_PALETTE[$TTHEME_PINS[$REPLY]]} ]]; then
391
+ name=$TTHEME_PINS[$REPLY]
392
+ TTHEME_PIN=$REPLY TTHEME_PIN_SPEC=${TTHEME_PALETTE[$name]} TTHEME_BASE_SPEC=${TTHEME_PALETTE[$TTHEME_STARTUP]}
393
+ fi
394
+ __tt_wear "${TTHEME_PALETTE[$name]}" "$name" force || { __tt_reload; __tt_reloaded }
395
+ }
396
+
382
397
  __tt_chpwd() {
383
398
  emulate -L zsh ${=${options[xtrace]:#off}:+-o xtrace}
384
399
  __tt_pins_load
@@ -1410,7 +1425,7 @@ __tt_switch() {
1410
1425
  if [[ $1 == off ]]; then
1411
1426
  __tt_off_here force
1412
1427
  elif [[ -n $TTHEME_STARTUP ]]; then
1413
- __tt_wear "${TTHEME_PALETTE[$TTHEME_STARTUP]}" "$TTHEME_STARTUP" force || __tt_reload
1428
+ __tt_resume
1414
1429
  fi
1415
1430
  }
1416
1431