A language is defined in a qnfa file located at utilities\qxs. The format is specified at http://qcodeedit.edyuk.org/docs/qce_examples.html. See existing language definitions for examples.
N.b.: id and format attributes are labels you have to provide. Except for rare cases (see specification) id is irrelevant (just make up some name). You may reuse existing format strings. If you define new ones, you have to add the definitition of the format to defaultFormats.qxf
If formats should be user-editable, they have to be registered (see fmConfig->addCategory() calls in ConfigDialog::ConfigDialog (configdialog.cpp)