2017-12-22 3 views
1

코드 편집기에 사용자 지정 구문 색상을 추가하는 Visual Studio 용 VSIX 확장 프로그램 (2015 및 2017)을 개발했습니다. 이들을 위해 MSDN에서 두 가지 다른 예를 발견했습니다. 하나는 IClassifier를 사용하고 다른 하나는 ITagger를 사용했습니다. < IClassificationSpan>.VSIX IClassifier 대 ITagger <IClassificationSpan>

그들 사이의 차이점은 무엇입니까?

EDIT : 정확하게 말하면, 소스 코드의 고유 한 분류를 추가해야합니다. 예를 들어, 특정 단어에 색상을 추가하고 싶습니다.

+0

MSDN에서 _Tags는 텍스트 범위와 관련된 마커입니다. 텍스트 채색, 밑줄, 그래픽 또는 팝업을 사용하여 등 다른 방법으로 표현할 수 있습니다. 분류 기호는 태그의 한 종류입니다. _ 그래서 색칠 용도로 분류는 다른 목적으로 태그 지정을 사용하십시오. – Misaz

답변

1

IClassifier은 편집기 뒤에있는 텍스트에 적용되며 단어 (간체)를 인식합니다. IClassifier에 의해 발견 된 단어는 소위 분류 범위로 표현됩니다. 분류기에는 예를 들어 일반 텍스트 형식이 지정됩니다.

ITagger은 추가 분석을 위해 특정 유형의 분류 범위를 찾기 위해 사용할 수 있습니다. 예를 들어 철자 검사 일 수도 있고 보행 시선에 표시된 것처럼 TODO 주석 만 찾는 타거 러를 검색 할 수도 있습니다. 이 연습을 통해 도움이 될 수 있습니다. https://msdn.microsoft.com/en-us/library/ee361745.aspx

+0

답장을 보내 주셔서 감사합니다.) 아직도 내 질문에 답하지 않습니다. 주어진 예제는 기존 분류를 재사용하지만 나 자신을 추가해야합니다. 아마 제 질문이 정확하지 않아서 제가 편집했습니다. IClassifier와 ITagger 의 차이점은 무엇입니까? 예를 들어 Roslyn Colorizer 확장 프로그램에서 ITagger 방식이 사용됩니다. https://github.com/tomasr/roslyn-colorizer/blob/master/RoslynColorizer/RoslynColorizer.cs – SENya