plugin-gentleman 1.1.1 → 1.1.3

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.
package/ascii-frames.ts CHANGED
@@ -16,8 +16,8 @@ export const eyeNeutralCenter = [
16
16
 
17
17
  export const eyeNeutralUp = [
18
18
  " █████ █████ ", // 27 chars
19
- " ██░░ ██ ██░░░░░██ ", // 27 chars - hollow pupil up
20
- " ██░░░ ░░██ ██░░░░░░░██ ", // 27 chars - hollow pupil up
19
+ " ██░ ░██ ██░░░░░██ ", // 27 chars - hollow pupil up
20
+ " ██░░ ░░██ ██░░░░░░░██ ", // 27 chars - hollow pupil up
21
21
  " ██░░░░░░░██ ██░░░░░░░██ ", // 27 chars
22
22
  "██ ██░░░░░██ ██░░░░░██ ██", // 27 chars
23
23
  ]
@@ -27,7 +27,7 @@ export const eyeNeutralDown = [
27
27
  " ██░░░░░██ ██░░░░░██ ", // 27 chars
28
28
  " ██░░░░░░░██ ██░░░░░░░██ ", // 27 chars
29
29
  " ██░░ ░░██ ██░░░░░░░██ ", // 27 chars - hollow pupil down
30
- "██ ██░░ ░██ ██░░░░░██ ██", // 27 chars - hollow pupil down
30
+ "██ ██░ ░██ ██░░░░░██ ██", // 27 chars - hollow pupil down
31
31
  ]
32
32
 
33
33
  export const eyeNeutralLeft = [
@@ -48,16 +48,16 @@ export const eyeNeutralRight = [
48
48
 
49
49
  export const eyeNeutralUpLeft = [
50
50
  " █████ █████ ", // 27 chars
51
- " ██ ░░██ ██░░░░░██ ", // 27 chars - hollow pupil up-left
52
- " ██ ░░░░░██ ██░░░░░░░██ ", // 27 chars - hollow pupil up-left
51
+ " ██ ░░██ ██░░░░░██ ", // 27 chars - hollow pupil up-left
52
+ " ██ ░░░░██ ██░░░░░░░██ ", // 27 chars - hollow pupil up-left
53
53
  " ██░░░░░░░██ ██░░░░░░░██ ", // 27 chars
54
54
  "██ ██░░░░░██ ██░░░░░██ ██", // 27 chars
55
55
  ]
56
56
 
57
57
  export const eyeNeutralUpRight = [
58
- " █████ █████ ", // 27 chars
59
- " ██░░░░ ██ ██░░░░░██ ", // 27 chars - hollow pupil up-right
60
- " ██░░░░░ ██ ██░░░░░░░██ ", // 27 chars - hollow pupil up-right
58
+ " ██████ █████ ", // 27 chars
59
+ " ██░░░ ██ ██░░░░░██ ", // 27 chars - hollow pupil up-right
60
+ " ██░░░░ ██ ██░░░░░░░██ ", // 27 chars - hollow pupil up-right
61
61
  " ██░░░░░░░██ ██░░░░░░░██ ", // 27 chars
62
62
  "██ ██░░░░░██ ██░░░░░██ ██", // 27 chars
63
63
  ]
@@ -66,16 +66,16 @@ export const eyeNeutralDownLeft = [
66
66
  " █████ █████ ", // 27 chars
67
67
  " ██░░░░░██ ██░░░░░██ ", // 27 chars
68
68
  " ██░░░░░░░██ ██░░░░░░░██ ", // 27 chars
69
- " ██ ░░░░░██ ██░░░░░░░██ ", // 27 chars - hollow pupil down-left
70
- "██ ██ ░░░░██ ██░░░░░██ ██", // 27 chars - hollow pupil down-left
69
+ " ██ ░░░░██ ██░░░░░░░██ ", // 27 chars - hollow pupil down-left
70
+ "██ ██ ░░░██ ██░░░░░██ ██", // 27 chars - hollow pupil down-left
71
71
  ]
72
72
 
73
73
  export const eyeNeutralDownRight = [
74
74
  " █████ █████ ", // 27 chars
75
75
  " ██░░░░░██ ██░░░░░██ ", // 27 chars
76
76
  " ██░░░░░░░██ ██░░░░░░░██ ", // 27 chars
77
- " ██░░░░░ ██ ██░░░░░░░██ ", // 27 chars - hollow pupil down-right
78
- "██ ██░░░░ ██ ██░░░░░██ ██", // 27 chars - hollow pupil down-right
77
+ " ██░░░░ ██ ██░░░░░░░██ ", // 27 chars - hollow pupil down-right
78
+ "██ ██░░░ ██ ██░░░░░██ ██", // 27 chars - hollow pupil down-right
79
79
  ]
80
80
 
81
81
  // Squinted eyes version for busy/expressive state
@@ -107,17 +107,17 @@ export const eyeBlinkClosed = [
107
107
 
108
108
  // Mustache section (all lines padded to 27 chars for alignment)
109
109
  export const mustachiMustacheSection = [
110
- "███████████ ███████████", // 27 chars - perfectly symmetric
111
110
  "████████████ ████████████", // 27 chars - perfectly symmetric
111
+ "█████████████ █████████████", // 27 chars - perfectly symmetric
112
112
  " █████████████████████████ ", // 27 chars - perfectly symmetric
113
- " ▓██████████ ██████████▓ ", // 27 chars - perfectly symmetric
114
- " ▓▓▓▓▓▓▓▓ ▓▓▓▓▓▓▓▓ ", // 27 chars - perfectly symmetric
113
+ " ▓█████████ █████████▓ ", // 27 chars - perfectly symmetric
114
+ " ▓▓▓▓▓▓▓ ▓▓▓▓▓▓▓ ", // 27 chars - perfectly symmetric
115
115
  ]
116
116
 
117
117
  // Tongue animation frames (progressive) - compact design
118
118
  export const tongueFrames = [
119
119
  [], // no tongue
120
- [" ███", " █"], // tongue out
120
+ [" ███", " █"], // tongue out
121
121
  ]
122
122
 
123
123
  // Mustache-only ASCII art for home logo (original massive solid block design)
package/components.tsx CHANGED
@@ -74,7 +74,7 @@ export const SidebarMustachi = (props: { theme: TuiThemeCurrent; config: Cfg; is
74
74
  const randomDir = 1 + Math.floor(Math.random() * (pupilPositionFrames.length - 1))
75
75
  setPupilIndex(randomDir)
76
76
  }
77
- }, 3000)
77
+ }, 3000) // Natural cadence: check every 3s for eye movement
78
78
 
79
79
  onCleanup(() => clearInterval(interval))
80
80
  })
