diff --git a/blog/config.yaml b/blog/config.yaml index 2c6923e..0bc6875 100644 --- a/blog/config.yaml +++ b/blog/config.yaml @@ -30,7 +30,7 @@ params: favicon: "./favicon.ico" touchicon: "./touch-icon.png" # Dark code highlighting - codeblocksdark: false + codeblocksdark: true # Customize the indicator for margin notes # Some suggestions: ⊕, 💬, 💭, 📑, đŸ·, ✍, 💡, 🧐, 📎, 📌 marginNoteInd: "⊕" diff --git a/blog/content/inlĂ€gg/autohotkey.md b/blog/content/inlĂ€gg/autohotkey.md new file mode 100644 index 0000000..56454e2 --- /dev/null +++ b/blog/content/inlĂ€gg/autohotkey.md @@ -0,0 +1,127 @@ +--- +title: 'Förkortningar överallt - AutoHotkey' +date: 2025-03-27T17:54:43+01:00 +draft: false +--- + +Jag har under Ă„ren testat lite olika program för att kunna skriva med förkortningar överallt. Jag tröttnade ganska snabbt pĂ„ grĂ€nsnittet för att skapa och hantera listor i [PhraseExpress](https://www.phraseexpress.com/). Och Ă€ven om textfilsformatet i [Espanso](https://espanso.org) till en början kĂ€ndes jĂ€ttesmidigt, sĂ„ kĂ€nns det som att programmets default-funktionalitet stĂ„r ivĂ€gen nĂ€r jag försöker texta nĂ„got. + +Det jag vill ha av ett sĂ„nt hĂ€r verktyg Ă€r dessa funktioner: +- Enkelt textformat för att skapa och hantera förkortningar och listor +- Tab skippar förkortningar +- Alla vanliga skiljetecken slĂ„r ut förkortningar +- Förkortningar ska fungera med smĂ„ bokstĂ€ver och med stor initialbokstav + - vkm -> vĂ€lkommen + - Vkm -> VĂ€lkommen +- Verktyget ska göra textutbytet snabbt + - Samtliga av dessa lösningar infogar simulerade knapptryckningar för att först ta bort ordet med backspace och skriver sen ut hela det nya ordet. + +Enligt lite övertalning kollade jag upp [AutoHotkey](https://www.autohotkey.com/) (AHK), ett program jag Ă€r vĂ€l bekant med sen innan, för att det gĂ„r att anvĂ€nda för att automatisera typ vad som helst. {{}}NĂ€r det gĂ€ller import/export av förkortnings-listor i PhraseExpress sĂ„ finns ingen funktion i sjĂ€lva programmet.
IstÀllet tipsar forumen om att anvÀnda ett AutoHotkey-skript för att automtaisera det...{{
}} Jag vet t.ex. att folk gjorde fusk till datorspel med hjĂ€lp av AHK nĂ€r jag var tonĂ„ring, för att göra omĂ€nskligt snabba och/eller noggranna manövrar med en knapptryckning. +Jag hade dock missat hur otroligt lĂ€tt det Ă€r att konfigurera för att skriva med förkortningar pĂ„ ett sĂ€tt jag gillar. + +I grunden bygger förkortningsfunktionen pĂ„ nĂ„gon som heter "hotstrings". Den kan fĂ„nga ett inmatat textmönster och sen utföra en manöver som respons. Hotstrings gĂ„r att trigga med olika kommandon eller som respons pĂ„ specifika tangentnedslag. Det stĂ€ller jag in med kommandot `#HotString EndChars` nedan. + +Jag skapar ocksĂ„ kommandon för att byta mellan min svenska- och engelska-lista med CTRL+1 respektive CTRL+2. En notifikationsruta visar att jag byter lista. Vill jag se vilken lista jag Ă€r i kan jag skriva förkortningen "langgg" sĂ„ löser den ut till antineng "sv" eller "en". + +DĂ„ jag vill kunna skippa förkortningar sĂ„ har jag lagt till den funktionen pĂ„ Tab. Den infogar istĂ€llet ett vanligt mellanslag. + +HĂ€r kan du [ladda ner en zip](/Abbreviator_0.1.zip) med mina AutoHotkey-filer inklusive förkortningar. Du behöver ladda ner och installera AutoHotkey i sig för att kunna öppna och anvĂ€nda filerna. + +Nedan följer en genomgĂ„ng av hur skriptet fungerar. + +--- + +``` +;; instĂ€llningar för att sĂ€tta upp skriptet korrekt +#NoEnv +SendMode Input +SetWorkingDir %A_ScriptDir% +#SingleInstance Force +#WinActivateForce +SetBatchLines -1 + + +;; löser ut förkortningar med alla vettiga skiljetecken +;; inklusive vid ny rad, och det gör den innan blocket skickas ivĂ€g +;; om man skriver undertexter +#Hotstring EndChars -()[]{}:;'"/\,.?!`n ` + +;; förvalt sprĂ„k Ă€r engelska +Language := "en" + + +;; byt förkortningslista till svenska med ctrl+1 +;; kan vara brĂ„kigt med flera flikar i webblĂ€saren +;; skapar en notifikationsruta som indikerar bytet +^1:: +Language = sv +TrayTip #1, "Byter till svenska" +Sleep 1250 +HideTrayTip() +Return + +;; byt förkortningslista till engelska med ctrl+2 +^2:: +Language = en +TrayTip #2, "Byter till engelska" +Sleep 1250 +HideTrayTip() +Return + +;; tryck tab för att sĂ€nd ett mellanslag utan att lösa ut förkortning +tab:: + SendInput {Space} +Return + +;; förkortningen "langgg" skriver ut vilken förkortningslista +;; man Ă€r i som om det var en vanlig förkortning +::langgg:: + Send % Language + Send {Space} +Return + +;; hĂ€r börjar engelska-listan i formatet ::förk::förkortning +#If Language == "en" +::abb::abbreviation +::abbs::abbreviations + +;; men vi importerar den frĂ„n en separat fil i samma mapp +;; dĂ„ den innehĂ„ller över 10 000 förkortningar +;; i den filen jag vill importa rĂ€cker det med att jag +;; skriver enligt ::abb::abbreviation-formatet ovan +#Include Abbreviator_list_eng.ahk + +;; hĂ€r börjar svenska-listan i formatet ::förk::förkortning +#If Language == "sv" +::ahkk::AutoHotkey +::qws::Qwertyist Tangentbordsservice +;;men jag gör samma med svenskalistan och importerar den +#Include Abbreviator_list_sv.ahk + +;; En hjĂ€lpfunktion för att stĂ€nga notifikationsrutan +HideTrayTip() { + TrayTip + if SubStr(A_OSVersion,1,3) = "10." { + Menu Tray, NoIcon + Sleep 200 + Menu Tray, Icon + } +} +``` + + +## Appendix: Espanso + +HĂ€r följer instruktioner för hur jag fick Espanso att fungera iallafall hyfsat. + +Ändra `default.config` sĂ„ att backspace beter sig som vanligt +``` +undo_backspace: false +``` + +För att lösa ut förkortningar oavsett stor eller liten bokstav sĂ„ behöver varje ersĂ€ttningsrad följa det hĂ€r mönstret. Förkortningen gĂ„r in mellan `\b` och `(?`. Det Ă€r dock sĂ„dĂ€r kul att ALLA förkortningar behöver se ut sĂ„hĂ€r. Det gör det vĂ€ldigt oöverskĂ„dligt om inte annat. Sen kan jag tĂ€nka mig att en regex-trigger Ă€r lite lĂ„ngsammare Ă€n en vanlig trigger, men jag nog egentligen testar för lite för att kunna uttrycka mig sĂ€kert om det. + +```yaml + - regex: (?i)\bex(?P\W) + replace: exempel{{w}} +``` diff --git a/blog/content/inlĂ€gg/statistik.md b/blog/content/inlĂ€gg/statistik.md new file mode 100644 index 0000000..d03aacb --- /dev/null +++ b/blog/content/inlĂ€gg/statistik.md @@ -0,0 +1,7 @@ +--- +title: 'Statistik' +date: 2025-02-24T14:23:17+01:00 +draft: true +--- + + diff --git a/blog/resources/_gen/assets/scss/hugo-tufte.scss_ee310e49ee9db9693c97496c72a86fc1.content b/blog/resources/_gen/assets/scss/hugo-tufte.scss_ee310e49ee9db9693c97496c72a86fc1.content index 2f97cac..acf4158 100644 --- a/blog/resources/_gen/assets/scss/hugo-tufte.scss_ee310e49ee9db9693c97496c72a86fc1.content +++ b/blog/resources/_gen/assets/scss/hugo-tufte.scss_ee310e49ee9db9693c97496c72a86fc1.content @@ -1,3 +1,3 @@ -@font-face{font-family:"et-book";src:url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.eot");src:url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.eot?#iefix") format("embedded-opentype"),url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.woff") format("woff"),url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.ttf") format("truetype"),url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:"et-book";src:url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.eot");src:url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.eot?#iefix") format("embedded-opentype"),url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.woff") format("woff"),url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.ttf") format("truetype"),url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:italic}@font-face{font-family:"et-book";src:url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.eot");src:url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.eot?#iefix") format("embedded-opentype"),url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.woff") format("woff"),url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.ttf") format("truetype"),url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.svg#etbookromanosf") format("svg");font-weight:bold;font-style:normal}@font-face{font-family:"et-book-roman-old-style";src:url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.eot");src:url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.eot?#iefix") format("embedded-opentype"),url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.woff") format("woff"),url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.ttf") format("truetype"),url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:normal}html{font-size:15px}body{margin-left:auto;margin-right:auto;padding-left:12.5%;font-family:et-book,"Noto Serif SC",Palatino,"Palatino Linotype","Palatino LT STD","Book Antiqua",Georgia,serif,"Noto Emoji";background-color:#fffff8;color:#111;max-width:1400px}h1,h2,h3{font-weight:400;line-height:1}h1{margin-top:4rem;margin-bottom:1.5rem;font-size:3.2rem}h2,h3{font-style:italic;margin-bottom:0}h2{margin-top:2.1rem;font-size:2.2rem}h3{font-size:1.7rem;margin-top:2rem}.author,.date{font-size:1.4rem;font-weight:400;margin:1rem auto 1rem 0;line-height:1}.subtitle{font-style:italic;margin-top:1rem;margin-bottom:1rem;font-size:1.8rem;display:block;line-height:1}.numeral{font-family:et-book-roman-old-style}.danger{color:red}article{position:relative;padding:5rem 0rem}section{padding-top:1rem;padding-bottom:1rem}.page-list .content-title{margin-top:4.2rem;margin-bottom:1.4rem}.page-list .content-title:first-child{margin-top:1.4rem}p,ol,ul,dl{font-size:1.4rem}p{line-height:2rem;margin-top:1.4rem;margin-bottom:1.4rem;padding-right:0;vertical-align:baseline;hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:4;-ms-hyphenate-limit-chars:10 3 4;hyphenate-limit-chars:10 3 4}.epigraph{margin:3em 0}.epigraph>blockquote{margin-top:3em;margin-bottom:3em}.epigraph>blockquote{font-style:italic}.epigraph>blockquote>footer{font-style:normal}.epigraph>blockquote>footer>cite{font-style:italic}blockquote{font-size:1.4rem}blockquote p{width:50%}blockquote footer{width:50%;font-size:1.1rem;text-align:right !important}ol,ul,dl{width:45%;-webkit-padding-start:5%;-webkit-padding-end:5%}li ul{width:100%}li,dt,dd{padding:0.5rem 0}dt{font-weight:700}figure{padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;max-width:55%;-webkit-margin-start:0;-webkit-margin-end:0;margin:0 0 3em 0}figcaption{float:right;clear:right;margin-right:-48%;margin-top:0;margin-bottom:0;font-size:1.1rem;line-height:1.6;vertical-align:baseline;position:relative;max-width:40%}figure.fullwidth figcaption{margin-right:24%}a:link,a:visited{color:inherit}img{max-width:100%}.sidenote,.marginnote{float:right;clear:right;margin-right:-60%;width:50%;margin-top:0;margin-bottom:0;font-size:1.1rem;line-height:1.3;vertical-align:baseline;position:relative}.table-caption{float:right;clear:right;margin-right:-60%;width:50%;margin-top:0;margin-bottom:0;font-size:1rem;line-height:1.6}.marginnote-ind,.sidenote-number{position:relative;vertical-align:baseline;user-select:none}label.marginnote-ind,label.sidenote-number{font-size:1rem;top:-0.5rem;left:0.1rem}span.marginnote-ind,span.sidenote-number{font-size:1.1rem}p,footer,table,div.table-wrapper-small,div.supertable-wrapper>p,div.booktabs-wrapper{width:55%}div.fullwidth,table.fullwidth{width:100%}div.table-wrapper{overflow-x:scroll;font-family:"Trebuchet MS", "Gill Sans", "Gill Sans MT", sans-serif, "Noto Emoji"}@media screen and (max-width: 760px){h2,h3,p,footer{width:90%}ul,ol,dl{width:85%}figure{max-width:90%}figcaption,figure.fullwidth figcaption{margin-right:0%;max-width:none}blockquote p,blockquote footer{width:90%}}.sans{font-family:"Gill Sans","Gill Sans MT",Calibri,sans-serif,"Noto Emoji";letter-spacing:0.03em}code,.code,kbd{font-family:Consolas,"Liberation Mono",Menlo,Courier,monospace,"Noto Emoji";font-size:1.125rem;line-height:1.42}h1 .code,h2 .code,h3 .code{font-size:0.8em}.marginnote .code,.sidenote .code{font-size:1rem}pre.code{font-size:0.9rem;width:52.5%;padding-left:2.5%;overflow-x:scroll}.fullwidth{max-width:90%;clear:both}.newthought{font-variant:small-caps;font-size:1.2em}.margin-toggle{cursor:pointer}input.margin-toggle{position:absolute;outline:none;opacity:0;width:1px;height:1px;margin-left:5px;margin-top:5px;z-index:-100}label:has(+input.margin-toggle:focus){outline:medium auto currentColor;outline:medium auto invert;outline:5px auto -webkit-focus-ring-color;outline-offset:-3px}label.sidenote-number{display:inline}label.marginnote-ind{display:none}.video-container{width:100%;margin-top:1.4rem;margin-bottom:1.4rem}.video{width:55%}.video--16x9{aspect-ratio:16/9}.video--4x3{aspect-ratio:4/3}@media (max-width: 760px){label.marginnote-ind{display:inline}.sidenote,.marginnote{display:none}.margin-toggle:checked+.sidenote,.margin-toggle:checked+.marginnote{display:block;float:left;left:1rem;clear:both;width:95%;margin:1rem 2.5%;vertical-align:baseline;position:relative}pre.code{width:90%;padding:0}.table-caption{display:block;float:right;clear:both;width:98%;margin-top:1rem;margin-bottom:0.5rem;margin-left:1%;margin-right:1%;vertical-align:baseline;position:relative}div.table-wrapper,table,table.booktabs{width:85%}div.table-wrapper{border-right:1px solid #efefef}img{width:100%}.video{width:90%}}:root *{text-align:left;text-rendering:optimizeLegibility}:focus{outline:medium auto currentColor;outline:medium auto invert;outline:5px auto -webkit-focus-ring-color}::selection{color:#fffff8;background-color:#404040}a.heading-anchor{display:none;visibility:collapse}h2{margin-top:5.5rem}h2:hover>a.heading-anchor,h3:hover>a.heading-anchor{display:inline;visibility:visible}hr{text-align:left;margin-left:0;margin-top:1.4rem;margin-bottom:1.4rem;width:75%;max-width:45rem;border-style:solid none none none;border-color:#111}kbd{border:1px #111 solid;border-radius:5px;padding-right:2px;padding-left:2px}mark{background:#f0d9bb}.list-page ul{list-style-type:none;margin:-0.25em;width:87.5%;max-width:45rem}.list-page li{margin:0}.list-page .list-date{display:inline;font-size:0.75em}table:not(.lntable){margin-top:1.4em;font-size:1.4rem;width:auto}table:not(.lntable) tr th{border-bottom:1px solid #111;text-transform:uppercase}table:not(.lntable) tr th,table:not(.lntable) tr td{padding-right:0.5rem}table.lntable{border-spacing:0;padding:0}table.lntable td.lntd{padding:0em}.footnotes hr{margin-top:4.4em}.footnotes ol{width:55%;margin-top:4.4rem}.footnotes ol li p{width:100%;margin:0;padding:0}.footnotes ol li p a.footnote-backref{font-size:1.2rem;text-decoration:none}mjx-container[jax="CHTML"][display="true"],.katex-display{overflow:auto;overflow-y:hidden}.marginnote .marginnote-ind,.sidenote .sidenote-number{margin-right:5px}.sidenote,.marginnote{margin-bottom:1rem}.sidenote code,.marginnote code{font-size:0.9rem}.row{display:grid;width:75%;gap:0.3rem;margin:0 0 1rem 0}.row .column:nth-of-type(2n){margin-left:1rem}.row .column:nth-of-type(3n){margin-left:2rem}.row .column>p:first-child{margin-top:0}.row .column>p:last-child{margin-bottom:0}@media (min-width: 760px){.row{grid-auto-columns:1fr;grid-auto-flow:column;gap:1.4rem;margin:0 0 1.4rem 0}.row .column{margin-left:0 !important}}.column>p{width:100%}.column>p>label.margin-toggle.marginnote-ind{display:inline}.column>p>.sidenote,.column>p>.marginnote{display:none}.column>p>.margin-toggle:checked+.sidenote,.column>p>.margin-toggle:checked+.marginnote{display:block;float:left;left:1rem;clear:both;width:95%;margin:1rem 2.5%;vertical-align:baseline;position:relative}.btn{display:inline-block;margin-top:1.4rem}.btn button{font-size:1.4rem}.btn button .icon{font-size:1.2rem}p:lang(zh),span:lang(zh),p:lang(ja),span:lang(ja){font-size:1.2rem}.sidenote:lang(zh),.marginnote:lang(zh){font-size:0.5rem}.sidenote:lang(ja),.marginnote:lang(ja){font-size:0.9rem}footer.page-footer{margin-top:1.4rem;color:#aaa;width:95%;max-width:45rem}footer.page-footer p{font-size:1.2rem;margin:0em}footer.page-footer a{color:#41464b;text-decoration:none;background:transparent}footer.page-footer hr{width:100%}footer.page-footer ul.page-footer-menu{list-style:none;display:block;margin:0;padding:0;width:unset}footer.page-footer ul.page-footer-menu li{display:inline-block;margin-right:0.5rem}.copyright p{font-size:90%}.highlight{width:50%;overflow-x:scroll;margin-top:1.4em;margin-bottom:1.4em;margin-right:2.5%;margin-left:2.5%;-ms-overflow-style:none;scrollbar-width:none}.highlight::-webkit-scrollbar{display:none}.highlight code{font-size:1rem;display:block}.highlight>.chroma{margin:0}.highlight>.chroma .hl{display:block}.highlight>.chroma .hl::before{content:"> ";font-family:inherit;position:absolute;left:0;color:#111}.highlight>div.chroma>table.lntable{overflow:initial}.highlight>div.chroma>table.lntable td:first-of-type span:not(.highlight>div.chroma>table.lntable td:first-of-type span>span){padding:0 .75em 0 .5em}.highlight>div.chroma>table.lntable pre{margin-block-start:0.5em;margin-block-end:0.5em}.highlight>.chroma>code{width:max-content;margin-top:.5em;margin-bottom:.5em;margin-left:.5em}.highlight>.chroma>code>span.hl{margin-left:-.5em;padding-left:.5em}@media screen and (max-width: 760px){.highlight{width:90%}}ul>li>div.highlight{width:100%}details{border-radius:3px}details summary{vertical-align:top;padding:.3em .5em;outline:none}details summary.year{font-size:1.5rem}.toc summary{font-size:1.5rem;margin-bottom:-1.5rem;padding-left:0}.toc ul{list-style:none;display:block;padding:0;width:87.5%}.toc li{line-height:0.5rem;margin:1rem}.menu{margin:1.4rem 0}.menu ul{list-style:none;display:block;padding:0;max-width:45rem;font-size:1.2rem;width:87.5%}.menu li{display:inline-block;margin-right:1rem}.menu li a{text-decoration:none;letter-spacing:0.05em;text-transform:uppercase}.brand{padding-top:1rem;padding-bottom:1rem}.content-meta{display:block;font-size:1.1rem;margin-top:1em}.post-avatar{border-radius:50px;float:right;margin-left:1em}.highlight .lnt{color:#6a737d}.highlight .c{color:#6a737d}.highlight .k{color:#d73a49}.highlight .ch{color:#6a737d}.highlight .cm{color:#6a737d}.highlight .cp{color:#d73a49}.highlight .cpf{color:#032f62}.highlight .c1{color:#6a737d}.highlight .cs{color:#6a737d}.highlight .gd{color:#b31d28;background-color:#ffeef0}.highlight .gh{color:#005cc5}.highlight .gi{color:#22863a;background-color:#f0fff4}.highlight .gs{font-weight:bold}.highlight .gu{color:#6f42c1;font-weight:bold}.highlight .gt{color:#0044DD}.highlight .kc{color:#005cc5}.highlight .kd{color:#d73a49}.highlight .kn{color:#d73a49}.highlight .kp{color:#d73a49}.highlight .kr{color:#d73a49}.highlight .kt{color:#d73a49}.highlight .m{color:#666666}.highlight .s{color:#032f62}.highlight .nb{color:#005cc5}.highlight .nc{color:#6f42c1}.highlight .no{color:#005cc5}.highlight .nd{color:#6f42c1}.highlight .ni{color:#005cc5}.highlight .ne{color:#005cc5}.highlight .nf{color:#6f42c1}.highlight .nl{color:#005cc5}.highlight .nn{color:#6f42c1}.highlight .nt{color:#22863a}.highlight .nv{color:#24292e}.highlight .ow{color:#d73a49}.highlight .w{color:#bbbbbb}.highlight .mb{color:#005cc5}.highlight .mf{color:#005cc5}.highlight .mh{color:#005cc5}.highlight .mi{color:#005cc5}.highlight .mo{color:#005cc5}.highlight .sa{color:#d73a49}.highlight .sb{color:#032f62}.highlight .sc{color:#032f62}.highlight .dl{color:#d73a49}.highlight .sd{color:#032f62}.highlight .s2{color:#032f62}.highlight .se{color:#032f62}.highlight .sh{color:#032f62}.highlight .si{color:#005cc5}.highlight .sx{color:#032f62}.highlight .sr{color:#032f62}.highlight .s1{color:#032f62}.highlight .ss{color:#005cc5}.highlight .bp{color:#005cc5}.highlight .fm{color:#005cc5}.highlight .vc{color:#24292e}.highlight .vg{color:#24292e}.highlight .vi{color:#24292e}.highlight .vm{color:#005cc5}.highlight .il{color:#005cc5} +@font-face{font-family:"et-book";src:url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.eot");src:url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.eot?#iefix") format("embedded-opentype"),url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.woff") format("woff"),url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.ttf") format("truetype"),url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:"et-book";src:url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.eot");src:url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.eot?#iefix") format("embedded-opentype"),url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.woff") format("woff"),url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.ttf") format("truetype"),url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:italic}@font-face{font-family:"et-book";src:url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.eot");src:url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.eot?#iefix") format("embedded-opentype"),url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.woff") format("woff"),url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.ttf") format("truetype"),url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.svg#etbookromanosf") format("svg");font-weight:bold;font-style:normal}@font-face{font-family:"et-book-roman-old-style";src:url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.eot");src:url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.eot?#iefix") format("embedded-opentype"),url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.woff") format("woff"),url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.ttf") format("truetype"),url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:normal}html{font-size:15px}body{margin-left:auto;margin-right:auto;padding-left:12.5%;font-family:et-book,"Noto Serif SC",Palatino,"Palatino Linotype","Palatino LT STD","Book Antiqua",Georgia,serif,"Noto Emoji";background-color:#fffff8;color:#111;max-width:1400px}h1,h2,h3{font-weight:400;line-height:1}h1{margin-top:4rem;margin-bottom:1.5rem;font-size:3.2rem}h2,h3{font-style:italic;margin-bottom:0}h2{margin-top:2.1rem;font-size:2.2rem}h3{font-size:1.7rem;margin-top:2rem}.author,.date{font-size:1.4rem;font-weight:400;margin:1rem auto 1rem 0;line-height:1}.subtitle{font-style:italic;margin-top:1rem;margin-bottom:1rem;font-size:1.8rem;display:block;line-height:1}.numeral{font-family:et-book-roman-old-style}.danger{color:red}article{position:relative;padding:5rem 0rem}section{padding-top:1rem;padding-bottom:1rem}.page-list .content-title{margin-top:4.2rem;margin-bottom:1.4rem}.page-list .content-title:first-child{margin-top:1.4rem}p,ol,ul,dl{font-size:1.4rem}p{line-height:2rem;margin-top:1.4rem;margin-bottom:1.4rem;padding-right:0;vertical-align:baseline;hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:4;-ms-hyphenate-limit-chars:10 3 4;hyphenate-limit-chars:10 3 4}.epigraph{margin:3em 0}.epigraph>blockquote{margin-top:3em;margin-bottom:3em}.epigraph>blockquote{font-style:italic}.epigraph>blockquote>footer{font-style:normal}.epigraph>blockquote>footer>cite{font-style:italic}blockquote{font-size:1.4rem}blockquote p{width:50%}blockquote footer{width:50%;font-size:1.1rem;text-align:right !important}ol,ul,dl{width:45%;-webkit-padding-start:5%;-webkit-padding-end:5%}li ul{width:100%}li,dt,dd{padding:0.5rem 0}dt{font-weight:700}figure{padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;max-width:55%;-webkit-margin-start:0;-webkit-margin-end:0;margin:0 0 3em 0}figcaption{float:right;clear:right;margin-right:-48%;margin-top:0;margin-bottom:0;font-size:1.1rem;line-height:1.6;vertical-align:baseline;position:relative;max-width:40%}figure.fullwidth figcaption{margin-right:24%}a:link,a:visited{color:inherit}img{max-width:100%}.sidenote,.marginnote{float:right;clear:right;margin-right:-60%;width:50%;margin-top:0;margin-bottom:0;font-size:1.1rem;line-height:1.3;vertical-align:baseline;position:relative}.table-caption{float:right;clear:right;margin-right:-60%;width:50%;margin-top:0;margin-bottom:0;font-size:1rem;line-height:1.6}.marginnote-ind,.sidenote-number{position:relative;vertical-align:baseline;user-select:none}label.marginnote-ind,label.sidenote-number{font-size:1rem;top:-0.5rem;left:0.1rem}span.marginnote-ind,span.sidenote-number{font-size:1.1rem}p,footer,table,div.table-wrapper-small,div.supertable-wrapper>p,div.booktabs-wrapper{width:55%}div.fullwidth,table.fullwidth{width:100%}div.table-wrapper{overflow-x:scroll;font-family:"Trebuchet MS", "Gill Sans", "Gill Sans MT", sans-serif, "Noto Emoji"}@media screen and (max-width: 760px){h2,h3,p,footer{width:90%}ul,ol,dl{width:85%}figure{max-width:90%}figcaption,figure.fullwidth figcaption{margin-right:0%;max-width:none}blockquote p,blockquote footer{width:90%}}.sans{font-family:"Gill Sans","Gill Sans MT",Calibri,sans-serif,"Noto Emoji";letter-spacing:0.03em}code,.code,kbd{font-family:Consolas,"Liberation Mono",Menlo,Courier,monospace,"Noto Emoji";font-size:1.125rem;line-height:1.42}h1 .code,h2 .code,h3 .code{font-size:0.8em}.marginnote .code,.sidenote .code{font-size:1rem}pre.code{font-size:0.9rem;width:52.5%;padding-left:2.5%;overflow-x:scroll}.fullwidth{max-width:90%;clear:both}.newthought{font-variant:small-caps;font-size:1.2em}.margin-toggle{cursor:pointer}input.margin-toggle{position:absolute;outline:none;opacity:0;width:1px;height:1px;margin-left:5px;margin-top:5px;z-index:-100}label:has(+input.margin-toggle:focus){outline:medium auto currentColor;outline:medium auto invert;outline:5px auto -webkit-focus-ring-color;outline-offset:-3px}label.sidenote-number{display:inline}label.marginnote-ind{display:none}.video-container{width:100%;margin-top:1.4rem;margin-bottom:1.4rem}.video{width:55%}.video--16x9{aspect-ratio:16/9}.video--4x3{aspect-ratio:4/3}@media (max-width: 760px){label.marginnote-ind{display:inline}.sidenote,.marginnote{display:none}.margin-toggle:checked+.sidenote,.margin-toggle:checked+.marginnote{display:block;float:left;left:1rem;clear:both;width:95%;margin:1rem 2.5%;vertical-align:baseline;position:relative}pre.code{width:90%;padding:0}.table-caption{display:block;float:right;clear:both;width:98%;margin-top:1rem;margin-bottom:0.5rem;margin-left:1%;margin-right:1%;vertical-align:baseline;position:relative}div.table-wrapper,table,table.booktabs{width:85%}div.table-wrapper{border-right:1px solid #efefef}img{width:100%}.video{width:90%}}:root *{text-align:left;text-rendering:optimizeLegibility}:focus{outline:medium auto currentColor;outline:medium auto invert;outline:5px auto -webkit-focus-ring-color}::selection{color:#fffff8;background-color:#404040}a.heading-anchor{display:none;visibility:collapse}h2{margin-top:5.5rem}h2:hover>a.heading-anchor,h3:hover>a.heading-anchor{display:inline;visibility:visible}hr{text-align:left;margin-left:0;margin-top:1.4rem;margin-bottom:1.4rem;width:75%;max-width:45rem;border-style:solid none none none;border-color:#111}kbd{border:1px #111 solid;border-radius:5px;padding-right:2px;padding-left:2px}mark{background:#f0d9bb}.list-page ul{list-style-type:none;margin:-0.25em;width:87.5%;max-width:45rem}.list-page li{margin:0}.list-page .list-date{display:inline;font-size:0.75em}table:not(.lntable){margin-top:1.4em;font-size:1.4rem;width:auto}table:not(.lntable) tr th{border-bottom:1px solid #111;text-transform:uppercase}table:not(.lntable) tr th,table:not(.lntable) tr td{padding-right:0.5rem}table.lntable{border-spacing:0;padding:0}table.lntable td.lntd{padding:0em}.footnotes hr{margin-top:4.4em}.footnotes ol{width:55%;margin-top:4.4rem}.footnotes ol li p{width:100%;margin:0;padding:0}.footnotes ol li p a.footnote-backref{font-size:1.2rem;text-decoration:none}mjx-container[jax="CHTML"][display="true"],.katex-display{overflow:auto;overflow-y:hidden}.marginnote .marginnote-ind,.sidenote .sidenote-number{margin-right:5px}.sidenote,.marginnote{margin-bottom:1rem}.sidenote code,.marginnote code{font-size:0.9rem}.row{display:grid;width:75%;gap:0.3rem;margin:0 0 1rem 0}.row .column:nth-of-type(2n){margin-left:1rem}.row .column:nth-of-type(3n){margin-left:2rem}.row .column>p:first-child{margin-top:0}.row .column>p:last-child{margin-bottom:0}@media (min-width: 760px){.row{grid-auto-columns:1fr;grid-auto-flow:column;gap:1.4rem;margin:0 0 1.4rem 0}.row .column{margin-left:0 !important}}.column>p{width:100%}.column>p>label.margin-toggle.marginnote-ind{display:inline}.column>p>.sidenote,.column>p>.marginnote{display:none}.column>p>.margin-toggle:checked+.sidenote,.column>p>.margin-toggle:checked+.marginnote{display:block;float:left;left:1rem;clear:both;width:95%;margin:1rem 2.5%;vertical-align:baseline;position:relative}.btn{display:inline-block;margin-top:1.4rem}.btn button{font-size:1.4rem}.btn button .icon{font-size:1.2rem}p:lang(zh),span:lang(zh),p:lang(ja),span:lang(ja){font-size:1.2rem}.sidenote:lang(zh),.marginnote:lang(zh){font-size:0.5rem}.sidenote:lang(ja),.marginnote:lang(ja){font-size:0.9rem}footer.page-footer{margin-top:1.4rem;color:#aaa;width:95%;max-width:45rem}footer.page-footer p{font-size:1.2rem;margin:0em}footer.page-footer a{color:#41464b;text-decoration:none;background:transparent}footer.page-footer hr{width:100%}footer.page-footer ul.page-footer-menu{list-style:none;display:block;margin:0;padding:0;width:unset}footer.page-footer ul.page-footer-menu li{display:inline-block;margin-right:0.5rem}.copyright p{font-size:90%}.highlight{width:50%;overflow-x:scroll;margin-top:1.4em;margin-bottom:1.4em;margin-right:2.5%;margin-left:2.5%;-ms-overflow-style:none;scrollbar-width:none}.highlight::-webkit-scrollbar{display:none}.highlight code{font-size:1rem;display:block}.highlight>.chroma{margin:0}.highlight>.chroma .hl{display:block}.highlight>.chroma .hl::before{content:"> ";font-family:inherit;position:absolute;left:0;color:#111}.highlight>div.chroma>table.lntable{overflow:initial}.highlight>div.chroma>table.lntable td:first-of-type span:not(.highlight>div.chroma>table.lntable td:first-of-type span>span){padding:0 .75em 0 .5em}.highlight>div.chroma>table.lntable pre{margin-block-start:0.5em;margin-block-end:0.5em}.highlight>.chroma>code{width:max-content;margin-top:.5em;margin-bottom:.5em;margin-left:.5em}.highlight>.chroma>code>span.hl{margin-left:-.5em;padding-left:.5em}@media screen and (max-width: 760px){.highlight{width:90%}}ul>li>div.highlight{width:100%}details{border-radius:3px}details summary{vertical-align:top;padding:.3em .5em;outline:none}details summary.year{font-size:1.5rem}.toc summary{font-size:1.5rem;margin-bottom:-1.5rem;padding-left:0}.toc ul{list-style:none;display:block;padding:0;width:87.5%}.toc li{line-height:0.5rem;margin:1rem}.menu{margin:1.4rem 0}.menu ul{list-style:none;display:block;padding:0;max-width:45rem;font-size:1.2rem;width:87.5%}.menu li{display:inline-block;margin-right:1rem}.menu li a{text-decoration:none;letter-spacing:0.05em;text-transform:uppercase}.brand{padding-top:1rem;padding-bottom:1rem}.content-meta{display:block;font-size:1.1rem;margin-top:1em}.post-avatar{border-radius:50px;float:right;margin-left:1em}.highlight .lnt{color:#6272a4}.highlight .hl{background-color:#676a7c}.highlight{background:#282a36;color:#f8f8f2}.highlight .c{color:#6272a4}.highlight .err{color:#f8f8f2}.highlight .g{color:#f8f8f2}.highlight .k{color:#ff79c6}.highlight .l{color:#f8f8f2}.highlight .n{color:#f8f8f2}.highlight .o{color:#ff79c6}.highlight .x{color:#f8f8f2}.highlight .p{color:#f8f8f2}.highlight .ch{color:#6272a4}.highlight .cm{color:#6272a4}.highlight .cp{color:#ff79c6}.highlight .cpf{color:#6272a4}.highlight .c1{color:#6272a4}.highlight .cs{color:#6272a4}.highlight .gd{color:#8b080b}.highlight .ge{color:#f8f8f2;text-decoration:underline}.highlight .gr{color:#f8f8f2}.highlight .gh{color:#f8f8f2;font-weight:bold}.highlight .gi{color:#f8f8f2;font-weight:bold}.highlight .go{color:#44475a}.highlight .gp{color:#f8f8f2}.highlight .gs{color:#f8f8f2}.highlight .gu{color:#f8f8f2;font-weight:bold}.highlight .gt{color:#f8f8f2}.highlight .kc{color:#ff79c6}.highlight .kd{color:#8be9fd;font-style:italic}.highlight .kn{color:#ff79c6}.highlight .kp{color:#ff79c6}.highlight .kr{color:#ff79c6}.highlight .kt{color:#8be9fd}.highlight .ld{color:#f8f8f2}.highlight .m{color:#bd93f9}.highlight .s{color:#f1fa8c}.highlight .na{color:#50fa7b}.highlight .nb{color:#8be9fd;font-style:italic}.highlight .nc{color:#50fa7b}.highlight .no{color:#f8f8f2}.highlight .nd{color:#f8f8f2}.highlight .ni{color:#f8f8f2}.highlight .ne{color:#f8f8f2}.highlight .nf{color:#50fa7b}.highlight .nl{color:#8be9fd;font-style:italic}.highlight .nn{color:#f8f8f2}.highlight .nx{color:#f8f8f2}.highlight .py{color:#f8f8f2}.highlight .nt{color:#ff79c6}.highlight .nv{color:#8be9fd;font-style:italic}.highlight .ow{color:#ff79c6}.highlight .w{color:#f8f8f2}.highlight .mb{color:#bd93f9}.highlight .mf{color:#bd93f9}.highlight .mh{color:#bd93f9}.highlight .mi{color:#bd93f9}.highlight .mo{color:#bd93f9}.highlight .sa{color:#f1fa8c}.highlight .sb{color:#f1fa8c}.highlight .sc{color:#f1fa8c}.highlight .dl{color:#f1fa8c}.highlight .sd{color:#f1fa8c}.highlight .s2{color:#f1fa8c}.highlight .se{color:#f1fa8c}.highlight .sh{color:#f1fa8c}.highlight .si{color:#f1fa8c}.highlight .sx{color:#f1fa8c}.highlight .sr{color:#f1fa8c}.highlight .s1{color:#f1fa8c}.highlight .ss{color:#f1fa8c}.highlight .bp{color:#f8f8f2;font-style:italic}.highlight .fm{color:#50fa7b}.highlight .vc{color:#8be9fd;font-style:italic}.highlight .vg{color:#8be9fd;font-style:italic}.highlight .vi{color:#8be9fd;font-style:italic}.highlight .vm{color:#8be9fd;font-style:italic}.highlight .il{color:#bd93f9} /*# sourceMappingURL=hugo-tufte.min.css.map */ \ No newline at end of file diff --git a/blog/static/images/statistik.png b/blog/static/images/statistik.png new file mode 100755 index 0000000..2e10029 Binary files /dev/null and b/blog/static/images/statistik.png differ