fix: language errors

This commit is contained in:
2026-04-28 18:47:42 +02:00
parent c7ccbfe6c7
commit c6eb4fd452
3 changed files with 39 additions and 13 deletions
+8 -8
View File
@@ -10,7 +10,7 @@ export const deLanguage: LanguagePack = {
languageGerman: 'Deutsch', languageGerman: 'Deutsch',
}, },
footer: { footer: {
noscriptMessage: 'Bitte aktiviere JavaScript für die vollständige Nutzung.', noscriptMessage: 'Bitte aktiviere JavaScript für den vollen Funktionsumfang.',
imprintLink: 'Impressum', imprintLink: 'Impressum',
}, },
home: { home: {
@@ -20,25 +20,25 @@ export const deLanguage: LanguagePack = {
contactTitle: 'Kontakt', contactTitle: 'Kontakt',
viewProjects: 'Projekte ansehen', viewProjects: 'Projekte ansehen',
aboutMe: 'Über mich', aboutMe: 'Über mich',
nextHighlightAriaLabel: 'Nächstes Highlight-Bild anzeigen', nextHighlightAriaLabel: 'Nächstes Bild anzeigen',
nextHighlightTitle: 'Nächstes Bild anzeigen', nextHighlightTitle: 'Nächstes Bild anzeigen',
singleHighlightTitle: 'Einzelnes Bild', singleHighlightTitle: 'Einzelnes Bild',
portraitAltSuffix: 'Bild', portraitAltSuffix: 'Bild',
clickHint: 'Klick mich!', clickHint: 'Klick mich!',
aboutEyebrow: 'Über mich', aboutEyebrow: 'Über mich',
aboutParagraphs: [ aboutParagraphs: [
'Ich heiße {{firstname}}, die meisten nennen mich Julie. Ich bin {{age}} Jahre alt und komme aus Österreich. Ein großer Teil meines Alltags passiert unterwegs meistens im Zug, zwischen Terminen, Büros und Zeit mit meiner Familie.', 'Ich heiße {{firstname}}, viele nennen mich auch Julie. Ich bin {{age}} Jahre alt und komme aus Österreich. Ein großer Teil meines Alltags passiert unterwegs meistens im Zug, zwischen Terminen, Büros und meiner Familie.',
'Digitale Sicherheit und Privatsphäre sind mir sehr wichtig. Ich baue Systeme mit möglichst kleiner Angriffsfläche, sinnvollen Standards und starkem Fokus auf Datenschutz.', 'Digitale Sicherheit und Privatsphäre sind mir sehr wichtig. Ich baue Systeme mit möglichst kleiner Angriffsfläche, sinnvollen Standards und starkem Fokus auf Datenschutz.',
'Ich arbeite mit modernen Web-Technologien und an geschäftskritischen Systemen. Mein Fokus liegt auf klaren, stabilen Lösungen, die im Alltag funktionieren und echten Nutzen liefern.', 'Ich arbeite mit modernen Web-Technologien und an geschäftskritischen Systemen. Mein Fokus liegt auf klaren, stabilen Lösungen, die im Alltag funktionieren und echten Nutzen liefern.',
], ],
detailToggleOpen: 'Erweitertes Profil lesen', detailToggleOpen: 'Mehr lesen',
detailToggleClose: 'Erweitertes Profil ausblenden', detailToggleClose: 'Weniger lesen',
detailParagraphs: [ detailParagraphs: [
'Was mich wirklich interessiert, ist moderner Code: sauber strukturiert, wartbar und mit Blick auf Performance gebaut.', 'Was mich wirklich interessiert, ist moderner Code: sauber strukturiert, wartbar und mit Blick auf Performance gebaut.',
'Abseits von Software ist Tauchen mein größtes Hobby. Die Stille unter Wasser zieht mich immer wieder zurück in Österreichs Seen.', 'Abseits von Software ist Tauchen mein größtes Hobby. Die Stille unter Wasser zieht mich immer wieder zurück in Österreichs Seen.',
'Hauptsächlich arbeite ich für die SobIT GmbH in Wien, zusätzlich zu Freelance-Projekten für Unternehmen, Organisationen und private Kunden.', 'Hauptsächlich arbeite ich für die SobIT GmbH in Wien, zusätzlich zu Freelance-Projekten für Unternehmen, Organisationen und private Kunden.',
], ],
getInTouch: 'Kontakt aufnehmen', getInTouch: 'Kontaktiere mich!',
projectsEyebrow: 'Aktuelle Jobs & Projekte', projectsEyebrow: 'Aktuelle Jobs & Projekte',
openProjectPrefix: 'Projekt öffnen', openProjectPrefix: 'Projekt öffnen',
projectLanguagesAriaLabel: 'Projekt-Technologien', projectLanguagesAriaLabel: 'Projekt-Technologien',
@@ -194,7 +194,7 @@ export const deLanguage: LanguagePack = {
title: 'SynHost', title: 'SynHost',
link: 'https://www.synhost.de/', link: 'https://www.synhost.de/',
description: description:
'Ein Hosting-Dienstleister unter der Verwaltung von GERLACH SYSTEMS, für den ich Schnittstellen entwickle und technischen Support mache.', 'Ein Hosting-Dienstleister unter der Verwaltung von GERLACH SYSTEMS, für die ich Schnittstellen zwischen einzelnen Systemen entwickle und technischen Support erledige.',
skills: ['TypeScript', 'MariaDB', 'YML'], skills: ['TypeScript', 'MariaDB', 'YML'],
icon: 'assets/optimized/logos/synhost.webp', icon: 'assets/optimized/logos/synhost.webp',
iconSrcset: iconSrcset:
@@ -208,7 +208,7 @@ export const deLanguage: LanguagePack = {
title: 'SynRadio', title: 'SynRadio',
link: 'https://www.synradio.de/', link: 'https://www.synradio.de/',
description: description:
'Ein Internetradio-Projekt, bei dem ich die technische Seite der digitalen Präsenz entwickle und betreue — inklusive Website, Bots und Plugins für Sprachchats und Spiele.', 'Ein Internetradio-Projekt, auch unter der Verwaltung von GERLACH SYSTEMS, bei dem ich die technische Umsetzung der digitalen Präsenz entwickle und betreue — Website, Bots und Plugins für Sprachchats und Spiele.',
skills: ['TypeScript', 'Angular', 'FFmpeg', 'YML'], skills: ['TypeScript', 'Angular', 'FFmpeg', 'YML'],
icon: 'assets/optimized/logos/synradio.webp', icon: 'assets/optimized/logos/synradio.webp',
iconSrcset: iconSrcset:
+5 -5
View File
@@ -20,19 +20,19 @@ export const enLanguage: LanguagePack = {
contactTitle: 'Contact me', contactTitle: 'Contact me',
viewProjects: 'View projects', viewProjects: 'View projects',
aboutMe: 'About me', aboutMe: 'About me',
nextHighlightAriaLabel: 'Show next highlight image', nextHighlightAriaLabel: 'Show next image',
nextHighlightTitle: 'Show next image', nextHighlightTitle: 'Show next image',
singleHighlightTitle: 'Single image', singleHighlightTitle: 'Single image',
portraitAltSuffix: 'Image', portraitAltSuffix: 'Image',
clickHint: 'Click me!', clickHint: 'Click me!',
aboutEyebrow: 'About me', aboutEyebrow: 'About me',
aboutParagraphs: [ aboutParagraphs: [
'My name is {{firstname}}, though most people call me Julie. I am {{age}} and based in Austria. A large part of my day happens on the move, usually on trains, going between meetings, offices, and time with my family.', 'My name is {{firstname}}, many people also call me Julie. I am {{age}} and based in Austria. A large part of my day happens on the move, usually on trains, going between meetings, offices, and my family.',
'I care deeply about digital security and privacy. I design systems with minimal exposure, sensible defaults, and a strong focus on data protection.', 'I care deeply about digital security and privacy. I design systems with minimal exposure, sensible defaults, and a strong focus on data protection.',
'I work with modern web technologies and on business-critical systems. I focus on clear, stable solutions that hold up in day-to-day use and deliver value.', 'I work with modern web technologies and on business-critical systems. I focus on clear, stable solutions that hold up in day-to-day use and deliver value.',
], ],
detailToggleOpen: 'Read extended profile', detailToggleOpen: 'Read more',
detailToggleClose: 'Hide extended profile', detailToggleClose: 'Read less',
detailParagraphs: [ detailParagraphs: [
'What really interests me is modern code: well-structured, maintainable, and built with performance in mind.', 'What really interests me is modern code: well-structured, maintainable, and built with performance in mind.',
"Outside of software, my main hobby is scuba diving. The silence underwater keeps pulling me back into Austria's lakes.", "Outside of software, my main hobby is scuba diving. The silence underwater keeps pulling me back into Austria's lakes.",
@@ -208,7 +208,7 @@ export const enLanguage: LanguagePack = {
title: 'SynRadio', title: 'SynRadio',
link: 'https://www.synradio.de/', link: 'https://www.synradio.de/',
description: description:
'An online radio project, where I build and maintain the technical side of its digital presence — including the website, bots, and plugins for voice chats and games.', 'An online radio project, also operated by GERLACH SYSTEMS, where I build and maintain the technical side of its digital presence — including the website, bots, and plugins for voice chats and games.',
skills: ['TypeScript', 'Angular', 'FFmpeg', 'YML'], skills: ['TypeScript', 'Angular', 'FFmpeg', 'YML'],
icon: 'assets/optimized/logos/synradio.webp', icon: 'assets/optimized/logos/synradio.webp',
iconSrcset: iconSrcset:
+26
View File
@@ -1084,6 +1084,7 @@ hr {
} }
.language-card { .language-card {
position: relative;
display: grid; display: grid;
gap: 1rem; gap: 1rem;
width: min(100%, 520px); width: min(100%, 520px);
@@ -1103,6 +1104,7 @@ hr {
.language-copy { .language-copy {
display: grid; display: grid;
gap: 0; gap: 0;
padding-right: 3.4rem;
} }
.language-card h2, .language-card h2,
@@ -1186,6 +1188,10 @@ hr {
} }
.language-close { .language-close {
position: absolute;
top: 1rem;
right: 1rem;
z-index: 1;
width: 2.8rem; width: 2.8rem;
height: 2.8rem; height: 2.8rem;
border: 1px solid var(--border-soft); border: 1px solid var(--border-soft);
@@ -1269,6 +1275,7 @@ hr {
width: min(100%, 460px); width: min(100%, 460px);
gap: 0.9rem; gap: 0.9rem;
padding: 0.95rem; padding: 0.95rem;
padding-top: 1.15rem;
} }
.language-card-header { .language-card-header {
@@ -1290,5 +1297,24 @@ hr {
.language-switcher { .language-switcher {
right: 0.75rem; right: 0.75rem;
top: 0.75rem; top: 0.75rem;
gap: 0.45rem;
min-height: 2.75rem;
padding: 0.4rem 0.65rem 0.4rem 0.4rem;
}
.language-switcher-tag {
min-width: 1.95rem;
min-height: 1.65rem;
padding: 0.14rem 0.55rem;
font-size: 0.68rem;
}
.language-switcher-copy strong {
font-size: 0.68rem;
letter-spacing: 0.1em;
}
.language-switcher-copy span {
font-size: 0.78rem;
} }
} }