mirror of
https://github.com/TREX-CoE/qmc-lttc.git
synced 2024-11-03 20:54:12 +01:00
deploy: 50dc730ea5
This commit is contained in:
commit
fe43770574
71
config.el
Executable file
71
config.el
Executable file
@ -0,0 +1,71 @@
|
||||
;; Thanks to Tobias's answer on Emacs Stack Exchange:
|
||||
;; https://emacs.stackexchange.com/questions/38437/org-mode-batch-export-missing-syntax-highlighting
|
||||
|
||||
(package-initialize)
|
||||
(require 'htmlize)
|
||||
(require 'font-lock)
|
||||
(require 'subr-x) ;; for `when-let'
|
||||
|
||||
(unless (boundp 'maximal-integer)
|
||||
(defconst maximal-integer (lsh -1 -1)
|
||||
"Maximal integer value representable natively in emacs lisp."))
|
||||
|
||||
(defun face-spec-default (spec)
|
||||
"Get list containing at most the default entry of face SPEC.
|
||||
Return nil if SPEC has no default entry."
|
||||
(let* ((first (car-safe spec))
|
||||
(display (car-safe first)))
|
||||
(when (eq display 'default)
|
||||
(list (car-safe spec)))))
|
||||
|
||||
(defun face-spec-min-color (display-atts)
|
||||
"Get min-color entry of DISPLAY-ATTS pair from face spec."
|
||||
(let* ((display (car-safe display-atts)))
|
||||
(or (car-safe (cdr (assoc 'min-colors display)))
|
||||
maximal-integer)))
|
||||
|
||||
(defun face-spec-highest-color (spec)
|
||||
"Search face SPEC for highest color.
|
||||
That means the DISPLAY entry of SPEC
|
||||
with class 'color and highest min-color value."
|
||||
(let ((color-list (cl-remove-if-not
|
||||
(lambda (display-atts)
|
||||
(when-let ((display (car-safe display-atts))
|
||||
(class (and (listp display)
|
||||
(assoc 'class display)))
|
||||
(background (assoc 'background display)))
|
||||
(and (member 'light (cdr background))
|
||||
(member 'color (cdr class)))))
|
||||
spec)))
|
||||
(cl-reduce (lambda (display-atts1 display-atts2)
|
||||
(if (> (face-spec-min-color display-atts1)
|
||||
(face-spec-min-color display-atts2))
|
||||
display-atts1
|
||||
display-atts2))
|
||||
(cdr color-list)
|
||||
:initial-value (car color-list))))
|
||||
|
||||
(defun face-spec-t (spec)
|
||||
"Search face SPEC for fall back."
|
||||
(cl-find-if (lambda (display-atts)
|
||||
(eq (car-safe display-atts) t))
|
||||
spec))
|
||||
|
||||
(defun my-face-attribute (face attribute &optional frame inherit)
|
||||
"Get FACE ATTRIBUTE from `face-user-default-spec' and not from `face-attribute'."
|
||||
(let* ((face-spec (face-user-default-spec face))
|
||||
(display-attr (or (face-spec-highest-color face-spec)
|
||||
(face-spec-t face-spec)))
|
||||
(attr (cdr display-attr))
|
||||
(val (or (plist-get attr attribute) (car-safe (cdr (assoc attribute attr))))))
|
||||
;; (message "attribute: %S" attribute) ;; for debugging
|
||||
(when (and (null (eq attribute :inherit))
|
||||
(null val))
|
||||
(let ((inherited-face (my-face-attribute face :inherit)))
|
||||
(when (and inherited-face
|
||||
(null (eq inherited-face 'unspecified)))
|
||||
(setq val (my-face-attribute inherited-face attribute)))))
|
||||
;; (message "face: %S attribute: %S display-attr: %S, val: %S" face attribute display-attr val) ;; for debugging
|
||||
(or val 'unspecified)))
|
||||
|
||||
(advice-add 'face-attribute :override #'my-face-attribute)
|
14
create.sh
Executable file
14
create.sh
Executable file
@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
INPUT=$1
|
||||
|
||||
if [[ -f ../docs/htmlize.el ]]
|
||||
then
|
||||
emacs --batch --load ../docs/htmlize.el --load ../docs/config.el $INPUT -f org-html-export-to-html
|
||||
else
|
||||
emacs --batch --load ../docs/config.el $INPUT -f org-html-export-to-html
|
||||
fi
|
||||
|
||||
mv ../QMC.html index.html
|
||||
|
||||
|
||||
|
1882
htmlize.el
Normal file
1882
htmlize.el
Normal file
File diff suppressed because it is too large
Load Diff
2251
index.html
Normal file
2251
index.html
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user