<nav class="pagination is-centered">
    {% if paginator.previous_page %}
    <a href="{{ site.baseurl }}{{ paginator.previous_page_path }}" class="pagination-previous is-info">Previous</a>
    {% else %}
    <p class="pagination-previous" disabled>Previous</p>
    {% endif %}
    {% if paginator.next_page %}
    <a href="{{ site.baseurl }}{{ paginator.next_page_path }}" class="pagination-next is-info">Next</a>
    {% else %}
    <p class="pagination-next" disabled >Next</p>
    {% endif %}
    <ul class="pagination-list">
        {% for page in (1..paginator.total_pages) %}
        {% if page == paginator.page %}
        <li><a class="pagination-link is-current">{{ page }}</a></li>
        {% elsif page == 1 %}
        <li><a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}" class="pagination-link">{{ page }}</a></li>
        {% else %}
        <li><a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: ':num', page }}" class="pagination-link">{{ page }}</a></li>
        {% endif %}
        {% endfor %}
    </ul>
</nav>