. 기능 소개

문법강조(Syntax Coloring) 기능이란 편집하고 있는 문서의 문법에 따라 각각의 단어가 어떤 자격을 가지는가를 색상으로 보여주는 기능이다. 예를 들어 C++ 소스는 키워드, 명칭, 주석, 상수 등의 여러 요소들로 구성되는데 각 요소들의 색상을 다르게 표시하는 것이다. 키워드는 파란색으로 보여주고 주석은 회색으로 표시하면 문서의 구조를 좀 더 쉽게 파악할 수 있으므로 가독성을 높일 수 있다. 문법강조 기능을 가진 편집기를 보고 싶으면 지금 사용하고 있는 비주얼 스튜디오의 편집기를 보면 된다.

보다시피 for, while 등의 키워드는 파란색으로 나타나며 주석은 녹색으로 표시되어 구분되므로 문서를 읽기가 한결 쉬워질 것이며 구문 오류를 찾아내기도 쉬워진다. 단어마다 다른 색으로 출력하는 기능은 단순히 문서를 보기 좋게 출력하는 장식적인 효과만 있는 것이 아니다. HTML 문서의 경우 태그와 속성을 구분할 수 있게 하며 스크립트는 좀 특별한 색상으로 강조함으로써 문서의 논리적인 구조를 쉽게 파악할 수 있도록 한다.

소스파일이나 HTML 스크립트 등의 문서는 엄격한 문법에 따라 작성되는데 문법강조 기능은 문법을 색상으로 보여 줌으로써 실수를 미연에 방지하는데 큰 도움이 된다. 키워드는 항상 파란색인데 contnue와 같이 오타를 칠 경우 다른 색상으로 표시되므로 금방 오타를 발견할 수 있으며 잘못된 구문은 빨간색으로 강조하여 수정해야 함을 알려 주기도 한다. 사용자의 입장에서는 입력된 내용의 문법 점검을 바로바로 할 수 있으므로 대단히 편리한 기능이다. 하지만 프로그램의 입장에서는 상당히 까다로운 기능인데 속도 저하는 물론이고 코드도 복잡해지므로 골치 아픈 버그의 원인이 되기도 한다.

문법강조 기능이 도입되기 시작한 것은 비교적 최근의 일인데 이 기능이 가능하기 위해서는 상당한 고성능의 CPU가 요구되기 때문이다. 편집중에 문서의 내용을 분석하는 작업은 많은 연산을 필요로 하므로 느린 시스템에서는 구현하고 싶어도 할 수가 없다. 다소 고급 기능이고 편집기의 필수 기능은 아니지만 ApiEdit에도 이 기능을 구현해보도록 하자. Dangeun5 프로젝트를 복사하여 Dangeun6 프로젝트를 만들어 놓고 다음 실습을 따라 해보도록 하자.