Source Insight에서 Custom Language 추가하기
Custom Language란?
Source Insight에서 기본적으로 제공하는 프로그래밍 언어 외에 사용자가 새로운 언어 타입을 재정의하거나 추가할 수 있는 기능을 말합니다.
가장 일반적으로 많이 사용되는 C/C++, Java 등의 언어에 대한 Language Definition은 이미 Source Insight에 포함되어 있는데, 이것들 외에 사용자가 별도로 더 추가하고 싶은 언어가 있을 수 있습니다. 이럴 때 사용하는 것이 Custom Language 기능입니다.
또는 Symbian C++ 등과 같이 별도의 추가적인 파일 확장자나 parsing 규칙을 일부 사용하는 경우에 기존 Language Definition을 상속/재정의 해서 사용할 수도 있습니다.
Custom Language File 구하기
기본적으로 Source Insight 공식 홈페이지에서 제공하는 Custom Language File(이하 CLF)을 사용할 수 있습니다.
CLF 다운로드 페이지: http://www.sourceinsight.com/public/languages/
ARM Assembly, Python, Ruby, Lua, Delphi, SQL, Verilog, TCL 등이 제공됩니다.
인터넷 검색을 통해서 몇몇 CLF 파일을 구할 수 있기도 하지만, 의외로 드뭅니다. :(
사용자가 직접 CLF를 만드는 것도 가능합니다. 이 작업은 좀 번거롭고 시간이 걸릴 수 있습니다.
Custom Language 추가하기
Custom Language를 추가하는 데에는 두 가지 작업을 필요합니다. 하나는 Language 자체에 대한 parsing 정보를 등록하는 것이고, 나머지는 등록한 Language를 Project에 적용할 수 있도록 Document Option에 추가해주는 것입니다.
새로운 Language 추가하기
Options 메뉴 -> Preferences 메뉴 -> Languages 탭으로 이동합니다.
Import 버튼을 눌러 원하는 CLF 파일을 가져옵니다.
※ Add 버튼을 눌러서 새로운 Language를 추가하고 직접 keyword 편집이나 symbol parsing 규칙 등록 등의 작업을 해줄 수도 있습니다.
이제 Languages 탭에서 새로운 Language가 추가된 것을 확인할 수 있습니다.
※ 사용자가 추가한 Custom Language는 아이콘이 약간 다릅니다.
추가한 Language에 대한 Document Option 추가하기
Options 메뉴 -> Document Options 메뉴를 실행한 다음 다이얼로그에서 Add Type 버튼을 눌러 새로운 타입을 추가합니다.
추가된 타입에 대한 상세 설정을 해줍니다.
이 Language Type이 적용될 확장자를 지정해줍니다.
Include when adding to projects 항목을 체크해주어야 프로젝트 생성 시 해당 확장자 파일이 자동으로 추가됩니다.
위 첫 번째 단계에서 추가한 Custom Language를 지정해줍니다.
Symbian C++ 개발을 위한 추천 설정
Symbian 관련 개발 상에서는 일반 C++ 개발 상에서와 달리 추가되는 파일들이 몇 가지 더 있습니다. 그렇기 때문에 이 파일들을 별도의 Language Type으로 등록해주면 소스 분석에 더욱 도움이 됩니다.
가장 먼저 Symbian C++ 관련 C.tom 파일을 적용해두셔야 합니다.
Symbian C++ 관련 source 파일 등록
추가해야 할 확장자들: *.hrh;*.pan;*.inl;*.rsg;*.rh;*.loc;*.mbg;*.rss;*.rls;*.cia
※ 주의: C++ Language Type에 Symbian C++ 관련 확장자를 등록해두신 분은 C++ Language Type 쪽에서 그 확장자를 제거해주실 필요가 있습니다.
Symbian C++ 관련 build script 파일 등록
추가해야 할 확장자들: *.mmp;*.midef;*.inf;*.iby