1
0

Add a simple language switcher.

This commit is contained in:
Kevin Matsubara 2025-12-22 21:19:52 +01:00
parent d79618e60f
commit d12e7ff9e3
81 changed files with 220 additions and 91 deletions

View File

@ -1,5 +1,6 @@
---
title: About
language: "en"
logosub: About me
---
Nullam imperdiet sodales orci vitae molestie. Nunc quam orci, pharetra a

View File

@ -1,5 +1,6 @@
---
title: Contact
language: "en"
logosub: Not very social
---

7
portfolio/en/index.html Normal file
View File

@ -0,0 +1,7 @@
---
title: Home
logosub: Personal Hakyll weblog
language: "en"
---
$partial("templates/index.html")$

View File

@ -1,4 +1,5 @@
---
language: "en"
title: SMC 2025 - Scale Model Challenge
author: Kevin Matsubara
date: 2025-10-18

View File

@ -1,4 +1,5 @@
---
language: "en"
title: Animecon 2026
author: Kevin Matsubara
date: 2026-04-17

View File

@ -1,4 +1,5 @@
---
language: "en"
title: ScaleWorld 2026
author: Kevin Matsubara
date: 2026-05-31

View File

@ -1,4 +1,5 @@
---
language: "en"
title: SMC 2026 - Scale Model Challenge
author: Kevin Matsubara
date: 2026-10-17

View File

@ -1,4 +1,5 @@
---
language: "en"
title: Spiel 2026
author: Kevin Matsubara
date: 2026-10-22

View File

@ -1,87 +1,7 @@
---
title: Home
logosub: Personal Hakyll weblog
language: "nl"
---
<img src="/images/haskell-logo.png" style="float: right; margin: 10px;" />
<p>Welcome to my blog.</p>
<p>This part of my website is still under construction, please excuse my mess.</p>
<hr/>
<div class="row row-cols-1 row-cols-md-2 row-cols-lg-4 g-4 p-1">
<!-- Japan -->
<div class="col">
<div class="card mt-2" style="width: 128px;">
<a href="/japan.html">
<img src="/images/plamo/model-kits/gundam/hg/smc-2025-gundam/thumbnail.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
</a>
<div class="card-body">
<p class="card-text text-center">Japan</p>
</div>
</div>
</div>
<!-- Plamo -->
<div class="col">
<div class="card mt-2" style="width: 128px;">
<a href="/plamo.html">
<img src="/images/plamo/model-kits/gundam/hg/smc-2025-gundam/thumbnail.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
</a>
<div class="card-body">
<p class="card-text text-center">Plamo</p>
</div>
</div>
</div>
<!-- Radio -->
<div class="col">
<div class="card mt-2" style="width: 128px;">
<a href="/radio.html">
<img src="/images/plamo/model-kits/gundam/hg/smc-2025-gundam/thumbnail.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
</a>
<div class="card-body">
<p class="card-text text-center">Radio</p>
</div>
</div>
</div>
<!-- Software -->
<div class="col">
<div class="card mt-2" style="width: 128px;">
<a href="/software.html">
<img src="/images/plamo/model-kits/gundam/hg/smc-2025-gundam/thumbnail.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
</a>
<div class="card-body">
<p class="card-text text-center">Software</p>
</div>
</div>
</div>
</div>
<hr/>
<div class="row row-cols-1 row-cols-md-2 g-4 p-1">
<div class="col">
<h4>Recent posts</h4>
$partial("templates/recent-posts.html")$
<p>…or you can find more posts in the <a href="/archive.html">archives</a>.</p>
</div>
<div class="col">
<h4>Upcoming events</h4>
$partial("templates/events.html")$
<p>Here you can find more events I attended: <a href="/events.html">events</a>.</p>
</div>
</div>
$partial("templates/index.html")$

7
portfolio/jp/index.html Normal file
View File

@ -0,0 +1,7 @@
---
title: Home
logosub: Personal Hakyll weblog
language: "jp"
---
$partial("templates/index.html")$

7
portfolio/nl/index.html Normal file
View File

