Opened 22 months ago

Last modified 12 months ago

#18218 reopened enhancement

Too many similar translation string

Reported by: ramiy Owned by:
Priority: normal Milestone: Awaiting Review
Component: I18N Version: 3.2.1
Severity: normal Keywords: has-patch
Cc: ocean90, r_a_m_i@…, scribu, steveagl, pavelevap@…

Description

WordPress .po/.mo file is too big (3,312 strings). I know that we can't delete strings but we can reduce the file size by merging simmilar strings. WordPress has too many simmilar string. English developers don't notice this but non-english translators are frustrated by this when they have to translate the same string in 2 or 3 different variations.

I suggest to merge simmilar strings, this way will achive two things:

  1. Smaller .po/.mo files.
  2. Easier translation process as there will be less string to translate. I belive 200-300 strings less.

(Check out the bbPress ticket #BB1584 for more information and examples)

Few WordPress examples:


No login ID submitted

  • wp-includes/class-pop3.php:168

no login ID submitted

  • wp-includes/class-pop3.php:115

(change n->N)


You are not allowed to post as this user.

  • wp-admin/includes/post.php:65

You are not allowed to post as this user

  • wp-includes/class-wp-xmlrpc-server.php:2263

(add '.')


Log out

  • wp-includes/general-template.php:189

Log Out

  • wp-includes/admin-bar.php:92
  • wp-admin/admin-header.php:165

Log out »

  • wp-includes/theme-compat/comments.php:73

Log out of this account

  • wp-includes/theme-compat/comments.php:73

(change all to "Log Out")


Log In

  • wp-includes/general-template.php:261
  • wp-login.php:627
  • wp-login.php:646
  • wp-admin/install.php:144
  • wp-admin/install.php:238

Log in

  • wp-includes/general-template.php:187
  • wp-login.php:419
  • wp-login.php:444
  • wp-login.php:475
  • wp-login.php:531

(change all to "Log In")


E-mail

  • wp-includes/theme-compat/comments-popup.php:80
  • wp-login.php:520
  • wp-admin/user-new.php:229
  • wp-admin/user-new.php:291
  • wp-admin/comment.php:160
  • wp-admin/includes/class-wp-users-list-table.php:165
  • wp-admin/includes/template.php:356
  • wp-admin/user-edit.php:329

Email

  • wp-includes/comment-template.php:1525

E-mail address

  • wp-admin/options-general.php:104
  • wp-admin/options-general.php:123

Your E-mail

  • wp-admin/install.php:128

Attachments (4)

login-logout.patch (3.5 KB) - added by ramiy 22 months ago.
"Log out => Log Out" & "Log in => Log In"
18218.2.patch (2.9 KB) - added by ramiy 22 months ago.
18218.3.patch (1.6 KB) - added by ramiy 22 months ago.
18218.4.patch (40.7 KB) - added by ramiy 22 months ago.

Download all attachments as: .zip

Change History (27)

  • Keywords needs-patch added

class-pop3.php is an external library and should not be modified, according to westi's comment on #15912.

Some other suggestions are valid, I guess.

  • Resolution set to duplicate
  • Status changed from new to closed

Closing as duplicate of #14039.

I believe I will be able to do some work on this during the 3.3 cycle, but we will need a basic style guide first, so that we can be consistent on issues of capitalization etc. (I’m working on that currently.)

  • Keywords needs-patch removed
  • Milestone Awaiting Review deleted

comment:4 follow-up: ↓ 21   ramiy22 months ago

few more strings:


Visit Site

  • wp-includes/admin-bar.php:106
  • wp-includes/admin-bar.php:145
  • wp-admin/admin-header.php:122
  • wp-admin/admin-header.php:142

visit site

  • wp-admin/edit-form-comment.php:109

(change v->V and s->S)


View Post

  • wp-includes/post.php:1183
  • wp-admin/edit.php:196
  • wp-content/plugins/akismet/legacy.php:294

View post

  • wp-admin/press-this.php:600

(change p->P)


View all posts in %s

  • wp-includes/category-template.php:59
  • wp-includes/category-template.php:174
  • wp-includes/category-template.php:177
  • wp-includes/category-template.php:184
  • wp-includes/category-template.php:197
  • wp-includes/category-template.php:200
  • wp-includes/category-template.php:207

View all posts filed under %s

  • wp-includes/category-template.php:837

("filed under"->"in")


View all

  • wp-admin/includes/dashboard.php:129
  • wp-admin/includes/dashboard.php:599

View All

  • wp-admin/includes/nav-menu.php:667
  • wp-admin/includes/nav-menu.php:881

(change a->A)


Unable to locate WordPress Theme directory.

  • wp-admin/includes/class-wp-upgrader.php:47

Unable to locate WordPress theme directory.

  • wp-admin/includes/theme.php:93

(change t->T)


Timezone

  • wp-admin/options-general.php:158

Time Zone

  • wp-includes/class-wp-xmlrpc-server.php:311

Tags: (have following space)

  • wp-includes/category-template.php:1030

Tags: (have no following space)

  • wp-admin/themes.php:123
  • wp-admin/includes/class-wp-themes-list-table.php:193

Sorry, you must be able to edit posts to this site in order to view categories.

  • wp-includes/class-wp-xmlrpc-server.php:957

Sorry, you must be able to edit posts on this site in order to view categories.

  • wp-includes/class-wp-xmlrpc-server.php:3000
  • wp-includes/class-wp-xmlrpc-server.php:3192

(change to->on)


Last edited 22 months ago by ramiy (previous) (diff)

More strings:


Select All

  • wp-includes/js/tinymce/langs/wp-langs.php:150
  • wp-admin/update-core.php:211
  • wp-admin/update-core.php:218
  • wp-admin/update-core.php:284
  • wp-admin/update-core.php:291
  • wp-admin/includes/nav-menu.php:783
  • wp-admin/includes/nav-menu.php:960

Select all

  • wp-includes/js/tinymce/wp-mce-help.php:235

Select a color

  • wp-includes/js/tinymce/langs/wp-langs.php:315

Select a Color

  • wp-admin/custom-header.php:592
  • wp-admin/custom-background.php:298

Save Changes

  • wp-admin/includes/template.php:2202
  • wp-admin/options.php:219

Save all changes

  • wp-admin/includes/media.php:1647
  • wp-admin/includes/media.php:1827
  • wp-admin/includes/media.php:2068
  • wp-admin/media-upload.php:96

Quick Edit

  • wp-admin/includes/class-wp-posts-list-table.php:732
  • wp-admin/includes/class-wp-comments-list-table.php:415
  • wp-admin/includes/class-wp-terms-list-table.php:336

Quick Edit

  • wp-admin/includes/class-wp-posts-list-table.php:543
  • wp-admin/includes/class-wp-comments-list-table.php:415
  • wp-admin/includes/class-wp-terms-list-table.php:260

Posts

  • wp-admin/export.php:131
  • wp-admin/includes/class-wp-users-list-table.php:167
  • wp-admin/includes/class-wp-terms-list-table.php:110
  • wp-admin/menu.php:74

posts

  • wp-admin/options-reading.php:103

Popular Tags

  • wp-includes/taxonomy.php:402

Popular tags

  • wp-admin/includes/plugin-install.php:90

Permalink structure updated.

  • wp-admin/options-permalink.php:142
  • wp-admin/options-permalink.php:145

Permalink structure updated

  • wp-admin/options-permalink.php:137

Password Protected

  • wp-includes/script-loader.php:353

Password protected

  • wp-admin/includes/template.php:1633
  • wp-admin/includes/meta-boxes.php:119
  • wp-admin/includes/meta-boxes.php:144

Parent

  • wp-admin/includes/class-wp-posts-list-table.php:847
  • wp-admin/includes/meta-boxes.php:562
  • wp-admin/includes/meta-boxes.php:563

parent

  • wp-admin/includes/meta-boxes.php:828

Open link in a new window/tab

  • wp-admin/includes/internal-linking.php:85

Open link in a new window

  • wp-includes/js/tinymce/langs/wp-langs.php:346

Separate multiple categories with commas.

  • wp-includes/script-loader.php:297

Separate tags with commas

  • wp-includes/script-loader.php:336
  • wp-includes/taxonomy.php:411

Page IDs, separated by commas.

  • wp-includes/default-widgets.php:78

(can be changed to "Separate multiple with commas." or just "Separate with commas.")


Version 0, edited 22 months ago by ramiy (next)

None

  • wp-includes/deprecated.php:707
  • wp-includes/js/tinymce/langs/wp-langs.php:484
  • wp-admin/includes/media.php:850
  • wp-admin/includes/media.php:944
  • wp-admin/includes/media.php:2131
  • wp-admin/includes/media.php:2147
  • wp-admin/includes/class-wp-users-list-table.php:264
  • wp-admin/edit-tags.php:348
  • wp-admin/edit-tag-form.php:55

none

  • wp-admin/includes/meta-boxes.php:781
  • wp-admin/includes/meta-boxes.php:814
  • wp-admin/includes/meta-boxes.php:837

(change n->N)


No matching users were found.

  • wp-admin/includes/class-wp-users-list-table.php:79

No matching users were found!

  • wp-admin/includes/deprecated.php:524

(change !->.)


No login ID submitted

  • wp-includes/class-pop3.php:168

no login ID submitted

  • wp-includes/class-pop3.php:115

(change n->N)


Next page...

  • wp-includes/js/tinymce/langs/wp-langs.php:471

Next Page »

  • wp-includes/link-template.php:1594
  • wp-includes/link-template.php:1702
  • wp-content/plugins/akismet/legacy.php:260
  • wp-content/plugins/akismet/legacy.php:327

Next page

  • wp-includes/post-template.php:629

Next »

  • wp-includes/general-template.php:1970

Next >

  • wp-includes/script-loader.php:196

Newer version (%s) is installed.

  • wp-admin/includes/theme-install.php:301

Newer Version (%s) Installed

  • wp-admin/includes/plugin-install.php:296

(sould be the same string)


New password

  • wp-login.php:459

New Password

  • wp-admin/user-edit.php:372

(change p->P)


New Category Name

  • wp-includes/taxonomy.php:410

New category name

  • wp-admin/includes/meta-boxes.php:681

(change c->C and n->N)


lookup

  • wp-includes/script-loader.php:83

Lookup

  • wp-admin/plugin-editor.php:231
  • wp-admin/theme-editor.php:235

(change l->L)


Logged in as <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out of this account">Log out?</a>

  • wp-includes/comment-template.php:1536

Logged in as <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out of this account">Log out &raquo;</a>

  • wp-includes/theme-compat/comments-popup.php:71

Loading...

  • wp-admin/press-this.php:417

Loading&#8230;

  • wp-admin/includes/dashboard.php:1038

Link to Image

  • wp-includes/js/tinymce/langs/wp-langs.php:490

Link to image

  • wp-admin/includes/media.php:2148

(change i->I)


Leave a comment

  • wp-includes/theme-compat/comments-popup.php:66

Leave a Comment

  • wp-includes/comment-template.php:1100

(change c->C)


Invalid post type.

  • wp-includes/class-wp-xmlrpc-server.php:2214
  • wp-includes/class-wp-xmlrpc-server.php:2270
  • wp-includes/class-wp-xmlrpc-server.php:2521
  • wp-includes/class-wp-xmlrpc-server.php:2586

Invalid post type

  • wp-admin/edit.php:17
  • wp-admin/post-new.php:17
  • wp-admin/includes/class-wp-posts-list-table.php:56

(add a dot)


Insert Page Break

  • wp-includes/js/tinymce/langs/wp-langs.php:213

Insert Page break

  • wp-includes/js/tinymce/langs/wp-langs.php:468

(change b->B)


fullscreen

  • wp-includes/script-loader.php:89

Fullscreen

  • wp-includes/js/tinymce/langs/wp-langs.php:399

Full Screen

  • wp-includes/js/tinymce/wp-mce-help.php:256

Function Name...

  • wp-admin/theme-editor.php:122

Function Name&hellip;

  • wp-admin/plugin-editor.php:138

Error in restoring from trash...

  • wp-admin/upload.php:108

Error in restoring from Trash.

  • wp-admin/edit.php:97
  • wp-admin/post.php:238

Error in moving to trash...

  • wp-admin/upload.php:98

Error in moving to Trash.

  • wp-admin/edit.php:84
  • wp-admin/post.php:225

Error in deleting...

  • wp-admin/edit.php:113
  • wp-admin/edit.php:116
  • wp-admin/upload.php:118

Error in deleting.

  • wp-admin/post.php:254
  • wp-admin/post.php:257

Edit your profile

  • wp-admin/admin-header.php:156

Edit My Profile

  • wp-includes/admin-bar.php:91

Edit comment

  • wp-includes/link-template.php:1015
  • wp-admin/edit-comments.php:197
  • wp-admin/edit-comments.php:203
  • wp-admin/includes/dashboard.php:697
  • wp-admin/includes/class-wp-comments-list-table.php:414

Edit Comment

  • wp-admin/comment.php:46
  • wp-admin/edit-form-comment.php:16
  • wp-admin/edit-form-comment.php:27

(change c->C)


Delete Plugin

  • wp-admin/plugins.php:247

Delete this plugin

  • wp-admin/includes/class-wp-plugins-list-table.php:373
  • wp-admin/includes/class-wp-plugins-list-table.php:382

Close Window

  • wp-admin/press-this.php:600

Close this window.

  • wp-includes/theme-compat/comments-popup.php:108

Allow comments.

  • wp-admin/includes/meta-boxes.php:447

Allow Comments

  • wp-admin/includes/class-wp-posts-list-table.php:926

(change c->C)


Alignment

  • wp-includes/js/tinymce/langs/wp-langs.php:76
  • wp-includes/js/tinymce/langs/wp-langs.php:333
  • wp-admin/includes/media.php:974
  • wp-admin/includes/media.php:2128

Align

  • wp-includes/js/tinymce/langs/wp-langs.php:375

Add New User

  • wp-admin/user-new.php:129
  • wp-admin/user-new.php:265
  • wp-admin/menu.php:213
  • wp-admin/menu.php:215

Add New User (has space in the end)

  • wp-admin/user-new.php:343

(in the second string, we have to remove the space in the end)


Add Existing User

  • wp-admin/user-new.php:226

Add Existing User (has space in the end)

  • wp-admin/user-new.php:258

(in the second string, we have to remove the space in the end)


Last edited 22 months ago by ramiy (previous) (diff)

In total, 52 strings (for now).

ramiy22 months ago

"Log out => Log Out" & "Log in => Log In"

  • Cc r_a_m_i@… added
  • Component changed from General to I18N
  • Keywords has-patch added
  • Resolution duplicate deleted
  • Status changed from closed to reopened
  • Type changed from defect (bug) to enhancement
  • Version set to 3.2.1

ramiy22 months ago

  • Milestone set to Awaiting Review

ramiy22 months ago

ramiy22 months ago

  • Cc scribu added
  • Cc steveagl added

Please remember that every change needs reviewing and testing and you are trying to change a large number of strings here where each one needs checking to ensure the suggested change is correct.

It would be better to focus on fixing strings that make translation hard or impossible than going on a huge drive against duplicate / similar strings like this.

comment:13 follow-up: ↓ 14   ramiy22 months ago

Do you want me to open 50 tickets for each string change? or 50 paches in this ticket?

i can do both.

Last edited 22 months ago by ramiy (previous) (diff)

comment:14 in reply to: ↑ 13   westi22 months ago

Replying to ramiy:

Do you want me to open 50 tickets for each string change? or 50 paches in this ticket?

i can do both.

I would prefer neither.

I think it is more important to focus effort on the strings which are currently impossible for some people to translate. e.g. #13651

For this ticket I would rather you focus on a patch per string you want to consolidate to and also note where the string is used in the UI (especially if it is used in context with other strings).

Peter if you check carefully you will see that most of the strings here need to capitalize a letter, add a dot or remove space. Those are minor changes. Many changes but each is minor.

Another thing I would like to add:

Before we start consolidating similar strings, I believe we should have some basic UI Text guidelines in place, like guidelines on punctuation and on capitalization. For example, what kind of capitalization do we apply to the text of each of the various UI elements we have in the dashboard?

I agree, we need guidelines. either in ticket #14039 or in the wordpress codex.

(but i think that adding a dot or removing spaces, can be done without the guidelines.)

While most of the replacements are valid, there are a couple changes in 18218.4.patch that don't seem neccessary.

Like in class-wp-posts-list-table.php, where we replace a more meaningful string with a more generic one:

title="' . esc_attr( __( 'Edit this item inline' ) ) . '">' . __( 'Quick&nbsp;Edit' ) . '</a>'
title="' . esc_attr( __( 'Quick Edit' ) ) . '">' . __( 'Quick Edit' ) . '</a>'

And we get exactly the same strings in anchor name and title, which is against #16783.

Or in internal-linking.php:

_e( 'Open link in a new window/tab' );
_e( 'Open link in a new window' );

I guess most of the time target="_blank" links are opened in a new tab, not a window.

That's why I believe westi is right about the step-by-step approach.

  • Cc pavelevap@… added

comment:21 in reply to: ↑ 4   ramiy15 months ago

More strings:


You are not allowed to upload files to this site.

  • wp-includes/class-wp-xmlrpc-server.php:2738
  • wp-includes/class-wp-xmlrpc-server.php:4211

You do not have permission to upload files.

  • wp-includes/class-wp-atom-server.php:523
  • wp-includes/class-wp-atom-server.php:704

Sorry, you do not have permission to upload files.

  • wp-includes/class-wp-atom-server.php:502

Sorry, this user can not edit the template

  • wp-includes/class-wp-xmlrpc-server.php:3100

Sorry, this user cannot edit the template.

  • wp-includes/class-wp-xmlrpc-server.php:3140

(cannot -> can not ; add a dot.)

The above strings fixed in changeset [20215] (ticket #20216).

  • Cc ocean90 added
Note: See TracTickets for help on using tickets.