fsprojects/VisualFSharpPowerTools — pull request #539 by rojepp (2014-07-02 18:08:38+00:00)
Title: Initial implementation of printf highlighting

![printf](https://cloud.githubusercontent.com/assets/445888/3460015/cce2d7c4-0212-11e4-9c5e-863c26cbabf6.png)

There are some passing tests, and it seems to work fine.
I'm going through the AST and looking for an ident with one of the function names from a set. These ranges are added to a set, much like quotations. Then for each range, find the first string literal and parse it, yielding Printf categories. Do you know of a better way to find `printfn` calls?
Limitations of doing it this way:

* We can't find an alias

```fsharp
let pf = printfn
do pf "%s" "a" // no highlighting here
```

* It is hard to find the correct literal for those funcs where formatting string is not in first position

Only those print functions that have the formatting string in the first position are enabled. Missing are: bprintf, fprintf, fprintfn, kbprintf, kfprintf, kprintf, ksprintf