@ -0,0 +1,7 @@
---
title: Home
logosub: Personal Hakyll weblog
language: "nl"
---
$partial("templates/index.html")$

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Blue Impulse T-2"
page: "model-kits/airplanes/blue-impulse-t2"
model_name: "Blue Impulse T-2 J.A.S.D.F. Acrobatic Team"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "A6M2 Zero"
page: "model-kits/airplanes/military/a6m2-zero-type-21"
model_name: "A6M2 Zero Type 21"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Kawasaki Ki-100"
page: "model-kits/airplanes/military/kawasaki-ki-100"
model_name: "Kawasaki Ki-100 (Tony)"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Tachikawa Ki-55 trainer"
page: "model-kits/airplanes/military/tachikawa-ki-55-trainer"
model_name: "Tachikawa Ki-55 Type 99 advanced trainer"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "MiG-21F-13"
page: "model-kits/airplanes/military/mig-21f-13"
model_name: "Mikoyan-Gurevich MiG-21F-13 interceptor"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Spitfire"
page: "model-kits/airplanes/military/spitfire-mk-ix"
model_name: "Spitfire mark IX"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Curtiss R3C-0"
page: "model-kits/airplanes/porco-rosso-curtiss-r3c-0"
model_name: "Donald Curtis' Curtiss R3C-0 Fighter Seaplane"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Bulma's Variable No. 19 Motorcycle"
page: "model-kits/dragonball/bulmas-variable-no19-motorcycle"
model_name: "Bulma's Variable No. 19 Motorcycle"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Lunch's One-wheel motorcycle"
page: "model-kits/dragonball/lunch-one-wheel-motorcycle"
model_name: "Vol 3. Lunch's One-wheel motorcycle"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Son Gokou's Jet Buggy"
page: "model-kits/dragonball/son-gokou-jet-buggy"
model_name: "Vol 4. Son Gokou's Jet Buggy"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Lunamaria Hawke"
page: "model-kits/figures/lunamaria-hawke"
model_name: "Lunamaria Hawke"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Miorine Rembran"
page: "model-kits/figures/miorine-rembran"
model_name: "Miorine Rembran"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Suletta Mercury"
page: "model-kits/figures/suletta-mercury"
model_name: "Suletta Mercury"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "GAT-X370 Raider Gundam"
page: "model-kits/gundam/fm/raider-gundam"
model_name: "GAT-X370 Raider Gundam"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "XVX-016 Gundam Aerial"
page: "model-kits/gundam/fm/aerial"
model_name: "XVX-016 Gundam Aerial"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Kawasaki Zaku II"
page: "model-kits/gundam/hg/kawasaki-zaku-ii"
model_name: "MS-06 Zaku II"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "SMC Gundam"
page: "model-kits/gundam/hg/smc-2025-gundam"
model_name: "RX-178 Mk.II"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "AGX-04 Gerbera Tetra"
page: "model-kits/gundam/hg/gerbera-tetra"
model_name: "AGX-04 Gerbera Tetra"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "AMS-129M Zee Zulu"
page: "model-kits/gundam/hg/zee-zulu"
model_name: "AMS-129M Zee Zulu"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "AMX-104 R-Jarja"
page: "model-kits/gundam/hg/r-jarja"
model_name: "AMX-104 R-Jarja"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "MSJ-121 Demi Trainer"
page: "model-kits/gundam/hg/demi-trainer"
model_name: "MSJ-121 Demi Trainer"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Guel's Dilanza"
page: "model-kits/gundam/hg/dilanza-guel"
model_name: "Guel's Dilanza"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "MD-0031 Dilanza"
page: "model-kits/gundam/hg/dilanza-lauda"
model_name: "MD-0031 Dilanza"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "ZGMF-1027M Duel Blitz Gundam"
page: "model-kits/gundam/hg/duel-blitz"
model_name: "ZGMF-1027M Duel Blitz Gundam"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "F/D-19 Zowort"
page: "model-kits/gundam/hg/zowort"
model_name: "F/D-19 Zowort"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Gundam Lfrith"
page: "model-kits/gundam/hg/lfrith"
model_name: "Gundam Lfrith"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "MSM-04G Juaggu"
page: "model-kits/gundam/hg/juaggu"
model_name: "MSM-04G Juaggu"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Nobell Gundam"
page: "model-kits/gundam/hg/nobell-gundam"
model_name: "Nobell Gundam"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Black Knight"
page: "model-kits/gundam/hg/black-knight-shi-ve-a"
model_name: "NOG-M1A1 Black Knight Squad Shi-ve.A"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "NRX-055 Baund Doc"
page: "model-kits/gundam/hg/baund-doc"
model_name: "NRX-055 Baund Doc"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "ORX-005 Gaplant"
page: "model-kits/gundam/hg/gaplant"
model_name: "ORX-005 Gaplant"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "RMS-106 Hi-Zack"
page: "model-kits/gundam/hg/hi-zack"
model_name: "RMS-106 Hi-Zack"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "RX-110 Gabthley"
page: "model-kits/gundam/hg/rx-110-gabthley"
model_name: "RX-110 Gabthley"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Schwarzette"
page: "model-kits/gundam/hg/schwarzette"
model_name: "Schwarzette"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Zeta Gundam limited"
page: "model-kits/gundam/hg/zeta-gundam-gundam-base"
model_name: "MSZ-006-3A Zeta Gundam 3A Type"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "AMS-119 Geara Doga"
page: "model-kits/gundam/mg/geara-doga"
model_name: "AMS-119 Geara Doga"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Force Impulse Gundam"
page: "model-kits/gundam/mg/force-impulse-gundam"
model_name: "ZGMF-X56S Force Impulse Gundam"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Lunamaria Zaku Warrior"
page: "model-kits/gundam/mg/lunamaria-zaku-warrior"
model_name: "ZGMF-1000/A1 Gunner Zaku Warrior - Lunamaria Hawke Custom"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "MS-06S Zaku II"
page: "model-kits/gundam/mg/zaku-ii"
model_name: "MS-06S Zaku II"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "MS-07B Gouf"
page: "model-kits/gundam/mg/gouf"
model_name: "MS-07B Gouf"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "MSM-04 Acguy"
page: "model-kits/gundam/mg/acguy"
model_name: "MSM-04 Acguy"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "OZ-00MS Tallgeese"
page: "model-kits/gundam/mg/tallgeese"
model_name: "OZ-00MS Tallgeese"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "RGM-96X JESTA"
page: "model-kits/gundam/mg/jesta"
model_name: "RGM-96X JESTA"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "RGZ-95 ReZEL"
page: "model-kits/gundam/mg/rezel"
model_name: "RGZ-95 ReZEL"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "RX-78-2"
page: "model-kits/gundam/mg/rx-78-2-gundam-base"
model_name: "RX-78-2"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "RX-78-2"
page: "model-kits/gundam/mg/rx-78-2-ver-ka"
model_name: "RX-78-2"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "SD Gundam Aerial"
page: "model-kits/gundam/sd/aerial"
model_name: "XVX-016 Gundam Aerial"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Raccoon"
page: "model-kits/maschinen-krieger/raccoon"
model_name: "Raccoon S.A.F.S. type R"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Acerby Type-D"
page: "model-kits/other-mecha/30-minute-missions/acerby-type-d"
model_name: "EXM-H15D Acerby Type-D"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Aaronrhino"
page: "model-kits/other-mecha/aaronrhino"
model_name: "Aaronrhino Grady Exclusive"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Riesen-Panzer III"
page: "model-kits/other-mecha/riesen-panzer-3"
model_name: "German Rs.Pz III Ausf.B"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Arcee"
page: "model-kits/other-mecha/transformers/arcee"
model_name: "Arcee"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Ginkei"
page: "model-kits/spacecraft/ginkei"
model_name: "Ikaruga Hitekkai Ginkei"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Space Battleship Yamato"
page: "model-kits/spacecraft/yamato/mc-01-yamato"
model_name: "Mecha Collection No.01 Space battleship Yamato"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Desler's Gun Ship"
page: "model-kits/spacecraft/yamato/mc-29-deslers-gunship"
model_name: "Mecha Collection No.29 Desler's Gun Ship"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Daihatsu Move"
page: "model-kits/vehicles/cars/daihatsu-move"
model_name: "Daihatsu Move CX '95/SR Turbo"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Nissan March AK11 99"
page: "model-kits/vehicles/cars/nissan-march-ak11-99"
model_name: "Nissan March AK11 3 Door G# '99"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Nissan March K11 93"
page: "model-kits/vehicles/cars/nissan-march-k11-93"
model_name: "Nissan March izf '93"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Spähwagen Fennek"
page: "model-kits/vehicles/military/armoured-cars/fennek"
model_name: "Spähwagen Fennek"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Sd.Kfz 222"
page: "model-kits/vehicles/military/armoured-cars/sd-kfz-222"
model_name: "Sd.Kfz 222 Leichter Panzerspähwagen 4x4"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Honda CX500"
page: "model-kits/vehicles/motorcycles/honda-cx500"
model_name: "Honda CX500 Turbo"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Honda Dax"
page: "model-kits/vehicles/motorcycles/honda-dax"
model_name: "Honda Dax 125"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "Lanz Bulldog"
page: "model-kits/vehicles/tractors/lanz-bulldog"
model_name: "Lanz Bulldog D8500 mod.1938"

