Notes to Self, on Self Hosting Fonts on My Hugo Blog

Writing this down, so that I will not struggle the next time1, I have to do this. I use Valkyrie for everything on the blog in various weights, except for code and preformatted stuff, which uses Source Code Pro Medium. Both are WOFF2 fonts. Anything in Hugo’s assets/css/extended folder will be picked up by Hugo and bundled into a single CSS file. The fonts are in subdirectories in the static/fonts/font-name folder. Anything in the static folder shows up at the root of the site. ~/mjb/blog/static/images/test.jpg will become /images/test.jpg I’ve created an embed-font-name.css file in the css folder above, with embed instructions generously provided by Matthew Butterick in his font documentation for Valkyrie. I adapted the same for Source Code Pro as well. Here’s a sample of my embed-source-code-pro.css 1 2 3 4 5 6 7 8 @font-face { font-family: 'Source Code Pro Medium'; font-style: normal; font-weight: medium; font-stretch: normal; font-display: auto; src: url('/fonts/source-code-pro/SourceCodePro-Medium.woff2') format('woff2'); } Finally, I created a zz-include-css.css file, which I use to overide the default CSS, so I can use my custom fonts. Since it starts with a zz it comes after the files above, that start with embed, in the final munged and minified CSS file. These are my instructions to have most text rendered with Valkyrie and code as Source Code Pro Medium2 1 2 3 4 5 6 7 8 9 10 #top { font-family: valkyrie; font-variant: oldstyle-nums; } .post-content pre, code { font-family: 'Source Code Pro Medium'; font-style: medium; font-weight: 500; } Look! So pretty :) P.S. Subscribe to my mailing list! Forward these posts and letters to your friends and get them to subscribe! P.P.S. Feed my insatiable reading habit. ...

October 9, 2022 · Mario Jason Braganza

Ticking Off Checkboxes With the Mouse in Org Mode

While I mostly use the keyboard when doing everything Org related, there are a few times in the day, when I cannot. These are mostly mornings and evenings when I bustle about home, doing this thing and that. Things that are part of my routine. Things that are checkboxes in my routine.org file. It helps me get through the day without thinking of whether, I gave the better half her meds or whether I remembered to call my mum or if I drank enough water by the end of the day or whether my stretches for the day are done or if the plan for the next day is made. ...

October 7, 2022 · Mario Jason Braganza

Blocks in Org Mode

I remember, when I first learned it, the Org Manual mentioning I could have code, quotes, poetry and sundry self structured blocks of text, where the text in that block would flow like I wanted it to. I could have indentation or line breaks as I pleased. And then I promptly forgot about it. The only thing I did remember were code blocks. And that I needed to do a #+begin_src and then a #+end_src and put my code in the middle. And all this while, I would keep typing it in, by hand. ...

September 27, 2022 · Mario Jason Braganza

Exclude Files and Folders From an Rsync Copy

I’ve been sticking to plain old rsync -az to sling files around using Rsync. Until I ran into a hiccough today, where I filled up my teensy remote storage on the Pi, because a couple of subdirectories that were part of the run, were hundreds of megabytes large.1 So I did the usual, did hunt around the web thing, and learnt about --exclude So now the new Rsync command is … rsync -az src dest --exclude={'excluded_dir_1','excluded_dir_2'} ...

September 18, 2022 · Mario Jason Braganza

Line Numbers in Hugo Codeblocks

I want my code blocks on the blog to sometimes have line numbers. Looking at the Hugo docs here and here led me to the linenos argument. While we’d start our code blocks like (```python)1, all I need more is to add the line number argument like so. Vanilla code block … print(f""" “It’s silly to try to escape other people’s faults. They are inescapable. Just try to escape your own.” — Marcus Aurelius """) print(f""" “Just that you do the right thing. The rest doesn’t matter.” – Marcus Aurelius """) Now, using the linenos option, I can be all fancy to show … ...

September 17, 2022 · Mario Jason Braganza

Drafts App Needs Escaping if I Am to Use Hugo Shortcodes

When I finally figured out how to get line breaks working on my microblog, I ran into another sort of hiccough, when I tried doing that from my phone. I use the Drafts app on my phone and tablet to slice and dice all manner of text and to send it to various locations as I please. One of those is a workflow, that lets me shoot text to a folder on my server which is then published (via a script) on the microblog. And everytime I typed my {{< hbr >}} Hugo shortcode to let me have a line break in that post1, it would just publish gibberish2 instead of giving me said break. ...

September 14, 2022 · Mario Jason Braganza