pages/_includes/repository/repo_user.liquid
Jiaye Wu 7719863ea0
fix language-not-found issues on repo page with simplified and traditional Chinese (#3015)
The author of github-readme-stats uses the non-standard code "cn" for
simplified Chinese, see
[here](https://github.com/anuraghazra/github-readme-stats?tab=readme-ov-file#available-locales).
While for traditional Chinese the author only provides "zh-tw". The
github-readme-stats functions on repo page will break if the user sets
the site language to ALL variants of Chinese except for zh-tw. This hack
is to make all sub-variants of simplified Chinese fall back to "cn" and
all sub-variants of traditional Chinese fall back to "zh-tw".

This patch fixes the problem and has been tested locally & with GitHub
pages.
2025-02-14 13:16:39 -03:00

35 lines
1.3 KiB
Plaintext

{% assign lang = site.lang | split: '-' | first %}
{% case lang %}
{% when 'pt' %}
{% assign lang = site.lang %}
{% when 'zh' %}
{% assign lang_last = site.lang | split: '-' | last %}
{% case lang_last %}
{% when 'cn', 'sg', 'my', 'hans' %}
{% assign lang = 'cn' %}
{% when 'tw', 'hk', 'mo', 'hant' %}
{% assign lang = 'zh-tw' %}
{% endcase %}
{% comment %} Add a new language using when... if needed {% endcomment %}
{% endcase %}
{% comment %} If you still encounter language-display issues, check the available locale codes in github-readme-stats (different from ISO-639 standard used in your website): https://github.com/anuraghazra/github-readme-stats?tab=readme-ov-file#available-locales {% endcomment %}
<div class="repo p-2 text-center">
<a href="https://github.com/{{ include.username }}">
<img
class="only-light w-100"
alt="{{ include.username }}"
src="https://github-readme-stats.vercel.app/api/?username={{ include.username }}&theme={{ site.repo_theme_light }}&locale={{ lang }}&show_icons=true"
>
<img
class="only-dark w-100"
alt="{{ include.username }}"
src="https://github-readme-stats.vercel.app/api/?username={{ include.username }}&theme={{ site.repo_theme_dark }}&locale={{ lang }}&show_icons=true"
>
</a>
</div>