View File

@ -1,5 +1,6 @@
---
logosub: "Plamo"
language: "en"
title: "US Army Tractor"
page: "model-kits/vehicles/tractors/us-army-tractor"
model_name: "US army Tractor VAI with Field compaction roller"

View File

@ -1,4 +1,5 @@
---
language: "en"
title: New site
author: Kevin Matsubara
date: 2025-12-14

View File

@ -56,6 +56,7 @@ main = hakyll $ do
let archiveCtx =
listField "posts" postCtx (return posts) `mappend`
constField "title" "Archives" `mappend`
constField "language" "en" `mappend`
defaultContext
makeItem ""
@ -71,6 +72,7 @@ main = hakyll $ do
listField "kits" postCtx (return kits) `mappend`
constField "title" "Plamo" `mappend`
constField "logosub" "Plamo enthousiast" `mappend`
constField "language" "en" `mappend`
defaultContext
makeItem ""
@ -78,12 +80,19 @@ main = hakyll $ do
>>= loadAndApplyTemplate "templates/default.html" plamoCtx
>>= relativizeUrls
match "index.html" $ do
match (fromList
[ "index.html"
, "en/index.html"
, "nl/index.html"
, "jp/index.html"
]) $ do
route idRoute
compile $ do
posts <- recentFirst =<< loadAll "posts/*"
now <- unsafeCompiler getCurrentTime
ident <- getUnderlying
language <- getMetadataField' ident "language"
let cutoff = addUTCTime (7 * 24 * 60 * 60) now
events <-
@ -95,6 +104,7 @@ main = hakyll $ do
-- (<> is the modern version of `mappend`.)
listField "posts" postCtx (return posts) <>
listField "events" postCtx (return events) <>
langDict language <>
defaultContext
getResourceBody
@ -120,3 +130,21 @@ isUpcoming cutoff item = do
case parseTimeM True defaultTimeLocale "%Y-%m-%d" ds of
Nothing -> return False
Just date -> return (date >= cutoff)
langDict :: String -> Context a
langDict "nl" =
constField "welcome" "Welkom" <>
constField "switcher" "Taal" <>
mempty
langDict "jp" =
constField "welcome" "ようこそ" <>
constField "switcher" "言語" <>
mempty
langDict "en" =
constField "welcome" "Welcome" <>
constField "switcher" "Language" <>
mempty
langDict _ = mempty

