diff --git a/title.core.inc b/title.core.inc
index 2af63f9..e29f734 100644
--- a/title.core.inc
+++ b/title.core.inc
@@ -41,6 +41,9 @@ function title_entity_info() {
           'label' => t('Title'),
           'description' => '',
         ) + $instance,
+        'additional keys' => array(
+          'format' => 'format',
+        ),
       ),
     ),
     'efq bundle conditions' => TRUE,
@@ -122,12 +125,20 @@ function title_field_term_description_submit($entity_type, $entity, $legacy_fiel
  */
 function title_field_text_sync_get($entity_type, $entity, $legacy_field, $info, $langcode) {
   $value = NULL;
+  $format = 'plain_text';
+  $format_key = $info['additional keys']['format'];
   $field_name = $info['field']['field_name'];
+  // Return values only if there is any available to process for the current
+  // language.
   if (!empty($entity->{$field_name}[$langcode]) && is_array($entity->{$field_name}[$langcode])) {
     $items = $entity->{$field_name}[$langcode];
     $value = !empty($items[0]['value']) ? $items[0]['value'] : NULL;
+    $format = $entity->{$field_name}[$langcode][0]['format'];
   }
-  return array($legacy_field => $value);
+  return array(
+    $legacy_field => $value,
+    $format_key => $format,
+  );
 }
 
 /**
diff --git a/title.module b/title.module
index 8a78716..5adbc93 100644
--- a/title.module
+++ b/title.module
@@ -756,13 +756,10 @@ function title_tokens_alter(array &$replacements, array $context) {
           if (title_field_replacement_enabled($entity_type, $bundle, $legacy_field)) {
             if (isset($context['tokens'][$legacy_field])) {
               $langcode = field_language($entity_type, $entity, $info['field']['field_name'], $langcode);
-              $values = $info['callbacks']['sync_get']($entity_type, $entity, $legacy_field, $info, $langcode);
-              $item = $values[$legacy_field];
+              $item = $info['callbacks']['sync_get']($entity_type, $entity, $legacy_field, $info, $langcode);
               if (!empty($item)) {
-                if (is_array($item)) {
-                  $item = reset($item);
-                }
-                $replacements[$context['tokens'][$legacy_field]] = $item;
+                $title = array_values($item);
+                $replacements[$context['tokens'][$legacy_field]] = check_markup($title[0], $title[1], $langcode);
               }
             }
           }
