.Kind (page): .Type (posts) / .Layout ()
Bundle: n/a (regular page)
[ categories | tags | search ]
ox-hugo Test Site

This is the test site for the ox-hugo package for Emacs/Org-mode.

It is updated automatically after each commit to the ox-hugo repo. It was last updated on Apr 03, 2020 02:29 UTC.


This page was created/modified in commit f95f4d5 "Add a source block export example" on 2019-12-19.
Markdown source of this page

Code-fenced source blocks

tags: src-block code-fence


Description/Summary

Here the source blocks are explicitly set to be code-fenced by setting the EXPORT_HUGO_CODE_FENCE property to t. Here are few variables that you might like to change in the local.mk: prefix Org installation directory prefix = /dir/where/you/want/to/install/org # Default: /usr/share The .el files will go to $(prefix)/emacs/site-lisp/org by default. If you’d like to change that, you can tweak the lispdir variable. infodir Org Info installation directory. I like to keep the Info file for development version of Org in a separate directory.


Content

Here the source blocks are explicitly set to be code-fenced by setting the EXPORT_HUGO_CODE_FENCE property to t.

Here are few variables that you might like to change in the local.mk:

prefix

Org installation directory

prefix = /dir/where/you/want/to/install/org # Default: /usr/share

The .el files will go to $(prefix)/emacs/site-lisp/org by default. If you’d like to change that, you can tweak the lispdir variable.

infodir

Org Info installation directory. I like to keep the Info file for development version of Org in a separate directory.

infodir = $(prefix)/org/info # Default: $(prefix)/info
ORG_MAKE_DOC

Types of Org documentation you’d like to build by default.

# Define below you only need info documentation, the default includes html and pdf
ORG_MAKE_DOC = info pdf card # html
ORG_ADD_CONTRIB

Packages from the contrib/ directory that you’d like to build along with Org. Below are the ones on my must-have list.

# Define if you want to include some (or all) files from contrib/lisp
# just the filename please (no path prefix, no .el suffix), maybe with globbing
#   org-eldoc - Headline breadcrumb trail in minibuffer
#   ox-extra - Allow ignoring just the heading, but still export the body of those headings
#   org-mime - Convert org buffer to htmlized format for email
ORG_ADD_CONTRIB = org-eldoc ox-extra org-mime

Here’s an example of an emacs-lisp block:

(defvar emacs-version-short (format "%s_%s"
                                    emacs-major-version emacs-minor-version)
  "A variable to store the current emacs versions as <MAJORVER>_<MINORVER>.
So, for emacs version 25.0.50.1, this variable will be 25_0.")

Here’s an example of a python block (ox-hugo Issue #314):

import itertools as it
import numpy as np

def permanent(m):
    nr,nc = np.shape(m)
    if nr != nc:
        raise ValueError("Matrix must be square")
    pm = 0
    for p in it.permutations(range(nr)):
        pm += np.product([m[i,p[i]] for i in range(nr)])
   return pm

It is necessary to set the Hugo site config variable pygmentsCodeFences to true for syntax highlighting to work for fenced code blocks.


Page (Debug)

Page VariableValue
Name "Code-fenced source blocks"
Title "Code-fenced source blocks"
ResourceType "page"
Kind "page"
Section "posts"
Draft false
Type "posts"
Layout ""
Permalink "https://ox-hugo.scripter.co/test/posts/code-fenced-src-blocks/"
RelPermalink "/posts/code-fenced-src-blocks/"
Data
page.Data{} (type:page.Data)
NextPageSource blocks with Hugo highlight shortcode
PrevPageTable with borders and rule after first
NextInSectionSource blocks with Hugo highlight shortcode
PrevInSectionTable with borders and rule after first

Page Params (Debug)

KeyTypeValue
datetime.Time 2017-07-13 17:49:22 -0400 -0400
draftbool false
iscjklanguagebool false
lastmodtime.Time 2019-12-19 08:36:10 -0500 -0500
publishdatetime.Time 2017-07-13 17:49:22 -0400 -0400
tags[]string "src-block" "code-fence"
titlestring "Code-fenced source blocks"

File Object (Debug)

FileInfo VariableValue
UniqueID "d385e73a4f684ee276dda6079f5196a6"
BaseFileName "code-fenced-src-blocks"
TranslationBaseName "code-fenced-src-blocks"
Lang "en"
Section "posts"
LogicalName "code-fenced-src-blocks.md"
Dir "posts/"
Ext "md"
Path "posts/code-fenced-src-blocks.md"

This site is generated using the ox-hugo package for Emacs/Org-mode + hugo-bare-min-theme + Hugo 0.59.0-DEV (commit 5276f1e9, using Chroma commit 26f03cb) .
[Test Site home | ox-hugo home]