Org-download and ox-hugo
One drawback of using a static blogging tool is the relative difficulty of dealing with images. Images must be copied to the proper folder and then links need to be added manually. I’ve created a few ways to make this easier this using TextExpander, but today I discovered org-download.
This extension facilitates moving images from point A to point B.
I’m using this with ox-hugo and it works very well. I first added the following to my Emacs config…
(use-package org-download :ensure t :init (setq org-download-timestamp "-%Y-%m-%d"))
Then, at the top of my blog file (all-posts.org), I set the following buffer-specific variable…
-*- mode: Org; org-download-image-dir: "~/microblog/static/img"; -*-
Now, to add an image to a post, I just drag it from the finder into Emacs and the image is copied to my images folder (
microblog/static/image) and a link is inserted into the buffer with the proper path, etc. The image is even shown inline by default so I can see what I’m dealing with. What a treat!
The post looks like this after dragging an image from the Finder…
* Posts ** 2019 *** My New Post with an image #+DOWNLOADED: file:/Users/jbaty/Desktop/test.png @ 2019-07-02 16:44:58 [[file:../static/img/Posts/test-2019-07-02.png]]
The date stamp can be appended during the copy and is configured with
It’s pretty slick, and takes most of the hassle out of adding images to blog posts when using Hugo/ox-hugo.