@@ -97,12 +97,12 @@ export const SidebarMustachi = (props: { theme: TuiThemeCurrent; config: Cfg; is
97
97
  }
98
98
 
99
99
  const interval = setInterval(() => {
100
- // Blink more frequently to feel alive (~every 5-6 seconds)
100
+ // Natural blink frequency (~every 5-6 seconds)
101
101
  // 35% chance every 2s = average 5.7s between blinks
102
102
  if (Math.random() < 0.35) {
103
103
  blinkSequence()
104
104
  }
105
- }, 2000)
105
+ }, 2000) // Natural cadence: check every 2s for blink
106
106
 
107
107
  onCleanup(() => clearInterval(interval))
108
108
  })
@@ -172,7 +172,7 @@ export const SidebarMustachi = (props: { theme: TuiThemeCurrent; config: Cfg; is
172
172
  }, 8000)
173
173
  }
174
174
 
175
- // First cycle after 30-45s, then every 45-60s
175
+ // First cycle after 30-45s, then every 45-60s (calm, occasional expressiveness)
176
176
  const firstDelay = 30000 + Math.random() * 15000
177
177
  const firstTimeout = setTimeout(triggerExpressiveCycle, firstDelay)
178
178
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "plugin-gentleman",
4
- "version": "1.1.1",
4
+ "version": "1.1.3",
5
5
  "description": "OpenCode TUI plugin featuring Mustachi - an animated ASCII mascot with eyes, mustache, and optional motivational phrases during busy states",
6
6
  "type": "module",
7
7
  "exports": {