Навин писал:
Кто-нибудь пробовал использовать лексер pygments с целью python antlr?
Я сомневаюсь в этом. По крайней мере, я никогда не видел, чтобы кто-то упоминал об этом ни здесь, ни в SO, ни в списках рассылки ANTLR (которые я наблюдаю уже довольно давно).
Навин писал:
Могу ли я просто написать файл grammarname.tokens, который может импортировать анализатор antlr?
Нет. Парсер ожидает экземпляр объекта Lexer
, который присутствует во время выполнения (Python). Файл .tokens
не должен редактироваться вручную.
Навин писал:
Когда я использую лексер antlr, есть куча анонимных токенов, могу ли я просто удалить их?
Не совсем уверен, что вы имеете в виду, но удаление любого сгенерированного кода мне кажется плохой идеей. Если вы имеете в виду файл .tokens
, как я упоминал ранее: он не должен редактироваться вручную.
Я действительно не стал бы пытаться "склеить" некоторую внешнюю лексер-грамматику или полный лексер в ANTLR. Я почти уверен, что это даст вам больше времени для реализации, чем просто написание грамматики лексера ANTLR самостоятельно. В конце концов: определение правил лексера в большинстве случаев является самой простой частью языка.