org-mode – ¿Exportar bonitos símbolos en bloques de origen de la organización?

Pregunta:

Hago un uso sustancial de prettify-symbols en mis búferes de programación. Un fragmento de algunos de mis símbolos de Python:

(add-hook 'python-mode-hook
        (lambda ()
          (mapc (lambda (pair) (push pair prettify-symbols-alist))
                '(("for" .      ?∀)
                  ("in" .       ?∊)
                  ("not in" .   ?∉)
                  ("return" .  ?⟼)))))

Esto funciona bien para todos los casos excepto para la exportación (html).

Los símbolos bonitos del código fuente, o incluso directamente del texto en modo org, no se transferirán después de la exportación.

Respuesta:

El código a continuación era demasiado largo para publicarlo como comentario, por lo que estoy publicando una respuesta aunque no funciona. Pensé que podría ser de alguna ayuda. El problema que encontré fue que prettify-symbols-alist estaba vacío.

(defun ess/org-pretty-symbols-to-html (backend)
  (when (equal backend 'html)
    (goto-char (point-max))
    (while (ignore-errors (org-babel-previous-src-block))
      (org-narrow-to-element)
      (mapc
       (lambda (x)
         (goto-char (point-max))
         (while (re-search-backward (car x) nil t)
           (replace-match (cdr x) nil t)))
       prettify-symbols-alist)
      (widen))))

(add-hook 'org-export-before-parsing-hook 'ess/org-pretty-symbols-to-html)

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım