vt_do_diacrit(9)
π vt_do_diacrit(9) β the Kernel API Manual moment
okay so bestie, welcome to vt_do_diacrit(9), a genuine little kernel-API-manual icon β¨ stick around, this one's short but it matters.
β¨ SYNOPSIS β¨
int vt_do_diacrit (unsigned int cmd , void __user *udp , int perm );
like, that's the whole vibe. three args, one int coming back at you π«Ά
π ARGUMENTS π
cmdβ the ioctl request, iykyk. this is the "what do you actually want" of it all.udpβ pointer to user data for the ioctl. userland hands you the goods through here πpermβ the permissions check, already computed by the caller. not your problem, they did the homework πΈ
π¦ DESCRIPTION π¦
So here's the tea: this function updates the diacritical tables, and it does it atomically and safely. No half-updated table era, no cursed in-between state, we simply don't do that here π
And because keypresses can literally arrive at any moment (rude, but okay), it locks the tables against simultaneous keypresses. that's the whole point, that's the slay. your diacritics stay consistent even when the keyboard is being a main character π₯
π SEE ALSO π
Kernel file ./drivers/tty/vt/keyboard.c β go read it, it's giving lore π
and the whole friend group:
vt_get_leds(9)vt_set_led_state(9)vt_kbd_con_start(9)vt_kbd_con_stop(9)vt_do_kdskbmode(9)vt_do_kdskbmeta(9)vt_do_kdgkbmeta(9)vt_reset_unicode(9)vt_get_shift_state(9)vt_reset_keyboard(9)vt_get_kbd_mode_bit(9)vt_set_kbd_mode_bit(9)vt_clr_kbd_mode_bit(9)
mwah π that's the page. this one lives in ./drivers/tty/vt and it's stamped October 2026, so jot that down β fr fr, see you in the next one, bestie πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms