Guidance On How One Should Submit An MR To Modify A String That Is Present In Hundreds Of Translation Files

When I filed:

…I noticed that “Open With”'s second word was erroneously capitalised, versus “Points to”:

I expected that submitting a PR to remediate it would be a simple matter, but invent.kde.org/search?group_id=1552&nav_source=navbar&project_id=2729&repository_ref=b75bd4ca0bd66e49545ac8766df4a8b2fa960adb&search=Open+With&search_code=true returns a daunting list of translation files:

How should I go about this? Clone the repository, then find and replace?

Just edit the original string in the source file. Scripty will take care committing changes in po/. See docs/programmers-guide.md · master · Frameworks / Ki18n · GitLab for some of the underlying details.

@mrp, thanks. Though, locating where the relevant string actually is has been difficult, because solely src/widgets/kopenwithdialog.cpp#L557 exists in frameworks/kio, and global search doesn’t appear to be enabled for KDE’s GLCE instance: [1]

Do you happen to know, why the string appears to be defined separately for the window title, and have advice on how one should ascertain where the strings are located? [2]


  1. invent.kde.org/search?search=i18n(%22Open+With%22)&search_code=true ↩︎

  2. chatgpt.com/s/t_6a22dd7b91dc8191b38a2a0a16a1844b [3] ↩︎

  3. chatgpt.com/c/6a22d6f2-adb4-83eb-a9cb-ad568b8188ac ↩︎

You can use the github mirror for searching.

@jinliu, thanks! That was an effort:

However, github.com/search?q=org%3AKDE+%2F%28%3F-i%29Open+With%3A%2F+NOT+path%3A%2F%5C.%28po%7Cpot%29%24%2F&type=code [1] worked:

Though, I’ve since ascertained that, title case is appropriate:

…which is demonstrated in most places:

However, that means that “Points to” and “Hidden items”'s labels shouldn’t be:

Though, I’ve been unable to ascertain where that is located.


  1. chatgpt.com/s/t_6a25bc6986a88191b1f8dfdecba08de1 [2] ↩︎

  2. chatgpt.com/c/6a25bb36-5e28-83eb-b266-6d56b1a68054 ↩︎

Title case seems wrong here. This is a label that comes before a control in a QFormLayout.

In that case, @Herzenschein, would this be reasonable?

diff --git a/src/widgets/kfilepropspluginwidget.ui b/src/widgets/kfilepropspluginwidget.ui
index b0a083b..5554c75 100644
--- a/src/widgets/kfilepropspluginwidget.ui
+++ b/src/widgets/kfilepropspluginwidget.ui
@@ -135,7 +135,7 @@
      <item row="4" column="0">
       <widget class="QLabel" name="defaultHandlerLabel_Left">
        <property name="text">
-        <string>Open With:</string>
+        <string>Open with:</string>
        </property>
        <property name="alignment">
         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>

…and/or would this be better?

diff --git a/src/widgets/kacleditwidget.cpp b/src/widgets/kacleditwidget.cpp
index d091403..cc44bfa 100644
--- a/src/widgets/kacleditwidget.cpp
+++ b/src/widgets/kacleditwidget.cpp
@@ -228,7 +228,7 @@ void KACLListViewItem::repaint()
         icon = QStringLiteral("user-gray");
         break;
     case KACLListView::Group:
-        text = i18nc("UNIX permissions", "Owning Group");
+        text = i18nc("UNIX permissions", "Owning group");
         icon = QStringLiteral("group-gray");
         break;
     case KACLListView::Others:
@@ -403,7 +403,7 @@ EditACLEntryDialog::EditACLEntryDialog(KACLListView *listView,
     gbLayout->addWidget(ownerType);
     m_buttonGroup->addButton(ownerType);
     m_buttonIds.insert(ownerType, KACLListView::User);
-    QRadioButton *owningGroupType = new QRadioButton(i18n("Owning Group"), gb);
+    QRadioButton *owningGroupType = new QRadioButton(i18n("Owning group"), gb);
     owningGroupType->setObjectName(QStringLiteral("owningGroupType"));
     gbLayout->addWidget(owningGroupType);
     m_buttonGroup->addButton(owningGroupType);
diff --git a/src/widgets/kfilepropspluginwidget.ui b/src/widgets/kfilepropspluginwidget.ui
index b0a083b..5554c75 100644
--- a/src/widgets/kfilepropspluginwidget.ui
+++ b/src/widgets/kfilepropspluginwidget.ui
@@ -135,7 +135,7 @@
      <item row="4" column="0">
       <widget class="QLabel" name="defaultHandlerLabel_Left">
        <property name="text">
-        <string>Open With:</string>
+        <string>Open with:</string>
        </property>
        <property name="alignment">
         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>

Yes, both look fine to me

Hairy scary, but I’ve tried:

Thanks, all. Couldn’t have even done something this simple without all of your assistance.