안녕하세요.

신입 에반젤리스트 최한홍입니다. 처음으로 에반젤리스트 블로그에 글을 올리게 되었습니다.

이번 글에서 제가 소개드릴 내용은 Visual Studio의 강력한 확장 기능인 Productivity Power Tools 2012 입니다. Productivity Power Tools 2012는 개발자들의 피드백을 반영하여 만든 Visual Studio의 확장 기능입니다. Visual Studio는 개발자들이 편리한 코딩을 할 수 있도록 많은 기능들을 기본 기능으로 제공하고 있습니다만 파워툴을 설치하면 좀 더 편리하고 강력한 기능들을 추가로 사용하실 수가 있습니다. 파워툴은 Visual Studio 확장 기능을 다운로드 할 수 있는 Visual Studio 갤러리에서 다운로드 받으실 수 있습니다. 아래 내용은 파워툴에 대해 상세하게 설명하고 있는 Visual Studio 갤러리의 영문 컨텐츠를 한글화 한 내용입니다.

본 문서는 Productivity Power Tools의 4월 5일 업데이트 내용으로 작성 하였습니다.

 

Visual Studio 2012 버전의 새로운 기능들

퀵 태스크(Quick Tasks)
파워 커맨드(Power Commands)
컬러 프린팅(Color Printing)

기존 기능들

Enhanced Scroll Bar
Middle-Click Scrolling
Organize Imports for Visual Basic
Custom Document Well
Tools Options Support
Auto Brace Completion
HTML Copy
Fix Mixed Tabs
Ctrl+Click Go To Definition
Align Assignments
Move Line Up/Down Commands
Column Guides
Colorized Parameter Help

퀵 태스크(Quick Tasks)

퀵 태스크(Quick Tasks)는 빠른 실행(Quick Launch) 기능을 활용하여 수행할 수 있는 확장 기능의 모음입니다. 자주 사용하는 옵션과(예. 줄 번호를 on/off 하는 작업) Visual Studio의 기능을(예. 영역 축소/확대) 쉽게 사용할 수 있게 해줍니다. Quick Tasks를 실행해 보려면 빠른 실행(Quick Launch) 창에 @tasks를 입력하고 아래 옵션들을 입력해 보십시오.

옵션

설명

CollapseRegions

현재 문서의 모든 #region 태그를 축소시킵니다.

ExpandRegion

현재 문서의 모든 #region 태그를 확장시킵니다.

TxtFont-

텍스트 편집기의 글꼴 크기를 2만큼 감소시킵니다. (최소 6포인트)

TxtFont0

텍스트 편집기의 글꼴 크기를 기본 값인 10으로 재설정합니다.

TxtFont+

텍스트 편집기의 글꼴 크기를 2만큼 증가시킵니다. (최대 60포인트)

TxtFontReset

전체 텍스트 편집기의 글꼴 설정을 현재 테마에 기초하여 기본값으로 바꿉니다.

EnvFont-

Visual Studio 환경의 글꼴 크기를 2만큼 감소시킵니다. (최소값 5)

EnvFont0

Visual Studio 환경의 글꼴 크기를 기본 값인 9로 재설정합니다.

EnvFont+

Visual Studio 환경의 글꼴 크기를 2만큼 증가시킵니다. (최소값 59)

EnvFontReset

Visual Studio 환경의 글꼴 크기를 현재 테마에 기초하여 기본값으로 바꿉니다.

InsTabsOff

탭 키가 입력되었을 때 탭 대신 빈 공간을 넣습니다. (모든 언어 설정에 대하여)

InsTabsOn 

탭 키가 입력되었을 때 빈 공간 대신 탭을 넣습니다. (모든 언어 설정에 대하여)

LineNumOff

텍스트 편집기의 줄 번호를 표시하지 않도록 합니다. (모든 언어 설정에 대하여)

LineNumOn

텍스트 편집기의 줄 번호를 표시합니다. (모든 언어 설정에 대하여)

PresentOff

발표자 모드를 종료하고 이전의 텍스트 편집기와 Visual Studio 환경의 글꼴 크기로 돌아갑니다.

PresentOn

