Add more keywords for improving discoverability on System Settings
Closed, ResolvedPublic

Description

After gathering information about what users think of System Settings, one suggestion was to make search more powerful. A simple way of doing that is to add more keywords to each category, that way we can make sure users find what they need even if they don't know the exact name of the setting they are searching for.

@NayamAmarshe and I have been working on finding new keywords and the online document with them can be seen here:
https://docs.google.com/spreadsheets/d/1ETJtVeJfEMsGdefg1wviV_cz0Laa-G5R_dtbz_ebJBA/edit?usp=sharing

Progress:

  • Find additional keywords for categories

Include keywords in:

  • Check if the changes actually help and if they introduce any problems

Lessons learned:
Edit only X-KDE-Keywords strings, and not the other ones.
No spaces between commas.
en_GB strings are generated automatically, no need to edit those.
The strings are case insensitive.
Prefer writing singular terms instead of plural as substrings don't need to be written explicitly.
No redundant extra lines and white spaces should be added in the file.
Double-check for duplicate terms.

Don't add empty strings for other languages when no keywords are available.

Guilhermems triaged this task as Normal priority.
Guilhermems updated the task description. (Show Details)Sep 1 2021, 3:30 AM
meven added a subscriber: meven.EditedSep 1 2021, 4:38 PM

Other kcms could be reviewed/improved as well, in particular, Kwin, plasma-nm, plasma-pa, baloo

Guilhermems added a comment.EditedSep 3 2021, 7:13 AM

Other kcms could be reviewed/improved as well, in particular, Kwin, plasma-nm, plasma-pa, baloo

