Visual Studio의 메뉴 및 명령

명령 사용법

많은 개별 제품으로 구성된 제품군인 Microsoft Office와 달리 Visual Studio에는 각각의 명령 집합을 전역 Visual Studio IDE에 제공하는 많은 제품이 포함되어 있습니다. IDE는 컨텍스트를 기반으로 사용자가 사용할 수 있는 기능을 필터링하여 수천 가지 명령의 복잡성을 관리합니다.

디자인 창에서 코드 편집 창으로 전환하는 것과 같이 사용자의 컨텍스트가 변경되면 새 컨텍스트와 관련 없는 기능이 사라집니다. 동시에 속성 및 도구 상자 옵션과 같은 관련 동적 정보와 함께 새로운 기능이 표시됩니다. 사용자는 사용 가능한 명령 집합의 교환을 알 수 없습니다. 명령이 나타나거나 사라짐으로써 주의가 산만하거나 혼동을 일으키면 UI 디자인을 조정해야 합니다. 사용자의 현재 컨텍스트는 항상 IDE 제목 표시줄, 속성 창 또는 속성 페이지 대화 상자와 같은 하나 이상의 방법으로 표시됩니다.

명령 모음을 사용하면 UI를 유연하게 사용할 수 있습니다. Visual Studio 환경에 고유한 명령 구조는 주 메뉴와 주 명령 모음으로, 사용자 지정 및 숨길 수도 있습니다. 애플리케이션의 상태에 따라 다른 명령 모음이 나타나고 사라집니다. 도구 창 및 문서 편집기 창 가장자리 내에 포함된 도구 모음을 포함할 수도 있습니다.

기본 지침

가능하면 기존 공유 명령, 명령 그룹 및 메뉴를 사용합니다.

명령은 일반적으로 컨텍스트를 기반으로 표시되므로 기존 공유 메뉴 및 명령 그룹을 사용하면 컨텍스트 변경 간에 명령 구조가 비교적 안정적으로 유지됩니다. 공유 명령을 다시 사용하고 관련 공유 명령에 가까운 새 명령을 배치하면 IDE 복잡성이 줄어들고 더욱 사용자에게 친숙한 환경이 만들어집니다. 새 명령을 정의해야 하는 경우 기존 공유 명령 그룹에 배치해 봅니다. 새 그룹을 정의해야 하는 경우 새 최상위 메뉴를 만들기 전에 관련 명령 그룹과 가까운 기존 공유 메뉴에 그룹을 배치합니다.

모든 명령에 대한 아이콘을 만들지 마세요.

명령 아이콘을 만들기 전에 신중하게 생각하세요. 아이콘은 다음 명령에 대해서만 만들어야 합니다.

  • 기본 도구 모음에 나타납니다.

  • 사용자가 사용자 지정... 대화 상자를 통해 도구 모음에 추가할 수 있습니다.

  • 다른 Microsoft 제품의 동일한 작업과 연결된 아이콘이 있습니다.

바로 가기 키 추가 제한

대부분의 사용자는 사용 가능한 모든 바로 가기의 극히 일부를 사용합니다. 확실하지 않은 경우 기능을 키보드 바로 가기 키에 바인딩하지 마세요. 새 바로 가기를 추가하기 전에 사용자 환경 팀과 협력하세요.

명령에 기본 메뉴 배치를 제공합니다.

명령은 다른 사용자가 사용자 지정하고 그에 따라 디자인된다는 점에 유의하세요. 숨겨진 명령과 같은 것은 없습니다. 모든 Visual Studio 명령은 도구 > 사용자 지정 대화 상자, 명령 창, 자동 완성, 도구 > 옵션 > 키보드 대화 상자 및 DTE(개발 도구 환경)에 표시됩니다. 사용자가 쉽게 찾을 수 있도록 .ctc 파일에서 명령에 이름과 도구 설명을 지정해야 합니다.

포함된 도구 모음에서 공유 명령을 복제하지 마세요.

