<div dir="ltr">Beautiful, thanks!</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Mar 17, 2015 at 4:02 PM, Michael Sloan <span dir="ltr"><<a href="mailto:mgsloan@gmail.com" target="_blank">mgsloan@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello!<br>
<br>
I wrote some code to do this quite recently, as part of an internal<br>
tool at FP Complete.  I've copied out the relevant functions and<br>
written an example of using it here:<br>
<a href="https://gist.github.com/mgsloan/ac77dd33326322fc6ccd" target="_blank">https://gist.github.com/mgsloan/ac77dd33326322fc6ccd</a><br>
<br>
I hope that helps!<br>
<span class="HOEnZb"><font color="#888888">-Michael<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Tue, Mar 17, 2015 at 9:12 AM, Maurizio Vitale <<a href="mailto:mrz.vtl@gmail.com">mrz.vtl@gmail.com</a>> wrote:<br>
> G'day!<br>
><br>
> Is there an easy way to extract a single declaration from an Haskell source<br>
> file and print it with the original formatting?<br>
><br>
> [I could live with pretty printing, but the default prettyPrint gives me a<br>
> very strange formatting where something like:<br>
> main = do<br>
>   putStrLn "Hello"<br>
> becomes:<br>
> main = do putStrLn "Hello"]<br>
><br>
> The closest I've got is to parse the file with comments and then get inside<br>
> Module ...decls and do printExact with an empty comment list for the decl<br>
> I'm interested in. This gives me the original formatting and empty lines<br>
> where comments were that I can then remove.<br>
><br>
> But if there was anything already out there that just take a String for the<br>
> toplevel I'm interested in and convert that only, I'd love to know.<br>
><br>
> Thanks,<br>
><br>
>   Maurizio<br>
><br>
</div></div><div class="HOEnZb"><div class="h5">> _______________________________________________<br>
> Haskell-Cafe mailing list<br>
> <a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
> <a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
><br>
</div></div></blockquote></div><br></div>