editor services as list, and lazily add semantic provider after checking existance