codemirror-powered GLSL editor component