[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: When are the face text properties actually set?
From: |
jack-mac |
Subject: |
Re: When are the face text properties actually set? |
Date: |
Thu, 14 Jun 2012 01:40:32 -0700 (PDT) |
User-agent: |
G2/1.0 |
Oops! Sorry for the previous (possibly not deleted) post, sent before
finished. I should not use emacs shortcuts inside firefox...
Thanks a lot, Stefan, for your precious answers!
On 13 juin, 17:18, Stefan Monnier <monn...@iro.umontreal.ca> wrote:
> It's normal: this is handled by jit-lock which adds the property on
> the fly before a chunk of text is displayed.
I did not know jit-mode. Is it recent? Does it replace lazy-lock?
When I start "emacs -Q .emacs", for example, I get the following:
M-: jit-lock-mode
=> t
M-: (memq 'jit-lock-mode minor-mode-list)
=> nil
Can you tell me why jit-lock-mode does not appear in the list of minor
modes?
> > If it's normal, is there any way to force the text properties to
> > be set the way they will be set when the point is displayed?
>
> Yes, you can use something like jit-lock-fontify-now
Thanks! It's very simple and fast enough for my function, but...
> Rather than check the `face' property for `font-lock-comment-face'
> you should check the output of (syntax-ppss), which also has the
> advantage of not depending on highlighting (so you don't need to
> fiddle with jit-lock or worry about those users who disable
> font-lock).
Well, to answer Eli's question (why do I need that), I would say that
checking the text-properties was the solution I imagined to determine
whether the point is inside a string or a comment, for example.
Now, Stefan tells me there is an API to the syntactic parser.
Woah! It's like opening a door to a rich and exciting new world!
I took a look at syntax-ppss and parse-partial-sexp documentation.
It says it parses *Lisp* syntax.
Is it a bug in the documentation?
Before I go any further in the tests and doc (which is far for being
perfectly clear to me, at first glance!), can you tell me if I can use
it in other modes than emacs-lisp, like C-like modes, for example?
Actually, I'm currently working on shell scripts (in sh-mode[pdksh]).
Does it handle the whole syntax:
"..." '...' `...` {...} [...] [[...]] $(...) etc?
Thanks in advance