발표자 모드로 전환하여 Visual Studio 환경의 글꼴 크기와 텍스트 편집기의 글꼴 크기를 증가 시키고, 프로젝터를 통해서도 쉽게 보고 읽을 수 있는 폰트로 변경 합니다.

ResetToBasic

Visual Studio를 Visual Basic 개발환경으로 재설정합니다.

ResetToC++

Visual Studio를 Visual C++ 개발환경으로 재설정합니다.

ResetToC#

Visual Studio를 Visual C# 개발환경으로 재설정합니다.

ResetToF#

Visual Studio를 Visual F# 개발환경으로 재설정합니다.

ResetToGeneral

Visual Studio를 일반 개발환경으로 재설정합니다.

ResetToJavaScript

Visual Studio를 Windows 8 앱 개발을 위한 JavaScript 개발환경으로 재설정합니다.

ResetToLightSwitch

Visual Studio를 LightSwitch 개발환경으로 재설정합니다.

ResetToSQL

Visual Studio를 SQL Server 개발환경으로 재설정합니다.

ResetToWeb

Visual Studio를 Web 개발환경으로 재설정합니다.

ResetToWebCode

Visual Studio를 Web(코드 만) 개발환경으로 재설정합니다.

SwitchCode

필요 시 파일을 열면서 헤더파일/소스파일 혹은 디자이너/비하인드 코드 사이를 전환합니다.

TabSize-

탭과 들여쓰기의 크기를 2만큼 감소시킵니다. (모든 언어 설정에 대하여)

TabSize0

탭과 들여쓰기의 크기를 기본 값인 4로 재설정합니다. (모든 언어 설정에 대하여)

TabSize+

탭과 들여쓰기의 크기를 2만큼 증가시킵니다. (모든 언어 설정에 대하여)

WordWrapOff

텍스트 편집기의 자동 줄 바꿈 기능을 사용하지 않습니다. (모든 언어 설정에 대하여)

WordWrapOn 

텍스트 편집기의 자동 줄 바꿈 기능을 사용합니다. (모든 언어 설정에 대하여)

참고: ResetTo… 명령은 Visual Studio에 설치된 언어별로 추가됩니다.

파워 커맨드(Power Commands)

파워 커맨드는 Visual Studio 2012의 IDE에서 사용할 수 있는 유용한 확장 기능으로 추가적인 기능을 제공합니다. 각각의 파워 커맨드는 Visual Studio의 도구(Tools)->옵션(Options)->Productivity Power Tools의 파워 커맨드 페이지에서 켜고 끌 수 있습니다. 대부분의 파워 커맨드는 기본으로 활성화 되어 있습니다.

Format document on save
C#으로 작성된 문서를 저장 할 때 들여쓰기나 빈 공간 그리고 다른 문자들의 형식을 자동으로 맞춰 줍니다. 기본값으로 비활성화 되어 있습니다.

Remove and Sort Usings on save
C#으로 작성된 문서를 저장할 때 사용하지 않는 using구문을 제거하고 남아있는 using 구문들을 정렬해 줍니다. 기본값으로 비활성화 되어 있습니다.

Clear All Panes
출력 창(Output Window)의 도구 모음에 모든 결과 창의 내용을 한번에 지울 수 있는 버튼을 추가합니다.

Copy Path
솔루션 탐색기(Solution Explorer)에서 오른쪽 마우스 버튼을 클릭하여 프로젝트, 폴더, 솔루션 등의 파일 경로를 클립 보드로 복사 합니다.

Email CodeSnippet
소스 코드 편집기에서 오른쪽 마우스 버튼을 클릭하여 현재 선택한 텍스트를 이메일로 보냅니다.

Insert Guid Attribute
클래스 정의 내에서 오른쪽 마우스 버튼을 클릭하여 선택한 클래스에 Guid 특성을 추가합니다.

Show All Files
솔루션 항목을 선택한 상태에서 이 기능을 수행하면 선택한 솔루션에 포함되어 있는 모든 프로젝트의 숨겨진 파일들이 나타납니다. 이는 Visual Studio의 파일 표시(Show All Files) 버튼의 향상된 기능입니다.