사용자의 포커스 영역에 가깝게 명령을 배치하는 것이 유용합니다. 이 작업을 수행하는 한 가지 방법은 도구 창이나 문서 편집기의 상단에 포함된 도구 모음을 만드는 것입니다. 도구 모음에 배치된 명령은 창 내의 콘텐츠 영역에만 적용됩니다. 이러한 도구 모음에서 공유 명령을 복제하지 마세요. 예를 들어 포함된 도구 모음 내에 "저장" 아이콘을 배치하지 마세요.

콘텐츠 및 명령 표시 여부

명령은 환경, 계층 구조문서 범위에 있습니다. 명령 배치에 확신을 가지려면 각 범위를 알아야 합니다.

환경 범위의 명령은 기본 컨텍스트를 설정하고 여러 컨텍스트 간에 공유됩니다. 문서 및 도구 창의 표시 유형 또는 배열을 변경합니다. 환경 범위의 명령 중에는 새 프로젝트, 서버에 연결, 프로세스 연결, 잘라내기, 복사, 붙여넣기찾기, 옵션, 사용자 지정, 새 창보기 도움말이 있습니다.

계층 구조 범위의 명령은 프로젝트, 데이터를 비롯한 Visual Studio의 계층 구조를 관리합니다. 프로젝트의 하위 컨텍스트(예: 디버그, 빌드, 테스트, 아키텍처 또는 분석)와 관련이 있습니다. 계층 구조 범위의 명령에는 새 항목 추가, 새 쿼리, 프로젝트 설정, 새 데이터 소스 추가, 성능 마법사 시작새 다이어그램이 있습니다.

문서 범위의 명령은 코드, 디자인 또는 WIQ(작업 항목 쿼리)와 같은 문서 콘텐츠에 대해 작동합니다. 또한 도구 창의 보기에서 작동하거나 해당 도구 창과 관련이 있습니다. 문서 범위 명령은 프로젝트에서 제거와 같이 자체적인 계층 구조별 파일 개체에 대해서도 작동합니다. 문서 범위의 명령에는 리팩터링 > 이름 바꾸기, 작업 항목 복사본 만들기, 모두 확장, 모두 축소사용자 작업 만들기가 있습니다.

명령 배치 결정

명령을 만들기로 결정했으면 적절한 위치와 키보드 바로 가기 키를 만들지 여부를 결정해야 합니다. 다음 의사 결정 경로에 따라 명령을 배치할 위치를 설정합니다.

Command placement decision chart

Visual Studio에서 명령 배치에 대한 의사 결정 경로

메뉴의 명령 배치

주 메뉴 모음은 UI에 영향을 주는 상황에 맞는 메뉴 패키지의 명령에 대한 표준 위치여야 합니다. 주 메뉴 모음은 환경이 표시되는 명령을 제어하는 데 사용한다는 점에서 다른 명령 구조와 다릅니다. 다른 모든 명령 모음은 메뉴에 있든 도구 모음에 있든 관계없이 컨텍스트가 다른 명령을 사용하지 않도록 설정하기만 하면 됩니다.

환경은 전체 IDE 및 여러 작업 도메인에서 공통적인 기본 메뉴 모음에 내장된 명령 집합을 정의합니다. 이러한 명령은 환경에 로드되는 VSPackage에 관계없이 항상 표시됩니다. VSPackages는 이 명령 집합을 확장할 수 있지만 각 제품의 명령 집합과 해당 명령의 배치는 각 팀의 책임입니다.

Visual Studio 주 메뉴의 구조는 다음 메뉴 범주로 나눌 수 있습니다.

핵심 메뉴
  • 파일

  • 편집

  • 보기

  • 도구

  • Window

  • 도움말

프로젝트별 메뉴
  • Project

  • 빌드

  • 디버그

컨텍스트별 메뉴
  • Team

  • 데이터

  • 테스트

  • 아키텍처

  • Analyze

문서별 메뉴
  • 형식

  • 테이블

