64 lines
2.2 KiB
EmacsLisp
64 lines
2.2 KiB
EmacsLisp
(setq user-full-name "Stephane Adjemian")
|
|
(setq user-mail-address "stepan@adjemian.eu")
|
|
(set-language-environment "UTF-8")
|
|
|
|
(require 'package)
|
|
(setq package-enable-at-startup nil)
|
|
(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
|
|
(package-initialize)
|
|
|
|
(use-package ox-publish
|
|
:init
|
|
(setq sa-blog-header-file "~/website/stephane-adjemian.fr/assets/partials/header.html"
|
|
sa-blog-footer-file "~/website/stephane-adjemian.fr/assets/partials/footer.html"
|
|
org-html-validation-link nil
|
|
make-backup-files nil)
|
|
|
|
(defun sa-blog-header (arg)
|
|
(with-temp-buffer
|
|
(insert-file-contents sa-blog-header-file)
|
|
(buffer-string)))
|
|
|
|
(defun sa-blog-footer (arg)
|
|
(with-temp-buffer
|
|
(insert-file-contents sa-blog-footer-file)
|
|
(buffer-string)))
|
|
|
|
(defun sa-filter-local-links (link backend info)
|
|
"Filter that converts all the /index.html links to /"
|
|
(if (org-export-derived-backend-p backend 'html)
|
|
(replace-regexp-in-string "/index.html" "/" link)))
|
|
|
|
:config
|
|
(setq org-publish-project-alist
|
|
'(
|
|
;; Content that should be processed.
|
|
("pages"
|
|
:base-directory "./sources"
|
|
:base-extension "org"
|
|
:publishing-directory "./output"
|
|
:recursive t
|
|
:publishing-function org-html-publish-to-html
|
|
:headline-levels 4
|
|
:section-numbers nil
|
|
:html-head nil
|
|
:html-head-include-default-style nil
|
|
:html-head-include-scripts nil
|
|
:html-preamble sa-blog-header
|
|
:html-postamble sa-blog-footer
|
|
)
|
|
;; For static files (untouched by emacs)
|
|
("static"
|
|
:base-directory "./sources"
|
|
:base-extension "asc\\|css\\|scss\\|less\\|ttf\\|woff\\|woff2\\|eot\\|yml\\|json\\|js\\|png\\|ttf\\|jpg\\|gif\\|pdf\\|svg\\|tex\\|m\\|py\\|jl"
|
|
:publishing-directory "./output"
|
|
:recursive t
|
|
:publishing-function org-publish-attachment
|
|
)
|
|
|
|
;; Combine the two previous components in a single one
|
|
("site" :components ("pages" "static"))))
|
|
|
|
(add-to-list 'org-export-filter-link-functions 'sa-filter-local-links)
|
|
)
|