Automatically publish site using VimWiki

This site is written and published using VimWiki. I write site content in .wiki format and export them to HTML using the built-in HTML converter. Then the HTML files get deployed to my remote server. What you currently looking at is the static content served by Nginx.

Of course, doing all these manually to publish new content is a lot of hassle. I have automated the entire process such that all I need to care about is to write stuff.

Automatically export to HTML after saving the file

Normally, I would call :Vimwiki2HTML command in vim to export my wiki to HTML. To automatically call this command after saving a file, I add this line in my vim configuration file after VimWiki plugin is loaded:

autocmd FileType vimwiki autocmd BufWritePost <buffer> silent Vimwiki2HTML

It basically tells vim that whenever a .wiki file is saved to buffer, run command :Vimwiki2HTML and silent the output.

Automatically deploy the site to remote server

There are many ways to achieve this, but since I've already setup Syncthing between my local machine and remote machine, all I need to do is to add ~/wiki_html folder to be synced. Alternatively, for example, we could use rsync to upload our files to the remote server, which is dead simple as well.