주 메뉴를 디자인할 때는 다음 규칙을 준수합니다.
  • 지정된 컨텍스트에서 25개의 최상위 항목을 초과하지 않아야 합니다.

  • 메뉴 높이가 600픽셀을 초과하지 않아야 합니다.

  • Ultimate SKU 및 일반 프로필과 같은 여러 컨텍스트에서 주 메뉴를 평가합니다.

  • 플라이아웃 메뉴는 허용됩니다.

  • 플라이아웃 메뉴에는 3개 이상의 항목과 7개 이하의 항목이 포함되어야 합니다.

  • 플라이아웃 메뉴는 한 수준으로만 진행해야 합니다. 일부 Visual Studio 메뉴 항목에는 계단식 하위 메뉴가 있지만 이 패턴은 권장되지 않습니다.

  • 6개 이하의 구분 기호를 사용합니다. 그룹화는 다음 그림을 따라야 합니다.

    Guidelines for main menu grouping

  • 그림에 각 그룹화가 필요하지는 않지만 그룹화를 더 추가하는 것은 제한됩니다.

  • 각 그룹화에는 2~7개의 메뉴 항목이 있어야 합니다.

새 최상위 항목을 추가하기 전에 기존 최상위 메뉴에 명령을 배치하는 것이 좋습니다. 새 최상위 메뉴를 추가할 때 올바른 위치에 배치해야 합니다. 메뉴가 프로젝트, 컨텍스트 또는 문서에 관련되었는지 여부를 확인합니다. 최상위 메뉴의 이름을 간결하게 유지하고 한 단어만 사용합니다.

핵심 메뉴는 나머지 명령을 예약해야 합니다. 파일, 편집 및 보기는 항상 왼쪽에 있어야 하고 도구, 창 및 도움말은 항상 오른쪽에 있어야 합니다.

상황에 맞는 메뉴

상황에 맞는 메뉴에 너무 많은 기능을 배치하면 학습하기 어려운 인터페이스가 됩니다. 모든 주요 기능은 주 메뉴 모음을 통해 제공되어야 합니다. 중복 명령을 방지하려면 명령 배치를 기존 명령과 조정해야 합니다. 상황에 맞는 메뉴의 경우 셸은 상황에 맞는 메뉴가 솔루션, 프로젝트 노드 또는 프로젝트 항목에 대한 것인지에 따라 포함해야 하는 표준 메뉴 그룹을 정의합니다.

상황에 맞는 메뉴를 디자인할 때는 주 메뉴와 동일한 규칙을 준수하고 다음을 수행합니다.

  • 25개의 최상위 메뉴 항목을 초과하지 마세요.

  • 플라이아웃 메뉴는 허용되지만 한 수준을 초과해서는 안 됩니다. 연계 플라이아웃을 사용하지 마세요.

  • 6개 이하의 구분 기호를 사용합니다.

도구 모음의 명령 배치

일반 도구 모음

도구 모음을 디자인하고 정렬할 때 다음 표준을 따릅니다.

  • 단추당 동사를 두 개 이상 사용하지 마세요. 하나의 단추는 하나의 동작을 수행합니다.

  • 레이블로 보강해야 하는 경우에만 아이콘과 함께 텍스트를 사용합니다.

  • 한 세션에서 여러 번 전환되는 속성에만 콤보 상자를 사용합니다. 그렇지 않으면 다른 곳에 속성을 표시합니다.

  • 콤보 상자의 너비는 상자 내에서 가장 긴 항목의 너비 + 30%여야 합니다. 예를 들어 가장 긴 항목이 200픽셀인 경우 콤보 상자의 너비는 260픽셀이어야 합니다.

  • 구분 기호 사용을 제한합니다. 드롭다운 자체의 모양이 시각적 구분 기호 역할을 하기 때문에 드롭다운 옆에 구분 기호를 사용하는 것은 안티 패턴입니다.

  • 아이콘 그룹에는 3~6개의 아이콘을 포함해야 합니다.

  • 한정자가 여러 유용한 명령을 생성하는 경우 마지막 설정을 저장하는 분할 단추를 사용합니다.

    Split buttons in Visual Studio

    분할 단추의 예제 왼쪽의 6개 명령은 대신 단일 단추에 맞을 수 있습니다.

