의미론적 형광 색상과 예쁜 출력

의미론적 형광 색상과 예쁜 출력 (Semantic Highlighting & Pretty Printing)

v0.9.18부터 Idris는 의미론적 형광(semantic highlighting)을 지원해요.

REPL이나 IDE 지원을 사용할 때, Idris는 코드를 Idris 구조 안에서의 의미(meaning)에 따라 강조해줘요. 의미론적 형광 지원의 선행 기능으로는 정의를 콘솔, LaTeX, 또는 HTML로 예쁘게 출력(pretty printing)하는 것이 있어요.

기본 스타일 구성은 Conor McBride의 자체 스타일 세트에서 영감을 받았는데, 흔히 "Conor Colours"라고 불러요.

범례 (Legend)

개념과 기본 스타일은 다음과 같아요:

Idris 용어 HTML LaTeX IDE/REPL
묶인 변수 (Bound Variable) 보라색 (Purple) 마젠타 (Magenta)
키워드 (Keyword) 굵게 (Bold) 밑줄 (Underlined)
함수 (Function) 초록색 (Green) 초록색 (Green)
타입 (Type) 파란색 (Blue) 파란색 (Blue)
데이터 (Data) 빨간색 (Red) 빨간색 (Red)
묵시적 (Implicit) 이탤릭 보라 (Italic Purple) 이탤릭 마젠타 (Italic Magenta)

예쁜 출력 (Pretty Printing)

Idris는 다음 명령어를 사용해 코드를 HTML과 LaTeX로 예쁘게 출력하는 것도 지원해요:

  • :pp <latex|html> <width> <function name>

  • :pprint <latex|html> <width> <function name>

사용자 지정 (Customisation)

사용하는 색이 마음에 들지 않으면, VIM과 Emacs 에디터 지원에서는 색상을 사용자 지정할 수 있어요. Idris 코드를 LaTeX와 HTML로 예쁘게 출력할 때는 명령어와 CSS 스타일이 제공돼요. REPL이 사용하는 색상은 초기화 스크립트(initialisation script)를 통해 사용자 지정할 수 있어요.

더 알아보기 (Further Information)

에디터 지원 링크와 LaTeX·HTML용 사전 제작 스타일 파일은 Idris Extras 프로젝트에서도 확인해볼 수 있어요.

출처: 문서