Long time reader, first time poster.
As I've been living in Dublin for a bit now, I've had the opportunity to use CityJet often for trips back and forth between Dublin and London. Trips booked on Air France operated by CityJet equipment will post to your OnePass account. You will need to send your boarding pass in, but I have never had an issue getting full EQMs or EQPs even on a non-Y ticket.
I haven't flown them from London City up to Edinburgh, so I can't comment on that route. Just as a warning, check the equipment that you're flying, anything on a Dornier 328 is a codeshare to ScotAirways and I don't know if that would present any problems for OnePass redemption. The BAe 146 and Avro RJs should all be CityJet.
As far as the CityJet experience, it's about on par with the offerings of Aer Lingus and BMI between LHR and DUB (they don't have Buy-On-Board, but you do get some snack mix and a beverage). I haven't tried British Airways to LGW, and refuse to fly Ryanair. Flying out of LCY (London City) is great, you can check in, clear security, and be at your gate in less than 10 minutes. Furthermore, it's right on the Docklands Light Railway (DLR) which connects up with the Tube so it's easy to get to.
I've found that CityJet may be a bit more expensive than Aer Lingus or BMI, but I find the convenience of LCY to be worth the small extra expense. Just one other quick point, Ryanair is not always the cheapest to London. Aer Lingus and BMI are often a bit better and I can't comment on British Airways.
I don't know how familiar you are with London, but make sure to check out
www.tfl.gov.uk and get yourself an Oyster Pass. (You'll have to pick one up at a Tube stop or a shop.) I've always saved a fair amount of money using that over individual tickets for public transport and these savings have paid for the 3 pound deposit many times over.
Enjoy your trip!