diff --git a/email.module b/email.module
index 57a8201..d7fd5ef 100644
--- a/email.module
+++ b/email.module
@@ -1,6 +1,5 @@
 <?php
 
-
 /**
  * Implements hook_field_info().
  */
@@ -79,6 +78,13 @@ function email_field_formatter_info() {
       'description' => t('Display the email address as plain text.'),
       'field types' => array('email'),
     ),
+    'email_text' => array(
+      'label' => t('Arbitrary text'),
+      'description' => t('Display the linked email address with user configured text.'),
+      'field types' => array('email'),
+      'settings' => array('display_text' => 'Email'),
+    ),
+
   );
   if (module_exists('spamspan')) {
     $formats += array(
@@ -90,7 +96,30 @@ function email_field_formatter_info() {
   }
   return $formats;
 }
+function email_field_formatter_settings_form($field, $instance, $view_mode, $form, &$form_state) {
+  $display = $instance['display'][$view_mode];
+  $settings = $display['settings'];
+  $element['display_text'] = array(
+    '#title' => t('Display text'),
+    '#type' => 'textfield',
+    '#default_value' => $settings['display_text'],
+  );
 
+  return $element;
+}
+/**
+ * Implements hook_field_formatter_settings_summary().
+ */
+function email_field_formatter_settings_summary($field, $instance, $view_mode) {
+  $display = $instance['display'][$view_mode];
+  $settings = $display['settings'];
+  $summary = array();
+
+  if ($display['type'] == 'email_text') {
+    $summary = array('Link Text: ' .$settings['display_text']);
+  }
+  return implode('<br />', $summary);
+}
 /**
  * Implements hook_field_formatter_view().
  */
@@ -119,6 +148,12 @@ function email_field_formatter_view($object_type, $object, $field, $instance, $l
       }
       break;
 
+    case 'email_text':
+      foreach ($items as $delta => $item) {
+        $element[$delta] = array('#markup' => $output = l($display['settings']['display_text'], 'mailto:' . $item['email']));
+      }
+      break;
+
     case 'email_spamspan':
       foreach ($items as $delta => $item) {
         if (module_exists('spamspan')) {
