-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

In proper Perl fashion, there's a module for this:
https://github.com/tadzik/Terminal-ANSIColor

I haven't used it myself, so I'm not sure how well it works, but it's
worth a shot at least.

On Sun, 3 Jun 2018 20:41:32 -0400
Xin Cheng <xinchen...@gmail.com> wrote:

> Hi,
> 
> I am trying to make a program to do grep with perl6 regular
> expression, and I would like to colorize the matched part to the
> terminal. So the following is what I wrote 
> 
> sub MAIN(Str $pattern,Str $filename){
>     for $filename.IO.lines -> $line  {
>         my Str $temp = $line;
>         if $temp ~~ s/ (<$pattern>) /\\x1b\[31m$0\\x1b\[0m/ {say
> $temp}; # if no <> surrounding $pattern it becomes literal. }
> }
> 
> And I named the program as grep6, and I tried it in zsh as
> 
> > grep6 'M.*N' =grep6  
> 
> And I got,
> 
> sub \x1b[31mMAIN\x1b[0m(Str $pattern,Str $filename){
> 
> How do I turn the string into color?
> 
> Thanks!
> 
> Xin
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEE4eL662U9iK2ST2MqN/W6H45XOE8FAlsUlAUACgkQN/W6H45X
OE99fAgAjm1X4aRFUcWcJM2pLnbxy69XxaG//1ZvGROm/+iO96s2/WlTFMf5httI
DJeJFQ5XTzGSwKQUn5PJXhMTCEqzcl8Niqtb/Armat8WCPgXW4DWjhlc9i+4nLiJ
mEv+TljWn1oEUEcC7jO4M60SfddXl9Uy+v5VUnl59NNcX3LwgGRYKQ9e3eDjyIGW
0aKL4KvDw3LvchxGJdc8BeNXvlvQLmyeousaP/xIWLNObphsRME3VDd4myL7dUxJ
bQreldZEFztz4ogTh7a/KnjHGZ46NyaY6LJZh1fa7cRvYNNkIMR8em5Js0/9dSAA
NCTm3why/Z6EBiWrWhPyBNNvRbiYaQ==
=EDFv
-----END PGP SIGNATURE-----

Reply via email to