Форматирование кода (отступ) и Подсветка синтаксиса - это две разные пары обуви! Для форматирования вам также понадобится относительно полный синтаксический анализатор, в то время как для подсветки синтаксиса вы можете просто токенизировать ваш ввод и раскрасить его.
Я полагаю, что существуют расширяемые маркеры, но вам понадобится что-то вроде синтаксического анализатора ANTLR, если вам нужно отформатировать код.