-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathwhimsical.ts
More file actions
474 lines (469 loc) · 11.6 KB
/
whimsical.ts
File metadata and controls
474 lines (469 loc) · 11.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
const messages = [
// Short
"Schlepping...",
"Combobulating...",
"Doing...",
"Channelling...",
"Vibing...",
"Concocting...",
"Spelunking...",
"Transmuting...",
"Imagining...",
"Pontificating...",
"Whirring...",
"Cogitating...",
"Honking...",
"Flibbertigibbeting...",
"Noodling...",
"Percolating...",
"Ruminating...",
"Simmering...",
"Marinating...",
"Fermenting...",
"Gestating...",
"Hatching...",
"Brewing...",
"Steeping...",
"Contemplating...",
"Musing...",
"Pondering...",
"Mulling...",
"Daydreaming...",
"Woolgathering...",
"Dithering...",
"Faffing...",
"Puttering...",
"Tinkering...",
"Fiddling...",
"Noodging...",
"Finagling...",
"Wrangling...",
"Jiggling...",
"Wiggling...",
"Shimmying...",
"Galumphing...",
"Perambulating...",
"Meandering...",
"Traipsing...",
"Moseying...",
"Sauntering...",
"Ambling...",
"Pottering...",
"Bumbling...",
"Futzing...",
"Schmalzing...",
"Kerfuffling...",
"Bamboozling...",
"Discombobulating...",
"Recombobulating...",
"Unbefuddling...",
"Defenestrating...",
"Confabulating...",
"Persnicketing...",
"Flummoxing...",
"Befuddling...",
"Snorkeling...",
"Yodeling...",
"Zigzagging...",
"Ricocheting...",
"Somersaulting...",
"Pirouetting...",
"Canoodling...",
"Schmoozing...",
"Kibbitzing...",
"Skedaddling...",
"Scampering...",
"Skittering...",
"Sashaying...",
"Swashbuckling...",
"Oscillating...",
"Undulating...",
"Pulsating...",
"Effervescing...",
"Fizzing...",
"Bubbling...",
"Perplexing...",
"Mystifying...",
"Enchanting...",
"Bewitching...",
"Beguiling...",
"Mesmerizing...",
"Bedazzling...",
"Sparkling...",
"Glittering...",
"Scintillating...",
"Coruscating...",
"Phosphorescing...",
"Luminescing...",
"Sublimating...",
"Synthesizing...",
"Amalgamating...",
"Procrastinating...",
"Dillydallying...",
"Lollygagging...",
"Dawdling...",
"Malingering...",
"Skulking...",
"Lurking...",
"Sleuthing...",
"Rummaging...",
"Fossicking...",
"Foraging...",
"Scavenging...",
"Absquatulating...",
"Vamoosing...",
"Absconding...",
"Grooving...",
"Jamming...",
"Improvising...",
"Extemporizing...",
"Freestyling...",
"Frolicking...",
"Gamboling...",
"Blorping...",
"Flonking...",
"Snurfling...",
"Whomping...",
"Zorping...",
"Biffing...",
"Splunging...",
"Thwacking...",
"Gonkulating...",
"Splorfing...",
"Wibbling...",
"Wobbling...",
"Squonking...",
"Plonking...",
"Bonking...",
"Zonking...",
"Flumping...",
"Clomping...",
"Squelching...",
"Schlurping...",
"Glurping...",
"Burbling...",
"Gurgling...",
"Splooshing...",
"Whooshing...",
"Swooshing...",
"Kerplunking...",
"Thunking...",
"Clunking...",
"Clanking...",
"Rattling...",
"Jostling...",
"Rustling...",
"Bustling...",
"Hustling...",
"Miffing...",
"Boffing...",
"Snazzifying...",
"Pizzazzing...",
"Razzmatazzing...",
"Bedoodling...",
"Doodling...",
"Scribbling...",
"Squiggling...",
"Wriggling...",
"Niggling...",
"Higgling...",
"Piggling...",
"Figgling...",
"Gibbering...",
"Jabbering...",
"Blathering...",
"Blithering...",
"Withering...",
"Slithering...",
"Tethering...",
"Feathering...",
"Weathering...",
"Leathering...",
"Heathering...",
"Smoldering...",
"Moldering...",
"Shouldering...",
"Bouldering...",
"Tottering...",
"Teetering...",
"Tittering...",
"Flittering...",
"Jittering...",
"Frittering...",
"Twittering...",
"Nattering...",
"Chattering...",
"Clattering...",
"Splattering...",
"Battering...",
"Scattering...",
"Shattering...",
"Flattering...",
"Pattering...",
"Tattering...",
"Mattering...",
"Yammering...",
"Hammering...",
"Stammering...",
"Clamoring...",
"Glamoring...",
"Enamoring...",
"Shimmering...",
"Glimmering...",
"Brimming...",
"Skimming...",
"Trimming...",
"Primming...",
"Whimming...",
"Humming...",
"Strumming...",
"Thrumming...",
"Drumming...",
"Plumbing...",
"Thumbing...",
"Numbing...",
"Fumbling...",
"Grumbling...",
"Mumbling...",
"Rumbling...",
"Stumbling...",
"Tumbling...",
"Crumbling...",
"Jumbling...",
"Humbling...",
"Bungling...",
"Jungling...",
"Mangling...",
"Wangling...",
"Dangling...",
"Tangling...",
"Jangling...",
"Angling...",
"Struggling...",
"Mingling...",
"Tingling...",
"Jingling...",
"Singling...",
"Ringling...",
"Kingling...",
// Long
"Consulting the void...",
"Asking the electrons...",
"Bribing the compiler...",
"Negotiating with entropy...",
"Whispering to the bits...",
"Tickling the stack...",
"Massaging the heap...",
"Appeasing the garbage collector...",
"Summoning semicolons...",
"Herding pointers...",
"Untangling spaghetti...",
"Polishing the algorithms...",
"Waxing philosophical...",
"Consulting ancient scrolls...",
"Reading tea leaves...",
"Shaking the magic 8-ball...",
"Sacrificing to the demo gods...",
"Warming up the hamsters...",
"Spinning up the squirrels...",
"Caffeinating...",
"Existentially questioning...",
"Having a little think...",
"Stroking chin thoughtfully...",
"Squinting at the problem...",
"Staring into the abyss...",
"Abyss staring back...",
"Achieving enlightenment...",
"Transcending mere computation...",
"Ascending to a higher plane...",
"Communing with the machine spirit...",
"Performing arcane rituals...",
"Invoking elder functions...",
"Consulting the oracle...",
"Divining the answer...",
"Scrying the codebase...",
"Dowsing for bugs...",
"Rearranging deck chairs...",
"Shuffling bits around...",
"Aligning the chakras...",
"Reticulating splines...",
"Reversing the polarity...",
"Calibrating the flux capacitor...",
"Charging the crystals...",
"Tuning the vibrations...",
"Adjusting the cosmic frequency...",
"Waiting for a sign...",
"Hoping for the best...",
"Manifesting solutions...",
"Willing it into existence...",
"Believing really hard...",
"Politely asking the CPU...",
"Bribing the runtime...",
"Flirting with the database...",
"Sweet-talking the API...",
"Negotiating with deadlines...",
"Having words with the cache...",
"Reasoning with the memory...",
"Pleading with the logs...",
"Bargaining with fate...",
"Making offerings to the CI...",
"Praying to the uptime gods...",
"Consulting the rubber duck...",
"Interrogating the stack trace...",
"Cross-examining the debugger...",
"Petitioning the kernel...",
"Lobbying the scheduler...",
"Schmoozing the network...",
"Buttering up the firewall...",
"Wining and dining the servers...",
"Taking the bytes out for lunch...",
"Giving the code a pep talk...",
"Reading the room...",
"Checking under the hood...",
"Kicking the tires...",
"Shaking loose the cobwebs...",
"Dusting off the neurons...",
"Greasing the gears...",
"Oiling the cogs...",
"Winding up the clockwork...",
"Stoking the furnace...",
"Feeding the machine...",
"Watering the logic tree...",
"Pruning the decision branches...",
"Harvesting the outputs...",
"Planting computational seeds...",
"Nurturing the algorithm...",
"Raising the exceptions...",
"Taming wild pointers...",
"Herding cats in memory...",
"Teaching old code new tricks...",
"Whispering sweet nothings to the compiler...",
"Serenading the syntax...",
"Dancing with dependencies...",
"Waltzing through the codebase...",
"Tangoing with type errors...",
"Doing the deployment dance...",
"Having a moment of clarity...",
"Experiencing a flash of insight...",
"Channeling the ancient developers...",
"Receiving transmissions from the cloud...",
"Asking the hamsters to run faster...",
"Convincing the pixels to cooperate...",
"Teaching electrons new tricks...",
"Bribing the byte fairies...",
"Whispering passwords to the void...",
"Negotiating with cosmic rays...",
"Flattering the floating points...",
"Seducing the semicolons...",
"Wooing the while loops...",
"Charming the curly braces...",
"Hypnotizing the hash tables...",
"Mesmerizing the memory banks...",
"Enchanting the error handlers...",
"Bewitching the boolean logic...",
"Spellbinding the stack frames...",
"Hexing the hexadecimals...",
"Jinxing the JSON parsers...",
"Cursing the cache misses...",
"Blessing the build process...",
"Anointing the algorithms...",
"Consecrating the callbacks...",
"Sanctifying the source code...",
"Exorcising the exceptions...",
"Purifying the parameters...",
"Cleansing the closures...",
"Baptizing the binary...",
"Absolving the abstractions...",
"Redeeming the recursion...",
"Forgiving the for loops...",
"Pardoning the pointers...",
"Liberating the lambdas...",
"Emancipating the enums...",
"Freeing the functions...",
"Releasing the references...",
"Unbinding the variables...",
"Untying the type knots...",
"Unraveling the regex...",
"Decoding the mysteries...",
"Cracking the conundrums...",
"Solving the riddles of RAM...",
"Unlocking the secrets of silicon...",
"Discovering hidden semicolons...",
"Unearthing buried bugs...",
"Excavating ancient APIs...",
"Archeologically analyzing the architecture...",
"Fossil hunting in the functions...",
"Spelunking through the stack...",
"Scuba diving in the data...",
"Snorkeling through the streams...",
"Parasailing past the parameters...",
"Hang gliding through the heap...",
"Bungee jumping into the backend...",
"Skydiving through the source...",
"Surfing the syntax waves...",
"Skateboarding down the stack trace...",
"Snowboarding through the schemas...",
"Mountain climbing the modules...",
"Hiking through the headers...",
"Trekking through the trees...",
"Backpacking through the binaries...",
"Camping in the codebase...",
"Glamping in the globals...",
"Picnicking with the processes...",
"Barbecuing the bugs...",
"Roasting the race conditions...",
"Grilling the glitches...",
"Sautéing the syntax errors...",
"Flambéing the failures...",
"Caramelizing the callbacks...",
"Braising the breakpoints...",
"Poaching the pointers...",
"Blanching the branches...",
"Searing the segments...",
"Smoking the subroutines...",
"Curing the code smells...",
"Pickling the packages...",
"Preserving the protocols...",
"Canning the constants...",
"Bottling the buffers...",
"Jarring the JavaScript...",
"Decanting the data structures...",
"Aerating the arrays...",
"Letting the logic breathe...",
"Aging the algorithms gracefully...",
"Maturing the methods...",
"Ripening the results...",
"Seasoning the solutions...",
"Spicing up the specs...",
"Garnishing the getters...",
"Plating the output nicely...",
"Presenting with pizzazz...",
"Adding a dash of elegance...",
"Sprinkling some magic dust...",
"Drizzling debug sauce...",
"Folding in the features...",
"Whisking the widgets...",
"Kneading the namespaces...",
"Rolling out the runtime...",
"Proofing the promises...",
"Letting the dough rise...",
"Baking at 350 kilobytes...",
"Frosting the functions...",
"Decorating the deployment...",
"Icing the interfaces...",
"Glazing the graphics...",
"Topping with tests...",
"Cherry-picking the commits...",
];
function pickRandom(): string {
return messages[Math.floor(Math.random() * messages.length)];
}
export default function (pi: ExtensionAPI) {
pi.on("turn_start", async (_event, ctx) => {
ctx.ui.setWorkingMessage(pickRandom());
});
pi.on("turn_end", async (_event, ctx) => {
ctx.ui.setWorkingMessage(); // Reset for next time
});
}