제품별 도구 모음

각 제품은 자주 사용하고 중요한 명령이 포함된 기본 도구 모음을 제공할 수 있으며, 각 제품의 기본 도구 모음은 제품 설치 후 Visual Studio를 처음 시작할 때 표시되어야 합니다.

또한 제품은 IDE에서 제공하는 공유 명령 그룹 및 메뉴를 활용해야 합니다. 각 공유 명령 그룹은 사용자에게 의미 있는 방식으로 관련 명령을 구성하기 위한 공유 메뉴에 배치됩니다. 복잡성을 줄이기 위해 이 공유 명령 구조를 활용하는 것이 중요합니다.

전역 도구 모음

전역 도구 모음은 바로 사용할 수 있는 한 행에 맞춰야 합니다. 새 전역 도구 모음을 만들 때 해당 도구 모음 유형에 대한 지침을 따릅니다.

일반 도구 모음 지침:

  • 각 도구 모음에는 24픽셀의 공통 컨트롤(그리퍼, 오버플로)이 있습니다.

  • 각 도구 모음 단추는 안쪽 여백을 포함하여 너비가 22픽셀입니다. 아이콘을 분할 단추로 만들면 또 다른 11픽셀의 너비가 추가됩니다.

  • 도구 모음에서는 명령의 중복이 허용됩니다.

    문서별 도구 모음은 특정 파일 형식이 활성화되면 나타나고 다른 파일 형식이 활성화되면 사라집니다.

  • 문서별 도구 모음에는 12개 이상의 단추가 없을 수 있습니다.

  • 도구 모음의 총 너비는 300픽셀을 초과하지 않을 수 있습니다.

  • 각 파일 형식에는 하나의 포함된 도구 모음 또는 하나의 문서별 전역 도구 모음이 있을 수 있지만 둘 다 포함할 수는 없습니다.

    컨텍스트별 도구 모음은 특정 컨텍스트가 설정되고 장기간 활성 상태로 유지되는 경향이 있을 때 나타납니다.

  • 모든 컨텍스트별 도구 모음에 대한 단추 제한은 18개입니다.

  • 컨텍스트가 활성 상태일 때 대부분의 사용자가 이 도구 모음의 명령을 일관되게 사용하지 않는 경우 이 도구 모음을 컨텍스트와 연결하지 마세요.

  • 컨텍스트를 종료할 때 도구 모음이 사라지는지 확인해야 합니다. 이러한 도구 모음 중 어느 것도 시작 시 나타나지 않아야 합니다.

    컨텍스트가 없는 도구 모음은 자동으로 표시되지 않습니다. 사용자가 활성화할 때만 표시됩니다. 최대 너비를 200픽셀 미만으로 유지합니다.

일반 조직 및 셸 정의 그룹

기존 공유 명령, 명령 그룹 및 메뉴를 사용합니다. 새 명령을 정의해야 하는 경우 기존 공유 명령 그룹에 배치해 봅니다. 새 그룹을 정의해야 하는 경우 새 최상위 메뉴를 만들기 전에 관련 명령 그룹과 가까운 기존 공유 메뉴에 그룹을 배치합니다. 이렇게 하면 IDE에서 일관된 명령 배치를 보장하면서 명령 복잡성을 줄입니다.

일반적으로 디자이너 스타일 문서 창의 컨텍스트에 표시되는 공유 서식 메뉴는 다음 이미지에 나와 있습니다.

Visual Studio Format menu with callouts

Visual Studio의 메뉴 그룹

명령 감소 및 다시 사용

