diff --git a/core/modules/views/templates/views-mini-pager.html.twig b/core/modules/views/templates/views-mini-pager.html.twig
new file mode 100644
index 0000000..d72e0c7
--- /dev/null
+++ b/core/modules/views/templates/views-mini-pager.html.twig
@@ -0,0 +1,16 @@
+{#
+/**
+ * @file
+ * Default theme implementation for a views mini-pager.
+ *
+ * Available variables:
+ * - items: An array of pager elements.
+ * - pager: A themed list of pager elements.
+ *
+ * @see template_preprocess()
+ * @see template_preprocess_views_mini_pager()
+ *
+ * @ingroup themeable
+ */
+#}
+{{ pager }}
diff --git a/core/modules/views/views.module b/core/modules/views/views.module
index f1cb911..fa63f02 100644
--- a/core/modules/views/views.module
+++ b/core/modules/views/views.module
@@ -89,7 +89,7 @@ function views_theme($existing, $type, $theme, $path) {
   // Our extra version of pager from pager.inc
   $hooks['views_mini_pager'] = $base + array(
     'variables' => array('tags' => array(), 'quantity' => 10, 'element' => 0, 'parameters' => array()),
-    'pattern' => 'views_mini_pager__',
+    'template' => 'views-mini-pager',
   );
 
   $variables = array(
diff --git a/core/modules/views/views.theme.inc b/core/modules/views/views.theme.inc
index 44f48f6..20c1ff7 100644
--- a/core/modules/views/views.theme.inc
+++ b/core/modules/views/views.theme.inc
@@ -1036,23 +1036,25 @@ function theme_views_form_views_form($variables) {
   return drupal_render_children($form);
 }
 
-function theme_views_mini_pager($vars) {
+/**
+ * Display a views mini-pager.
+ */
+function template_preprocess_views_mini_pager(&$variables) {
   global $pager_page_array, $pager_total;
 
-  $tags = $vars['tags'];
-  $element = $vars['element'];
-  $parameters = $vars['parameters'];
+  $tags = $variables['tags'];
+  $element = $variables['element'];
+  $parameters = $variables['parameters'];
 
   // Current is the page we are currently paged to.
   $pager_current = $pager_page_array[$element] + 1;
-  // End of marker calculations.
 
   $li_previous = array();
   if ($pager_total[$element] > 1 && $pager_page_array[$element] > 0) {
     $li_previous = array(
       '#theme' => 'pager_link__previous',
       '#text' => (isset($tags[1]) ? $tags[1] : t('‹‹')),
-      '#attributes' => array('title' => t('Go to previous page')),
+      '#attributes' => array('title' => t('Go to previous page'))
       '#page_new' => pager_load_array($pager_page_array[$element] - 1, $element, $pager_page_array),
       '#element' => $element,
       '#interval' => 1,
@@ -1065,7 +1067,7 @@ function theme_views_mini_pager($vars) {
     $li_next = array(
       '#theme' => 'pager_link__next',
       '#text' => (isset($tags[3]) ? $tags[3] : t('››')),
-      '#attributes' => array('title' => t('Go to next page')),
+      '#attributes' => array('title' => t('Go to next page'))
       '#page_new' => pager_load_array($pager_page_array[$element] + 1, $element, $pager_page_array),
       '#element' => $element,
       '#interval' => 1,
@@ -1073,6 +1075,7 @@ function theme_views_mini_pager($vars) {
     );
   }
 
+  $items = array();
   $items[] = array(
     '#wrapper_attributes' => array('class' => array('pager-previous')),
   ) + $li_previous;
@@ -1086,13 +1089,13 @@ function theme_views_mini_pager($vars) {
     '#wrapper_attributes' => array('class' => array('pager-next')),
   ) + $li_next;
 
-  return theme('item_list',
-    array(
-      'items' => $items,
-      'title' => NULL,
-      'type' => 'ul',
-      'attributes' => array('class' => array('pager')),
-    )
+  $variables['items'] = $items;
+  $variables['pager'] = array(
+    '#theme' => 'item_list',
+    '#items' => $items,
+    '#title' => NULL,
+    '#type' => 'ul',
+    '#attributes' => array('class' => array('pager')),
   );
 }
 
