[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] org-faq.org: rename org-export-htmlize-* options to org-html
From: |
Ihor Radchenko |
Subject: |
Re: [PATCH] org-faq.org: rename org-export-htmlize-* options to org-html-htmlize-* |
Date: |
Fri, 05 Apr 2024 13:58:18 +0000 |
Rudolf Adamkovič <rudolf@adamkovic.org> writes:
> While you are on it, ...
> ...
See the attached updated patch.
>From b4942ba19db7e7b2c250e3dc2c5b0c6b6b7346d0 Mon Sep 17 00:00:00 2001
Message-ID:
<b4942ba19db7e7b2c250e3dc2c5b0c6b6b7346d0.1712325451.git.yantar92@posteo.net>
From: Ihor Radchenko <yantar92@posteo.net>
Date: Thu, 4 Apr 2024 14:22:01 +0300
Subject: [PATCH v2] org-faq.org (How can I preserve faces...): Update answer
* org-faq.org (How can I preserve faces when I export an agenda from
the command line?): Fix the answer, making sure that the instructions
actually work on the latest Org mode.
Link:
https://list.orgmode.org/orgmode/PS2P216MB113830307EE638A1FF044F55A024A@PS2P216MB1138.KORP216.PROD.OUTLOOK.COM/
---
org-faq.org | 51 +++++++++++++++++++++++++++++----------------------
1 file changed, 29 insertions(+), 22 deletions(-)
diff --git a/org-faq.org b/org-faq.org
index 3674165c..97c85c23 100644
--- a/org-faq.org
+++ b/org-faq.org
@@ -3643,41 +3643,48 @@ ** How can I preserve faces when I export an agenda
from the command line?
#+index: Export!Agenda
#+index: Export!Faces
-Normally, when you export an org file or an agenda view from within
-emacs, htmlize will convert your face definitions to direct color css
-styles inlined into each =<span>= object, resulting in an HTML output
-that preserves the general look of your Org buffers and agenda views.
+Normally, when you export an agenda view from within Emacs, htmlize
+will convert your face definitions to direct color CSS styles inlined
+into each =<span>= object, resulting in an HTML output that preserves
+the general look of your Org buffers and agenda views.
Let's say you generate an export from the command line, such as the
following:
-: emacs -batch -l ~/.emacs -eval '(org-batch-agenda "e")'
-
-or
-
-: emacs -batch -l ~/.emacs -eval '(org-publish-all)'
+: emacs -batch -l ~/.emacs.d/init.el \
+: -eval '(progn \
+: (org-agenda nil "a") \
+: (org-agenda-write "~/agenda.html"))'
In such an instance, the exported HTML will contain only very basic
color styles. The reason is that when Emacs is run in batch mode, it
does not have a display and therefore only rudimentary face
definitions. If you'd like to use more complex styles, you'll have to
-make sure that the export process only assigns classes instead of
-direct color values. This can be done by binding the variable
-=org-export-htmlize-output-style= to =css= for the duration of the
-export, for example with
-
-: emacs -batch -l ~/.emacs
-: -eval '(let ((org-export-htmlize-generate-css (quote css)))
-: (org-batch-agenda "e"))'
+supply custom CSS styles to make these classes look any way you like.
+To generate face definitions for a CSS file based on any faces you are
+currently using in Emacs, you can use the following command:
-Then you can use a style file to make these classes look any way you
-like. To generate face definitions for a CSS file based on any faces
-you are currently using in Emacs, you can use the following command:
+#+begin_src emacs-lisp
+(defun org-html-htmlize-generate-css-for-agenda ()
+ "Create the CSS for all font definitions in the current Emacs session.
+Unlike `org-html-htmlize-generate-css', do not prepend
+`org-html-htmlize-font-prefix' to face names."
+ (interactive)
+ (require 'ox-html)
+ (let ((org-html-htmlize-font-prefix ""))
+ (org-html-htmlize-generate-css)))
+#+end_src
-: M-x org-export-htmlize-generate-css RET
+: M-x org-html-htmlize-generate-css-for-agenda RET
This will generate a =<style>...</style>= section, the content of
-which you can add to your style file.
+which you can manually copy to your style file:
+
+: emacs -batch -l ~/.emacs.d/init.el \
+: -eval '(let ((org-agenda-export-html-style \
+: "<link rel=\"stylesheet\" type=\"text/css\"
href=\"mystyles.css\">")) \
+: (org-agenda nil "a") \
+: (org-agenda-write "~/agenda.html"))'
** How can I avoid dark color background when exporting agenda to ps format?
:PROPERTIES:
--
2.44.0
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>