Add "Black Clover & JP Immersion" page

This commit is contained in:
0xdeadbeer 2023-08-15 18:41:03 +02:00
parent 2a41f85bc1
commit b8b82b4fd6
5 changed files with 67 additions and 15 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

BIN
content/images/fist.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

@ -0,0 +1,34 @@
---
title: "Black Clover & Japanese Language Immersion"
date: 2023-08-15T16:49:55+02:00
tags: ["japanese", "language_learning", "sharing", "knowledge"]
---
Today I wanted to share my language learning experience of Black Clover. If you're a fellow learner of the Japanese language and would like to hear some feedback on this anime, this is the post for you.
I should point out that this is my first anime I ever fully watched with Japanese subtitles. And so, big thanks to [Asbplayer](https://github.com/killergerbah/asbplayer) and [Yomichan](https://foosoft.net/projects/yomichan/) for making this possible. Splendid tools for sentence mining.
If you don't know what they are, in short:
- Yomichan is an extension which allows you to highlight Japanese words and show you their dictionary translations (alongside also provides amazing shortcuts for adding the word directly into Anki).
- Asbplayer is an extension which allows you to insert custom subtitle files into a webplayer (also provides handy shortcuts for automatically inserting audio/screenshots into Anki cards)
Not only was watching anime with subtitles suddenly much easier, I could finally do real sentence mining with Anki and extract all the new words I wanted with the shortcuts that the two extensions provided.
![Asbplayer + Yomichan are based](/images/asbplayer_yomi.png)
The whole experience was super fun and engaging enough to make me say "oh come on, one more episode. \*click\*" (this is especially true because at some point I even started getting the jokes)
With all this said, it's totally possible that not everybody will enjoy the anime the same way as I did. Given the preferences, knowledge difference, etc. that we might have. But overall I recommend this anime to anybody who feels that they're at least N4 or better.
Now, what did I get from this anime?
- Roughly 200-300 new words
- Listening and reading skills improved a lot
- Fun
---
One step closer to N1 boys. One day one day.
![\*Bro fist\*](/images/fist.gif)
Wish you a great day, cheers!

View File

@ -7,6 +7,7 @@
</div> </div>
{{- partial "js_paginator.html" . -}} {{- partial "js_paginator.html" . -}}
<script> <script>
const noResFoundStr = '{{ i18n "noResultsFound" | safeJS }}'
function matchTags(page, term) { function matchTags(page, term) {
for (let tag of page.tags) { for (let tag of page.tags) {
if (tag.includes(term)) return true; if (tag.includes(term)) return true;
@ -25,7 +26,7 @@
)); ));
if (articles.length > 0) renderArticles(articles); if (articles.length > 0) renderArticles(articles);
else document.getElementById('postlist').innerHTML = ` else document.getElementById('postlist').innerHTML = `
<h3>{{ i18n "noResultsFound" | safeJS }}</h3> <h3>${noResFoundStr}</h3>
`; `;
}); });
} }

View File

@ -1,7 +1,9 @@
<script> <script>
const tagsStr = '{{ i18n "tags" | safeJS }}'
function renderTags(tags) { function renderTags(tags) {
if (tags.length <= 0) return ''; if (tags.length <= 0) return '';
let res = `| <span title='{{ i18n "tags" | safeJS }}'></span>`; let res = `| <span title=''></span>`;
for (let tag of tags) { for (let tag of tags) {
// regular space // regular space
res += `<a href="/tags/${tag}">#${tag}</a>&#32;`; res += `<a href="/tags/${tag}">#${tag}</a>&#32;`;
@ -13,6 +15,30 @@
return `<a href="${link}"><img src="${image}" alt="${alt}" /></a>`; return `<a href="${link}"><img src="${image}" alt="${alt}" /></a>`;
} }
function renderSingleArticle(article) { function renderSingleArticle(article) {
{{ if (.Site.Params.tagsInArticlePreview | default true) }}
const tags = renderTags(article.tags)
{{ else }}
const tags = ''
{{ end }}
{{ if .Site.Params.imageInArticlePreview }}
const img = renderImage(article.image, article.link, article.imageAlt)
{{ else }}
const img = ''
{{ end }}
{{ if (site.Params.articleSummary | default true) }}
const continueReadingStr = '{{ i18n "continueReading" | safeJS }}'
const summ = `<div class="articlePreview">
<p>${article.summary}</p>
<p><a href="${article.link}">${continueReadingStr} </a></p>
</div>`
{{ else }}
const summ = ''
{{ end }}
const dateStr = '{{ i18n "date" | safeJS }}'
return ` return `
<article class="card postlistitem"> <article class="card postlistitem">
<div> <div>
@ -20,21 +46,12 @@
<a href="${article.link}">${article.title}</a> <a href="${article.link}">${article.title}</a>
</h2> </h2>
<p class="date"> <p class="date">
<span title='{{ i18n "date" | safeJS }}'></span> <span title='${dateStr}'></span>
${article.date} ${article.date}
{{ if (.Site.Params.tagsInArticlePreview | default true) }} ${tags}
${renderTags(article.tags)}
{{ end }}
</p> </p>
{{ if .Site.Params.imageInArticlePreview }} ${img}
${renderImage(article.image, article.link, article.imageAlt)} ${summ}
{{ end }}
{{ if (site.Params.articleSummary | default true) }}
<div class="articlePreview">
<p>${article.summary}</p>
<p><a href="${article.link}">{{ i18n "continueReading" | safeJS }} </a></p>
</div>
{{ end }}
</div> </div>
<hr /> <hr />
</article> </article>