2016-08-14 1 views
2

Visual Studio 코드가 테마와 언어 파일 간의 식별자와 어떻게 일치하는지 이해하려고합니다.tmLanguage와 tmTheme 파일 간의 식별자 일치

... 
      <dict> 
       <key>begin</key> 
       <string>'</string> 
       <key>beginCaptures</key> 
       <dict> 
        <key>0</key> 
        <dict> 
         <key>name</key> 
         <string>punctuation.definition.string.begin.java-or-c</string> 
        </dict> 
       </dict> 
... 

딕셔너리는 작은 따옴표 문자열의 시작을 식별하는 식별자 punctuation.definition.string.begin.java 또는-C을 포함 하나 개 tmLanguage 파일의 예를 들어이 같은 정의가 있습니다. 이제 내가 가지고있는 tmThemes 파일 중 하나를 살펴보면,이 식별자는 언급되지 않았고 실제로 언어 파일 작성자는 원하는 식별자를 자유롭게 사용할 수 있다고 상상할 수 있습니다. 그러나 VS 코드가 적용 할 색상을 알 수 있도록 테마가 어떻게 일치 할 수 있습니까? 프로세스를 설명하는 문서가 있습니까?

답변

0

비주얼 스튜디오 코드는 분명의 TextMate에서 스타일링 접근 방식을 사용, TextMate에 적용된다 무엇 때문에 많은 (예 : a nd 언어 사용자 정의)는 VS 코드에서도 유효합니다. 일치는 CSS 선택자와 마찬가지로 수행됩니다 (Scope Selectors 문서에 설명되어 있음). 즉, 주제 파일에는 특정 범위의 색상 값 (예 : DAXaholic에서 언급 한 색상 값)이 포함되어 있습니다. 이것들은 언어 파일에 지정된 범위와 부분적으로 또는 전체적으로 일치합니다. 범위 "문자열"은 모든 "문자열. 인용 된"범위와 일치합니다.

특히 언어 + 테마 파일에서 지원해야하는 범위는 다음 페이지에서 수행 할 수 있습니다 : Writing a TextMate Grammar: Some Lessons Learned 또한 표준 목록 범위.

2

일부 conventions이 (테마는 여러 언어에 사용할 수 있도록 사용되는 식별자의 주위에 스크롤합니다. 그래서 기본적으로 당신이 맞다
를, 언어 파일을 작성하는 사람은 완전 무료 그가 좋아하지만 어떤 식별자를 사용하여 이론에있다 아마 또한 첨부 테마 파일이 필요

당신은 또한 다음과 같은 답변을 확인 할 수 있습니다

:.
Are there any standards for tmlanguage keyword types?

+0

⇬ 이것이 실제로 질문에 대답하지는 않지만, 시작한 것처럼. –

관련 문제