I recently changed the long press delay in my Google Keyboard settings to be lower than the default because it has started feeling like it takes too long for the long press symbol or number to come up. I don't know if Google changed the defaults or if I am just imagining it got longer :).
Anyway, after fixing my Google Keyboard settings, which allowed me to choose my own value in milliseconds, I started to feel that the long press touch and hold delay of the whole Android system was too long. It's easy to change in the Android settings by going to Settings > Accessibility > Touch and hold delay. But this only gives you the options Short, Medium, or Long. Even the Short settings feels too long to me. I was hoping there was more settings in the Developer options, but there isn't.
Luckily though it turns out you can change that setting without rooting your device. The name of the setting is called long_press_timeout in the secure namespace and you can change it using adb with a command like
adb shell settings put secure long_press_timeout 250
This will set it to 250ms. You can also check what it is currently by running
adb shell settings get secure long_press_timeout
I found that the value of "Short" is 400ms on Android 11.
You are allowed to set it to 0 if you really want, but that would make every press a long press so I don't recommend that :) You also don't want to set it too low because then the system might think you did a long press when you didn't if it is under heavy load and the timing of whatever is running at the moment is a bit off.
You can get a list of the other settings you can change by running
adb shell settings list secure
Where secure is the namespace to get the settings from. This can also be system or global.