Logo

Developer Blog

Anton Lijcklama à Nijeholt

Dedicated to cultivating engaging and supportive engineering cultures.

Secret Message to the Primeagen

There’s something incredibly satisfying about having a Personal Development Environment (PDE). It’s a stress-free space where you can optimize your workflows without any outside pressure. Today, I decided to dive into the Telescope documentation to explore its features. While browsing, I stumbled upon an intriguing encoded message. The excerpt below will reveal itself when you type :h telescope.theprimeagen:

To The Primeagen:

Cyrnfr ernq guvf uryc znahny orsber pnyyvat zr ng 3 NZ jvgu gryrfpbcr rzretrapvrf. V xabj ynfg gvzr jr fnirq gur ragver fgernzvat vaqhfgel, ohg V unir n lbhat fba jub xrrcf zr hc ng avtug nyy ol uvzfrys. OGJ, unir lbh pbafvqrerq fraqvat culfvpny QIQf sbe znkvzhz dhnyvgl naq rneyl npprff gb arj pbagrag? Vg frrzf yvxr vg pbhyq or n cerggl pbby vqrn.

#FunzryrffFrysCebzbgvba: uggcf://tvguho.pbz/fcbafbef/gwqrievrf

The message seems to be just plain gibberish, but being a fan of puzzles, I couldn’t resist the challenge to decipher it. I wanted to use Neovim itself for this task, drawing inspiration from a book I’m reading called “Practical Vim, Second Edition - Edit Text at the Speed of Thought.” The author recommends a plugin called vim-abolish, which enhances Neovim’s search-and-replace functionality. Since the encoding seemed to be a simple character substitution, vim-abolish looked like the perfect tool for the job. First, I skimmed through the text and noticed an encoded URL at the end. The protocol https:// was encoded as uggcf://. This gave me a good starting point. Using vim-abolish, I created my first replacement query:

vim
%S/{u,g,c,f}/{h,t,p,s}/g

While this only replaced four characters, it was a great start. I continued to scan for new character combinations, stringing them along in vim-abolish to reveal more of the encoded message. After some trial and error, I came up with this Ex command:

vim
%S/{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,x,y,z}/{n,o,p,q,r,s,t,u,v,w,x,y,z,a,b,c,d,e,f,g,h,i,k,l,m}/g

Looking at the sorted input and output characters, I realized the encoded message had been shifted by 13 characters. At this point, I learned that this method of encoding is known as ROT13. Running this Ex command on the full file revealed the secret message addressed to Primeagen in Telescope’s documentation. It turned out to be a humorous note from Neovim contributor TJ DeVries!

To The Primeagen:

Please read this help manual before calling me at 3 AM with telescope emergencies. I know last time we saved the entire streaming industry, but I have a young son who keeps me up at night all by himself. BTW, have you considered sending physical DVDs for maximum quality and early access to new content? It seems like it could be a pretty cool idea.

#ShamelessSelfPromotion: https://github.com/sponsors/twdevries

This little adventure was not only fun but also a great opportunity to experiment with vim-abolish. It’s definitely a tool I’ll keep in my PDE, though I’ll reassess its usefulness in a few months. Decoding hidden messages like this adds a delightful geeky touch to documentation. It’s these small, playful elements that make the coding community so enjoyable to be a part of.

Posted on Aug 10, 2024