godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
91.07k stars 21.18k forks source link

Keyboard shortcuts are not sorted by their displayed name in Editor Settings #54454

Open Mickeon opened 3 years ago

Mickeon commented 3 years ago

Godot version

3.4-rc2 (git commit hash: 90f8cd89a738316563dac9b133628df6bafe2cb2 I apologise if this is incorrect)

System information

Windows 10

Issue description

Several keyboard shortcuts do not appear sorted properly. This is because all shortcuts are not sorted alphabetically by their displayed name, rather by their internal name.

For example: image "Always show grid" appears out of place in between the "S" letter, but by hovering over the name, it is possible to see that internally, it is called canvas_item_editor/show_grid

Note that this quirk allows some related shortcuts to be visually clumped together, something that can be desirable image This is possible because clear_bones, clear_ik_chain, make_bones, set_ik_chain, show_bones are prefixed with skeleton_, but the displayed string isn't, in any way.

Still, this may feel like a visual oddity to some, when compared to most other existing shortcuts, which are properly sorted alphabetically.

Steps to reproduce

From the top-left, click on "Editor", then "Editor Settings...", then Shortcuts and see for yourself by hovering over.

Minimal reproduction project

No response

Calinou commented 3 years ago

I'm not sure if performing "absolute" sorting by name is a good idea here. Instead, we should look into adding sections to the shortcuts editor in 3.x as was done in master:

image

The shortcut editor implementation in master is entirely different and backwards-incompatible, so it can't be backported to 3.x as-is.

akien-mga commented 3 years ago

Sections would be good indeed but if that's too complex to implement, I think we can leverage the existing "sort by identifier" to actually properly group related settings together.

But given that this is already good in master, maybe it's also fine to just keep it as is for the 3.x branch and avoid breaking compatibility by renaming settings for grouping purposes (though it's probably not a big deal for editor config, and not many users would have customized settings which might end up being renamed for better visual grouping).