I’d love if there was a Character Map for NixOS. I’d be happy to help develop one, but I’m not sure where to start as I haven’t done a project like this. Also fairly new to the Nix language. Any ideas about what would be the best way to go about this.
The goal is to be able to see what all the different keys on a keyboard map to. Simply having a list is much better than having nothing. (Seeing a visual map is great, but that’s obviously depends on what desktop environment someone is using.
If you haven’t configured any layout one is chosen automatically. Say you have a 104-key PC layout. There are graphical documents online, but they aren’t complete.
Having lists on the native system seems easy, low data, and necessary. Depending on being able to copy a ‘°’ (for example) weak for a variety of reasons, the first coming to mind is for a system that’s not connected to the web.
I think the point above stands, though, it’s ultimately the same as most any other Linux distro, and doesn’t have much to do with nix or NixOS specifically. If you had a method to get such info on another distro, you can use the same method on NixOS.
NixOS doesn’t really have first-party applications.
gucharmap is likely a program you want—it is what is commonly thought of as a ‘Character Map’, and provides a searchable, offline list of all Unicode characters.
gnome-tecla offers a view of what your keys are bound to, provided you’re using Gnome or similar—on other DEs, they keys may appear blank.
I’ve also heard of kalamine, which I believe will let you create custom mappings and display those mappings in a web browser; but I don’t have experience with it, and the configuration is TOML-based, so you’ll need to read the docs if you want to use it.
Other notes on inserting characters
Depending on being able to copy a ‘°’
To type ° in most desktop environments:
Ctrl+Shift+U, then B,0,Enter
Alternatively, if you have a Compose key enabled:
Compose, o, o
Ctrl+Shift+U will usually let you type any Unicode codepoint, followed by enter.
A compose key lets you make more logical connections:
Compose, ~, n → ñ
Compose, >, = → ≥
In the past, I had rofimoji configured to offer all of Unicode instead of emojis bound to a hotkey.
I haven’t set that back up yet since switching to NixOS, but it was nice being able to search for characters and have recent and commonly-used characters show up in results first.
If you prefer a keyboard-only workflow, it may be worth looking into.