LoginSignup
0

More than 3 years have passed since last update.

Emacsでデフォルトよりは楽にJSPを書きたい。

Last updated at Posted at 2019-10-05

背景

EmacsでJSP(JavaServer Pages)を書くことになったけれどコード整形の設定がなかった。

環境

CentOS 6
GNU Emacs 23.1.1

方法

STEP 1

ここのDownloadからファイルをダウンロードする。
(僕はGithubからダウンロードしました。)
キャプチャ.PNG

STEP 2

unzipコマンドやツールを使って、ダウンロードしたファイルを解凍する。

STEP 3

ホームディレクトリ(好きなところで大丈夫)に1つディレクトリを作る。

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を超えれるのでは...?(やらないけど。)

参考

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0