. 다음 버전 기획

당근은 물론 여기까지만 만들고 그만 둘 계획은 아니다. 이왕 만들기 시작했으니 세계 제 1이 된다거나 에디터 계를 평정할 정도는 아니더라도 사람들이 실생활에 유용하게 쓸 수 있는 정도까지는 만들어야 할 것이다. 당근 1.0의 기능은 솔직히 기본에 불과하며 높아진 사용자들의 눈높이를 맞추기에는 턱없이 부족하다. 이미 작성되어 있는 기능 중에도 개선해야 할 것들이 많이 있으며 새로 추가해야 할 스팩만 해도 상당히 많다.

이 스팩은 장기적인 계획을 가지고 작성해 나갈 것이며 지금까지의 노력보다 훨씬 더 많은 노력이 필요할 것이다. 당근의 다음 버전에서 또는 그 다음 버전에서 추가하고자 기획해놓은 기능의 목록을 정리해보되 ApiEdit 컨트롤에 추가될 기능과 Dangeun에 추가될 기능을 따로 분류하였다. 먼저 컨트롤에 추가할 기능을 보자.

 

편집창 분할 - 문서의 다른 곳을 동시에 보면서 편집 가능

16진 편집 모드 - 이진 파일도 편집

문자가 없는 가상 공간으로 캐럿이동하기

열 모드 - 컬럼 단위로 선택하기

매크로 기능 및 매크로 간편 등록 기능

정렬(Sort) 기능

문단 포맷팅

분석기 개수 힘 닿는 대로 늘리기 - 자바, 파스칼, C#, XML

편집 기록 보기 및 저장하기

문자열 입력시 커서 숨기기

블록 지정 방식에 대한 스타일 정의

끝까지 스크롤 했을 때 마지막 줄의 화면 위치 옵션

휠 마우스와 Ctrl, Alt, Shift에 의미 부여-글꼴 확대/축소, 줄간 늘림/줄임 등

선택영역 드래그 버튼 Swap 기능

개행코드 검색 기능 및 정규식 검색 지원

호스트의 팝업 메뉴를 컨트롤의 팝업 메뉴에 등록해주기

배경 화면에 비트맵 깔기

자간 옵션

문단의 일부를 일시적으로 축소/확장하기

OLE Drag & Drop - 다른 프로그램과도 텍스트 교환 가능

이미지 파일 뷰잉 모드

 

컨트롤은 이 기능들을 다 구현하고도 여전히 독립 컨트롤의 자격을 유지해야 하며 호스트는 컨트롤의 추가된 기능을 활용할 수 있도록 같이 수정되어야 한다. 이 중 분할창과 매크로는 거의 필수적인 기능이라 할 수 있는데 1.0에서 제외되어 무척 아쉽다. 다음은 호스트에 추가될 기능들인데 컨트롤의 기능 못지 않게 많다.

 

명령 단축키 기능 - 문자키까지도 명령의 일부로 사용할 수 있는 모드

단축키 재정의 기능 - 모든 명령과 매크로, 상용구, 설정에 단축키 임의 배정 가능

파일 세팅을 옵션 파일에 저장할 수 있도록 - 편집 기록, 북마크, 편집 위치 등

자동스크롤 기능

상용구 및 자동 상용구

파일 템플릿

상황별 도움말 및 메인 도움말

설정 상태를 파일로 저장 및 복구

미리 작성된 권장옵션 세트 제공

커스텀 글꼴과 파일창의 필터를 설정에 포함시킬 것

파일창의 폴더 목록과 파일 목록을 별도의 윈도우로 분리 옵션

찾기 대화상자의 기능 강화 - 폴더 드래그 및 자동 완성

현재 파일 및 열려진 모든 파일, 특정 프로젝트에서 찾기

파일 백업 및 자동 저장

확장자 연결 기능

살펴 보기 모드는 파일의 일부만 읽어오도록 옵션 추가

눈금자 표시

전체 화면 보기

영문 및 일본어 등의 다국어 버전 제작 지원

바로가기(ShortCut)을 열었을 때 참조 문서 열기

파일창, 검색결과창, 파일탭 도킹 기능 작성

 

여기까지 나열된 스팩들은 이미 다른 편집기들은 구현하고 있는 것들의 일부일 뿐이다. 발표된 편집기들을 세부적으로 더 분석해보면 놀라운 기능들이 많이 있으며 사용자들이 필요로 하는 새로운 기능들도 점점 더 늘어나고 있다. 앞으로 갈 길이 정말 멀다는 느낌이 온다.

여러분들도 Dangeun12의 소스를 출발점으로 하여 이 중 몇 가지를 직접 실습해보기 바란다. 아주 어려워 보여도 막상 도전해보면 쉽게 구현되는 것들이 생각보다 훨씬 더 많다. 직접 기능을 만들다 보면 프로그래밍이란 무척 재미있는 창조 작업이라는 것을 느끼게 되며 또한 자신감을 키울 수 있을 것이다. 설사 실패한다 하더라도 시도해 본다는 것 자체가 좋은 경험이 될 것이며 실패 원인을 분석해보는 과정에서 어떤 부분을 더 공부해야 하는지를 아는 계기가 된다.

이 스팩에 없는 기능이라도 좋은 아이디어가 있다면 직접 구현해보는 것도 권할만하다. 아무리 프로그램을 일반적으로 작성하더라도 모든 사용자에게 다 맞을 수는 없으며 직접 쓰다 보면 부족한 기능을 발견하게 된다. 자신만을 위한 프로그램을 직접 만들어 쓴다는 것은 정말 멋진 일이며 머릿속에 있던 생각이 완벽하게 구현되어 모니터에서 움직이는 것을 보는 기쁨이란 말로 표현하기가 힘들다. 비록 실패하더라도 프로그래머에게 습작 과정은 어떤 공부보다도 더 도움이 된다.

 

이상으로 이 책을 마칩니다. 그 동안 이 지루하고 긴 책을 읽느라 수고 많이 하셨습니다. 처음 책을 펼쳤을 때의 기대만큼 많은 것을 얻어 가셨으면 좋겠습니다. 감사합니다.