Problem/Motivation
Drupal has a deal with distributions, that they can replace Drupal with their own Distribution name. Also we have a UI text standard
https://www.drupal.org/docs/develop/user-interface-standards/interface-t...
that says:
Use "Site"—not "Drupal". Referring to Drupal by name complicates distributions, and users may not know the site is running on Drupal.
You can also use terms like "the core software".
But Drupal still appears in the UI. Here are some examples:
core/includes/install.core.inc: drupal_set_title(t('Drupal already installed'));
core/includes/install.core.inc: 'description' => t('The installer requires that you create a translations directory as part of the installation process. Create the directory %translations_directory . More details about installing Drupal are available in <a href="@install_txt">INSTALL.txt</a>.', array('%translations_directory' => $translations_directory, '@install_txt' => base_path() . 'core/INSTALL.txt')),
core/includes/install.core.inc: 'description' => t('The @drupal installer requires that you create a settings file as part of the installation process. Copy the %default_file file to %file. More details about installing Drupal are available in <a href="@install_txt">INSTALL.txt</a>.', array('@drupal' => drupal_install_profile_distribution_name(), '%file' => $file, '%default_file' => $default_settings_file, '@install_txt' => base_path() . 'core/INSTALL.txt')),
That last one is interesting, because the first spot says @drupal and replaces it with the distribution name, but later in the same string it uses the word Drupal specifically.
You can find other usage by using a grep command looking for "Drupal" inside of quotes. Here's a grep command that yields some false positives, but should find most/all of what we're looking for:
egrep -i -e "'[^']*[^/\]drupal[^/\]" -e '"[^"]*[^/\]drupal[^/\]' `find . \( -type d -name tests \) -prune -o -type f -print` | grep -i --color drupal
Proposed resolution
Replace Drupal in UI text with the distribution name, or phrases like "the site" and "the core software".
Remaining tasks
Make an issue for each group of modules/themes in the following list, and complete the issues.
Novice task:
- Find a module group in the list that doesn't have an issue yet.
- Click "Add child issue" in the sidebar of this issue to create a child issue.
- Fill in the issue fields:
- Title: No "Drupal" in UI text -- _________
(Replace ___________________ with the group of modules/themes you are working on) - Category: Task
- Version: 9.2.x-dev (or the current latest 9.x development version)
- Component: one of the modules from the list in the group you are creating the issue for
- Issue tags: Novice
- Issue summary -- Replace the default summary with this:
<h3 id="summary-problem-motivation">Problem/Motivation</h3> This is a child issue of [#2144861: [meta] Replace Drupal in UI text with the name of the distribution], for the following modules/components: ______________________________________________. Drupal has a deal with distributions, that they can replace Drupal with their own Distribution name. Also we have a UI text standard https://www.drupal.org/docs/develop/user-interface-standards/interface-text#interface-text-wording that says: <blockquote> Use "Site"—not "Drupal". Referring to Drupal by name complicates distributions, and users may not know the site is running on Drupal. </blockquote> You can also use terms like "the core software". But Drupal still appears in the UI. <h3 id="summary-proposed-resolution">Proposed resolution</h3> Replace Drupal in UI text with the distribution name, or phrases like "the site" and "the core software". <h3 id="summary-remaining-tasks">Remaining tasks</h3> <ol> <li><strong>Novice task</strong> -- Locate the word "Drupal" appearing in UI text in this group of modules/themes. Here's a grep command that yields some false positives, but should find most/all of what we're looking for: egrep -i -e "'[^']*[^/\]drupal[^/\]" -e '"[^"]*[^/\]drupal[^/\]' `find . \( -type d -name tests \) -prune -o -type f -print` | grep -i --color drupal </li> <li><strong>Novice task</strong> -- Replace each occurrence either with "the core software", "the site", or the distribution name. There is a function that will return the distribution name: drupal_install_profile_distribution_name().</li> <li><strong>Novice task</strong> -- Make and upload a patch file, or use an issue fork / merge request workflow.</li> </ol> <h3 id="summary-ui-changes">User interface changes</h3> We will not use the word Drupal in the UI, but instead either show the distribution name or the phrases "the site" or "the core software". <h3 id="summary-api-changes">API changes</h3> None. <h3 id="summary-data-model-changes">Data model changes</h3> None. <h3 id="summary-release-notes">Release notes snippet</h3> Not necessary. - In the beginning of the issue summary, replace _____________________ with the group of modules/themes for this issue.
- Title: No "Drupal" in UI text -- _________
- Save the issue
- Edit the issue summary of this issue to include a link to your new child issue. To make a link to an issue, use a syntax like
[#1234567]replacing the number with the issue number you just created.
- Add a comment to this issue saying you made a child issue and save.
Issues that need to be made or completed
- action
- admin UI-related modules: contextual, help, inline_form_errors, quickedit, settings_tray, shortcut, toolbar, tour
- aggregator
- appearance-related modules: breakpoint, color, layout_builder, layout_discovery
- comment, node, path, taxonomy
- block, block_content
- book
- ckeditor, editor, filter
- config
- contact
- content_moderation, workflows
- field-related modules: datetime, datetime_range, field, field_ui, link, options, telephone, text
- forum
- history, statistics, tracker
- internationalization modules: config_translation, content_translation, locale, language, and translation server parts of installer #2143615: No "Drupal" in UI text -- config_translation, content_translation, locale, language, and translation server parts of installer
- media-related: file, image, media, media_library, responsive_image
- menu_link_content, menu_ui
- migrate, migrate_drupal, migrate_drupal_ui #3187895: No "Drupal" in UI text -- migrate, migrate_drupal, migrate_drupal_ui
- search
- services-related modules: basic_auth, hal, jsonapi, rdf, rest, serialization
- system-related modules: automated_cron, ban, dblog, syslog, system, update, and user
- speed-related modules: big_pipe, dynamic_page_cache, page_cache
- views, views_ui #3187892: No "Drupal" in UI text -- views, views_ui
- core themes
Already done
User interface changes
We will not use the word Drupal in the UI, but instead either show the distribution name or the phrases "the site" or "the core software".
API changes
None.
Comments
Comment #1
yesct commentedoops. left one from tests in. I had taken out the other ones from tests.
Comment #8
avpadernoComment #11
jhodgdonAdding some notes to this.
Comment #12
jhodgdonSeparating this into groups of modules and making explicit Novice tasks.
Comment #13
jhodgdonFix list of child issues.
Comment #14
jhodgdonProposed child issue title is way too long. Streamlining suggestion.
Comment #15
dabley commentedAdded child issue for: views, views_ui
Comment #16
dabley commentedAdded child issue #3187895: No "Drupal" in UI text -- migrate, migrate_drupal, migrate_drupal_ui
Comment #17
dabley commentedHere is a grep command that will find occurrences of "drupal" that are likely to need replacing:
egrep -i -e "'[^']*[^/\]drupal[^/\]" -e '"[^"]*[^/\]drupal[^/\]' `find . \( -type d -name tests \) -prune -o -type f -print` | grep -i --color drupalThis aims to find the word "drupal" inside a string enclosed by single or double quotes. This isn't perfect by any means (occurrences of "drupal" following a quoted string will also be reported, for example), but hopefully everything that might need to be changed will be shown. (I'm assuming that we're not interested in anything that's part of testing.)
Comment #18
jhodgdonThanks, that looks very helpful! It does give some false positives, but better than than missing some things we do need to change. Let's add this to the issue summary.
Also, thanks for making some child issues!
Indeed we do not want to worry about things in tests, although if we change UI text and that text is being tested in a test, we'll have to do a corresponding update in the test. But we'll know that if a patch is uploaded, because it will fail the test.
Comment #19
jhodgdonUh ho, can't use a code tag within a code tag! Fixing summary.
Comment #23
quietone commentedClosed #98905: Remove the word 'Drupal' from interface as a duplicate, adding credit. That issue referenced #182991: Standardize on "internal path" instead of "Drupal path" or "system path" which I am adding as a reference here as well because it also removes Drupal from the user facing text, and has a patch.
Comment #24
catchCopying over my comment from #2143615: No "Drupal" in UI text -- config_translation, content_translation, locale, language, and translation server parts of installer since this is probably the issue to have that discussion (or a policy, no patch spin-off).
This issue was opened in 2013 and it feels a bit like things have moved on since then. IMO we need to rethink the basis for the overall change.
- In 2013, if you installed a distribution, Drupal core would change very little while the distribution might change a lot - until you got to a new major Drupal version which could be years away. Drupal core now has minor releases every six months, and the string changes here obfuscate this a bit. We're really talking about Drupal version and that is meaningful information, not 'site version' which is not really a concept.
For example here:
- If we replaced Drupal with $distribution_name instead of 'site' that might help, but the version of a distribution is not going to match the Drupal core version at all, so it would still be misleading.
- Also I wonder how many distributions actually try to suppress the fact they're built on Drupal?
On top of that, this link goes to localize.drupal.org, so changing the string name doesn't actually help to obfuscate the fact we're running Drupal at all.
Comment #25
catch[duplicate comment]
Comment #26
catchComment #31
xjmSplitting up cleanups like these by modules is explicitly prohibited by the core issue scope guidelines. Issues should be subdivided by the pattern or type of usage, not a module or set of modules.
Please merge these into a single patch; there aren't that many. If unmanageable when combined and split up, the scoping should be based around whether it's in YAML or a
t()call or whatever.Comment #40
xjmI closed the child issues as duplicates. Adding credits for those issues' participants according to core credit guidelines. Thanks!
Comment #41
xjmMarking for an IS update to remove the incorrect scoping recommendations.
Comment #43
xjmComment #44
dabley commentedI guess the core issue scope guidelines may have changed since this issue was created in November 2013. It seems I wasted my time creating those child issues a couple of years ago!
Comment #45
xjm@dabley, yep, around 2014 or 2015 is when we learned hard lessons about the bad things that happen when we scope things by module. Sorry about the wasted time! But hopefully we can merge the three issues together here pretty easily.
Comment #46
dabley commented@xjm, yes I'm sure it makes sense. It was all good practice for me as a beginner with Drupal.