unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* Ektending rainbow-delimiters to colour {}
@ 2022-07-19  7:29 carlmarcos--- via Users list for the GNU Emacs text editor
  2022-07-19  7:34 ` tomas
  0 siblings, 1 reply; 7+ messages in thread
From: carlmarcos--- via Users list for the GNU Emacs text editor @ 2022-07-19  7:29 UTC (permalink / raw)
  To: Help Gnu Emacs


I am using rainbow-delimiters and want to extend it to colour {} in addition to ().  Is there an easy way to do it?  rainbow-delimiters--propertize is the main function for dynamic highlighting.

The line

(while (> end (progn (skip-syntax-forward "^()" end)

seems to be the part searching for ().



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ektending rainbow-delimiters to colour {}
  2022-07-19  7:29 Ektending rainbow-delimiters to colour {} carlmarcos--- via Users list for the GNU Emacs text editor
@ 2022-07-19  7:34 ` tomas
  2022-07-19  8:21   ` carlmarcos--- via Users list for the GNU Emacs text editor
  0 siblings, 1 reply; 7+ messages in thread
From: tomas @ 2022-07-19  7:34 UTC (permalink / raw)
  To: help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 563 bytes --]

On Tue, Jul 19, 2022 at 09:29:31AM +0200, carlmarcos--- via Users list for the GNU Emacs text editor wrote:
> 
> I am using rainbow-delimiters and want to extend it to colour {} in addition to ().  Is there an easy way to do it?  rainbow-delimiters--propertize is the main function for dynamic highlighting.
> 
> The line
> 
> (while (> end (progn (skip-syntax-forward "^()" end)
> 
> seems to be the part searching for ().

Look up the documentation for `skip-syntax-forward'. Then read on
syntax classes. Then, be enlightened :)

Cheers
-- 
t

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ektending rainbow-delimiters to colour {}
  2022-07-19  7:34 ` tomas
@ 2022-07-19  8:21   ` carlmarcos--- via Users list for the GNU Emacs text editor
  2022-07-19  8:39     ` tomas
       [not found]     ` <YtZt0b/KBWW/CNV5@tuxteam.de-N7KbPIc----2>
  0 siblings, 2 replies; 7+ messages in thread
From: carlmarcos--- via Users list for the GNU Emacs text editor @ 2022-07-19  8:21 UTC (permalink / raw)
  To: tomas; +Cc: help-gnu-emacs


Jul 19, 2022, 07:34 by tomas@tuxteam.de:

> On Tue, Jul 19, 2022 at 09:29:31AM +0200, carlmarcos--- via Users list for the GNU Emacs text editor wrote:
>
>>
>> I am using rainbow-delimiters and want to extend it to colour {} in addition to ().  Is there an easy way to do it?  rainbow-delimiters--propertize is the main function for dynamic highlighting.
>>
>> The line
>>
>> (while (> end (progn (skip-syntax-forward "^()" end)
>>
>> seems to be the part searching for ().
>>
>
> Look up the documentation for `skip-syntax-forward'. Then read on
> syntax classes. Then, be enlightened :)
>
From the help for skip-syntax-forward, if syntax starts with ^, skip characters whose syntax is not in syntax.




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ektending rainbow-delimiters to colour {}
  2022-07-19  8:21   ` carlmarcos--- via Users list for the GNU Emacs text editor
@ 2022-07-19  8:39     ` tomas
       [not found]     ` <YtZt0b/KBWW/CNV5@tuxteam.de-N7KbPIc----2>
  1 sibling, 0 replies; 7+ messages in thread
From: tomas @ 2022-07-19  8:39 UTC (permalink / raw)
  To: carlmarcos; +Cc: help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 529 bytes --]

On Tue, Jul 19, 2022 at 10:21:15AM +0200, carlmarcos@tutanota.com wrote:
> 
> Jul 19, 2022, 07:34 by tomas@tuxteam.de:

[...]

> > Look up the documentation for `skip-syntax-forward'. Then read on
> > syntax classes. Then, be enlightened :)
> >
> >From the help for skip-syntax-forward, if syntax starts with ^, skip characters whose syntax is not in syntax.

Nearly.

Dig deeper: what could that "syntax" thing mean? Did you read on syntax
classes in the manual? Does this answer your question?

Cheers
-- 
t

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ektending rainbow-delimiters to colour {}
       [not found]     ` <YtZt0b/KBWW/CNV5@tuxteam.de-N7KbPIc----2>
@ 2022-07-19  9:31       ` carlmarcos--- via Users list for the GNU Emacs text editor
  2022-07-19  9:45         ` tomas
       [not found]         ` <YtZ9SMvKteNQarqS@tuxteam.de-N7KqPqW----2>
  0 siblings, 2 replies; 7+ messages in thread
From: carlmarcos--- via Users list for the GNU Emacs text editor @ 2022-07-19  9:31 UTC (permalink / raw)
  To: tomas; +Cc: help-gnu-emacs


Jul 19, 2022, 08:39 by tomas@tuxteam.de:

> On Tue, Jul 19, 2022 at 10:21:15AM +0200, carlmarcos@tutanota.com wrote:
>
>>
>> Jul 19, 2022, 07:34 by tomas@tuxteam.de:
>>
>
> [...]
>
>> > Look up the documentation for `skip-syntax-forward'. Then read on
>> > syntax classes. Then, be enlightened :)
>> >
>> >From the help for skip-syntax-forward, if syntax starts with ^, skip characters whose syntax is not in syntax.
>>
>
> Nearly.
>
> Dig deeper: what could that "syntax" thing mean? Did you read on syntax
> classes in the manual? Does this answer your question?
>
I have read.  Looks as if emacs has internal functionality to determine start and end of elisp
expressions, which rainbow-delimiters relies of.  It does actually also follow [], not so for {}.    




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ektending rainbow-delimiters to colour {}
  2022-07-19  9:31       ` carlmarcos--- via Users list for the GNU Emacs text editor
@ 2022-07-19  9:45         ` tomas
       [not found]         ` <YtZ9SMvKteNQarqS@tuxteam.de-N7KqPqW----2>
  1 sibling, 0 replies; 7+ messages in thread
From: tomas @ 2022-07-19  9:45 UTC (permalink / raw)
  To: carlmarcos; +Cc: help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 1570 bytes --]

On Tue, Jul 19, 2022 at 11:31:48AM +0200, carlmarcos@tutanota.com wrote:
> 
> Jul 19, 2022, 08:39 by tomas@tuxteam.de:
> 
> > On Tue, Jul 19, 2022 at 10:21:15AM +0200, carlmarcos@tutanota.com wrote:
> >
> >>
> >> Jul 19, 2022, 07:34 by tomas@tuxteam.de:
> >>
> >
> > [...]
> >
> >> > Look up the documentation for `skip-syntax-forward'. Then read on
> >> > syntax classes. Then, be enlightened :)
> >> >
> >> >From the help for skip-syntax-forward, if syntax starts with ^, skip characters whose syntax is not in syntax.
> >>
> >
> > Nearly.
> >
> > Dig deeper: what could that "syntax" thing mean? Did you read on syntax
> > classes in the manual? Does this answer your question?
> >
> I have read.  Looks as if emacs has internal functionality to determine start and end of elisp
> expressions, which rainbow-delimiters relies of.  It does actually also follow [], not so for {}.    

