From: Tim Cross <theophilusx@gmail.com>
To: emacs-orgmode@gnu.org
Subject: Re: no syntax highlighting for code blocks with org-publish
Date: Tue, 19 Jul 2022 07:50:47 +1000 [thread overview]
Message-ID: <864jzegk4q.fsf@gmail.com> (raw)
In-Reply-To: <xhmnViLdAGK813ymofCfMMjzDtOpioA5s18k7xMxQ2VASRyCo1Emlu-4-Sa_5e9OPsU0JrLlre1pL4QBihOmrMusAURzwb23jqqZwWHXqGs=@protonmail.com>
"M. Pger" <mpger@protonmail.com> writes:
> Thank you for your answer. Here it is:
>
> 1. Create the following directory structure (3 directories):
> ~/test/
> ├── content
> ├── html
> └── .packages
>
> 2. Create the .el script to build the website (=~/test/build.el=):
>
> #+begin_src elisp
> ;; * Set the package installation directory (in order not to overwrite the standard ~/emacs.d)
> (require 'package)
> (setq package-user-dir (expand-file-name "./.packages"))
> (setq package-archives '(("melpa" . "https://melpa.org/packages/")))
> (add-to-list 'package-archives '("elpa" . "https://elpa.gnu.org/packages/"))
>
> ;; * Initialize the package system
> (package-initialize)
> (unless package-archive-contents
> (package-refresh-contents))
>
> ;; * Install dependencies
> ;; ** since org is builtin, by default Emacs does not try to install the latest version from Elpa (9.5.4)
> ;; the following solves the issue:
> (defun mpger-ignore-builtin (pkg)
> (assq-delete-all pkg package--builtins)
> (assq-delete-all pkg package--builtin-versions))
> (mpger-ignore-builtin 'org)
> ;; ** install packages:
> (package-install 'org)
> (package-install 'htmlize)
>
> ;; * Load the publishing system:
> (require 'org)
> (require 'htmlize)
> (require 'ox-publish)
>
> ;; * Define the project
> (setq org-publish-project-alist
> (list
> (list "pages"
> :recursive t
> :htmlized-source t
> :base-directory "./content/"
> :base-extension "org"
> :publishing-directory "./html/"
> :publishing-function 'org-html-publish-to-html
> :with-creator t
> :with-toc t
> :section-numbers nil
> :time-stamp-file nil)
> ))
>
> ;; * Generate the site output
> (org-publish-all t)
>
> (message "Done!")
> #+end_src
>
>
> 3. In =~/test/content/=, create a simple test.org file to be published as html (=~/test/content/test.org=):
>
> #+begin_example
> * Here's some text
>
> Lorem ipsum.
>
> * Here's some code
>
> #+begin_src R :results output :exports both
> df <- mtcars ## a comment
> library(parallel)
> #+end_src
>
> #+end_example
>
> 4. Run =~/test/build.el= (e.g. with ~emacs -Q --script ~/test/build.el~) and compare with
> the output from ~C-c C-e h o~. The latter has syntax highlighting, the former has not.
>
Just a shot in the dark. Does syntax highlighting work if the source
block is something like emacs-lisp rather than R?
I know that syntax highlighting is based on the syntax highlighting from
the mode used for a specific language. I'm wondering if your not getting
syntax highlighting because in yhour publish script, R mode is not
loaded, but when you open the org file and do a 'normal' export, R is
loaded and so you get syntax highlighting. Therefore, I would try the
same experiment, but instead of a source block of R code, I would try a
source block of emacs-lisp code as we know that emacs-lisp mode will be
loaded.
Could be completely off track though!
next prev parent reply other threads:[~2022-07-18 21:58 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-17 17:24 no syntax highlighting for code blocks with org-publish M. Pger
2022-07-17 23:42 ` Ihor Radchenko
2022-07-18 8:57 ` M. Pger
2022-07-18 21:50 ` Tim Cross [this message]
2022-07-18 22:55 ` M. Pger
2022-07-19 7:51 ` Tim Cross
2022-07-19 15:34 ` M. Pger
2022-07-19 22:33 ` Tim Cross
2022-07-19 23:14 ` M. Pger
2022-07-20 5:22 ` M. Pger
2022-07-21 11:38 ` Ihor Radchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=864jzegk4q.fsf@gmail.com \
--to=theophilusx@gmail.com \
--cc=emacs-orgmode@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).