Undo Close
닫힌 문서를 다시 열고 커서 위치를 복원합니다. 편집(EDIT) 메뉴의 Undo Close 버튼을 선택하거나 Ctrl+Shift+Z 단축키를 눌러서 최근에 닫힌 문서들을 다시 열 수 있습니다. Undo Close 창이 열려 있으면 (보기(View)->다른 창(Other Windows)->Undo Close Window) 이 창의 목록에 나타난 문서를 더블 클릭해서 다시 열 수 있습니다.

Collapse Projects
솔루션 탐색기(Solution Explorer) 내에서 선택한 항목 이하의 프로젝트를 축소합니다. 이 옵션은 솔루션, 솔루션 폴더 그리고 프로젝트 항목에서 오른쪽 마우스 버튼을 클릭하여 실행할 수 있습니다.

Copy/Paste Class
클립보드로 클래스를 복사하거나 클립보드에서 클래스를 붙여 넣기 합니다. 클립보드에서 클래스를 붙여 넣을 때는 컴파일 에러를 피하기 위해 클래스의 이름을 변경합니다. 프로젝트 항목 이하의 클래스 파���을 선택한 후 오른쪽 마우스 버튼을 클릭하여 실행할 수 있습니다.

Copy/Paste References
클립보드로 여러 개의 참조를 클립보드로 복사하거나 클립보드에서 붙여 넣습니다. 이 기능은 참조(References) 항목에서 수행할 수 있으며, 여러 항목을 선택할 수도 있습니다.

Copy As Project Reference
클립보드로 프로젝트를 참조의 형태로 복사합니다. 이 기능은 프로젝트 항목을 선택한 후 실행 할 수 있습니다.

Edit Project File
Visual Studio내에서 선택한 프로젝트의 MSBuild 프로젝트 파일을 텍스트 편집기로 엽니다. 이 기능은 Unload Projects 기능을 수행한 후 MSBuild 프로젝트 파일을 편집할 수 있도록 해줍니다.

Open Containing Folder
선택한 항목의 저장 경로를 윈도우 탐색기로 엽니다. 이 기능은 프로젝트 항목을 선택한 후 실행 할 수 있습니다.

Open Command Prompt
선택한 항목의 저장 경로를 Visual Studio의 명령 프롬프트를 엽니다. 이 기능은 솔루션, 프로젝트, 폴더, 프로젝트 항목을 선택한 후 실행 할 수 있습니다.

Unload Projects
솔루션 내의 모든 프로젝트를 언로드합니다. 이는 여러 개의 프로젝트를 수정해야 하는 경우에 유용합니다. 이 기능은 솔루션 항목을 선택한 후 실행 할 수 있습니다.

Reload Projects
언로드된 프로젝트들을 모두 다시 로드합니다. 이 기능은 솔루션 항목을 선택한 후 실행 할 수 있습니다.

Remove and Sort Usings
프로젝트 내에서 불필요하게 사용된 using 구문들을 제거하고 나머지를 정렬합니다. 이 기능은 마법사를 통해 자동 생성된 using 구문들을 제거하거나 재구성할 때 유용합니다. 이 기능은 솔루션 항목이나 프로젝트 항목을 선택한 후 실행 할 수 있습니다.

Extract Constant
선택한 텍스트의 상수 정의 구문을 만듭니다. 상수 정의 구문을 만들면 코드의 가독성을 높일 수 있습니다. 이 기능은 코드 편집기에서 선택된 텍스트를 오른쪽 마우스 버튼을 클릭하여 실행 할 수 있습니다.

Clear Recent File List
Visual Studio의 최근 파일 목록(Recent File List)을 지웁니다. 이 기능을 실행하면 최근 파일 목록을 보여주는 Clear List 대화상자가 열리고 항목을 선택하여 제거할 수 있습니다.

Clear Recent Project List
Visual Studio의 최근 프로젝트 리스트(Recent Project List)를 지웁니다. 이 기능을 실행하면 최근 프로젝트 목록을 보여주는 Clear List 대화상자가 열리고 항목을 선택하여 제거할 수 있습니다.

Transform Templates
텍스트 템플릿 항목과 연관된 사용자 지정 도구를 실행합니다. 이 기능은 DSL 프로젝트 항목이나 DSL 폴더에서 실행 할 수 있습니다.

Close All
모든 문서를 닫습니다. 이 기능은 문서탭에서 실행 할 수 있습니다.