명령은 일반적으로 사용자에게 지정된 시간에 표시되는 명령의 수를 줄이기 위해 컨텍스트를 기반으로 표시됩니다. 그러나 컨텍스트 변경 간에 명령 구조가 비교적 안정적으로 유지되도록 기존 공유 메뉴 및 명령 그룹도 다시 사용해야 합니다.

공유 명령을 다시 사용하고 관련 공유 명령에 가까운 새 명령을 배치하면 IDE 복잡성이 줄어들고 더욱 사용자에게 친숙한 환경이 만들어집니다.

명명 명령

명명 규칙

일관된 명령 명명은 사용자가 명령줄을 사용하거나 키보드 바로 가기 키에 바인딩하여 명령을 찾고 실행할 수 있도록 하는 데 중요합니다. 또한 명령 이름은 명령이 도구 모음이나 계단식 또는 상황에 맞는 메뉴에 표시될 때 명령의 용도를 이해하는 데 도움이 됩니다.

명령 이름을 지정하는 경우:

  • 쉽게 지역화할 수 있도록 텍스트를 생성합니다. 텍스트 지역화에 대한 자세한 내용은 지역화 모범 사례를 참조하세요.

  • 간결해야 합니다. 명령은 3개 이하의 단어를 사용해야 합니다.

  • 단어의 첫 글자를 대문자로 사용: 각 단어의 첫 글자는 대문자여야 합니다. Visual Studio의 텍스트 서식에 대한 자세한 내용은 텍스트 스타일을 참조하세요.

  • 명령이 배치될 위치를 고려합니다. 최상위 메뉴 또는 플라이아웃에 있나요? 예를 들어 플라이아웃에서 맞춤 명령을 그룹화할 때 최상위 명령은 "맞춤"이어야 하며 플라이아웃 명령은 "왼쪽", "오른쪽", "가운데", "양쪽 맞춤" 등이어야 합니다. 플라이아웃 명령의 이름을 "왼쪽 정렬" 또는 "오른쪽 정렬"로 지정하는 것은 중복됩니다.

    Visual Studio Format menu

명령과 함께 아이콘 사용

명령과 아이콘을 함께 사용하지 마세요. 고유한 이미지를 명령과 연결하면 해당 명령을 식별하는 사용자의 능력이 빨라지지만 이미지를 과도하게 사용하면 시각적 혼란과 비효율이 발생합니다. 다음 규칙은 명령 아이콘을 만들지 여부를 결정할 때 도움이 될 수 있습니다.

다음 경우에만 명령과 아이콘을 함께 사용합니다.

  • 동일한 명령에는 Microsoft Office 애플리케이션 중 하나와 같은 다른 유명한 Microsoft 제품에 연결된 아이콘이 있습니다.

  • 명령은 기본 도구 모음에 배치됩니다.

  • 이 명령은 사용자가 "사용자 지정..." 대화 상자를 사용하여 도구 모음에 추가할 가능성이 높은 특수 명령입니다.

액세스 및 바로 가기 키

키보드 키 할당에는 두 가지 종류가 있습니다.

  • 액세스 키(액셀러레이터라고도 함) 명령을 위한 메뉴와 대화 상자 UI의 각 레이블을 통한 키보드 액세스를 허용합니다. 액세스 키는 대부분 접근성을 위해 사용되고 모든 메뉴와 대부분의 대화 상자 컨트롤에 할당되며, 기억하기 위한 것이 아니며, 현재 창에만 영향을 미치고 지역화됩니다.

  • 바로 가기 키는 주로 Ctrl(컨트롤) 및 Fn(함수) 키 시퀀스를 사용합니다. 고급 사용자를 위해 디자인되었으며 생산성을 지원합니다. 가장 자주 사용되는 명령에만 할당되며 주 메뉴를 바이패스하는 동안 빠른 액세스를 허용합니다. 바로 가기 키는 기억하기 위한 것이므로 프로필 구성표와 일치하게 할당되어야 합니다. 바로 가기 키 구성표는 프로필마다 다를 수 있습니다. 사용자는 도구 > 옵션 > 키보드를 통해 바로 가기 키를 사용자 지정할 수 있습니다.

