Emacs에서 디폴트보다는 편하게 JSP를 쓰고 싶다.

배경



Emacs에서 JSP(JavaServer Pages)를 쓰게 되었지만 코드 성형 설정이 없었다.

환경



CentOS 6
GNU Emacs 23.1.1

방법



STEP 1



여기의 다운로드에서 파일을 다운로드합니다.
(나는 Github에서 다운로드했습니다.)


STEP 2


unzip 명령이나 도구를 사용하여 다운로드한 파일의 압축을 풉니 다.

STEP 3



홈 디렉토리 (좋아하는 곳에서 괜찮습니다)에 하나의 디렉토리를 만든다.
mkdir ~/load

이번에는 load 디렉토리를 만들었다.

STEP 4


~/load 안에 압축을 푼 파일에 있는 web-mode.el 를 넣는다.

STEP 5



방금 파일을 읽을 수 있도록 path를 통과시킵니다.
emacs ~/.emacs

.emacs를 열면 아래의 코드를 넣는다.
(동시에 web-mode 시용의 룰도 입력하고 있다. 이번은 다른 분의 설정을 배차)

~/.emacs
; パスを通す(require できるようになる。)
; 自分が作ったディレクトリへのパスを入れる。
(add-to-list 'load-path "~/load")

; web-modeの設定
(require 'web-mode)
(add-to-list 'auto-mode-alist '("\\.phtml\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.tpl\\.php\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.[agj]sp\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.as[cp]x\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.mustache\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode))
; .jsp用 実際これだけでも良いとは思う。
(add-to-list 'auto-mode-alist '("\\.jsp\\'" . web-mode))

(defun my-web-mode-hook ()
  "Hooks for Web mode."
  (setq web-mode-attr-indent-offset nil)
  (setq web-mode-markup-indent-offset 2)
  (setq web-mode-css-indent-offset 2)
  (setq web-mode-code-indent-offset 2)
  (setq web-mode-sql-indent-offset 2)
  (setq indent-tabs-mode nil)
  (setq tab-width 2))
(add-hook 'web-mode-hook 'my-web-mode-hook)

STEP 6



아니요. 끝.Ctrl-c Ctrl-i 에서 들여쓰기 깨끗하게 해준다.
그 밖에도 단축키 있는 것 같다.

결론



permit의 문제로부터, 원래 load-path 가 지나간 곳에 파일을 둘 수 없기 때문에 이렇게 되었습니다. 그리고 잘 모르겠지만 package-install도 사용할 수 없었다.
설정을 만들면 VScode를 넘는 것은 ...?(하지 않지만.)

참고


  • 공식 사이트
  • Emacs에서 React (JSX) 코딩하는 환경을 살펴 보았습니다.
  • Emacs에서 JSX를 작성하기위한 web-mode 설정
  • 좋은 웹페이지 즐겨찾기