Vim bevat een grappige vermelding in de documentatie over een automatisch commando (autocmd) genaamd UserGettingBored. Hoewel de documentatie beweert dat dit event wordt getriggerd wanneer een gebruiker 42 keer dezelfde toets indrukt, is het in werkelijkheid een grap en doet het niets in de standaardsoftware.
De grap werd in juli 2000 geïntroduceerd door Bram Moolenaar en de tekst is in de loop der jaren meerdere keren aangepast. Pas in 2022 heeft ontwikkelaar Mike Smith een officieuze plugin gemaakt die de functionaliteit daadwerkelijk implementeert, waarbij het indrukken van 42 keer dezelfde toets een afbeelding van Samuel L. Jackson triggert.
De UserGettingBored autocmd van Vim
Kort gezegd: Vim heeft een grap van een autocmd genaamd UserGettingBored die niets doet.
Wat is een autocmd?
De functie voor automatische commando's van Vim, meestal afgekort tot "autocmd", stelt je in staat om code uit te voeren wanneer verschillende gebeurtenissen plaatsvinden. Je zou bijvoorbeeld een auto-save-functie kunnen implementeren door de TextChanged-event te koppelen aan het :w-commando.
Vim heeft meer dan 100 gebeurtenissen, variërend van "buffer is aangemaakt" tot "bestand is opgeslagen". Maar één daarvan viel me op: UserGettingBored. Dit is de documentatie:
UserGettingBored: Wanneer de gebruiker 42 keer dezelfde toets indrukt. Grapje! :-)
De realiteit achter de grap
Toen ik dit zag, was ik bezig met iets anders en leidde het me volledig af. "Ik moet hier meer over weten," dacht ik. Dit is wat ik heb gevonden:
Helaas doet het niets. Het bestaat alleen in de documentatie (en in sommige tests). Als je probeert het te gebruiken met iets als autocmd UserGettingBored ..., krijg je een "no such group or event"-foutmelding.
De event is aanwezig in Vim, Neovim en Vim Classic.
De geschiedenis van UserGettingBored
De event werd voor het eerst toegevoegd door Bram Moolenaar in juli 2000, ruim een jaar voordat Vim 6.0 werd uitgebracht. De oorspronkelijke beschrijving was: "Wanneer de gebruiker CTRL-C indrukt. Grapje!". Omdat het toen ook al niets deed, denk ik niet dat het ooit echt heeft gefunctioneerd.
In augustus 2001 voegde hij de smiley toe aan de documentatie. De tekst luidde toen: "Wanneer de gebruiker CTRL-C indrukt. Grapje! :-)".
Twaalf jaar later, in 2013, veranderde de beschrijving naar de huidige versie: "Wanneer de gebruiker 42 keer dezelfde toets indrukt. Grapje! :-)".
Van grap naar functionaliteit
In 2022 creëerde ontwikkelaar Mike Smith een officieuze plugin die geïnspireerd was door deze grap. Als je in de Insert-modus 42 keer dezelfde toets indrukt, verschijnt er een afbeelding van Samuel L. Jackson. 22 jaar later is het eindelijk werkelijkheid geworden.
De UserGettingBored autocmd van Vim
Kort gezegd: Vim heeft een grap van een autocmd genaamd UserGettingBored die niets doet.
Wat is een autocmd?
De functie voor automatische commando's van Vim, meestal afgekort tot "autocmd", stelt je in staat om code uit te voeren wanneer verschillende gebeurtenissen plaatsvinden. Je zou bijvoorbeeld een auto-save-functie kunnen implementeren door de TextChanged-event te koppelen aan het :w-commando.
Vim heeft meer dan 100 gebeurtenissen, variërend van "buffer is aangemaakt" tot "bestand is opgeslagen". Maar één daarvan viel me op: UserGettingBored. Dit is de documentatie:
UserGettingBored: Wanneer de gebruiker 42 keer dezelfde toets indrukt. Grapje! :-)
De realiteit achter de grap
Toen ik dit zag, was ik bezig met iets anders en leidde het me volledig af. "Ik moet hier meer over weten," dacht ik. Dit is wat ik heb gevonden:
Helaas doet het niets. Het bestaat alleen in de documentatie (en in sommige tests). Als je probeert het te gebruiken met iets als autocmd UserGettingBored ..., krijg je een "no such group or event"-foutmelding.
De event is aanwezig in Vim, Neovim en Vim Classic.
De geschiedenis van UserGettingBored
De event werd voor het eerst toegevoegd door Bram Moolenaar in juli 2000, ruim een jaar voordat Vim 6.0 werd uitgebracht. De oorspronkelijke beschrijving was: "Wanneer de gebruiker CTRL-C indrukt. Grapje!". Omdat het toen ook al niets deed, denk ik niet dat het ooit echt heeft gefunctioneerd.
In augustus 2001 voegde hij de smiley toe aan de documentatie. De tekst luidde toen: "Wanneer de gebruiker CTRL-C indrukt. Grapje! :-)".
Twaalf jaar later, in 2013, veranderde de beschrijving naar de huidige versie: "Wanneer de gebruiker 42 keer dezelfde toets indrukt. Grapje! :-)".
Van grap naar functionaliteit
In 2022 creëerde ontwikkelaar Mike Smith een officieuze plugin die geïnspireerd was door deze grap. Als je in de Insert-modus 42 keer dezelfde toets indrukt, verschijnt er een afbeelding van Samuel L. Jackson. 22 jaar later is het eindelijk werkelijkheid geworden.