2014-10-15 2 views
0

다국어 키워드로 문법을 만들 수 있습니까? 저는 100 개가 넘는 키워드로 여러 언어로 번역해야하는 dsl 언어를 구현하고 있습니다. XText로이를 달성 할 수있는 방법이 있습니까? 다음은 dsl의 예입니다. 첫 번째 행은 키워드 언어를 설명합니다. 두 번째와 세 번째 줄은 이미 정의되어 영어와 독일어다국어 키워드가있는 X 텍스트

..language english 
.help 'index.html' 
.select '1_2' 

..language german 
.hilfe 'index.html' 
.hole '1_2' 

DSL 문법 키워드의 예와 다른 언어로 파일이 이미 있습니다. 따라서 편집기를 만들어야하고 문법과 키워드를 변경할 수 없습니다.

답변

0

Xtext를 사용하면 분명히 요구할 수 있습니다. 커스텀 렉서를 사용할 수 있지만, 원래 렉서가하는 것과 동일한 토큰 타입을 생성해야합니다. org.eclipse.xtext.generator.parser.antlr.ex.ExternalAntlrLexerFragment을 확인하시기 바랍니다.

+0

팁 주셔서 감사합니다. 나는이 수업의 목적을 이해하고 있는지 정말로 확신하지 못합니다. '내부 구문 분석기'에서 규칙을 생성합니까? – aphex

+0

포인터는 단지 엔트리 포인트로 사용되어 자신의 렉서 (lexer)를 만들려는 경우 어떤 제약 조건을 고려해야하는지 확인할 수 있습니다. 사용자 정의 토큰을 만들거나 문자열을 키워드/식별자로 직접 나눌 때 파서의 소위 토큰 어휘를 존중해야합니다. 이 접근 방식은 특히 간단하지는 않습니다. –

관련 문제