액세스 키 할당

액세스 키는 Alt 및 영숫자 키로 구성됩니다. 예외 없이 각 메뉴 항목에 액세스 키를 할당합니다. 액세스 키를 할당하기 위한 Windows 및 일반적인 규칙을 따릅니다. 예를 들어 파일 > 새로 만들기에 대한 액세스 키는 항상 Alt, F, N이어야 합니다.

'i'(대문자 또는 소문자) 또는 소문자 'l'과 같은 단일 픽셀 너비 문자를 사용하지 말고, 구분하기 어려우므로 하위 문자(g, j, p, q 및 y)와 함께 문자를 사용하지 마세요.

가능하면 중복 키를 사용하지 마세요. 중복이 불가피한 경우 메뉴 시스템은 키를 사용하는 모든 명령을 순환하여 충돌을 처리합니다. 예를 들어 "N" 액세스 키를 복제하는 파일 메뉴 아래의 가상 "숫자" 명령의 경우 Alt, F, N은 새 파일을 만들고 Alt, F, N, N은 "숫자" 명령을 수행합니다.

바로 가기 키 할당

모든 명령에 필요하지는 않으며 과도하게 사용하면 시스템(및 사용자 메모리)에 부담을 주기 때문에 새 바로 가기 키를 할당하지 마세요. CEIP(사용자 환경 개선 프로그램)의 데이터는 Visual Studio 사용자가 통합 바로 가기의 작은 하위 집합만 사용한다는 것을 나타냅니다.

바로 가기를 정의할 때에는 다음 규칙을 따릅니다.

  • (컨트롤) 및 Ctrl(함수) 키 시퀀스를 사용합니다.

  • 자주 사용되는 바로 가기를 유지합니다. 가장 인기 있는 바로 가기를 유지 관리합니다.

  • 편집기 바로 가기를 쉽게 입력할 수 있도록 합니다. 개발자가 코드를 작성하는 동안 가장 필요로 하는 명령에 입력하기 쉬운 바로 가기를 바인딩합니다. 예를 들어 Edit.InvokeSmartTag에는 Alt+Shift+F10이 아닌 Ctrl+/와 같은 빠른 바로 가기 키가 있어야 합니다.

  • 일관된 테마의 바로 가기 키를 사용합니다.

  • Windows 지침에 따라 사용할 보조 키를 결정합니다. 전체 문서에 적용되는 명령과 같이 대규모 효과가 있는 명령에는 Ctrl 키 조합을 사용합니다. 표준 바로 가기 키의 동작을 확장하거나 보완하는 명령에 Shift 키 조합을 사용합니다. Ctrl+Alt 조합은 사용하지 마세요.

  • 불필요한 바로 가기를 제거합니다. 레거시 기능이 있는 경우 액세스 키가 동일한 명령에 대한 빠른 액세스를 제공하면 매우 빈도가 낮은(CEIP 데이터의 10배 미만) 또는 중간 빈도(CEIP 데이터의 100배 미만)에 사용되는 바로 가기를 제거하는 것이 좋습니다. 예를 들어 Alt, H, C가 도움말/콘텐츠를 엽니다.

    바로 가기 가용성을 확인하는 간단한 방법은 없습니다. 바로 가기를 추가하려면 다음 단계를 수행합니다.

  1. Visual Studio 2013 바로 가기 목록을 확인하여 그룹화할 유사한 명령이 있는지 확인합니다.

  2. 도구 > 옵션 > 환경 > 키보드로 이동하여 바로 가기 키를 테스트합니다. "다음 추가 키보드 매핑 구성표 적용"에 나열된 각 키보드 매핑 구성표를 확인합니다. 일반, C#, VB 및 C++ 프로필은 고유한 바로 가기를 공유하므로 확인합니다. 바로 가기가 해당 위치에 매핑되지 않은 경우에 사용할 수 있습니다.