emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Phil Estival <pe@7d.nz>
To: yantar92@gmail.com
Cc: emacs-orgmode@gnu.org
Subject: Re: [DISCUSSION] Refactoring fontification system
Date: Wed, 8 Jun 2022 08:52:12 +0200	[thread overview]
Message-ID: <a1a644f8-9619-0c23-d155-b5763393a1c6@7d.nz> (raw)
In-Reply-To: <87k09ycc7n.fsf@localhost>

[2022-06-03 Wed 11:45] Ihor Radchenko <yantar92@gmail.com>:
 > I'd like to hear if anyone has any idea on how to interpret the
 > following:
 > 1. org-protecting-blocks is an internal auxiliary variable used to
 >    determine which blocks should be fontified using different major
 >    mode.
 >    It's value is ("src" "example" "export")
 >    So, #+begin_src lang and #+begin_export lang are fontified according
 >    to LANG. Makes sense.
 >    However, what about #+begin_example?
 >    org-element-example-block-parser does not appear to expect language
 >    specification in the example blocks. Only switches seems to be
 >    allowed. Am I missing something and Org actually allows example
 >    blocks to specify language? Or was it the case in the distant past
 >    versions of Org?

  - org-fontify-meta-lines-and-blocks-1
    is looking for begin_
    what comes after (src) is optional and can be anything

    Next it looks for "language" (match-string 5 to 7
    — it could be helpful to have comments indicating
    the number matching of the groups next to them).
    What gets fontified like a source block turns out to be:
    ,#+begin_{\w} <language> [<switches> <header arguments>]

    So this is fontified:

    #+begin_quote python
    def sss(): pass

    and this too:

    #+begin_fly awk
    BEGIN { woosh }

    Which is nice, but not interpreted like so
    by any export backend.

 > 3. org-fontify-meta-lines-and-blocks-1 creates a special face for
 >    ("+title:" "+subtitle:" "+author:" "+email:" "+date:")
 >    The face name is org-document-info.
 >    But what about, say, +description: or +language:?
 >    Would it make more sense to fontify all the keywords from
 >    org-options-keywords instead?

Makes more sense, yes.
I would have named them "directives"
rather than "keywords", but it's too late now.


  parent reply	other threads:[~2022-06-08  6:55 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-19 14:12 [DISCUSSION] Refactoring fontification system Ihor Radchenko
2021-11-19 14:18 ` Bruce D'Arcus
2021-11-19 16:09 ` Tim Cross
2021-11-24 22:03 ` Nicolas Goaziou
2022-06-03  9:45 ` Ihor Radchenko
2022-06-03 20:37   ` Ted Reed via General discussions about Org-mode.
2022-06-04 13:45     ` Ihor Radchenko
2022-06-04 23:28       ` Ted Reed via General discussions about Org-mode.
2022-06-03 21:38   ` Tim Cross
2022-06-07 16:48   ` Max Nikulin
2022-06-08  2:02     ` Ihor Radchenko
2022-06-08  4:23       ` Tom Gillespie
2022-06-08  6:35         ` Tim Cross
2022-06-09 15:31         ` Max Nikulin
2022-06-10  2:06           ` [PATCH] #+begin_example lang used in manual and worg (was: [DISCUSSION] Refactoring fontification system) Ihor Radchenko
2022-06-15  3:40             ` Max Nikulin
2022-06-16 12:31               ` Ihor Radchenko
2022-06-16 12:33               ` [BUG] Unescaped #+ lines in WORG example blocks (was: [PATCH] #+begin_example lang used in manual and worg (was: [DISCUSSION] Refactoring fontification system)) Ihor Radchenko
2022-06-16 16:33                 ` Tim Cross
2024-04-15 13:44                 ` Ihor Radchenko
2022-06-16 15:08       ` [DISCUSSION] Refactoring fontification system Max Nikulin
2022-06-08  6:52   ` Phil Estival [this message]
2023-05-30 11:25   ` [RFC] Refactoring org-element API (was: [DISCUSSION] Refactoring fontification system) Ihor Radchenko
2023-05-30 11:32     ` Ihor Radchenko
2023-05-30 15:00     ` [RFC] Refactoring org-element API Stefan Nobis
2023-05-31  8:57       ` Ihor Radchenko
2023-06-23 12:20         ` Ihor Radchenko
2023-06-30 13:53           ` Ihor Radchenko
2023-07-01 11:44     ` [RFC] Refactoring org-element API (was: [DISCUSSION] Refactoring fontification system) 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:

  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=a1a644f8-9619-0c23-d155-b5763393a1c6@7d.nz \
    --to=pe@7d.nz \
    --cc=emacs-orgmode@gnu.org \
    --cc=yantar92@gmail.com \


* 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


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).