unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
Subject: RE: setnu.el / setnu+.el
Date: Wed, 21 Dec 2005 23:24:17 -0800	[thread overview]
Message-ID: <DNEMKBNJBGPAOPIJOOICCEKHDAAA.drew.adams@oracle.com> (raw)
In-Reply-To: <doc2cr$tcr$1@sea.gmane.org>

    >     my line numbers have the same highlighting as
    >     the adjacent code.
    >
    > I just checked in Emacs 22, and you're right. However, in
    > Emacs 20, the line numbers are not highlighted. I believe that
    > this is the code, in setnu.el, that is in question:
    >
    > (defun setnu-set-glyph-face (g face)
    >    (put-text-property 0 (length g) 'face face g))
    >
    > This code is intended to impose the given face (just bold, by
    > default) on the line-number overlay text. It does that correctly,
    > but I guess it does not also remove other text properties that
    > might be on the same overlay (imposed by font-locking).
    >
    > It appears that if the newline at the end of a line is
    > fontified (matches a regexp that imposes fontification), then
    > the line-number overlay is fontified in the same way.

I should have said instead that it appears that if the first character in a
line is fontified then the line number has the same face. I'm seeing this in
an emacs-lisp-buffer, where this occurs, coincidentally, for multiline
strings and start-of-line comments, which I believe are fontified
differently, IIUC - so-called "syntactic" font-lock"? I don't know if that
is pertinent.

    Each overlay has its before-string property set to the fontified string
    returned by setnu-set-glyph-face.  That string is intended to be
    displayed before the overlay, which starts at the beginning of the line
    and ends after the newline (i.e. at the beginning of the next line).

    I don't know what change in Emacs 22 causes the before-string to inherit
    properties from the adjacent text, but according to the Overlay
    Properties node of the Emacs Lisp manual, all overlays take priority
    over text properties.  So maybe it would work to set the overlay's face
    property in setnu-make-setnu-extent:

         (setnu-set-extent-property e 'face nil) ; or 'default

Without really knowing what I'm doing, I tried each of those. Nil had no
effect. `default' caused the entire buffer to lose its fontification when
the line numbers are shown.

  reply	other threads:[~2005-12-22  7:24 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-21  4:54 setnu.el / setnu+.el Sean Sieger
2005-12-21  5:12 ` Drew Adams
2005-12-21  5:22   ` Sean Sieger
2005-12-21  6:38     ` Drew Adams
2005-12-21 15:21       ` Sean Sieger
2005-12-21 17:11       ` Kevin Rodgers
2005-12-22  7:24         ` Drew Adams [this message]
2005-12-23  5:07 ` Sean Sieger
     [not found] <mailman.20010.1135147162.20277.help-gnu-emacs@gnu.org>
2005-12-21 17:49 ` Stefan Monnier
2005-12-22  7:24   ` Drew Adams
2005-12-22 16:24     ` Kevin Rodgers
     [not found]     ` <mailman.20176.1135268751.20277.help-gnu-emacs@gnu.org>
2005-12-22 17:57       ` Stefan Monnier
2005-12-22 18:42         ` Drew Adams
2005-12-23 21:48         ` Kevin Rodgers
2005-12-23 21:57           ` Drew Adams
     [not found]         ` <mailman.20286.1135374622.20277.help-gnu-emacs@gnu.org>
2005-12-26 16:44           ` Stefan Monnier
2005-12-27 17:01             ` Kevin Rodgers
     [not found]             ` <mailman.20559.1135702971.20277.help-gnu-emacs@gnu.org>
2005-12-29  3:56               ` Stefan Monnier
     [not found] <mailman.20287.1135375137.20277.help-gnu-emacs@gnu.org>
2005-12-26 16:47 ` Stefan Monnier

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=DNEMKBNJBGPAOPIJOOICCEKHDAAA.drew.adams@oracle.com \
    --to=drew.adams@oracle.com \
    /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).