여러분 코드 하이라이팅 기능 많이 쓰시죠?
한눈에 코드를 알아보기 쉽게 도움을 주는 좋은 기능인데요.
간혹 코드를 다른 노트 어플, 블로그에 복사 붙여넣기 하실 때,
검은 글씨로 복사되는 코드를 보며 하이라이팅 된 그대로 복사하는 방법은 없을까?
라고 생각하셨던 적이 있으셨을 듯 싶어요.
오늘은 그 해답으로 Visual Studio의 Extension인 Productivity Power Tools를 이용하여 HTML Copy 하는 방법을 알아볼게요.
1.Productivity Power Tools 설치
도구 - 확장 및 업데이트에 들어가줍니다.
온라인 탭에서 productivity power tools를 검색후 다운로드 버튼을 눌러줍니다.
아래와 같은 창이 열리면 설치 버튼을 눌러줍니다.
설치가 완료되면 '지금 다시 시작' 버튼을 눌러 비주얼 스튜디오를 재실행 해줍니다.
2.옵션 설정
설치 후 비주얼 스튜디오를 재시작하면 아래처럼 UI가 바뀐 모습을 보실 수 있으실거에요.
방금 설치한 Productivity Power Tools은 여러 기능을 제공하는 Extension 입니다.
하지만 저희가 원하는 것은 오직 HTML Copy 기능이므로 해당 기능만 사용하도록 설정해주겠습니다.
도구 - 옵션 클릭
옵션창 왼쪽 탭에서 'Productivity Power Tools'를 클릭
HTML Copy 기능만 ON
나머지 기능은 OFF 해줍니다.
Productivity Power Tools - HTML Copy 탭에서 아래 사진처럼 설정을 변경해줍니다.
BeforeCodeSnippet | <style type=”text/css”>.identifier {color:black !important;}</style><pre style=”{font-family}{font-size}{font-weight}{font-style}”> |
EmitSpanClass | True |
그 다음 다른 탭에서 모든 설정을 체크 해제해줍니다.
Productivity Power Tools - Custom Document Well
Productivity Power Tools - PowerCommands
Productivity Power Tools - Solution Error Visualizer
Productivity Power Tools - Other Extensions
HTML Copy 를 제외한 모든 옵션을 해제하시고 확인을 눌러 적용시켜주세요.
3.결과 확인
아래 표와 같이 HTML Copy 기능을 사용하기 전과 후로 코드 하이라이팅이 함께 복사되는지를 확인하실 수 있습니다.
HTML Copy 적용 전 | HTML Copy 적용 후 |
void CDoorSafetyCheckDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDoorSafetyCheckDlg) DDX_Control(pDX, IDB_SAFETY_LOCK, m_ctrlSafetyLock); //}}AFX_DATA_MAP DDX_Control(pDX, IDC_DOOR_LEFT, m_ctrlDoor[0]); DDX_Control(pDX, IDC_DOOR_FRONT_LEFT, m_ctrlDoor[1]); DDX_Control(pDX, IDC_DOOR_FRONT_CENTER_LEFT, m_ctrlDoor[2]); DDX_Control(pDX, IDC_DOOR_FRONT_CENTER_RIGHT, m_ctrlDoor[3]); DDX_Control(pDX, IDC_DOOR_FRONT_RIGHT, m_ctrlDoor[4]); DDX_Control(pDX, IDC_DOOR_RIGHT, m_ctrlDoor[5]); DDX_Control(pDX, IDB_LIGHT, m_ctrlLight); // DDX_Control(pDX, IDC_EMS_1, m_ctrlEMS_1); // DDX_Control(pDX, IDC_EMS_2, m_ctrlEMS_2); // DDX_Control(pDX, IDC_EMS_3, m_ctrlEMS_3); // DDX_Control(pDX, IDC_EMS_4, m_ctrlEMS_4); // DDX_Control(pDX, IDC_EMS_5, m_ctrlEMS_5); } |
void CDoorSafetyCheckDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDoorSafetyCheckDlg) DDX_Control(pDX, IDB_SAFETY_LOCK, m_ctrlSafetyLock); //}}AFX_DATA_MAP DDX_Control(pDX, IDC_DOOR_LEFT, m_ctrlDoor[0]); DDX_Control(pDX, IDC_DOOR_FRONT_LEFT, m_ctrlDoor[1]); DDX_Control(pDX, IDC_DOOR_FRONT_CENTER_LEFT, m_ctrlDoor[2]); DDX_Control(pDX, IDC_DOOR_FRONT_CENTER_RIGHT, m_ctrlDoor[3]); DDX_Control(pDX, IDC_DOOR_FRONT_RIGHT, m_ctrlDoor[4]); DDX_Control(pDX, IDC_DOOR_RIGHT, m_ctrlDoor[5]); DDX_Control(pDX, IDB_LIGHT, m_ctrlLight); // DDX_Control(pDX, IDC_EMS_1, m_ctrlEMS_1); // DDX_Control(pDX, IDC_EMS_2, m_ctrlEMS_2); // DDX_Control(pDX, IDC_EMS_3, m_ctrlEMS_3); // DDX_Control(pDX, IDC_EMS_4, m_ctrlEMS_4); // DDX_Control(pDX, IDC_EMS_5, m_ctrlEMS_5); } |
마치며
오늘은 코드 하이라이팅을 포함하여 복사하는 방식을 알아보았는데요.
해당 기능을 한번만 설정해두시면 다른 노트 프로그램, 블로그 등에 복사하실 때 유용하게 사용하실 수 있으실거예요.
따라하시다 모르시는 부분이 있으시다면 언제든 편하게 댓글 남겨주세요^^
감사합니다.
그럼 오늘도 행복하세요!
'배움 - 차근차근 기록하자 > [개발] C++ 🔴' 카테고리의 다른 글
전처리 단계에서의 예외처리, 런타임 단계에서의 예외처리 (0) | 2024.09.12 |
---|