{%- assign _tag_max_size = 1 -%} {%- assign _tag_min_size = 1 -%} {%- assign _tag_cur_size = 1 -%} {%- assign _tags = site.tags | sort -%} {%- for _tag in _tags -%}

{%- assign _tag_cur_size = _tag[1].size -%}
{%- if _tag_cur_size > _tag_max_size -%}
  {%- assign _tag_max_size =  _tag_cur_size -%}
{%- endif -%}
{%- if _tag_cur_size < _tag_min_size -%}
  {%- assign _tag_min_size = _tag_cur_size -%}
{%- endif -%}

{%- endfor -%} {%- assign _tag_gap_size = _tag_max_size | minus: _tag_min_size | plus: 1 | divided_by: 4 -%} {%- if _tag_gap_size < 1 -%}

{%- assign _tag_gap_size = 1 -%}

{%- endif -%} <div class=“site-tags js-tags”>

<ul class="menu">
  <li>
    <button type="button" class="button button--secondary button--pill tag-button tag-button--all" data-encode="">
      Show All<div class="tag-button__count">{{ site.posts | size }}</div>
    </button>
  </li>
  {%- for _tag in _tags -%}
    {%- assign _tag_cur_size = _tag[1].size -%}
    {%- assign _tag_min_1 = _tag_min_size -%}
    {%- assign _tag_max_1 = _tag_min_1 | plus: _tag_gap_size -%}
    {%- assign _tag_min_2 = _tag_max_1 -%}
    {%- assign _tag_max_2 = _tag_min_2 | plus: _tag_gap_size -%}
    {%- assign _tag_min_3 = _tag_max_2 -%}
    {%- assign _tag_max_3 = _tag_min_3 | plus: _tag_gap_size -%}
    {%- assign _tag_min_4 = _tag_max_3 -%}
    {%- assign _tag_max_4 = _tag_min_4 | plus: _tag_gap_size -%}
    {%- if _tag_cur_size >= _tag_min_1 and _tag_cur_size < _tag_max_1 -%}
      {%- assign _c_index = 1 -%}
    {%- elsif _tag_cur_size >= _tag_min_2 and _tag_cur_size < _tag_max_2 -%}
      {%- assign _c_index = 2 -%}
    {%- elsif _tag_cur_size >= _tag_min_3 and _tag_cur_size < _tag_max_3 -%}
      {%- assign _c_index = 3 -%}
    {%- elsif _tag_cur_size >= _tag_min_4 and _tag_cur_size < _tag_max_4 -%}
      {%- assign _c_index = 4 -%}
    {%- else -%}
      {%- assign _c_index = 4 -%}
    {%- endif -%}
    <li><button type="button" class="button button--pill tag-button tag-button-{{ _c_index }}" data-encode="{{ _tag[0] | strip | url_encode }}">
        <span>{{ _tag[0] | strip }}</span><div class="tag-button__count">{{ _tag[1].size }}</div>
      </button>
    </li>
  {%- endfor -%}
</ul>

</div>