unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: David Koppelman <koppel@ece.lsu.edu>
To: Jambunathan K <kjambunathan@gmail.com>
Cc: 13686@debbugs.gnu.org
Subject: bug#13686: hi-yellow vs. hi-lock-1
Date: Wed, 10 Apr 2013 13:33:37 -0500	[thread overview]
Message-ID: <yg5r4iiutfi.fsf@sky.ece.lsu.edu> (raw)
In-Reply-To: <87y5cttwpw.fsf@gmail.com> (Jambunathan K.'s message of "Mon, 08 Apr 2013 11:01:07 +0530")

Jambunathan K <kjambunathan@gmail.com> writes:

> Let me propose a new scheme which will work as below.
  ...

I'm not sure I understand the point. I'm pretty sure you are not
suggesting that the hi-lock commands be replaced by something like
highlight-other-matches to be used after a sequence of facemenu
commands. That would be too cumbersome.

Stefan's concise face description format sounds reasonable, especially
since it could be used in other modes maybe through a function like
(concise-face-get-face STR) that creates a new face or returns an
existing one. That would avoid loading hi-lock with unneeded
complexity.


I think there are more useful improvements than face handling that can
be made to hi-lock. For example, a way to save highlighting patterns in
a separate file.



Jambunathan K <kjambunathan@gmail.com> writes:

> Stefan Monnier <monnier@iro.umontreal.ca> writes:
>
>> How 'bout designing a concise "face description" format, so that instead
>> of choosing "hi-yellow", the user can choose (say) "b:yellow",
>> "f:blue", or "s:bold".  This would give access to "any color", and in
>> order not to overwhelm the user, the completion would default to only
>> completing among a predefined set (corresponding to the current
>> predefined faces)?
>
> I was trying to refine this line of thought.  It leads to facemenu.el,
> specifically `facemenu-set-foreground' and `facemenu-set-background'.
>
> Stay with me, as I explain.
>
> ----------------------------------------------------------------
>
> Currently highlighting works as follows:
>
>     1. Choose a regexp via minibuffer
>     2. Choose a face via minibuffer
>     3. Decorate the buffer via font lock keywords.
>
> Let me call this model, "Tell and Do".  Highlighting is explicitly
> "Told" via minibuffer.
>     
> ----------------------------------------------------------------
>
> Let me propose a new scheme which will work as below.
>
> 1. Mark a word or a symbol under point
>         C-M-@
>
> 2. Decorate region which is but a instance to be highlighted
>
>         M-x facemenu-set-foreground RET
>         M-x facemenu-set-background RET
>         M-x facemenu-set-bold RET
>         & co.
>
> 3. Highlight
>         M-s h r or C-x w h.
>
>    Face properties used for highlighting will be use results determined
>    by 2.
>
> This model is "Show and Tell".  Face properties of highlighting are
> "Shown" right in the buffer that is edited (as opposed to a minibuffer
> prompt) and highlighting library infers the face properties based on
> text at point.
>
> ----------------------------------------------------------------
>
> There is a functional parity between `hi-lock-face-defaults' and
> `facemenu-listed-faces'.
>
> ----------------------------------------------------------------
>
> Problem statement/Possible way ahead
> ====================================
>
> Of course facemenu.el, "works" only for certain modes.
>
> More specifically it works only for those modes that defines a
> `facemenu-enable-faces-p'.  The notion of persistence of face properties
> (as in serializing/encoding face properties in to the edited text) is
> "in built" in to facemenu.el.
>
> I have more ideas on how facemenu.el can play nicely with other
> libraries.  I will dump my thoughts in a separate bug report.
>
> ----------------------------------------------------------------





  parent reply	other threads:[~2013-04-10 18:33 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-11  6:14 bug#13686: 24.3.50; Re-look hi-lock-face-defaults (aka Provide more "core" faces for highlighting) Jambunathan K
2013-02-15 15:03 ` Stefan Monnier
2013-02-15 18:29   ` David Koppelman
2013-02-15 20:39     ` Stefan Monnier
2013-02-26 23:11 ` bug#13686: hi-yellow vs. hi-lock-1 David Koppelman
2013-02-27  0:33   ` Drew Adams
2013-02-27  1:35     ` Stefan Monnier
2013-02-27  3:59       ` Jambunathan K
2013-02-27  4:58       ` Drew Adams
2013-02-27  5:10         ` Jambunathan K
2013-02-27  5:38           ` Drew Adams
2013-02-27  5:54             ` Jambunathan K
2013-02-27  6:01               ` Drew Adams
2013-02-27 23:45             ` Juri Linkov
2013-03-06 18:43               ` Jambunathan K
2013-03-06 19:54                 ` David Koppelman
2013-03-07  9:16                 ` Juri Linkov
2013-03-06 19:04             ` Jambunathan K
2013-02-27  3:49     ` Jambunathan K
2013-02-27 13:46       ` Stefan Monnier
2013-02-27 14:56         ` Jambunathan K
2013-02-27 16:27           ` Stefan Monnier
2013-03-06 18:56         ` Jambunathan K
2013-03-06 19:55           ` David Koppelman
2013-03-06 20:06             ` Jambunathan K
2013-03-07  0:54               ` David Koppelman
2013-03-07  3:23                 ` Jambunathan K
2013-03-09  1:33             ` Stefan Monnier
2013-03-09  2:47               ` Jambunathan K
2013-03-09  3:26                 ` Stefan Monnier
2013-04-08  5:31               ` Jambunathan K
2013-04-10  4:11                 ` Jambunathan K
2013-04-10 18:33                 ` David Koppelman [this message]
2013-04-11  4:24                   ` Jambunathan K
2013-02-27  3:36   ` Jambunathan K
2013-02-27  4:08   ` Jambunathan K
2013-11-15  4:45 ` bug#13686: 24.3.50; Re-look hi-lock-face-defaults (aka Provide more "core" faces for highlighting) Jambunathan K

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=yg5r4iiutfi.fsf@sky.ece.lsu.edu \
    --to=koppel@ece.lsu.edu \
    --cc=13686@debbugs.gnu.org \
    --cc=kjambunathan@gmail.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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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