다음을 통해 공유


편집기 및 언어 서비스 확장

사용자의 편집기에 언어 서비스 기능(예: IntelliSense)을 추가하고 Visual Studio 코드 편집기의 기능을 대부분 확장할 수 있습니다. 확장할 수 있는 항목의 전체 목록은 언어 서비스 및 편집기 확장 지점을 참조하세요.

MEF(Managed Extensibility Framework)를 사용하여 대부분의 편집기 기능을 확장합니다. 예를 들어 확장하려는 편집기 기능이 구문 색 지정인 경우 다른 색 지정을 원하는 분류 및 해당 처리 방법을 정의하는 MEF 구성 요소 부분을 작성할 수 있습니다. 또한 편집기는 동일한 기능의 여러 확장을 지원합니다.

편집기 프레젠테이션 계층은 WPF(Windows Presentation Framework)를 기반으로 합니다. WPF는 유연한 텍스트 서식 지정을 위한 그래픽 라이브러리를 제공하고 그래픽 및 애니메이션과 같은 시각화도 제공합니다.

Visual Studio SDK는 이전 버전에 대해 작성된 VSPackage를 지원하기 위해 shim이라고 하는 어댑터를 제공합니다. 그럼에도 불구하고 기존 VSPackage가 있는 경우 더 나은 성능과 안정성을 얻기 위해 새 기술로 업데이트하는 것이 좋습니다.

제목 설명
언어 서비스 및 편집기 확장 시작 편집기 확장을 만드는 방법을 설명합니다.
편집기 기본 사항 편집기의 일반적인 구조를 설명하고 일부 기능을 나열합니다.
편집기의 Managed Extensibility Framework 편집기에서 MEF(Managed Extensibility Framework)를 사용하는 방법을 설명합니다.
언어 서비스 및 편집기 확장 지점 편집기의 확장 지점을 나열합니다. 확장 지점은 확장할 수 있는 편집기 기능을 나타냅니다.
연습: 보기 장식, 명령 및 설정 만들기(열 안내선) 코드를 특정 표시 너비로 유지하는 데 도움이 되는 열 안내선을 그리는 보기 장식을 빌드하는 방법을 설명합니다. 또한 읽기 및 쓰기 설정과 명령 창에서 호출할 수 있는 명령 선언 및 구현도 보여 줍니다.
편집기 가져오기 확장에서 가져올 수 있는 서비스를 나열합니다.
레거시 코드를 편집기로 조정 레거시 코드(Visual Studio 2010 이전)를 조정하여 편집기를 확장하는 다양한 방법을 설명합니다.
레거시 언어 서비스 마이그레이션 VSPackage 기반 언어 서비스를 마이그레이션하는 방법을 설명합니다.
연습: 콘텐츠 형식을 파일 이름 확장명에 연결 콘텐츠 형식을 파일 이름 확장명에 연결하는 방법을 보여 줍니다.
연습: 여백 문자 모양 만들기 여백에 아이콘을 추가하는 방법을 보여 줍니다.
연습: 텍스트 강조 표시 태그를 사용하여 텍스트를 강조 표시하는 방법을 보여 줍니다.
연습: 개요 추가 특정 종류의 중괄호에 대한 개요를 추가하는 방법을 보여 줍니다.
연습: 일치하는 중괄호 표시 일치하는 중괄호를 강조 표시하는 방법을 보여 줍니다.
연습: QuickInfo 도구 설명 표시 속성, 메서드, 이벤트와 같은 코드 요소를 설명하는 QuickInfo 팝업을 표시하는 방법을 보여 줍니다.
연습: 서명 도움말 표시 서명의 매개 변수 수 및 형식에 대한 정보를 제공하는 팝업을 표시하는 방법을 보여 줍니다.
연습: 명령문 완성 표시 문 완성을 구현하는 방법을 보여 줍니다.
연습: 코드 조각 구현 코드 조각 확장을 구현하는 방법을 보여 줍니다.
연습: 전구 제안 표시 코드 제안을 위한 전구를 표시하는 방법을 보여 줍니다.
연습: 편집기 확장에서 셸 명령 사용 VSPackage의 메뉴 명령을 MEF 구성 요소와 연결하는 방법을 보여 줍니다.
연습: 편집기 확장과 함께 바로 가기 키 사용 VSPackage의 메뉴 바로 가기를 MEF 구성 요소와 연결하는 방법을 보여 줍니다.
MEF(Managed Extensibility Framework) MEF(Managed Extensibility Framework)에 대한 정보를 제공합니다.
Windows Presentation Foundation WPF(Windows Presentation Foundation)에 대한 정보를 제공합니다.

참조

Visual Studio 편집기에는 다음 네임스페이스가 포함됩니다.

Microsoft.VisualStudio.Language.Intellisense

Microsoft.VisualStudio.Language.StandardClassification

Microsoft.VisualStudio.Editor

Microsoft.VisualStudio.Text

Microsoft.VisualStudio.Text.Adornments

Microsoft.VisualStudio.Text.Classification

Microsoft.VisualStudio.Text.Differencing

Microsoft.VisualStudio.Text.Document

Microsoft.VisualStudio.Text.Editor

Microsoft.VisualStudio.Text.Editor.OptionsExtensionMethods

Microsoft.VisualStudio.Text.Formatting

Microsoft.VisualStudio.Text.IncrementalSearch

Microsoft.VisualStudio.Text.Operations

Microsoft.VisualStudio.Text.Outlining

Microsoft.VisualStudio.Text.Projection

Microsoft.VisualStudio.Text.Tagging

Microsoft.VisualStudio.Utilities