aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--modules/init-web-mode.el29
1 files changed, 24 insertions, 5 deletions
diff --git a/modules/init-web-mode.el b/modules/init-web-mode.el
index 5606522..93a0ecd 100644
--- a/modules/init-web-mode.el
+++ b/modules/init-web-mode.el
@@ -21,7 +21,7 @@
;; Fix smarty
(setq web-mode-engines-alist
- '(("smarty" . "\\.tpl\\'")))
+ '(("smarty" . "\\.tpl\\'")))
;; Django hook
;; require projectile
@@ -45,11 +45,30 @@
(sp-pair "{# " " #}")
(sp-pair "{" nil :actions :rem)
(sp-pair "<" ">")
- (setq web-mode-enable-auto-pairing nil)))
- )
- )
+ (setq web-mode-enable-auto-pairing nil)))))
+ ;; Pelican hook
+ (defun my-pelican-mode ()
+ (when (and (require 'web-mode nil t)
+ (fboundp 'web-mode-set-engine))
+ (if (projectile-project-p)
+ (when (file-exists-p (concat (projectile-project-root) "pelicanconf.py"))
+ (web-mode-set-engine "django")
+
+ ;; HTML auto functions
+ (setq web-mode-enable-auto-opening t)
+ (setq web-mode-enable-auto-closing t)
+ (setq web-mode-enable-auto-quoting t)
+ (setq web-mode-enable-auto-expanding t)
+
+ ;; Auto-pairing
+ (require 'smartparens)
+ (sp-pair "{% " " %}")
+ (sp-pair "{" nil :actions :rem)
+ (sp-pair "<" ">")
+ (setq web-mode-enable-auto-pairing nil)))))
:hook
- (web-mode . my-django-mode))
+ (web-mode . my-django-mode)
+ (web-mode . my-pelican-mode))
(provide 'init-web-mode)
;;; init-web-mode.el ends here