[emacs] assimilate web-mode and emmet-mode for better web dev xp
[~bandali/configs] / init.org
index 65d0c54..194a4b5 100644 (file)
--- a/init.org
+++ b/init.org
@@ -1167,6 +1167,33 @@ instead.
   :bind (:map haskell-mode-map
               ("C-c l l" . hs-lint)))
 #+end_src
+
+** SGML and HTML
+
+#+begin_src emacs-lisp
+(use-package sgml-mode
+  :config
+  (setq sgml-basic-offset 4))
+#+end_src
+
+** Web mode
+
+#+begin_src emacs-lisp
+(use-package web-mode
+  :mode "\\.html\\'")
+#+end_src
+
+** Emmet mode
+
+#+begin_src emacs-lisp
+(use-package emmet-mode
+  :bind* (("C-)" . emmet-next-edit-point)
+          ("C-(" . emmet-prev-edit-point))
+  :init
+  (setq emmet-move-cursor-between-quotes t)
+  :hook (web-mode css-mode html-mode sgml-mode))
+#+end_src
+
 * Emacs Enhancements
 
 ** [[https://github.com/justbur/emacs-which-key][which-key]]
@@ -1249,25 +1276,6 @@ Emacs package that displays available keybindings in popup
                    :after #'my-projectile-invalidate-cache))))
 #+end_src
 
-** [[https://github.com/wasamasa/shackle][shackle]]
-
-#+begin_src emacs-lisp
-(use-package shackle
-  :demand t
-  :commands shackle-mode
-  :config
-  (shackle-mode 1)
-  (setq shackle-rules
-        '(("*Help*" :align right :select t :size 0.5)
-          ("\\`\\*helm.*?\\*\\'" :regexp t :align t)
-          ((compilation-mode "\\`\\*magit-diff: .*?\\'") :regexp t :noselect t)
-          ("*magit-dispatch-popup*" :align bottom)
-          ((inferior-scheme-mode "*shell*" "*eshell*") :popup t))
-        shackle-default-rule '(:select t)
-        shackle-default-size 0.4
-        shackle-inhibit-window-quit-on-same-windows t))
-#+end_src
-
 ** [[https://github.com/Wilfred/helpful][helpful]]
 
 #+begin_src emacs-lisp
@@ -1285,8 +1293,6 @@ Emacs package that displays available keybindings in popup
 
 #+begin_src emacs-lisp
 (use-package shell-pop
-  :config
-  (add-to-list 'shackle-rules '("\\*eshell\\*" :regexp t :same t))
   :custom
   (shell-pop-universal-key "C-c e")
   (shell-pop-shell-type '("eshell" "*eshell*" (lambda nil (eshell)))))