I got my Nvidia GPU before I even considered moving to Linux. I am honestly getting pretty tired of reading these gatekeeping comments telling me "I'm not allowed to complain about anything" or how I'm a trash person for buying an Nvidia card in the first place. Nvidia is the largest GPU manufacter, people are going to own Nvidia cards, you need to live with it. Be constructive and nice to other people.
X11 is rock solid with Nvidia, never had a single problem.
I had a lot of issues with Wayland on KDE, lots of flickering issues all the time. I moved to Hyprland and things are mostly fine. IntelliJ has ocasional problems but they are working on a Wayland version anyways.
Now you can configure the /etc/keyd/default.conf file to your hearts desire. keyd is very feature rich, check the man page to see everything you can do. You can even add layers to your keyboard. Very sweet.
My personal configuration so far (I will definitely expand it later when I bump into more problems)
[ids]
*
[main]
' = oneshotm(apostrophe, ')
[apostrophe]
a = a
b = macro(space backspace apostrophe space b)
c = macro(backspace G-,)
d = macro(space backspace apostrophe space d)
e = e
f = macro(space backspace apostrophe space f)
g = macro(backspace apostrophe space g)
h = macro(space backspace apostrophe space h)
i = i
j = macro(space backspace apostrophe space j)
k = macro(backspace apostrophe space k)
l = macro(backspace apostrophe space l)
m = macro(backspace apostrophe space m)
n = macro(backspace apostrophe space n)
o = o
p = macro(space backspace apostrophe space p)
q = macro(space backspace apostrophe space q)
r = macro(backspace apostrophe space r)
s = macro(backspace apostrophe space s)
t = macro(backspace apostrophe space t)
u = u
v = macro(space backspace apostrophe space v)
w = macro(backspace apostrophe space w)
x = macro(space backspace apostrophe space x)
y = macro(backspace apostrophe space y)
z = macro(backspace apostrophe space z)
After editing /etc/keyd/default.conf make sure you run sudo keyd reload
I had to set a ton more. Without the ozone flags my electron apps flicker and have this sync problem that appears to eat letters while I type them. Different electron apps use different configuration files, it's a mess.
I wouldn't consider my setup to be complex enough for the amount of trouble I had to make the system work under Wayland.
I'm using an Nvidia GPU, I'm sure things would be more streamlined if I had something else.
I'm using an Happy Hacking Keyboard Professional 2. Not most people's cup of tea but I've grown used to it and it's hard for me to swap to anything else now :P
I love US keyboards for coding, it really improves the experience. Typing in portuguese, however, is not a good experience. The default american layout has the ~ key in a really bad spot. Typing à or ã is REALLY uncomfortable/weird. Fortunately, my keyboard has that key on the right side of the keyboard instead of the left, which greatly improves the experience.
The .XCompose file I linked in the main post is perfect and works great on X11. If you're not yet on Wayland you can use it and have a great experience.
Elaborate. How is it not?