View File

@ -1,2 +1,6 @@
---
language: "en"
---
Here you can find all my previous posts:
$partial("templates/post-list.html")$

View File

@ -1,5 +1,5 @@
<!doctype html>
<html lang="en">
<html lang="$language$">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">

View File

@ -0,0 +1,84 @@
<img src="/images/haskell-logo.png" style="float: right; margin: 10px;" />
<p>$welcome$</p>
<p>This part of my website is still under construction, please excuse my mess.</p>
<hr/>
<p class="text-center">$switcher$: <a href="/nl/index.html">Nederlands</a> | <a href="/jp/index.html">日本語</a> | <a href="/en/index.html">English</a></p>
<div class="row row-cols-1 row-cols-md-2 row-cols-lg-4 g-4 p-1">
<!-- Japan -->
<div class="col">
<div class="card mt-2" style="width: 128px;">
<a href="/japan.html">
<img src="/images/plamo/model-kits/gundam/hg/smc-2025-gundam/thumbnail.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
</a>
<div class="card-body">
<p class="card-text text-center">Japan</p>
</div>
</div>
</div>
<!-- Plamo -->
<div class="col">
<div class="card mt-2" style="width: 128px;">
<a href="/plamo.html">
<img src="/images/plamo/model-kits/gundam/hg/smc-2025-gundam/thumbnail.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
</a>
<div class="card-body">
<p class="card-text text-center">Plamo</p>
</div>
</div>
</div>
<!-- Radio -->
<div class="col">
<div class="card mt-2" style="width: 128px;">
<a href="/radio.html">
<img src="/images/plamo/model-kits/gundam/hg/smc-2025-gundam/thumbnail.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
</a>
<div class="card-body">
<p class="card-text text-center">Radio</p>
</div>
</div>
</div>
<!-- Software -->
<div class="col">
<div class="card mt-2" style="width: 128px;">
<a href="/software.html">
<img src="/images/plamo/model-kits/gundam/hg/smc-2025-gundam/thumbnail.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
</a>
<div class="card-body">
<p class="card-text text-center">Software</p>
</div>
</div>
</div>
</div>
<hr/>
<div class="row row-cols-1 row-cols-md-2 g-4 p-1">
<div class="col">
<h4>Recent posts</h4>
$partial("templates/recent-posts.html")$
<p>…or you can find more posts in the <a href="/archive.html">archives</a>.</p>
</div>
<div class="col">
<h4>Upcoming events</h4>
$partial("templates/events.html")$
<p>Here you can find more events I attended: <a href="/events.html">events</a>.</p>
</div>
</div>

View File

@ -1,7 +1,7 @@
<nav class="navbar navbar-expand-lg bg-body-tertiary">
<div class="container-fluid">
<a class="navbar-brand" href="/index.html">Kevin Matsubara<br/>
<a class="navbar-brand" href="/$language$/index.html">Kevin Matsubara<br/>
<span class='logo-sub'>|&gt;&nbsp;&nbsp; $if(logosub)$ $logosub$ $else$ Personal website $endif$</span></a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>