Read again:

  The “syntax class” of a character describes its syntactic role.  Each
  syntax table specifies the syntax class of each character.  There is no
  necessary relationship between the class of a character in one syntax
  table and its class in any other table.

So whether { resp } have the syntax class symbolised by ( resp. ) depends
on how you set up your syntax class table. Major modes set that up to match
the expectations of the language in question. In theory you could even set
# . up as opening and closing parentheses whenever it makes sense.

The answer is: Emacs _already does_ what you want.

Cheers
-- 
t

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ektending rainbow-delimiters to colour {}
       [not found]         ` <YtZ9SMvKteNQarqS@tuxteam.de-N7KqPqW----2>
@ 2022-07-19 10:15           ` carlmarcos--- via Users list for the GNU Emacs text editor
  0 siblings, 0 replies; 7+ messages in thread
From: carlmarcos--- via Users list for the GNU Emacs text editor @ 2022-07-19 10:15 UTC (permalink / raw)
  To: tomas; +Cc: help-gnu-emacs



-- 
 Sent with Tutanota, enjoy secure & ad-free emails. 



Jul 19, 2022, 09:45 by tomas@tuxteam.de:

> On Tue, Jul 19, 2022 at 11:31:48AM +0200, carlmarcos@tutanota.com wrote:
>
>>
>> Jul 19, 2022, 08:39 by tomas@tuxteam.de:
>>
>> > On Tue, Jul 19, 2022 at 10:21:15AM +0200, carlmarcos@tutanota.com wrote:
>> >
>> >>
>> >> Jul 19, 2022, 07:34 by tomas@tuxteam.de:
>> >>
>> >
>> > [...]
>> >
>> >> > Look up the documentation for `skip-syntax-forward'. Then read on
>> >> > syntax classes. Then, be enlightened :)
>> >> >
>> >> >From the help for skip-syntax-forward, if syntax starts with ^, skip characters whose syntax is not in syntax.
>> >>
>> >
>> > Nearly.
>> >
>> > Dig deeper: what could that "syntax" thing mean? Did you read on syntax
>> > classes in the manual? Does this answer your question?
>> >
>> I have read.  Looks as if emacs has internal functionality to determine start and end of elisp
>> expressions, which rainbow-delimiters relies of.  It does actually also follow [], not so for {}.   
>>
>
> Read again:
>
>  The “syntax class” of a character describes its syntactic role.  Each
>  syntax table specifies the syntax class of each character.  There is no
>  necessary relationship between the class of a character in one syntax
>  table and its class in any other table.
>
> So whether { resp } have the syntax class symbolised by ( resp. ) depends
> on how you set up your syntax class table. Major modes set that up to match
> the expectations of the language in question. In theory you could even set
> # . up as opening and closing parentheses whenever it makes sense.
>
> The answer is: Emacs _already does_ what you want.
>
How can I do it exactly?  





^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-07-19 10:15 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-19  7:29 Ektending rainbow-delimiters to colour {} carlmarcos--- via Users list for the GNU Emacs text editor
2022-07-19  7:34 ` tomas
2022-07-19  8:21   ` carlmarcos--- via Users list for the GNU Emacs text editor
2022-07-19  8:39     ` tomas
     [not found]     ` <YtZt0b/KBWW/CNV5@tuxteam.de-N7KbPIc----2>
2022-07-19  9:31       ` carlmarcos--- via Users list for the GNU Emacs text editor
2022-07-19  9:45         ` tomas
     [not found]         ` <YtZ9SMvKteNQarqS@tuxteam.de-N7KqPqW----2>
2022-07-19 10:15           ` carlmarcos--- via Users list for the GNU Emacs text editor

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