There will be user config which keywords get a line, and which do not. I already have some code for that, but it is not committed.
There are actual painting bugs in the code at the moment (search this thread for "invalidation"), so until they are fixed, I am not adding anything else.
Also if you plan to make changes to the code, keep in mind, that the invalidation issue may mean, that substantial parts may need to be written from scratch. So changes may get lost....
I have not spent much thought on, if for/do/with should be one or 2 colors (personally, 2 colors, or only ONE line at all), but maybe configurable.
As for the "and" that is the "if" line. Lines (like folding) start at the keyword, maybe the better choice of keyword would be the "then"
But that is fine tuning. (maybe even already configurable)
Yes to the "else".