구문 색 지정
Visual Studio색 지정 서비스를 사용 하 여 언어의 요소를 식별 하 여 편집기에서 지정 된 색상을 표시 합니다.
Colorizer 모델
언어 서비스 구현에서 IVsColorizer 다음 편집기에서 사용 되는 인터페이스입니다. 이 구현 언어 서비스에서 별도 개체는 다음 그림에 표시 된 대로입니다.
간단한 colorizer 모델
참고
구문 서비스의 일반 분리 된 Visual Studio 텍스트 색을 조정 하는 메커니즘입니다.일반에 대 한 자세한 내용은 Visual Studio SDK 색 조정, 지원 메커니즘을 참조 하십시오. 글꼴.
뿐만 아니라 colorizer, 편집기에서 사용자 지정 색 항목을 제공 하는 광고에서 사용 되는 사용자 지정 색 항목 언어 서비스를 제공할 수 있습니다. 구현 하 여이 작업을 수행할 수 있습니다의 IVsProvideColorableItems 인터페이스를 구현 하는 동일한 개체에는 IVsLanguageInfo 인터페이스입니다. 편집기를 호출 하는 경우 사용자 지정 색 항목 수 반환의 GetItemCount 메서드 및 해당 반환를 개별 사용자 지정 색 항목 편집기를 호출 하는 경우는 GetColorableItem 메서드.
GetColorableItem 메서드를 구현 하는 개체를 반환 합니다. 해당 IVsColorableItem 인터페이스입니다. 24 비트 또는 높은 색상 값을 지 원하는 언어 서비스 구현 해야는 IVsHiColorItem 인터페이스와 같은 개체에는 IVsColorableItem 인터페이스입니다.
있는 VSPackage 언어 서비스 Colorizer 사용 하는 방법
있는 VSPackage 언어 서비스 VSPackage 다음 작업을 수행 해야 하는 적합 한 언어 서비스를 가져와야 합니다.
구현 하는 개체를 사용 하 여 IVsTextBuffer 텍스트를 조정 하 게 하는 인터페이스입니다.
구현 하는 개체를 사용 하 여 텍스트 표시 됩니다 일반적으로 IVsTextView 인터페이스입니다.
언어 서비스를 VSPackage GUID는 언어 서비스의 서비스 공급자를 쿼리하여 가져옵니다. 언어 서비스에서 레지스트리 파일 확장명으로 식별 됩니다.
언어 서비스와 연결을 IVsTextBuffer 를 호출 하 여 해당 SetLanguageServiceID 메서드.
지금 있는 VSPackage 있습니다 구하고 colorizer 개체를 다음과 같이 사용.
참고
코어 편집기 사용 VSPackages 언어 서비스 colorizer 개체를 명시적으로 얻이 필요가 없습니다.적절 한 언어 서비스 코어 편집기의 인스턴스를 얻는 즉시 여기에 표시 된 색 처리 작업을 모두 수행 합니다.
구현 하는 언어 서비스 colorizer 개체를 가져온는 T:Microsoft.VisualStudio.TextManager.Interop.IVsColorizer, 및 IVsColorizer2 를 호출 하 여 인터페이스를는 GetColorizer 메서드는 언어 서비스를 IVsLanguageInfo 개체입니다.
호출 하는 ColorizeLine 텍스트의 특정 범위에 대 한 colorizer 정보를 얻으려면 방법입니다.
ColorizeLine값을 각각 다른 색으로 표시 되는 텍스트 범위에 문자 배열로 반환 합니다. 코어 편집기에 의해 유지 관리 되는 기본 색 항목 목록 또는 언어 서비스에서 유지 관리 되는 사용자 지정 색 항목 목록 색 항목 목록 인덱스 값을입니다.
반환할 색 조정 정보를 사용 하는 ColorizeLine 메서드는 선택한 텍스트를 표시 합니다.
참고
언어 서비스 colorizer 이외에 있는 Vspackage도는 일반적인 용도의 사용 하 여 Visual Studio 텍스트 색 메커니즘이 있습니다.이 메커니즘에 대 한 자세한 내용은 참조 하십시오. 글꼴.
단원 내용
구문 색상 표시를 구현합니다.
편집기는 언어 서비스의 구문 색상 표시 및 언어 서비스 색 구문을 지원 하기 위해 구현 해야에 액세스 하는 방법에 대해 설명 합니다.방법: 기본 제공 색 항목 사용
기본 제공 색 항목 언어 서비스에서 사용 하는 방법을 보여 줍니다.사용자 지정 색 항목
사용자 지정 색 항목을 구현 하는 방법에 대해 설명 합니다.