컬러 프린팅(Color Printing)

코드를 컬러로 출력할 수 있도록 지원합니다.

image

알려진 문제들

  • 영역을 축소해서 출력하는 옵션은 없습니다. 영역이 축소되어도 표시되어 출력됩니다.
  • 줄 번호를 출력하는 옵션은 없습니다. 줄 번호는 줄 번호 영역이 활성화 (도구(Tools)->옵션(Options) 에서 활성화 가능) 되어 있을 때에만 출력됩니다.
  • 프린트 페이지의 여백 (위/아래/왼쪽/오른쪽 여백)은 사용자가 지정할 수 없습니다. 검은색 고대비 출력 모드(high contrast black mode)를 사용하기 위해서는 수동으로 일반 텍스트의 배경색을 바꾸어 줘야 합니다. (도구(Tools)->옵션(Options) ->환경(Environment) ->글꼴 및 색(Fonts and Colors) ->프린터(Printer)에서 하실 수 있습니다.) 이는 Visual Studio의 프린터 색 설정이 배경색으로 고대비 테마의 검은색을 사용하기 때문입니다.

Enhanced Scroll Bar

소스코드 파일들을 탐색하는데 좀 더 나은 환경을 제공하기 위해서 이 기능은 개발자들이 코드의 중단점, 북마크, 에러, 경고, 편집내용들과 같은 아티팩트가 있는 지점을 손쉽게 보고 검색할 수 있도록 소스맵을 표시합니다. 이 기능은 아래 여러 모드를 포함합니다..

Scroll bar mode (기본값)
표준 스크롤바에 아이콘을 오버레이하여 아티팩트를 볼 수 있게 해 줍니다.

image

Map mode
스크롤바를 마우스로 클릭하여 아티팩트들을 탐색할 수 있게 합니다. 뿐만 아니라 마우스를 스크롤바 위에 가져갔을 때 문서의 미리보기를 제공해 줍니다.

image

Full map mode
개발자들이 전체 파일을 축소하여 한눈에 볼 수 있도록 해줍니다.

image

스크롤바 모드를 전환하기 위해서 스크롤바에서 오른쪽 마우스 버튼을 클릭하거나 도구(Tools)->옵션(Options)->Productivity Power Tools->Enhanced Scroll Bar 메뉴를 이용할 수 있습니다.

Middle-Click Scrolling

문서를 빠르게 스크롤하기 위해서 휠 버튼을 누른 상태에서 마우스를 이동하여 스크롤 할 수 있는 기능입니다.

image

 

Organize Imports for Visual Basic

Visual Basic 개발시에 사용하지 않는 Imports 구문을 제거하고, 사용하는 Imports 구문들은 정렬하는 기능입니다.

image

Custom Document Well

이 확장 기능(도구(Tools)->옵션(Options) 대화상자)을 이용하면 문서탭의 동작과 모양을 변경 할 수 있습니다.

image

 

· Tab Well Appearance and Behavior

Place tabs on the Left / Top / Right / Bottom
문서탭 모음의 위치를 변경합니다. (기본값: Top)

Enable scrolling
문서탭이 여러 개인 경우 문서탭 모음에 화살표 버튼을 추가하여 문서탭들을 탐색 할 수 있도록 해 줍니다.

Show close button at the end of the tab well
문서탭 모음을 닫을 수 있는 종료 버튼을 문서탭 모음 오른쪽에 항상 표시해 줍니다.

· Tab Appearance

Show Close button
문서탭 종료 버튼을 문서탭 우측에 고정시켜 표시해 줍니다.

Color tabs by project
문서탭들을 프로젝트 별로 다른 색으로 구분합니다.

image

Color tabs by regular expression
문서탭들을 정규식에 따라서 다른 색으로 구분합니다.

Regular expression colors have precedence over project colors
프로젝트 별 색보다 정규식으로 구분된 색을 우선으로 정렬합니다.

· Sorting

By project
문서탭을 프로젝트 별로 정렬합니다.

Alphabetically
문서탭을 알파벳순으로 정렬합니다. 프로젝트 별로 정렬되어 있는 문서탭들은 프로젝트 별로 우선 정렬하고 이후에 알파벳 순으로 정렬합니다.

· Color coding

