vimfn
Updated 2025-01-31T23:48:15+05:30
tl;dr
okay so glad that you asked (or clicked on the link or whatever), this page explains why did I choose the online identity of vimfn
and what does it exactly mean, so let's begin..
vim
partIf you haven't guessed already, the name comes from Vim, or the Vi IMproved text editor. Like most programmers, I started my journey mostly with VSCode until I had to use Vim. I still remember the first time I "actually" needed to bother with it, probably to edit some config on a remote server I had SSH'd into. (I don’t really remember why I didn’t use nano
back then, but if you don’t want to use vim
in a text-based environment, it’s an option. If not ed
, then maybe a more modern and intuitive text editor like micro.)
At that time, I had already come across the ancient meme so many times, so it wasn’t about how to exit Vim, it was about copy-pasting some text from there to the remote host clipboard (yes, yanking!). While most modern terminal emulators have keybinds for it, it didn’t work for me for some reason (what terminal I was using ? i don't even remeber). After some Googling, I managed to get into insert mode, type using those weird h
, j
, k
, l
keybinds, edit the file, and probably copy what I needed. unnamed
and unnamedplus
registers, yes.
Anyway, clipboards have always been weird across different operating systems (you know if you've ever needed tools like xclip
or wl-clipboard
on Linux). Even fasterthanlime talks about clipboards, though in a very different context. It felt super weird back then, the hoops I had to jump through just for simple copy-paste, something that's completely abstracted away for the average VSCode user.
At first, I wondered why someone would use such a weird text editor from the terminal. VSCode had everything and looked so modern. Fast forward to a year later, at the end of high school and before starting university, I had also been watching streams of Primeagen, TJDevries and many other YouTubers who heavily use Vim (Neovim) in their workflow. In that time, I also saw one of my friends customizing and using Neovim (now I know that he was using some nvim distro probably LazyVim), and it looked so good. I felt I should give it a try.
I installed Vim keybindings in my editor (VSCode), and after a few days, I was quite good with the keybindings and ready for the switch, I forced myself to keep using nvim for all sort of projects. Once you understand the basics (and build up the muscle memory with keybinds, :Tutor
is of great help) it is quite easy to move on your own, what helped writing my own config is kickstart.nvim (mine is still a tweaked version of it, and it works well for my need) if you are just starting look into it, it is really well documented, comes with sensibles defaults and fun for the most part to try writing some lua (which also happened to be something I never tried before using neovim), you might also want to read about my workflow if these stuff interests you.
Not sure if I'll try Emacs later in my life, but that's a story for another time.
fn
partNow, after finding the prefix (ie vim
) for my username, I needed something with it as a sufffix cuz why not, finding fn was nothing too dramatic, it was me just working on some rust codebase at that time, and as you know that the fn
keyword is used in rust for declaring new functions, as simple as that, I mixed it with vim and that is how I got my username.