diff --git a/core/includes/install.core.inc b/core/includes/install.core.inc
index 81b9b6a..c29638f 100644
--- a/core/includes/install.core.inc
+++ b/core/includes/install.core.inc
@@ -1610,7 +1610,7 @@ function install_configure_form($form, &$form_state, &$install_state) {
   // We add these strings as settings because JavaScript translation does not
   // work on install time.
   drupal_add_js(array('copyFieldValue' => array('edit-site-mail' => array('edit-account-mail'))), 'setting');
-  // Add JS to show / hide the 'Email administrator about site updates' elements
+  // Add JS to show/hide the 'E-mail administrator about site updates' elements
   drupal_add_js('jQuery(function () { Drupal.hideEmailAdministratorCheckbox() });', 'inline');
 
   // Cache a fully-built schema. This is necessary for any invocation of
@@ -1981,7 +1981,7 @@ function install_configure_form_submit($form, &$form_state) {
   if ($form_state['values']['update_status_module'][1]) {
     module_enable(array('file', 'update'), FALSE);
 
-    // Add the site maintenance account's email address to the list of
+    // Add the site maintenance account's e-mail address to the list of
     // addresses to be notified when updates are available, if selected.
     if ($form_state['values']['update_status_module'][2]) {
       config('update.settings')->set('notification.emails', array($form_state['values']['account']['mail']))->save();
diff --git a/core/includes/mail.inc b/core/includes/mail.inc
index e9778d8..afb7b0f 100644
--- a/core/includes/mail.inc
+++ b/core/includes/mail.inc
@@ -26,7 +26,7 @@ define('MAIL_LINE_ENDINGS', isset($_SERVER['WINDIR']) || strpos($_SERVER['SERVER
  *
  * Finding out what language to send the e-mail with needs some consideration.
  * If you send e-mail to a user, her preferred language should be fine, so
- * use user_preferred_langcode(). If you send email based on form values
+ * use user_preferred_language(). If you send e-mail based on form values
  * filled on the page, there are two additional choices if you are not
  * sending the e-mail to a user on the site. You can either use the language
  * used to generate the page or the site default language. See
@@ -58,7 +58,7 @@ define('MAIL_LINE_ENDINGS', isset($_SERVER['WINDIR']) || strpos($_SERVER['SERVER
  *     switch($key) {
  *       case 'notice':
  *         // If the recipient can receive such notices by instant-message, do
- *         // not send by email.
+ *         // not send by e-mail.
  *         if (example_im_send($key, $message, $params)) {
  *           $message['send'] = FALSE;
  *           break;
diff --git a/core/includes/token.inc b/core/includes/token.inc
index a6f8064..1d6bb26 100644
--- a/core/includes/token.inc
+++ b/core/includes/token.inc
@@ -6,10 +6,10 @@
  *
  * API functions for replacing placeholders in text with meaningful values.
  *
- * For example: When configuring automated emails, an administrator enters
- * standard text for the email. Variables like the title of a node and the date
- * the email was sent can be entered as placeholders like [node:title] and
- * [date:short]. When a Drupal module prepares to send the email, it can call
+ * For example: When configuring automated e-mails, an administrator enters
+ * standard text for the e-mail. Variables like the title of a node and the date
+ * the e-mail was sent can be entered as placeholders like [node:title] and
+ * [date:short]. When a Drupal module prepares to send the e-mail, it can call
  * the token_replace() function, passing in the text. The token system will
  * scan the text for placeholder tokens, give other modules an opportunity to
  * replace them with meaningful text, then return the final product to the
@@ -63,7 +63,7 @@
  *     tokens.
  *   - callback: A callback function that will be used to post-process the array
  *     of token replacements after they are generated. For example, a module
- *     using tokens in a text-only email might provide a callback to strip HTML
+ *     using tokens in a text-only e-mail might provide a callback to strip HTML
  *     entities from token values before they are inserted into the final text.
  *   - clear: A boolean flag indicating that tokens should be removed from the
  *     final text if no replacement value can be generated.
diff --git a/core/modules/comment/comment.tokens.inc b/core/modules/comment/comment.tokens.inc
index c77cb67..aab7d3b 100644
--- a/core/modules/comment/comment.tokens.inc
+++ b/core/modules/comment/comment.tokens.inc
@@ -39,8 +39,8 @@ function comment_token_info() {
     'description' => t("The name left by the comment author."),
   );
   $comment['mail'] = array(
-    'name' => t("Email address"),
-    'description' => t("The email address left by the comment author."),
+    'name' => t("E-mail address"),
+    'description' => t("The e-mail address left by the comment author."),
   );
   $comment['homepage'] = array(
     'name' => t("Home page"),
diff --git a/core/modules/openid/lib/Drupal/openid/Tests/OpenIDRegistrationTest.php b/core/modules/openid/lib/Drupal/openid/Tests/OpenIDRegistrationTest.php
index d556309..bfd8d8c 100644
--- a/core/modules/openid/lib/Drupal/openid/Tests/OpenIDRegistrationTest.php
+++ b/core/modules/openid/lib/Drupal/openid/Tests/OpenIDRegistrationTest.php
@@ -80,7 +80,7 @@ class OpenIDRegistrationTest extends OpenIDTestBase {
     $this->assertFalse($user->data, t('No additional user info was saved.'));
 
     $this->submitLoginForm($identity);
-    $this->assertRaw(t('You must validate your email address for this account before logging in via OpenID.'));
+    $this->assertRaw(t('You must validate your e-mail address for this account before logging in via OpenID.'));
 
     // Follow the one-time login that was sent in the welcome e-mail.
     $this->drupalGet($reset_url);
diff --git a/core/modules/openid/openid.module b/core/modules/openid/openid.module
index 4a9136e..818d0bf 100644
--- a/core/modules/openid/openid.module
+++ b/core/modules/openid/openid.module
@@ -74,7 +74,7 @@ function openid_help($path, $arg) {
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Logging in with OpenID') . '</dt>';
-      $output .= '<dd>' . t("To log in using OpenID, a user must already have an OpenID account. Users can then create site accounts using their OpenID, assign one or more OpenIDs to an existing account, and log in using an OpenID. This lowers the barrier to registration, which helps increase the user base, and offers convenience and security to the users. Because OpenID cannot guarantee a user is legitimate, email verification is still necessary. When logging in, users are presented with the option of entering their OpenID URL, which will look like <em>myusername.openidprovider.com</em>. The site then communicates with the OpenID server, asking it to verify the identity of the user. If the user is logged into their OpenID server, the server communicates back to your site, verifying the user. If they are not logged in, the OpenID server will ask the user for their password. At no point does the site being logged into record the user's OpenID password.") . '</dd>';
+      $output .= '<dd>' . t("To log in using OpenID, a user must already have an OpenID account. Users can then create site accounts using their OpenID, assign one or more OpenIDs to an existing account, and log in using an OpenID. This lowers the barrier to registration, which helps increase the user base, and offers convenience and security to the users. Because OpenID cannot guarantee a user is legitimate, e-mail verification is still necessary. When logging in, users are presented with the option of entering their OpenID URL, which will look like <em>myusername.openidprovider.com</em>. The site then communicates with the OpenID server, asking it to verify the identity of the user. If the user is logged into their OpenID server, the server communicates back to your site, verifying the user. If they are not logged in, the OpenID server will ask the user for their password. At no point does the site being logged into record the user's OpenID password.") . '</dd>';
       $output .= '</dl>';
       return $output;
   }
@@ -718,7 +718,7 @@ function openid_authentication($response) {
       }
     }
     else {
-      drupal_set_message(t('You must validate your email address for this account before logging in via OpenID.'));
+      drupal_set_message(t('You must validate your e-mail address for this account before logging in via OpenID.'));
     }
     // Let other modules act on OpenID login
     module_invoke_all('openid_response', $response, $account);
diff --git a/core/modules/search/search.module b/core/modules/search/search.module
index 315ae7a..4b4c090 100644
--- a/core/modules/search/search.module
+++ b/core/modules/search/search.module
@@ -74,7 +74,7 @@ function search_help($path, $arg) {
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Searching content and users') . '</dt>';
-      $output .= '<dd>' . t('Users with <em>Use search</em> permission can use the search block and <a href="@search">Search page</a>. Users with the <em>View published content</em> permission can search for content containing exact keywords. Users with the <em>View user profiles</em> permission can search for users containing the keyword anywhere in the user name, and users with the <em>Administer users</em> permission can search for users by email address. Additionally, users with <em>Use advanced search</em> permission can find content using more complex search methods and filtering by choosing the <em>Advanced search</em> option on the <a href="@search">Search page</a>.', array('@search' => url('search'))) . '</dd>';
+      $output .= '<dd>' . t('Users with <em>Use search</em> permission can use the search block and <a href="@search">Search page</a>. Users with the <em>View published content</em> permission can search for content containing exact keywords. Users with the <em>View user profiles</em> permission can search for users containing the keyword anywhere in the user name, and users with the <em>Administer users</em> permission can search for users by e-mail address. Additionally, users with <em>Use advanced search</em> permission can find content using more complex search methods and filtering by choosing the <em>Advanced search</em> option on the <a href="@search">Search page</a>.', array('@search' => url('search'))) . '</dd>';
       $output .= '<dt>' . t('Indexing content with cron') . '</dt>';
       $output .= '<dd>' . t('To provide keyword searching, the search engine maintains an index of words found in the content and its fields, along with text added to your content by other modules (such as comments from the core Comment module, and taxonomy terms from the core Taxonomy module). To build and maintain this index, a correctly configured <a href="@cron">cron maintenance task</a> is required. Users with <em>Administer search</em> permission can further configure the cron settings on the <a href="@searchsettings">Search settings page</a>.', array('@cron' => 'http://drupal.org/cron', '@searchsettings' => url('admin/config/search/settings'))) . '</dd>';
       $output .= '<dt>' . t('Content reindexing') . '</dt>';
diff --git a/core/modules/system/system.api.php b/core/modules/system/system.api.php
index 135dc23..c627ee0 100644
--- a/core/modules/system/system.api.php
+++ b/core/modules/system/system.api.php
@@ -120,7 +120,7 @@ function hook_admin_paths_alter(&$paths) {
  * the hook_cron() implementation.
  *
  * Long-running tasks and tasks that could time out, such as retrieving remote
- * data, sending email, and intensive file tasks, should use the queue API
+ * data, sending e-mail, and intensive file tasks, should use the queue API
  * instead of executing the tasks directly. To do this, first define one or
  * more queues via hook_queue_info(). Then, add items that need to be
  * processed to the defined queues.
@@ -1475,9 +1475,9 @@ function hook_image_toolkits() {
 }
 
 /**
- * Alter an email message created with the drupal_mail() function.
+ * Alter an e-mail message created with the drupal_mail() function.
  *
- * hook_mail_alter() allows modification of email messages created and sent
+ * hook_mail_alter() allows modification of e-mail messages created and sent
  * with drupal_mail(). Usage examples include adding and/or changing message
  * text, message fields, and message headers.
  *
@@ -1497,10 +1497,10 @@ function hook_image_toolkits() {
  *     formatting of this string must comply with RFC 2822.
  *  - 'from':
  *     The address the message will be marked as being from, which is
- *     either a custom address or the site-wide default email address.
+ *     either a custom address or the site-wide default e-mail address.
  *  - 'subject':
- *     Subject of the email to be sent. This must not contain any newline
- *     characters, or the email may not be sent properly.
+ *     Subject of the e-mail to be sent. This must not contain any newline
+ *     characters, or the e-mail may not be sent properly.
  *  - 'body':
  *     An array of strings containing the message text. The message body is
  *     created by concatenating the individual array strings into a single text
@@ -1515,7 +1515,7 @@ function hook_image_toolkits() {
  *     The language object used to build the message before hook_mail_alter()
  *     is invoked.
  *  - 'send':
- *     Set to FALSE to abort sending this email message.
+ *     Set to FALSE to abort sending this e-mail message.
  *
  * @see drupal_mail()
  */
@@ -1527,7 +1527,7 @@ function hook_mail_alter(&$message) {
       $message['send'] = FALSE;
       return;
     }
-    $message['body'][] = "--\nMail sent out from " . config('system.site')->get('name');
+    $message['body'][] = "--\nE-mail sent out from " . config('system.site')->get('name');
   }
 }
 
@@ -1970,7 +1970,7 @@ function hook_watchdog(array $log_entry) {
  *     empty array when the hook is invoked.
  *   - from: The address the message will be marked as being from, which is
  *     set by drupal_mail() to either a custom address or the site-wide
- *     default email address when the hook is invoked.
+ *     default e-mail address when the hook is invoked.
  *   - headers: Associative array containing mail headers, such as From,
  *     Sender, MIME-Version, Content-Type, etc. drupal_mail() pre-fills
  *     several headers in this array.
diff --git a/core/modules/system/system.js b/core/modules/system/system.js
index 66fd4f5..6d5f780 100644
--- a/core/modules/system/system.js
+++ b/core/modules/system/system.js
@@ -3,7 +3,7 @@
 "use strict";
 
 /**
- * Show/hide the 'Email site administrator when updates are available' checkbox
+ * Show/hide the 'E-mail site administrator when updates are available' checkbox
  * on the install page.
  */
 Drupal.hideEmailAdministratorCheckbox = function () {
diff --git a/core/modules/system/system.module b/core/modules/system/system.module
index be79ff4..e5c2383 100644
--- a/core/modules/system/system.module
+++ b/core/modules/system/system.module
@@ -832,7 +832,7 @@ function system_menu() {
   );
   $items['admin/config/development/logging'] = array(
     'title' => 'Logging and errors',
-    'description' => "Settings for logging and alerts modules. Various modules can route Drupal's system events to different destinations, such as syslog, database, email, etc.",
+    'description' => "Settings for logging and alerts modules. Various modules can route Drupal's system events to different destinations, such as syslog, database, e-mail, etc.",
     'page callback' => 'drupal_get_form',
     'page arguments' => array('system_logging_settings'),
     'access arguments' => array('administer site configuration'),
@@ -3511,7 +3511,7 @@ function system_action_info() {
 }
 
 /**
- * Return a form definition so the Send email action can be configured.
+ * Returns a form definition so the Send e-mail action can be configured.
  *
  * @param $context
  *   Default values (if we are editing an existing action instance).
@@ -3567,7 +3567,7 @@ function system_send_email_action_validate($form, $form_state) {
   // Validate the configuration form.
   if (!valid_email_address($form_values['recipient']) && strpos($form_values['recipient'], ':mail') === FALSE) {
     // We want the literal %author placeholder to be emphasized in the error message.
-    form_set_error('recipient', t('Enter a valid email address or use a token e-mail address such as %author.', array('%author' => '[node:author:mail]')));
+    form_set_error('recipient', t('Enter a valid e-mail address or use a token e-mail address such as %author.', array('%author' => '[node:author:mail]')));
   }
 }
 
@@ -3624,10 +3624,10 @@ function system_send_email_action($entity, $context) {
   $params = array('context' => $context);
 
   if (drupal_mail('system', 'action_send_email', $recipient, $langcode, $params)) {
-    watchdog('action', 'Sent email to %recipient', array('%recipient' => $recipient));
+    watchdog('action', 'Sent e-mail to %recipient', array('%recipient' => $recipient));
   }
   else {
-    watchdog('error', 'Unable to send email to %recipient', array('%recipient' => $recipient));
+    watchdog('error', 'Unable to send e-mail to %recipient', array('%recipient' => $recipient));
   }
 }
 
diff --git a/core/modules/system/system.tokens.inc b/core/modules/system/system.tokens.inc
index a5e7ad2..d5f471f 100644
--- a/core/modules/system/system.tokens.inc
+++ b/core/modules/system/system.tokens.inc
@@ -36,8 +36,8 @@ function system_token_info() {
     'description' => t("The slogan of the site."),
   );
   $site['mail'] = array(
-    'name' => t("Email"),
-    'description' => t("The administrative email address for the site."),
+    'name' => t("E-mail"),
+    'description' => t("The administrative e-mail address for the site."),
   );
   $site['url'] = array(
     'name' => t("URL"),
diff --git a/core/modules/update/update.module b/core/modules/update/update.module
index 51e77e6..cfbbdf4 100644
--- a/core/modules/update/update.module
+++ b/core/modules/update/update.module
@@ -521,11 +521,12 @@ function update_mail($key, &$message, $params) {
     $message['body'][] = t('You can automatically install your missing updates using the Update manager:', array(), array('langcode' => $langcode)) . "\n" . url('admin/reports/updates/update', array('absolute' => TRUE, 'language' => $language));
   }
   $settings_url = url('admin/reports/updates/settings', array('absolute' => TRUE));
+
   if (config('update.settings')->get('notification.threshold') == 'all') {
-    $message['body'][] = t('Your site is currently configured to send these emails when any updates are available. To get notified only for security updates, !url.', array('!url' => $settings_url));
+    $message['body'][] = t('Your site is currently configured to send these e-mails when any updates are available. To get notified only for security updates, !url.', array('!url' => $settings_url));
   }
   else {
-    $message['body'][] = t('Your site is currently configured to send these emails only when security updates are available. To get notified for any available updates, !url.', array('!url' => $settings_url));
+    $message['body'][] = t('Your site is currently configured to send these e-mails only when security updates are available. To get notified for any available updates, !url.', array('!url' => $settings_url));
   }
 }
 
diff --git a/core/modules/user/user.admin.inc b/core/modules/user/user.admin.inc
index f9b1c23..aca4300 100644
--- a/core/modules/user/user.admin.inc
+++ b/core/modules/user/user.admin.inc
@@ -428,8 +428,8 @@ function user_admin_settings($form, &$form_state) {
   $form['email'] = array(
     '#type' => 'vertical_tabs',
   );
-  // These email tokens are shared for all settings, so just define
-  // the list once to help ensure they stay in sync.
+  // These e-mail tokens are shared for all settings, so just define the list
+  // once to help ensure they stay in sync.
   $email_token_help = t('Available variables are: [site:name], [site:url], [user:name], [user:mail], [site:login-url], [site:url-brief], [user:edit-url], [user:one-time-login-url], [user:cancel-url].');
 
   $form['email_admin_created'] = array(
diff --git a/core/modules/user/user.module b/core/modules/user/user.module
index c57fca2..84aba2a 100644
--- a/core/modules/user/user.module
+++ b/core/modules/user/user.module
@@ -324,7 +324,7 @@ function user_load($uid, $reset = FALSE) {
 }
 
 /**
- * Fetches a user object by email address.
+ * Fetches a user object by e-mail address.
  *
  * @param string $mail
  *   String with the account's e-mail address.
@@ -649,7 +649,7 @@ function user_search_execute($keys = NULL, $conditions = NULL) {
     ->extend('Drupal\Core\Database\Query\PagerSelectExtender');
   $query->fields('users', array('uid'));
   if (user_access('administer users')) {
-    // Administrators can also search in the otherwise private email field.
+    // Administrators can also search in the otherwise private e-mail field.
     $query->fields('users', array('mail'));
     $query->condition(db_or()->
       condition('name', '%' . db_like($keys) . '%', 'LIKE')->
@@ -1851,7 +1851,7 @@ function user_cancel_url($account, $options = array()) {
  * Creates a unique hash value for use in time-dependent per-user URLs.
  *
  * This hash is normally used to build a unique and secure URL that is sent to
- * the user by email for purposes such as resetting the user's password. In
+ * the user by e-mail for purposes such as resetting the user's password. In
  * order to validate the URL, the same hash can be generated again, from the
  * same information, and compared to the hash value from the URL. The URL
  * normally contains both the time stamp and the numeric user ID. The login
@@ -2127,7 +2127,7 @@ function _user_mail_text($key, $langcode = NULL, $variables = array()) {
  *
  * This function is used by the token_replace() call at the end of
  * _user_mail_text() to set up some additional tokens that can be
- * used in email messages generated by user_mail().
+ * used in e-mail messages generated by user_mail().
  *
  * @param $replacements
  *   An associative array variable containing mappings from token names to
@@ -2806,7 +2806,7 @@ function user_preferred_langcode($account, $type = NULL, $default = NULL) {
 }
 
 /**
- * Conditionally create and send a notification email when a certain
+ * Conditionally create and send a notification e-mail when a certain
  * operation happens on the given user account.
  *
  * @see user_mail_tokens()
diff --git a/core/modules/user/user.pages.inc b/core/modules/user/user.pages.inc
index 9dd2cc9..0e06653 100644
--- a/core/modules/user/user.pages.inc
+++ b/core/modules/user/user.pages.inc
@@ -60,7 +60,7 @@ function user_pass() {
 
 function user_pass_validate($form, &$form_state) {
   $name = trim($form_state['values']['name']);
-  // Try to load by email.
+  // Try to load by e-mail.
   $users = entity_load_multiple_by_properties('user', array('mail' => $name, 'status' => '1'));
   $account = reset($users);
   if (!$account) {
diff --git a/core/modules/user/user.tokens.inc b/core/modules/user/user.tokens.inc
index bc37434..adac656 100644
--- a/core/modules/user/user.tokens.inc
+++ b/core/modules/user/user.tokens.inc
@@ -29,8 +29,8 @@ function user_token_info() {
     'description' => t("The login name of the user account."),
   );
   $user['mail'] = array(
-    'name' => t("Email"),
-    'description' => t("The email address of the user account."),
+    'name' => t("E-mail"),
+    'description' => t("The e-mail address of the user account."),
   );
   $user['url'] = array(
     'name' => t("URL"),
