Update for February
* Add purescript * Use perspective mode * Use LSP for Rust code
This commit is contained in:
parent
4d18006dc8
commit
7f5f90ae4d
8 changed files with 78 additions and 17 deletions
7
init.el
7
init.el
|
|
@ -26,6 +26,7 @@
|
||||||
(require 'pkg/sys-specific "$HOME/.emacs.d/pkg/sys-specific.el")
|
(require 'pkg/sys-specific "$HOME/.emacs.d/pkg/sys-specific.el")
|
||||||
(require 'pkg/macros "$HOME/.emacs.d/pkg/macros.el")
|
(require 'pkg/macros "$HOME/.emacs.d/pkg/macros.el")
|
||||||
(require 'pkg/ivy "$HOME/.emacs.d/pkg/ivy.el")
|
(require 'pkg/ivy "$HOME/.emacs.d/pkg/ivy.el")
|
||||||
|
(require 'pkg/persp "$HOME/.emacs.d/pkg/persp.el")
|
||||||
(require 'pkg/hydra "$HOME/.emacs.d/pkg/hydra.el")
|
(require 'pkg/hydra "$HOME/.emacs.d/pkg/hydra.el")
|
||||||
(require 'pkg/magit "$HOME/.emacs.d/pkg/magit.el")
|
(require 'pkg/magit "$HOME/.emacs.d/pkg/magit.el")
|
||||||
(require 'pkg/prog-mode "$HOME/.emacs.d/pkg/prog-mode.el")
|
(require 'pkg/prog-mode "$HOME/.emacs.d/pkg/prog-mode.el")
|
||||||
|
|
@ -57,6 +58,7 @@
|
||||||
(require 'languages/clang "$HOME/.emacs.d/languages/clang.el")
|
(require 'languages/clang "$HOME/.emacs.d/languages/clang.el")
|
||||||
(require 'languages/clojure "$HOME/.emacs.d/languages/clojure.el")
|
(require 'languages/clojure "$HOME/.emacs.d/languages/clojure.el")
|
||||||
(require 'languages/ocaml "$HOME/.emacs.d/languages/ocaml.el")
|
(require 'languages/ocaml "$HOME/.emacs.d/languages/ocaml.el")
|
||||||
|
(require 'languages/purescript "$HOME/.emacs.d/languages/purescript.el")
|
||||||
(require 'languages/php "$HOME/.emacs.d/languages/php.el")
|
(require 'languages/php "$HOME/.emacs.d/languages/php.el")
|
||||||
(require 'languages/markdown "$HOME/.emacs.d/languages/markdown.el")
|
(require 'languages/markdown "$HOME/.emacs.d/languages/markdown.el")
|
||||||
(require 'languages/other "$HOME/.emacs.d/languages/other.el")
|
(require 'languages/other "$HOME/.emacs.d/languages/other.el")
|
||||||
|
|
@ -67,9 +69,10 @@
|
||||||
;; Your init file should contain only one such instance.
|
;; Your init file should contain only one such instance.
|
||||||
;; If there is more than one, they won't work right.
|
;; If there is more than one, they won't work right.
|
||||||
'(package-selected-packages
|
'(package-selected-packages
|
||||||
'(apropospriate-theme jenkinsfile-mode vue-mode dap-mode undo-tree helpful lsp-haskell dashboard fsharp-mode dash-at-point racer racer-mode flycheck-rust rust-mode haskell-mode dune which-key erlang gitignore-mode yaml-mode nginx-mode ansible terraform-mode dockerfile-mode reason-mode merlin tuareg clj-refactor cider clojure-mode elixir-mode js2-mode web-mode enh-ruby-mode ruby-end rspec-mode planet-theme flatui-theme base16-theme smart-mode-line lsp-ui lsp-mode deft counsel-projectile flycheck company yasnippet-snippets yasnippet visual-regexp column-enforce-mode rainbow-mode rainbow-delimiters magit hydra counsel keyfreq exec-path-from-shell buffer-move use-package))
|
'(perspective apropospriate-theme jenkinsfile-mode vue-mode dap-mode undo-tree helpful lsp-haskell dashboard fsharp-mode dash-at-point racer racer-mode flycheck-rust rust-mode haskell-mode dune which-key erlang gitignore-mode yaml-mode nginx-mode ansible terraform-mode dockerfile-mode reason-mode merlin tuareg clj-refactor cider clojure-mode elixir-mode js2-mode web-mode enh-ruby-mode ruby-end rspec-mode planet-theme flatui-theme base16-theme smart-mode-line lsp-ui lsp-mode deft counsel-projectile flycheck company yasnippet-snippets yasnippet visual-regexp column-enforce-mode rainbow-mode rainbow-delimiters magit hydra counsel keyfreq exec-path-from-shell buffer-move use-package))
|
||||||
'(safe-local-variable-values
|
'(safe-local-variable-values
|
||||||
'((haskell-process-use-ghci . t)
|
'((column-enforce-column . 10000)
|
||||||
|
(haskell-process-use-ghci . t)
|
||||||
(haskell-indent-spaces . 4))))
|
(haskell-indent-spaces . 4))))
|
||||||
|
|
||||||
;; Improve font settings in Markdown code
|
;; Improve font settings in Markdown code
|
||||||
|
|
|
||||||
31
languages/purescript.el
Normal file
31
languages/purescript.el
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
;;; purescript.el --- summary
|
||||||
|
|
||||||
|
;; Author: Maciej Szlosarczyk
|
||||||
|
;; Maintainer: Maciej Szlosarczyk
|
||||||
|
;; Version: 0.1-snapshot
|
||||||
|
|
||||||
|
;;; Commentary:
|
||||||
|
|
||||||
|
;; purescript does a thing.
|
||||||
|
|
||||||
|
;;; Code:
|
||||||
|
(use-package purescript-mode
|
||||||
|
:requires (lsp-mode lsp-ui)
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
(defun activate-purescript-mode ()
|
||||||
|
"All things Purescript."
|
||||||
|
(set-indent 2)
|
||||||
|
(column-enforce-n 98)
|
||||||
|
|
||||||
|
;; Purescript indentation
|
||||||
|
(purescript-indentation-mode t)
|
||||||
|
|
||||||
|
;; Company list override
|
||||||
|
(add-to-list (make-local-variable 'company-backends)
|
||||||
|
'(company-capf company-yasnippet)))
|
||||||
|
|
||||||
|
(add-hook 'purescript-mode-hook 'activate-purescript-mode)
|
||||||
|
|
||||||
|
(provide 'languages/purescript)
|
||||||
|
;;; purescript.el ends here
|
||||||
|
|
@ -25,6 +25,9 @@
|
||||||
(set-indent 4)
|
(set-indent 4)
|
||||||
(column-enforce-n 99)
|
(column-enforce-n 99)
|
||||||
|
|
||||||
|
;; Run LSP
|
||||||
|
(lsp-deferred)
|
||||||
|
|
||||||
;; Company list override
|
;; Company list override
|
||||||
(add-to-list (make-local-variable 'company-backends)
|
(add-to-list (make-local-variable 'company-backends)
|
||||||
'(company-capf company-yasnippet)))
|
'(company-capf company-yasnippet)))
|
||||||
|
|
|
||||||
|
|
@ -31,8 +31,9 @@
|
||||||
(defun activate-web-mode ()
|
(defun activate-web-mode ()
|
||||||
"Web mode overrides."
|
"Web mode overrides."
|
||||||
;; Indent web mode scripts by 2
|
;; Indent web mode scripts by 2
|
||||||
(setq web-mode-script-padding 2)
|
(setq-local web-mode-script-padding 2)
|
||||||
(setq web-mode-code-indent-offset 2)
|
(setq-local web-mode-code-indent-offset 2)
|
||||||
|
(setq-local web-mode-markup-indent-offset 2)
|
||||||
(setq-local lsp-eldoc-enable-hover nil)
|
(setq-local lsp-eldoc-enable-hover nil)
|
||||||
(setq-local flycheck-check-syntax-automatically '(save mode-enabled))
|
(setq-local flycheck-check-syntax-automatically '(save mode-enabled))
|
||||||
|
|
||||||
|
|
|
||||||
15
pkg/hydra.el
15
pkg/hydra.el
|
|
@ -10,11 +10,11 @@
|
||||||
"
|
"
|
||||||
General Actions
|
General Actions
|
||||||
|
|
||||||
^Ivy^ ^Projectile^ ^Magit^
|
^Ivy^ ^Perspectives^ ^Projectile^ ^Magit^
|
||||||
^^^^^^^^------------------------------------------------------------------------
|
^^^^^^^^-------------------------------------------------------------------------------------
|
||||||
_a_: Grep in buffer _s_: Switch project _m_: Git status
|
_a_: Grep in buffer _S_: Switch perspective _s_: Switch project _m_: Git status
|
||||||
_b_: Buffer list _f_: Find file in project _C_: Git checkout
|
_b_: Buffer list _B_: Switch buffer _f_: Find file in project _C_: Git checkout
|
||||||
_t_: Find file _g_: Grep in current project _M_: Git blame
|
_t_: Find file _K_: Kill perspective _g_: Grep in current project _M_: Git blame
|
||||||
_d_: Deft _c_: Invalidate cache
|
_d_: Deft _c_: Invalidate cache
|
||||||
_w_: Avy goto word _n_: New project
|
_w_: Avy goto word _n_: New project
|
||||||
_l_: Avy goto line _i_: IELM console
|
_l_: Avy goto line _i_: IELM console
|
||||||
|
|
@ -31,12 +31,17 @@ _:_: Avy goto char
|
||||||
("l" avy-goto-line)
|
("l" avy-goto-line)
|
||||||
(":" avy-goto-char)
|
(":" avy-goto-char)
|
||||||
|
|
||||||
|
("S" persp-switch)
|
||||||
|
("B" persp-ibuffer)
|
||||||
|
("K" persp-kill)
|
||||||
|
|
||||||
("s" counsel-projectile-switch-project)
|
("s" counsel-projectile-switch-project)
|
||||||
("f" counsel-projectile-find-file)
|
("f" counsel-projectile-find-file)
|
||||||
("g" counsel-projectile-rg)
|
("g" counsel-projectile-rg)
|
||||||
("c" projectile-invalidate-cache)
|
("c" projectile-invalidate-cache)
|
||||||
("n" projectile-add-known-project)
|
("n" projectile-add-known-project)
|
||||||
("i" ielm)
|
("i" ielm)
|
||||||
|
|
||||||
("m" magit-status)
|
("m" magit-status)
|
||||||
("C" magit-checkout)
|
("C" magit-checkout)
|
||||||
("M" magit-blame))
|
("M" magit-blame))
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@
|
||||||
lsp-enable-file-watchers nil)
|
lsp-enable-file-watchers nil)
|
||||||
:hook ((typescript-mode . lsp-deferred)
|
:hook ((typescript-mode . lsp-deferred)
|
||||||
(elixir-mode . lsp)
|
(elixir-mode . lsp)
|
||||||
|
(purescript-mode . lsp-deferred)
|
||||||
(js2-mode . lsp-deferred)))
|
(js2-mode . lsp-deferred)))
|
||||||
|
|
||||||
(use-package lsp-ui
|
(use-package lsp-ui
|
||||||
|
|
|
||||||
15
pkg/persp.el
Normal file
15
pkg/persp.el
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
;;; pkg/persp.el --- summary
|
||||||
|
|
||||||
|
;; Author: Maciej Szlosarczyk
|
||||||
|
;; Maintainer: Maciej Szlosarczyk
|
||||||
|
;; Version: 0.1-snapshot
|
||||||
|
|
||||||
|
;;; Commentary:
|
||||||
|
|
||||||
|
;; Perspectives
|
||||||
|
|
||||||
|
;;; Code:
|
||||||
|
(use-package perspective :config (persp-mode))
|
||||||
|
|
||||||
|
(provide 'pkg/persp)
|
||||||
|
;;; pkg/persp.el ends here
|
||||||
|
|
@ -22,6 +22,7 @@
|
||||||
(load-theme 'base16-atelier-forest-light t t)
|
(load-theme 'base16-atelier-forest-light t t)
|
||||||
(load-theme 'base16-harmonic-light t t)
|
(load-theme 'base16-harmonic-light t t)
|
||||||
(load-theme 'apropospriate-light t t)
|
(load-theme 'apropospriate-light t t)
|
||||||
|
(load-theme 'base16-tomorrow t t)
|
||||||
|
|
||||||
;; Dark themes
|
;; Dark themes
|
||||||
(load-theme 'base16-solarflare t t)
|
(load-theme 'base16-solarflare t t)
|
||||||
|
|
@ -33,7 +34,7 @@
|
||||||
(sml/apply-theme 'respectful)
|
(sml/apply-theme 'respectful)
|
||||||
(enable-theme (nth
|
(enable-theme (nth
|
||||||
(random 2)
|
(random 2)
|
||||||
'(apropospriate-light base16-harmonic-light))))
|
'(base16-tomorrow base16-harmonic-light))))
|
||||||
(progn
|
(progn
|
||||||
(defvar base16-theme-256-color-source "base16-shell")
|
(defvar base16-theme-256-color-source "base16-shell")
|
||||||
(enable-theme 'apropospriate-light)))
|
(enable-theme 'apropospriate-light)))
|
||||||
|
|
@ -52,10 +53,11 @@
|
||||||
;; If display is set to emulate FullHD resultion or less, make the font
|
;; If display is set to emulate FullHD resultion or less, make the font
|
||||||
;; smaller.
|
;; smaller.
|
||||||
(cond ((eq (x-display-list) nil)) ()
|
(cond ((eq (x-display-list) nil)) ()
|
||||||
((>= 1050 (x-display-pixel-height)) (set-font "Hack" 14))
|
((>= 1050 (x-display-pixel-height)) (set-font "IBM Plex Mono" 14))
|
||||||
((>= 1080 (x-display-pixel-height)) (set-font "Hack" 13))
|
((>= 1080 (x-display-pixel-height)) (set-font "IBM Plex Mono" 13))
|
||||||
((>= 1440 (x-display-pixel-height)) (set-font "Hack" 16))
|
((>= 1120 (x-display-pixel-height)) (set-font "IBM Plex Mono" 14))
|
||||||
(t (set-font "Hack" 16))))
|
((>= 1440 (x-display-pixel-height)) (set-font "IBM Plex Mono" 16))
|
||||||
|
(t (set-font "IBM Plex Mono" 16))))
|
||||||
|
|
||||||
;; Do it automatically on startup
|
;; Do it automatically on startup
|
||||||
(set-font-to-screen)
|
(set-font-to-screen)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue