diff --git a/core/lib/Drupal/Component/Diff/Engine/DiffEngine.php b/core/lib/Drupal/Component/Diff/Engine/DiffEngine.php
index 387c40119ce9226e38d08ebdcae94c4d39e55ef0..805f9c7fde1925262c6629de9ba2a9d3aa8aa726 100644
--- a/core/lib/Drupal/Component/Diff/Engine/DiffEngine.php
+++ b/core/lib/Drupal/Component/Diff/Engine/DiffEngine.php
@@ -19,7 +19,7 @@
  * More ideas are taken from:
  *   http://www.ics.uci.edu/~eppstein/161/960229.html
  *
- * Some ideas are (and a bit of code) are from from analyze.c, from GNU
+ * Some ideas (and a bit of code) are from analyze.c, from GNU
  * diffutils-2.7, which can be found at:
  *   ftp://gnudist.gnu.org/pub/gnu/diffutils/diffutils-2.7.tar.gz
  *
diff --git a/core/lib/Drupal/Core/Config/StorageComparerInterface.php b/core/lib/Drupal/Core/Config/StorageComparerInterface.php
index 180f29a94ef4be2005f60572c4f0f167969e5ae9..293d9db99e56f881cf41e4f8f8b9711387cb6b63 100644
--- a/core/lib/Drupal/Core/Config/StorageComparerInterface.php
+++ b/core/lib/Drupal/Core/Config/StorageComparerInterface.php
@@ -109,7 +109,7 @@ public function moveRenameToUpdate($rename, $collection = StorageInterface::DEFA
    *
    * @return array
    *   An associative array of configuration names. The array keys are
-   *   'old_name' and and 'new_name' representing the old and name configuration
+   *   'old_name' and 'new_name' representing the old and new configuration
    *   object names during a rename operation.
    *
    * @see \Drupal\Core\Config\StorageComparer::createRenameNames()
diff --git a/core/lib/Drupal/Core/Menu/MenuLinkInterface.php b/core/lib/Drupal/Core/Menu/MenuLinkInterface.php
index da5ca39665c78e664f494b71a275a05991a70c49..4722e381fd912077b756253f43787cd4c25abae0 100644
--- a/core/lib/Drupal/Core/Menu/MenuLinkInterface.php
+++ b/core/lib/Drupal/Core/Menu/MenuLinkInterface.php
@@ -131,7 +131,7 @@ public function getRouteParameters();
    *   the description is not empty.
    *
    * @return \Drupal\Core\Url
-   *   A a URL object containing either the external path or route.
+   *   A URL object containing either the external path or route.
    */
   public function getUrlObject($title_attribute = TRUE);
 
diff --git a/core/lib/Drupal/Core/Menu/menu.api.php b/core/lib/Drupal/Core/Menu/menu.api.php
index b37fa61e5a73c6799347ab2fc6356587572abe0c..af33b326c1fdb6d4df7324a47bb55ee35ad836b2 100644
--- a/core/lib/Drupal/Core/Menu/menu.api.php
+++ b/core/lib/Drupal/Core/Menu/menu.api.php
@@ -297,7 +297,7 @@ function hook_menu_links_discovered_alter(&$links) {
  *
  * @param array $data
  *   An associative array containing list of (up to 2) tab levels that contain a
- *   list of of tabs keyed by their href, each one being an associative array
+ *   list of tabs keyed by their href, each one being an associative array
  *   as described above.
  * @param string $route_name
  *   The route name of the page.
diff --git a/core/lib/Drupal/Core/Render/Element/Details.php b/core/lib/Drupal/Core/Render/Element/Details.php
index a7fab35249d07047923898a731a40196074a72e8..afdd445e19fa9556ea5d7be0b2cd686451d9f61d 100644
--- a/core/lib/Drupal/Core/Render/Element/Details.php
+++ b/core/lib/Drupal/Core/Render/Element/Details.php
@@ -13,7 +13,7 @@
  * Provides a render element for a details element, similar to a fieldset.
  *
  * Fieldsets can only be used in forms, while details elements can be used
- * outside of forms.  Users click on the the title to open or close the details
+ * outside of forms. Users click on the title to open or close the details
  * element, showing or hiding the contained elements.
  *
  * Properties:
diff --git a/core/modules/comment/src/Tests/CommentFieldAccessTest.php b/core/modules/comment/src/Tests/CommentFieldAccessTest.php
index c79def25871d3535133dcf73c68fbcfd62daf4e3..e55dbfb033a2b8a1c66cd20d27b2ac47860bbdd4 100644
--- a/core/modules/comment/src/Tests/CommentFieldAccessTest.php
+++ b/core/modules/comment/src/Tests/CommentFieldAccessTest.php
@@ -243,7 +243,7 @@ public function testAccessToAdministrativeFields() {
       foreach ($permutations as $set) {
         $may_view = $set['comment']->{$field}->access('view', $set['user']);
         $may_update = $set['comment']->{$field}->access('edit', $set['user']);
-        // Nobody has access to to view the hostname field.
+        // Nobody has access to view the hostname field.
         if ($field === 'hostname') {
           $view_access = FALSE;
           $state = 'cannot';
diff --git a/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php b/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
index c9d3c31b008823d175e5e4ae67d0a97b9346ae47..4d5765f6ebd62aa7edb8bf0040534c0504fd3c61 100644
--- a/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
+++ b/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
@@ -502,7 +502,7 @@ public function testHasSchema(array $mock_return_values, $expected) {
   }
 
   /**
-   * Provides data for for ConfigMapperTest::testHasSchema().
+   * Provides data for ConfigMapperTest::testHasSchema().
    *
    * @return array
    *   An array of arrays, where each inner array has an array of values that
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationUITestBase.php b/core/modules/content_translation/src/Tests/ContentTranslationUITestBase.php
index 9ed2e462992c3f80620f6abd82b37b57d513d05b..33d936a4643780307104c6d437b23254ba361e63 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationUITestBase.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationUITestBase.php
@@ -455,7 +455,7 @@ protected function getValue(EntityInterface $translation, $property, $langcode)
    *   The entity being tested.
    *
    * @return string
-   *   The the field name.
+   *   The field name.
    */
   protected function getChangedFieldName($entity) {
     return $entity->hasField('content_translation_changed') ? 'content_translation_changed' : 'changed';
diff --git a/core/modules/field/src/Entity/FieldConfig.php b/core/modules/field/src/Entity/FieldConfig.php
index 8e3fba3ce3db78404eb7222a773f9cafb7eed170..8e0e0b489be71d1d19f6c3b764e123bf968538b7 100644
--- a/core/modules/field/src/Entity/FieldConfig.php
+++ b/core/modules/field/src/Entity/FieldConfig.php
@@ -184,7 +184,7 @@ public function preSave(EntityStorageInterface $storage) {
    */
   public function calculateDependencies() {
     parent::calculateDependencies();
-    // Mark the field_storage_config as a a dependency.
+    // Mark the field_storage_config as a dependency.
     $this->addDependency('config', $this->getFieldStorageDefinition()->getConfigDependencyName());
     return $this;
   }
diff --git a/core/modules/image/src/Form/ImageStyleEditForm.php b/core/modules/image/src/Form/ImageStyleEditForm.php
index d17a12958c2fe3348fb92c13ff48b2fc349cb578..b3e7f8e89e0164577e1515a1de3cbcdcee585b94 100644
--- a/core/modules/image/src/Form/ImageStyleEditForm.php
+++ b/core/modules/image/src/Form/ImageStyleEditForm.php
@@ -273,7 +273,7 @@ public function actions(array $form, FormStateInterface $form_state) {
    * Updates image effect weights.
    *
    * @param array $effects
-   *   Associative array with effects having effect uuid as keys and and array
+   *   Associative array with effects having effect uuid as keys and array
    *   with effect data as values.
    */
   protected function updateEffectWeights(array $effects) {
diff --git a/core/modules/node/src/Plugin/Search/NodeSearch.php b/core/modules/node/src/Plugin/Search/NodeSearch.php
index 8861521f52beb54a449cb57cd622aed866983cc2..0fa464ec08c6bdb56ec0e1afd7bce3ef21551910 100644
--- a/core/modules/node/src/Plugin/Search/NodeSearch.php
+++ b/core/modules/node/src/Plugin/Search/NodeSearch.php
@@ -97,7 +97,7 @@ class NodeSearch extends ConfigurableSearchPluginBase implements AccessibleInter
   /**
    * The list of options and info for advanced search filters.
    *
-   * Each entry in the array has the option as the key and and for its value, an
+   * Each entry in the array has the option as the key and for its value, an
    * array that determines how the value is matched in the database query. The
    * possible keys in that array are:
    * - column: (required) Name of the database column to match against.
diff --git a/core/modules/simpletest/simpletest.js b/core/modules/simpletest/simpletest.js
index 8609d90292c9f54f9a4b1f964f476811ed7cd051..dfe5fba3c67a5a8f3fa43eb3bcfd8fa256140b8d 100644
--- a/core/modules/simpletest/simpletest.js
+++ b/core/modules/simpletest/simpletest.js
@@ -83,7 +83,7 @@
    * @type {Drupal~behavior}
    *
    * @prop {Drupal~behaviorAttach} attach
-   *   Attaches the filter behavior the the text input element.
+   *   Attaches the filter behavior to the text input element.
    */
   Drupal.behaviors.simpletestTableFilterByText = {
     attach: function (context) {
diff --git a/core/modules/simpletest/src/BrowserTestBase.php b/core/modules/simpletest/src/BrowserTestBase.php
index e15078ca56396029c419d4e20f206c5d81790c53..db7cd9a7ff68052a09f395a0940adb66edf6f533 100644
--- a/core/modules/simpletest/src/BrowserTestBase.php
+++ b/core/modules/simpletest/src/BrowserTestBase.php
@@ -1194,7 +1194,7 @@ protected function prepareRequestForGenerator($clean_urls = TRUE, $override_serv
     $server = array_merge($server, $override_server_vars);
 
     $request = Request::create($request_path, 'GET', array(), array(), array(), $server);
-    // Ensure the the request time is REQUEST_TIME to ensure that API calls
+    // Ensure the request time is REQUEST_TIME to ensure that API calls
     // in the test use the right timestamp.
     $request->server->set('REQUEST_TIME', REQUEST_TIME);
     $this->container->get('request_stack')->push($request);
diff --git a/core/modules/simpletest/src/WebTestBase.php b/core/modules/simpletest/src/WebTestBase.php
index 5b62c50d5dedae3de0da5dc38c76f2db8304c153..4b4d66a3148d10be4e40b7938ef158fafb72dfe6 100644
--- a/core/modules/simpletest/src/WebTestBase.php
+++ b/core/modules/simpletest/src/WebTestBase.php
@@ -2921,7 +2921,7 @@ protected function prepareRequestForGenerator($clean_urls = TRUE, $override_serv
     $server = array_merge($server, $override_server_vars);
 
     $request = Request::create($request_path, 'GET', array(), array(), array(), $server);
-    // Ensure the the request time is REQUEST_TIME to ensure that API calls
+    // Ensure the request time is REQUEST_TIME to ensure that API calls
     // in the test use the right timestamp.
     $request->server->set('REQUEST_TIME', REQUEST_TIME);
     $this->container->get('request_stack')->push($request);
diff --git a/core/modules/system/src/Tests/Block/SystemMenuBlockTest.php b/core/modules/system/src/Tests/Block/SystemMenuBlockTest.php
index 25e5dc1f65453af1b9e5977788c194f869571b86..e10a6af85698a3869c85d45cbd0d0e373138fab8 100644
--- a/core/modules/system/src/Tests/Block/SystemMenuBlockTest.php
+++ b/core/modules/system/src/Tests/Block/SystemMenuBlockTest.php
@@ -295,7 +295,7 @@ public function testConfigLevelDepth() {
    * Converts the result of MenuLinkTree::build() in a "menu link ID tree".
    *
    * @param array $build
-   *   The return value of of MenuLinkTree::build()
+   *   The return value of MenuLinkTree::build()
    *
    * @return array
    *   The "menu link ID tree" representation of the given render array.
diff --git a/core/modules/system/src/Tests/Entity/ConfigEntityQueryTest.php b/core/modules/system/src/Tests/Entity/ConfigEntityQueryTest.php
index a854df9f67d36948de6d2272c9836ff8774f2e55..d3b7795502cf653130d84aedeecb5a82b341d335 100644
--- a/core/modules/system/src/Tests/Entity/ConfigEntityQueryTest.php
+++ b/core/modules/system/src/Tests/Entity/ConfigEntityQueryTest.php
@@ -569,7 +569,7 @@ public function testDotted() {
       ->condition('array.level1.level2', 3)
       ->execute();
     $this->assertResults(array('5'));
-    // Make sure that values on the wildcard level do not match if if there are
+    // Make sure that values on the wildcard level do not match if there are
     // sub-keys defined. This must not find anything even if entity 2 has a
     // top-level key number with value 41.
     $this->queryResults = $this->factory->get('config_query_test')
diff --git a/core/modules/system/src/Tests/Entity/ContentEntityChangedTest.php b/core/modules/system/src/Tests/Entity/ContentEntityChangedTest.php
index 6f7e69247ab88b528dfeab10fbb00c90dfc53775..564245b67b1dc6e95b15ab8026bcc9af0719a19b 100644
--- a/core/modules/system/src/Tests/Entity/ContentEntityChangedTest.php
+++ b/core/modules/system/src/Tests/Entity/ContentEntityChangedTest.php
@@ -390,7 +390,7 @@ public function testRevisionChanged() {
 
     $this->assertFalse(
       $this->getRevisionTranslationAffectedFlag($german),
-      'Changed flag of of the German translation is not set for new revision without changes.'
+      'Changed flag of the German translation is not set for new revision without changes.'
     );
 
     $entity->setNewRevision();
diff --git a/core/modules/system/src/Tests/System/TokenReplaceUnitTest.php b/core/modules/system/src/Tests/System/TokenReplaceUnitTest.php
index f89d1fab9f0c32436d1739c226591d8b46debb06..cbffff75d6d6803ec74c9132b570470f0569453d 100644
--- a/core/modules/system/src/Tests/System/TokenReplaceUnitTest.php
+++ b/core/modules/system/src/Tests/System/TokenReplaceUnitTest.php
@@ -70,7 +70,7 @@ public function testClear() {
     // Non-existing token.
     $source .= '[bogus:token]';
 
-    // Replace with with the clear parameter, only the valid token should remain.
+    // Replace with the clear parameter, only the valid token should remain.
     $target = Html::escape($this->config('system.site')->get('name'));
     $result = $this->tokenService->replace($source, array(), array('langcode' => $this->interfaceLanguage->getId(), 'clear' => TRUE));
     $this->assertEqual($target, $result, 'Valid tokens replaced while invalid tokens ignored.');
diff --git a/core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php b/core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php
index c9062afbde4275c13a46f07fb809222ed21a54fd..30c52a9c794c26075656c3614fe0f3eed858d579 100644
--- a/core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php
+++ b/core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php
@@ -153,7 +153,7 @@ public function providerTestCases() {
       // Referenceables containing '_', limited to 3. Expecting 3 limited items
       // ('Xyz_', 'xyabz_', 'foo_') and 5 total.
       ['_', 'CONTAINS', 3, 3, ['Xyz_', 'xyabz_', 'foo_'], 6],
-      // Referenceables ending with with 'z_', limited to 3. Expecting 3 limited
+      // Referenceables ending with 'z_', limited to 3. Expecting 3 limited
       // items ('Xyz_', 'xyabz_', 'baz_') and 4 total.
       ['z_', 'ENDS_WITH', 3, 3, ['Xyz_', 'xyabz_', 'baz_'], 4],
       // Referenceables identical with 'xyabz_', no limit. Expecting 1 item
diff --git a/core/modules/user/src/Tests/UserTokenReplaceTest.php b/core/modules/user/src/Tests/UserTokenReplaceTest.php
index 5a472f453ecd42ffa8a9777afd6352f2b5f6d1a4..b7877d879bd76d74b9236e2a959a0cff8f718919 100644
--- a/core/modules/user/src/Tests/UserTokenReplaceTest.php
+++ b/core/modules/user/src/Tests/UserTokenReplaceTest.php
@@ -157,7 +157,7 @@ function testUserTokenReplacement() {
     foreach ($tests as $input => $expected) {
       foreach (array($user1, $user2) as $account) {
         $output = $token_service->replace($input, ['user' => $account], ['langcode' => 'de', 'callback' => 'user_mail_tokens', 'clear' => TRUE]);
-        $this->assertTrue(strpos($output, $link) === 0, "Generated URL in in the requested language.");
+        $this->assertTrue(strpos($output, $link) === 0, "Generated URL in the requested language.");
       }
     }
 
diff --git a/core/modules/views/src/Plugin/views/pager/SqlBase.php b/core/modules/views/src/Plugin/views/pager/SqlBase.php
index 0372bd6f0c50481c2a989ec846b384dc49f59552..854018c3fb60a7492181643093cd74760e35aad6 100644
--- a/core/modules/views/src/Plugin/views/pager/SqlBase.php
+++ b/core/modules/views/src/Plugin/views/pager/SqlBase.php
@@ -140,7 +140,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     $form['expose']['items_per_page_options_all'] = array(
       '#type' => 'checkbox',
-      '#title' => $this->t('Allow user to to display all items'),
+      '#title' => $this->t('Allow user to display all items'),
       '#default_value' => $this->options['expose']['items_per_page_options_all'],
     );
 
diff --git a/core/modules/views/views.theme.inc b/core/modules/views/views.theme.inc
index 8990584a9d543b4b6f5db610bc7d5bc5a06aca6d..96d4c7ba0ced595e6c9b4cb662fd31020071ecc2 100644
--- a/core/modules/views/views.theme.inc
+++ b/core/modules/views/views.theme.inc
@@ -998,7 +998,7 @@ function template_preprocess_views_mini_pager(&$variables) {
     $variables['items']['next']['attributes'] = new Attribute();
   }
 
-  // This is is based on the entire current query string. We need to ensure
+  // This is based on the entire current query string. We need to ensure
   // cacheability is affected accordingly.
   $variables['#cache']['contexts'][] = 'url.query_args';
 }
diff --git a/sites/default/default.settings.php b/sites/default/default.settings.php
index 6a45d254067e1d2301f6e33982c0a0fa12ea5381..376c57770050cd360c6712116899c177f1d4e488 100644
--- a/sites/default/default.settings.php
+++ b/sites/default/default.settings.php
@@ -446,7 +446,7 @@
 # $settings['allow_authorize_operations'] = FALSE;
 
 /**
- * Default mode for for directories and files written by Drupal.
+ * Default mode for directories and files written by Drupal.
  *
  * Value should be in PHP Octal Notation, with leading zero.
  */