unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: Adding colour when font-lock in disabled
Date: Fri, 09 Dec 2022 14:06:23 +0200	[thread overview]
Message-ID: <831qp82340.fsf@gnu.org> (raw)
In-Reply-To: <N0ocuJ10wJvorkqWq4O5TqR1mnSlwH8f2Day-wByRuuOJVuK03aOfSowjsTeNfChh0Qp5hEKKUZDyzumBMytQf0h0ta7txjgGiZW2eRemEQ=@protonmail.com> (message from Heime on Fri, 09 Dec 2022 08:09:08 +0000)

> Date: Fri, 09 Dec 2022 08:09:08 +0000
> From: Heime <heimeborgia@protonmail.com>
> Cc: help-gnu-emacs@gnu.org
> 
> > What is weird about it? font-lock-mode places face properties
> > according to the mode's definitions, so it will overwrite any face
> > properties you put manually. Thus the need to use a different
> > property, which font-lock-mode doesn't control.
> 
> But them when a user wants to introduce some text with some properties (e.g. colour), what is supposed to do.  

Users aren't supposed to introduce text properties, except via Lisp
programs.

> Would you expect someone to use font-lock-face when font-lock is enabled
> 
> (propertize "G" 'font-lock-face '(:foreground "green"))
> 
> --------
> 
> And use 
> 
> (propertize "G" 'face '(:foreground "green"))
> 
> when font lock is disabled.

The Lisp program which allows users to add faces should do something
like that, yes.

> Why places face properties according to the mode's definitions but not allow us to change the properties of inserted text, when we can do that anyway?

Because font-lock must be in full control of face property to support
the situation where the user edits the text, and as result the faces
should change (e.g., because something that was previously just text
became a comment or a string, or vice versa).

> After calling a particular mode definitions, I should be able te change properties rather than having a lock.

See above: the faces change dynamically to follow editing of the
buffer text.  It is not a one-time operation.

If a user wants to highlight addition portions of the buffer, the
user-level feature we provide is hi-lock-mode (a minor mode).  It
solves the complexity under the hood, and only requires the user to
specify the patterns to highlight.  So if you want an easy user-level
interface, I suggest to use that minor mode.



  reply	other threads:[~2022-12-09 12:06 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-09  0:50 Adding colour when font-lock in disabled Heime
2022-12-09  1:46 ` Heime
2022-12-09  7:09   ` Eli Zaretskii
2022-12-09  8:09     ` Heime
2022-12-09 12:06       ` Eli Zaretskii [this message]
2022-12-09 12:27         ` Heime
2022-12-09 12:36           ` Eli Zaretskii
2022-12-09 13:04             ` Heime
2022-12-09 14:53               ` Eli Zaretskii
2022-12-09 18:54           ` Jean Louis
2022-12-09 21:39             ` [External] : " Drew Adams
2022-12-09 23:19             ` Heime
2022-12-10  7:31               ` Eli Zaretskii
2022-12-10  8:31                 ` Heime
2022-12-10  8:50                   ` Eli Zaretskii
2022-12-10 11:06                     ` Heime
2022-12-09  8:26     ` Heime
2022-12-09 12:07       ` Eli Zaretskii
2022-12-09 13:48       ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-10  1:59       ` Emanuel Berg

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.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=831qp82340.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=help-gnu-emacs@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.
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).