[wp-trac] [WordPress Trac] #42725: Introduce gender compatible translation function, and gender user profile field
noreply at wordpress.org
Tue Nov 28 07:50:54 UTC 2017
#42725: Introduce gender compatible translation function, and gender user profile
Reporter: yoavf | Owner:
Type: enhancement | Status: new
Priority: normal | Milestone: Awaiting Review
Component: I18N | Version: trunk
Severity: normal | Keywords: has-patch
For years, the WordPress translators community has needed to resort to
painful compromises for languages with grammatical gender, where women are
often discriminated by default.
From strings like `Lead Developer` to simply `Author` or `Editor`, some
languages will always refer to these as males, regardless of the user
While modern English grammar is exceptionally capable of being gender
neutral, many other languages do not share this trait. Forcing all
languages to adopt a gender-neutral grammar, even when they're not capable
of it, diminishes the appeal of WordPress to non-English speaking users,
especially women - because in almost all languages, pseudo gender-neutral
grammar just uses the male form.
This ticket contains two patches.
1. `gender-to-user-profile.diff` adds a user profile field for users to
select their preferred grammatical gender (or pronoun). The default is
`neutral`. This field was inspired by Facebook's and Wikipedia's field. It
also introduces a `get_current_user_gender()` helper method to retrieve
this field value.
2. `add-new-gender-translation-function.diff`: which adds a `_g()`
function (also previously proposed in #36617 by @bastho), and support for
it in `makepot.php` via an arguably simple prefix context hack, which
makes it compatible with existing translation tool (see notes below about
- I added support in GlotPress for the `_wpg` context prefix via
[https://github.com/GlotPress/GlotPress-WP/pull/855 GP Pull request 855]
and the simple [https://github.com/yoavf/gp-gender gp-gender] plugin, to
make the UI more cohesive.
- The current patches are all fully functional but remain at the proof-of-
concept level. A healthy discussion on the implementation and possible
alternatives are more than welcome.
- For simplicity purposes, `g()` assumes English will remain gender
neutral, and so does only take one string as input. I'm happy to
reconsider and let it have an optional three string input.
- `_gx()` would be trivial to add, `gn()` not so much.
- This proposal is part of my [https://2017.us.wordcamp.org/sessions
/#wcorg-session-4139 WC US 2017 session].
Ticket URL: <https://core.trac.wordpress.org/ticket/42725>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac