Add god mode

This commit is contained in:
Maciej 2022-04-11 22:03:06 +03:00
parent 9546f1e17c
commit ba588b1595
Signed by: maciej
GPG key ID: 41D62D42D3B0D765
6 changed files with 51 additions and 18 deletions

View file

@ -81,7 +81,8 @@
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(safe-local-variable-values
'((lsp-elixir-project-dir . "/Users/maciej/Development/mindvalley/connect/app")
'((cider-clojure-cli-aliases . "dev")
(lsp-elixir-project-dir . "/Users/maciej/Development/mindvalley/connect/app")
(lsp-lens-mode)
(lsp-lens-enable)
(cider-shadow-default-options . ":app")

View file

@ -42,7 +42,7 @@
(defun load-ocaml-site-packages ()
"Generate ocaml config."
(let ((opam-share (ignore-errors (car (process-lines "opam" "config" "var" "share")))))
(let ((opam-share (ignore-errors (car (process-lines "opam" "var" "share")))))
(when (and opam-share (file-directory-p opam-share))
;; Register Merlin
(add-to-list 'load-path (expand-file-name "emacs/site-lisp" opam-share))

View file

@ -114,6 +114,12 @@
:defer t
:straight t)
(use-package god-mode
:defer t
:straight t
:after which-key
)
;;;;;;;;;;;;;;;;; Use C-n to create a new line
(setq next-line-add-newlines t)
@ -122,6 +128,27 @@
bidi-inhibit-bpa t)
(which-key-mode t)
(which-key-enable-god-mode-support)
(defun +custom-switch-god-mode ()
"Switch god mode on and off."
(interactive)
(if (bound-and-true-p god-local-mode-paused)
(god-local-mode-resume)
(god-local-mode-pause)))
(god-mode)
(define-key +custom-keys-mode-map (kbd "C-c C-c") '+custom-switch-god-mode)
(define-key god-local-mode-map (kbd "i") '+custom-switch-god-mode)
(defun +custom-update-cursor ()
"Update cursor based on god mode setup."
(setq cursor-type (if (or god-local-mode buffer-read-only)
'box
'hbar)))
(add-hook 'god-mode-enabled-hook '+custom-update-cursor)
(add-hook 'god-mode-disabled-hook '+custom-update-cursor)
(provide '+custom-pkg-base)
;;; base.el ends here

View file

@ -188,13 +188,16 @@
("q" nil "cancel"))
:bind ("C-c p" . +hydra-project-menu/body)
("C-c C-p" . +hydra-project-menu/body)
("C-c h" . +hydra-of-hydras/body)
("C-c C-h" . +hydra-of-hydras/body)
("C-c c" . +hydra-code-menu/body)
("C-c w" . +hydra-window-menu/body)
("C-c s" . +hydra-history-menu/body)
("C-c f" . +hydra-font-menu/body)
("C-c m" . +hydra-move-menu/body)
("C-c l" . +hydra-language-context-menu/body))
("C-c l" . +hydra-language-context-menu/body)
("C-c C-l" . +hydra-language-context-menu/body))
(provide '+custom-pkg-hydra)
;;; hydra.el ends here

View file

@ -33,6 +33,8 @@
(define-key +custom-keys-mode-map (kbd "C-c ]") 'windmove-right)
(define-key +custom-keys-mode-map (kbd "C-c {") 'windmove-up)
(define-key +custom-keys-mode-map (kbd "C-c }") 'windmove-down)
;; (define-key +custom-keys-mode-map (kbd "C-c C-c") 'switch-god-mode)
;; (god-local-mode-pause)
;; Kill current buffer and window
(define-key +custom-keys-mode-map (kbd "C-c q") 'kill-buffer-and-window)

View file

@ -6,7 +6,7 @@
("bui.el" . "f3a137628e112a91910fd33c0cff0948fa58d470")
("caml-mode" . "204bfde9ad21cb94c273db8b0c12d31a4eb425e5")
("cfrs" . "f3a21f237b2a54e6b9f8a420a9da42b4f0a63121")
("cider" . "86dd3fee9d9836dcd56f6abb91ba59b7aeedecb9")
("cider" . "db972bbdfbe777272529ec848c9f1991ae94dbda")
("clj-refactor.el" . "f368c56c83843396b160440f472a661a3b639862")
("clojure-mode" . "c339353f9e649b3af084f1bb6ce759e614a2f243")
("column-enforce-mode" . "14a7622f2268890e33536ccd29510024d51ee96f")
@ -15,7 +15,7 @@
("counsel-projectile" . "40d1e1d4bb70acb00fddd6f4df9778bf2c52734b")
("dap-mode" . "f918c0580bd17105cbe50aa701a2375abca5a6ab")
("dash-at-point" . "fba1a6f42ea51d05110e12c62bdced664059eb55")
("dash.el" . "da167c51e9fd167a48d06c7c0ee8e3ac7abd9718")
("dash.el" . "dc61f4641779616122692e34a32ba2a158ee034c")
("deft" . "28be94d89bff2e1c7edef7244d7c5ba0636b1296")
("diminish.el" . "6b7e837b0cf0129e9d7d6abae48093cf599bb9e8")
("dockerfile-mode" . "b63a3d12b7dea0cb9efc7f78d7ad5672ceab2a3f")
@ -24,7 +24,7 @@
("el-get" . "9353309744e4f8a7c9b1adf22ec99536fb2146b0")
("elisp-refs" . "8f84280997d8b233d66fb9958a34b46078c58b03")
("emacs-ansible" . "d89ac0ee57742cca0f0e0a3453d9dcc521575690")
("emacs-dashboard" . "99f6504850f47fc8b0cfbef5f0721a6442719f2a")
("emacs-dashboard" . "3979b13156b16c25ea25e2865448f7c0601eca6e")
("emacs-elixir" . "e0d0466d83ec80ddb412bb1473908a21baad1ec3")
("emacs-fsharp-mode" . "b3aa4c53fc9e98648b25ad036e657632ae2fe192")
("emacs-gradle-mode" . "e4d665d5784ecda7ddfba015f07c69be3cfc45f2")
@ -34,8 +34,8 @@
("emacsmirror-mirror" . "d733ec0b70803781280e12f7a683ce8850c23e78")
("enhanced-ruby-mode" . "e960bf941d9fa9d92eabf7c03a8bbb51ba1ac453")
("epl" . "78ab7a85c08222cd15582a298a364774e3282ce6")
("exec-path-from-shell" . "3a8d97c096c2c5714b667130fd8a80d5622ee067")
("f.el" . "50af874cd19042f17c8686813d52569b1025c76a")
("exec-path-from-shell" . "6336db9be13d46e2d4bc3b50bc37a3fbf30fdc9e")
("f.el" . "b5cb884b3b4372a6f3d1d4428cf092ca1e5c8044")
("flycheck" . "55f25fd98abc145c0c464756504132c271f0f039")
("flycheck-rust" . "a139cd53c5062697e9ed94ad80b803c37d999600")
("flyspell-correct" . "e8027a412262bc04056a5b5440efdb7f370c3320")
@ -43,9 +43,9 @@
("git-modes" . "bb71cb2226a1cf105c329f3186bfcb5bb37e2f2d")
("gleam-mode" . "a0b76a64f6c062a8fe0c0541e788de8470828fd2")
("gnu-elpa-mirror" . "bc03f8141c285538418daeff450f67d90ead2403")
("go-mode.el" . "3273fcece5d9ab7edd4f15b2d6bce61f4e5a0666")
("go-mode.el" . "fa2693278637f56759480d2bf203bb8aad107230")
("groovy-emacs-modes" . "bf732d367b16887f81d404481c11ed1a58671d4e")
("haskell-mode" . "cb573c8db5b856eb37473009f2c62e0717a1cd02")
("haskell-mode" . "4ec2aa32b1772e629a6a2b47b84048e1990d6728")
("helpful" . "67cdd1030b3022d3dc4da2297f55349da57cde01")
("ht.el" . "c4c1be487d6ecb353d07881526db05d7fc90ea87")
("hydra" . "9e9e00cb240ea1903ffd36a54956b3902c379d29")
@ -56,29 +56,29 @@
("kotlin-mode" . "3e0c34087ba4965a8bf08d3f27325f0a1e631bfb")
("let-alist" . "592553db5929b54db40af0df90c5add0aaca045b")
("lsp-haskell" . "7cf64944ab3a25ea5d6f8d5e0cd33124182df991")
("lsp-mode" . "017529b420d6382990885d8e2bc88720795090a7")
("lsp-mode" . "fe80b9c9ccde2f9a74f2141659e61b2a91873f88")
("lsp-treemacs" . "355e468b7fa9887c616a8bfe873d8e456303b67b")
("lsp-ui" . "96b1ecbfbf87a775f05b5f0b55253376a3bd61e7")
("macrostep" . "424e3734a1ee526a1bd7b5c3cd1d3ef19d184267")
("magit" . "6a5c79fd1b19c5f64b2fdfc04112359954d06c1d")
("map" . "3d80a6d7cdc7d9e5760290fa95db4da992612837")
("markdown-mode" . "521658eb32e456681592443e04ae507c3a59ed07")
("melpa" . "780e7b4449c54f6ff5716b4953c85accfb7f0ebd")
("merlin" . "5d59c7065938ea9c9b52f368b97a50bc8bf6d65b")
("markdown-mode" . "cf6b7e1c713f1dfd18340253d218cb006720dd91")
("melpa" . "7d14ddda9729eec229a72a8827d0f0a5be779db7")
("merlin" . "03563cda8e66f85c67eeb0555c47ab12eaba50ed")
("mmm-mode" . "0d00cdf4d02cc166304f6967a20fa22e2eaf208b")
("multiple-cursors.el" . "aae47aebc0ae829211fa1e923232715d8e327b36")
("nginx-mode" . "6e9d96f58eddd69f62f7fd443d9b9753e16e0e96")
("otp" . "f9c7f02e774639b95f47a99f8d539f83d13a94c7")
("otp" . "f2fdd49eb757fdd4e156b4d908c6d4ccb1907489")
("paredit" . "8330a41e8188fe18d3fa805bb9aa529f015318e8")
("parseclj" . "a8c4cf30fb68b66ae51541462a8b21753229a6e5")
("parseedn" . "e70ca8d03a314f97e4f49b7d6098fa565742e217")
("parseedn" . "a67204eeaa32ca8f11f6aeecc2a88349f196add6")
("pfuture" . "bde5b06795e3e35bfb2bba4c34b538d506a0856e")
("php-mode" . "5f26bec865ee159dc30d3922f17bc42adfcfed50")
("pkg-info" . "76ba7415480687d05a4353b27fea2ae02b8d9d61")
("pos-tip" . "179cc126b363f72ca12fab1e0dc462ce0ee79742")
("posframe" . "c91d4d53fa479ceb604071008ce0a901770eff57")
("projectile" . "defce6e6bb504bdfab1e091550e2f709310327b9")
("purescript-mode" . "0acd1af446424ba855153161fe07a20f67dc0a89")
("purescript-mode" . "9c37067e611b5253a095f03245c247aa97bd7614")
("queue" . "130c2d656cd5d7376552272fab9e50a7c37d0c4a")
("rainbow-delimiters" . "a32b39bdfe6c61c322c37226d66e1b6d4f107ed0")
("rainbow-mode" . "949166cc0146bc9fabf74ce70c1c4a097f4cffd4")
@ -97,7 +97,7 @@
("spinner" . "34905eae12a236753fa88abc831eff1e41e8576e")
("ssass-mode" . "96f557887ad97a0066a60c54f92b7234b8407016")
("straight.el" . "af5437f2afd00936c883124d6d3098721c2d306c")
("swiper" . "40e017dc1bc4655f7c3cf4bbbe3a827ce2fff213")
("swiper" . "764e0d35ba63adb893743f27a979144477d9bfb9")
("terraform-mode" . "e560caaa9d9a11b0868adf6d9dcae5ebb5055730")
("transient" . "d02458186344ee6eddc718740d0b225f8fb1ca6b")
("treemacs" . "b18a05b1f62074a40e6011d83cd4c92cbee040dd")