Forum: Ruby Low level syntax highlighting tools?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Gregory B. (Guest)
on 2008-10-18 19:42
(Received via mailing list)
I'll confess I didn't research this deeply, in hopes that someone
knows of a library and can point me right at it.

Are there any syntax gems out there that'll spit back simple strings
and color values,
something like:

[["def foo\n", "ccffcc"], ["  bar()\n", "ffffff" ], ["end", "ccffcc"]]

If such a tool exists, I can rejoice, because it'd allow me to build
an awsum Prawn based presentation builder.

-greg
Jean-François Trân (Guest)
on 2008-10-18 20:13
(Received via mailing list)
2008/10/18 Gregory B. :

> I'll confess I didn't research this deeply, in hopes that someone
> knows of a library and can point me right at it.
>
> Are there any syntax gems out there that'll spit back simple strings
> and color values,
> something like:
>
> [["def foo\n", "ccffcc"], ["  bar()\n", "ffffff" ], ["end", "ccffcc"]]

I guess no, but if you're using a syntax-colorizing, I think the
thing to do is using the scanner/tokenizer part, that will yield you
tokens for a specified language, and then you just have to create
your own class of Encoder/Converter that will consume tokens
and generate what you need, here an array like you want. It should
be easy, for example, with CodeRay [1] : write your encoder, and
don't use the html encoder.

> If such a tool exists, I can rejoice, because it'd allow me to build
> an awsum Prawn based presentation builder.

Very interesting. I was also thinking of using Prawn to generate
slides.

   -- Jean-François.

[1] http://coderay.rubychan.de
Gregory B. (Guest)
on 2008-10-18 20:30
(Received via mailing list)
On Sat, Oct 18, 2008 at 12:11 PM, Jean-François
Trân<removed_email_address@domain.invalid> wrote:
>
> I guess no, but if you're using a syntax-colorizing, I think the
> thing to do is using the scanner/tokenizer part, that will yield you
> tokens for a specified language, and then you just have to create
> your own class of Encoder/Converter that will consume tokens
> and generate what you need, here an array like you want. It should
> be easy, for example, with CodeRay [1] : write your encoder, and
> don't use the html encoder.

Cool, I'll look into this, thanks.

>> If such a tool exists, I can rejoice, because it'd allow me to build
>> an awsum Prawn based presentation builder.
>
> Very interesting. I was also thinking of using Prawn to generate
> slides.

This code is very old, but will eventually be replaced with modernized
Prawn code:
http://github.com/sandal/brine/tree/master

If you're thinking of working on this, you're welcome to fork this
repos so that we don't duplicate effort.
Ara H. (Guest)
on 2008-10-18 20:33
(Received via mailing list)
On Oct 18, 2008, at 9:41 AM, Gregory B. wrote:

> an awsum Prawn based presentation builder.
>
> -greg



it seems like using Hpricot against one of the current highlighters
would work - just skim out innerHTML/class pairs right?

a @ http://codeforpeople.com/
Gregory B. (Guest)
on 2008-10-18 20:45
(Received via mailing list)
On Sat, Oct 18, 2008 at 12:32 PM, ara.t.howard 
<removed_email_address@domain.invalid>
wrote:
>> [["def foo\n", "ccffcc"], ["  bar()\n", "ffffff" ], ["end", "ccffcc"]]
>>
>> If such a tool exists, I can rejoice, because it'd allow me to build
>> an awsum Prawn based presentation builder.
>>
>> -greg
>
>
>
> it seems like using Hpricot against one of the current highlighters would
> work - just skim out innerHTML/class pairs right?

Hmm... that's an interesting idea too.  I'll take a quick look at how
easy it is to get under the hood of Code Ray, and if it seems
complicated, such a hack would probably do fine.

-greg
This topic is locked and can not be replied to.