We already have new keywords for all settings present in SS (it's in the shared Google document on the task), the problem is that we're not familiar with the KDE repositories. Do you know where the .desktop files for those KCMs you mentioned would be?

Edit: I found the right projects on GitLab. I'll see what I can do.

Guilhermems updated the task description. (Show Details)Sep 4 2021, 12:54 AM
Guilhermems updated the task description. (Show Details)
meven added a comment.Sep 4 2021, 9:36 AM

Other kcms could be reviewed/improved as well, in particular, Kwin, plasma-nm, plasma-pa, baloo

We already have new keywords for all settings present in SS (it's in the shared Google document on the task), the problem is that we're not familiar with the KDE repositories. Do you know where the .desktop files for those KCMs you mentioned would be?

Edit: I found the right projects on GitLab. I'll see what I can do.

The almost exhaustive list of systemsettings kcms :

$ grep -nr "X-KDE-ParentApp=kcontrol" ~/kde/src/
/home/meven/kde/src/plasma-desktop/solid-device-automounter/kcm/device_automounter_kcm.desktop:6:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/keyboard/kcm_keyboard.desktop:10:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/qtquicksettings/qtquicksettings.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/desktoppaths/desktoppath.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/solid_actions/solid-actions.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/spellchecking/spellchecking.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/dateandtime/clock.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/launch/kcm_launchfeedback.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/joystick/joystick.desktop:12:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/ksmserver/package/metadata.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/runners/kcm_plasmasearch.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/kded/kcmkded.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/workspaceoptions/kcm_workspace.desktop:6:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/landingpage/kcm_landingpage.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/keys/kcm_keys.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/users/kcm_users.desktop:6:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/componentchooser/package/metadata.desktop:130:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/input/mouse.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/ksplash/kcm_splashscreen.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/mouse/mouse.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/touchpad/kcm/kcm_touchpad.desktop:11:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/activities/kcm_activities.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/baloo/kcm_baloofile.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-desktop/kcms/access/kcm_access.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kdelibs4support/src/kssl/kcm/kcm_ssl.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/knewstuff/data/kmoretools-desktopfiles/fontinst.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kscreen/kcm/kcm_kscreen.desktop:6:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde-cli-tools/keditfiletype/filetypes.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-nm/kcm/kcm_networkmanagement.desktop:6:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-nm/mobile/wifi/wifisettings.desktop:85:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/systemsettings/examples/native-kcm.txt:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kaccounts-integration/src/kcm/kcm_kaccounts.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/wacomtablet/src/kcmodule/kcm_wacomtablet.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/bluedevil/src/kcmodule/devices/bluedevildevices.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/bluedevil/src/kcmodule/adapters/bluedeviladapters.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/bluedevil/src/kcmodule/global/bluedevilglobal.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/oxygen/kstyle/config/oxygenstyleconfig.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/oxygen/kdecoration/config/oxygendecorationconfig.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kcmutils/autotests/desktopfilekcm/kcmtest.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-pa/src/kcm/package/metadata.desktop:89:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/print-manager/printer-manager-kcm/kcm_printer_manager.desktop:10:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kdeconnect-kde/kcm/kcm_kdeconnect.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwinscripts/kwinscripts.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwinrules/kcm_kwinrules.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwinvirtualkeyboard/kcm_virtualkeyboard.desktop:10:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwindesktop/kcm_kwin_virtualdesktops.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwindecoration/kwindecoration.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwinoptions/kwinoptions.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwintabbox/kwintabbox.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwineffects/kcm_kwin_effects.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwinscreenedges/kwinscreenedges.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwinscreenedges/kwintouchscreen.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kwin/src/kcmkwin/kwincompositing/kwincompositing.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/powerdevil/kcmodule/profiles/powerdevilprofilesconfig.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/powerdevil/kcmodule/global/powerdevilglobalconfig.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/powerdevil/kcmodule/activities/powerdevilactivitiesconfig.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kdf/desktop/kcmdf.desktop:4:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kscreenlocker/kcm/screenlocker.desktop:6:X-KDE-ParentApp=kcontrol
X-KDE-ParentApp=kcontrol/home/meven/kde/src/sddm-kcm/kcm_sddm.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kio/src/ioslaves/trash/kcmtrash.desktop:171:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kio/src/kcms/webshortcuts/webshortcuts.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kio/src/kcms/cookies/cookies.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kio/src/kcms/proxy/proxy.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kio/src/kcms/smb/smb.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kio/src/kcms/netpref/netpref.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/user-manager/src/user_manager.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwinscripts/kwinscripts.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwinrules/kcm_kwinrules.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwinvirtualkeyboard/kcm_virtualkeyboard.desktop:10:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwindesktop/kcm_kwin_virtualdesktops.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwindecoration/kwindecoration.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwinoptions/kwinoptions.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwintabbox/kwintabbox.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwineffects/kcm_kwin_effects.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwinscreenedges/kwinscreenedges.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwinscreenedges/kwintouchscreen.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kwin/src/kcmkwin/kwincompositing/kwincompositing.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/kscreenlocker/kcm/screenlocker.desktop:6:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/breeze/kstyle/config/breezestyleconfig.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/kde/workspace/breeze/kdecoration/config/breezedecorationconfig.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/runners/services/autotests/fixtures/kcm_kwin_virtualdesktops.desktop:9:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/nightcolor/kcm_nightcolor.desktop:10:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/colors/kcm_colors.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/kfontinst/kcmfontinst/fontinst.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/feedback/kcm_feedback.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/notifications/kcm_notifications.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/formats/formats.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/lookandfeel/kcm_lookandfeel.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/translations/kcm_translations.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/autostart/package/metadata.desktop:78:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/fonts/kcm_fonts.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/desktoptheme/kcm_desktoptheme.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/cursortheme/kcm_cursortheme.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/style/kcm_style.desktop:10:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-workspace/kcms/icons/kcm_icons.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/plasma-thunderbolt/src/kcm/kcm_bolt.desktop:7:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/breeze/kstyle/config/breezestyleconfig.desktop:8:X-KDE-ParentApp=kcontrol
/home/meven/kde/src/breeze/kdecoration/config/breezedecorationconfig.desktop:8:X-KDE-ParentApp=kcontrol

I don't expect you to treat all the list, share the list of you have done and what is left to do so others can help ;)
Many of them should have enough Keyword already.

meven updated the task description. (Show Details)Sep 4 2021, 9:37 AM
meven updated the task description. (Show Details)
meven added a comment.Sep 4 2021, 9:41 AM

Quoting https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1026#note_296711

Lessons learned:

Edit only X-KDE-Keywords strings, and not the other ones.
No spaces between commas.
en_GB strings are generated automatically, no need to edit those.
The strings are case insensitive.
Prefer writing singular terms instead of plural as substrings don't need to be written explicitly.
No redundant extra lines and white spaces should be added in the file.
Double-check for duplicate terms.

Worth adding to the description task IMO

Guilhermems updated the task description. (Show Details)Sep 4 2021, 9:03 PM
Guilhermems updated the task description. (Show Details)Sep 5 2021, 11:59 PM
Guilhermems updated the task description. (Show Details)
Guilhermems updated the task description. (Show Details)EditedSep 7 2021, 7:14 PM
Guilhermems updated the task description. (Show Details)

I think I got them all. @meven can you help Nate review the merge requests? The links are in the task description.

Guilhermems updated the task description. (Show Details)Sep 7 2021, 7:59 PM
Guilhermems updated the task description. (Show Details)Sep 7 2021, 8:10 PM
Guilhermems updated the task description. (Show Details)Sep 8 2021, 1:25 AM

Alright! I guess there are no more KCMs to change. If anyone knows some I might've missed feel free to tell me. Now I think the last step should be to test the search function on System Settings and check if the changes actually made searching better or not. I'll close this task when 5.23 is released so we have until then to test.

ngraham closed this task as Resolved.Sep 9 2021, 10:13 PM
ngraham moved this task from Backlog/Planned to Done on the VDG board.
ngraham removed a project: Plasma: KCM Redesign.

I have been testing and it all feels great to me! Great work. I think we can call it fixed right now. If there are any specific individual problems that people can find, we can track those with bug reports.