요즘 웹이라 하면 HTML 뿐만이 아니라 CSS와 Java Script가 기본이다. 거기다 템플릿 기반의 웹개발도 일반적이다. 그래서 웹개발에 이용되는 하나의 소스 파일에는 최소한 3가지 이상의 문법이 이용된다고 볼 수 있다.
Emacs에서 하나의 버퍼는 하나의 메이저 모드만 이용 할 수 있다는 제약은 이런 웹 개발에 있어서는 좀 문제가 있는 편이다. 기본적으로 html-mode와 js-mode, css-mode 등 필요한 메이저모드는 지원되지만 개별 버퍼에 하나만 쓸 수 있다. 그래서 multi-web-mode나 Mumamo 같은 여러 모드를 섞는 특수 모드 등이 사용되기도 한다. (최하단 링크 참고)
이번에 소개하는 web-mode는 멀티 모드가 아닌 하나의 모드에서 다양한 문법의 하이라이트와 편집 기능을 지원하는 통합형(?) 메이저모드이다.
개인적인 취향으로 Emacs를 쓸 때 프레임(보통은 윈도우라고 부르지만 Emacs에서 윈도우는 하나의 창 혹은 이 창을 분할한 영역을 의미)을 하나 밖에 쓰질 않았다. 하지만 최근엔 여러 프로젝트의 소스를 참고할 일이 많아지다 보니 결국 멀티 프레임 기능을 쓰게 되어서 관련 기능을 메모한다.