From: steve-humphreys@gmx.com
To: Michael Heerdegen <michael_heerdegen@web.de>
Cc: help-gnu-emacs@gnu.org
Subject: Re: Including tex commands in a list
Date: Thu, 28 Jan 2021 22:05:30 +0100 [thread overview]
Message-ID: <trinity-876a1b77-1004-4034-b225-ba3658da85ba-1611867930743@3c-app-mailcom-bs02> (raw)
In-Reply-To: <87lfcdnnr3.fsf@web.de>
I am using font lock to highlight keywords in a minor mode.
Have changed from using "concat" to using "rx" as you suggested.
However it does not seem equivalent.
(defconst crucible-mtksy-keywords
`(;; Greek
(,(concat "\\\\\\<\\(alpha\\|beta\\|chi\\|delta\\|"
"Delta\\|epsilon\\|varepsilon\\|eta\\|"
"gamma\\|Gamma\\|iota\\|kappa \\|"
"lambda\\|Lambda\\|mu\\|nu\\|"
"omega\\|Omega\\|phi\\|varphi\\|"
"Phi\\|pi\\|varpi\\|Pi\\|"
"psi\\|Psi\\|rho\\|varrho\\|"
"sigma\\|varsigma\\|Sigma\\|tau\\|"
"theta\\|vartheta\\|Theta\\|upsilon\\|"
"Upsilon\\|xi\\|Xi\\|zeta\\)\\>")
(0 'crucible-mtksy-tfc)))
"Fontification for letters and symbols.")
(defun crucible-mtksy-tfc ()
"Font-lock setup for mathematical symbols."
(font-lock-flush (point-min) (point-max))
(if crucible-mode
(progn
(font-lock-add-keywords nil crucible-mtksy-keywords t)
(font-lock-add-keywords nil crucible-supinf-font-lock t))
(font-lock-remove-keywords nil crucible-mtksy-keywords)
(crucible-supinf-disable (point-min) (point-max)))
(font-lock-flush (point-min) (point-max)))
> Sent: Friday, January 29, 2021 at 2:24 AM
> From: "Michael Heerdegen" <michael_heerdegen@web.de>
> To: steve-humphreys@gmx.com
> Cc: help-gnu-emacs@gnu.org
> Subject: Re: Including tex commands in a list
>
> steve-humphreys@gmx.com writes:
>
> > (defconst crucible-mtksy-keywords
> > `(;; Greek
> > (,(concat "\\\\\\<\\(alpha\\|beta\\|chi\\|delta\\|"
> > "Delta\\|epsilon\\|varepsilon\\|eta\\|"
> > "gamma\\|Gamma\\|iota\\|kappa \\|"
> > "lambda\\|Lambda\\|mu\\|nu\\|"
> > "omega\\|Omega\\|phi\\|varphi\\|"
> > "Phi\\|pi\\|varpi\\|Pi\\|"
> > "psi\\|Psi\\|rho\\|varrho\\|"
> > "sigma\\|varsigma\\|Sigma\\|tau\\|"
> > "theta\\|vartheta\\|Theta\\|upsilon\\|"
> > "Upsilon\\|xi\\|Xi\\|zeta\\)\\>")
> > (0 'crucible-mtksy-tfc)) ;
> >
> > It would help if I had an example of using "rx" for this.
>
> That would look like this (you want to add the missing greek letter
> names):
>
> (defconst crucible-mtksy-keywords
> `(;; Greek
> (,(rx "\\" word-start
> (or "alpha" "beta") ;add the other letters here
> word-end)
> (0 'crucible-mtksy-tfc))))
>
> The result will be a slightly optimized regexp (equivalent to yours of
> course).
>
> If you want to go that way, I think it would also be possible to avoid
> the repetition of uncapitalized followed by a capitalized letter name.
>
> HTH,
>
> Michael.
>
next prev parent reply other threads:[~2021-01-28 21:05 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-26 23:27 Including tex commands in a list steve-humphreys
2021-01-27 23:01 ` Michael Heerdegen
2021-01-28 13:29 ` steve-humphreys
2021-01-28 14:24 ` Michael Heerdegen
2021-01-28 21:05 ` steve-humphreys [this message]
2021-01-28 21:19 ` Michael Heerdegen
2021-01-28 21:50 ` steve-humphreys
2021-01-28 22:12 ` steve-humphreys
2021-01-28 22:17 ` Christopher Dimech
2021-01-28 22:26 ` steve-humphreys
2021-01-28 22:35 ` steve-humphreys
2021-01-29 12:05 ` Michael Heerdegen
2021-01-29 12:57 ` steve-humphreys
2021-01-29 14:00 ` Michael Heerdegen
2021-01-29 20:46 ` steve-humphreys
2021-01-29 20:56 ` Michael Heerdegen
2021-01-29 21:01 ` steve-humphreys
2021-01-29 21:10 ` steve-humphreys
2021-01-30 13:36 ` Michael Heerdegen
2021-01-29 21:45 ` tomas
2021-01-29 21:52 ` steve-humphreys
2021-01-29 22:24 ` tomas
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=trinity-876a1b77-1004-4034-b225-ba3658da85ba-1611867930743@3c-app-mailcom-bs02 \
--to=steve-humphreys@gmx.com \
--cc=help-gnu-emacs@gnu.org \
--cc=michael_heerdegen@web.de \
/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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.