문서탭의 색을 프로젝트 별, 정규식 별로 지정할 수 있습니다.

image

 

Tools Options Support

Productivity Power Tools의 사용자 환경이 모든 사람들에게 편리한 것은 아닙니다. 특정 기능을 끄려면 도구(Tools)->옵션(Options) ->Productivity Power Tools 창을 열고 우측에서 해당 기능을 찾으면 됩니다. Off로 설정하고 Visual Studio를 재실행 하면 해당 기능은 더 이상 로드 되지 않을 것이며 Visual Studio의 기본동작 값으로 되돌릴 수 있습니다.

image

Auto Brace Completion

VB과 C# 코드에서 시작 구문을 입력하였을 때 자동적으로 코드의 종료 구문을 삽입해 줍니다. 이 기능은 아래와 같습니다.

· (), {}, [], <>, “”, ‘’ 와 같은 구문들을 지원합니다.

· 바깥쪽 중괄호를 탐색하기 위해서는 <TAB>키를 사용하면 됩니다.

· C# 구문의 경우 SHIFT + ENTER단축키로 자동완성 기능(문장의 마지막에 세미콜론을 넣고 커서를 다음 줄로 이동)을 사용할 수 있습니다.

HTML Copy (추가 정보)

본 기능은 코드를 편집기에서 클립보드로 복사할 때 HTML 형식을 사용할 수 있게 해 줍니다. 이렇게 하면 코드를 TFS work item이나 다른 HTML기반의 컨트롤로 복사할 때 코드의 서식을 변경하지 않아도 됩니다. 클립보드로 복사하는 HTML서식을 수정 할 수도 있습니다. 도구(Tools) -> 옵션(Options) -> Productivity Power Tools > HTML Copy 창에서 원하는 동작을 지정할 수 있습니다.

image

Fix Mixed Tabs

파일을 열거나 저장할 때 탭과 스페이스가 섞여있는 경우 사용자에게 이를 알립니다. 이 때 알림창에서 쉽게 스페이스를 탭으로 바꾸거나 탭을 스페이스로 바꿀 수 있습니다.

Ctrl+Click Go To Definition

Ctrl 키를 누른 상태에서 변수나 함수를 클릭하면 정의된 곳으로 이동 합니다.

Align Assignments

Ctrl+Alt+] 키를 누르면 할당 구문들을 정렬해 줍니다. 예를 들어 아래와 같은 문장을 선택했을 때 Ctrl+Alt+] 키를 누르면

image

아래와 같이 변경됩니다.

image

주의! 이 기능은 서식 설정과 충돌할 수도 있습니다. 예를 들어 C#에서 위와 같은 형태의 코드를 유지하기 위해서는 도구(Tools) ->옵션(Options) ->텍스트편집기(Text Editor) ->C#->서식(Formatting) -> 간격(Spacing) ->“선언문의 공백을 무시합니다” (Ignore spaces in declaration statements) 체크박스를 해제 할 필요가 있습니다.

Move Line Up/Down Commands

텍스트 편집기에서 Alt+위방향키나 Alt+아래방향키를 누르면 현재의 라인이나 선택한 라인들을 위나 아래로 옮길 수 있습니다.

Column Guides

코드 편집기에 수직선을 나타내어 코드나 주석의 길이가 한 화면에 적합하지 않을 수 있음을 알려줍니다. 원하는 위치에 커서를 놓고 마우스 오른쪽 버튼을 클릭하여 Guidelines->Add Guideline 메뉴를 선택하여 실행할 수 있습니다..

Colorized Parameter Help

C#과 VB 환경에서 매개변수 도움말 창의 내용을 강조 합니다. 도구(Tools)->옵션(Options)->환경(Environment)->글꼴 및 색(Fonts and Colors)->“Signature Help”로 시작하는 표시 항목(Display items)들을 사용하여 강조할 내용의 색을 지정할 수도 있습니다.

 

 

지금까지 Productivity Power Tools 2012에 대해 살펴 보았습니다. 처음 설치하면 기능들이 어색하게 느껴질 수 있지만 점차 편리해지고 개발 생산성도 높아지실 겁니다. 다음 번에도 좀 더 유익한 내용으로 찾아 뵙겠습니다. 감사합니다.